+file or memory location to receive output of perltidy.
+
+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
+Perl::Tidy version 20220217 for this purpose.
+
+=over 4
+
+=item *
+
+Use B<-eos> if Perl::Tidy should encode any string which it decodes. This is
+the current default because it makes perltidy behave well as a filter, and is
+the correct setting 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 only appropriate if the calling program will handle any needed encoding
+before outputting the string. If needed, this flag can be added to the end of
+the B<argv> parameter passed to Perl::Tidy.
+
+=back
+
+For some background information see
+L<https://github.com/perltidy/perltidy/blob/master/docs/eos_flag.md>.
+
+This change in default behavior was made over a period of time as follows:
+
+=over 4
+
+=item *
+
+For versions before 20220217 the B<-eos> flag was not available and the behavior was equivalent to B<-neos>.
+
+=item *
+
+In version 20220217 the B<-eos> flag was added but the default remained B<-neos>.
+
+=item *
+
+For versions after 20220217 the default was set to B<-eos>.
+
+=back