+B<Important note if destination is a string or array reference>. Perl strings
+of characters which are decoded as utf8 by Perl::Tidy can be returned in either
+of two possible states, decoded or encoded, and it is important that the
+calling program and Perl::Tidy are in agreement regarding the state to be
+returned. A flag B<--encode-output-strings>, or simply B<-eos>, was added in
+versions of Perl::Tidy after 20220101 for this purpose. This flag should be
+added to the end of the B<argv> paremeter (described below) if Perl::Tidy
+will be decoding utf8 text. The options are as follows.
+
+=over 4
+
+=item *
+
+Use B<-eos> if Perl::Tidy should encode any string which it decodes.
+This is probably most convenient for most programs.
+But do not use this setting if the calling program will
+encode the data too, because double encoding will corrupt data.
+
+=item *
+
+Use B<-neos> if a string should remain decoded if it was decoded by Perl::Tidy.
+This is appropriate if
+the calling program will handle any needed encoding before outputting the string.
+
+=item *
+
+The current default is B<-neos>, but B<the default could change in a future
+version>, so B<-neos> should still be set, if appropriate, to allow for the
+possibility of a future change in the default.
+
+=back
+
+For example, to set B<-eos> the following could be used
+
+ $argv .= " -eos" if ( $Perl::Tidy::VERSION > 20220101 );
+
+ $error_flag = Perl::Tidy::perltidy(
+ argv => $argv,
+ source => \$source,
+ destination => \$destination,
+ stderr => \$stderr,
+ errorfile => \$errorfile
+ );
+
+The test on version allows older versions of Perl::Tidy to still be used.
+
+For some background information see
+L<https://github.com/perltidy/perltidy/issues/83> and
+L<https://github.com/houseabsolute/perl-code-tidyall/issues/84>.
+
+=item B<stderr>