Skip to content

Commit

Permalink
Update version numbers in COMPATIBILITY
Browse files Browse the repository at this point in the history
Note the version of Perl that incorporates podlators 5.00, and
change 6.00 version numbers to v6.0.0 to reflect the change in
version numbering conventions.
  • Loading branch information
rra committed Jul 14, 2024
1 parent 6395999 commit af5a367
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 23 deletions.
34 changes: 17 additions & 17 deletions lib/Pod/Man.pm
Original file line number Diff line number Diff line change
Expand Up @@ -2323,19 +2323,19 @@ Pod::Man 4.10, included in Perl 5.27.8, changed the formatting for manual page
references and function names to bold instead of italic, following the current
Linux manual page standard.
Pod::Man 5.00 changed the default output encoding to UTF-8, overridable with
the new C<encoding> option. It also fixed problems with bold or italic
extending too far when used with CZ<><> escapes, and began converting Unicode
zero-width spaces (U+200B) to the C<\:> *roff escape. It also dropped
attempts to add subtle formatting corrections in the output that would only be
visible when typeset with B<troff>, which had previously been a significant
source of bugs.
Pod::Man 6.00 and later unconditionally convert C<-> to the C<\-> *roff
Pod::Man 5.00, included in Perl 5.37.7, changed the default output encoding to
UTF-8, overridable with the new C<encoding> option. It also fixed problems
with bold or italic extending too far when used with CZ<><> escapes, and began
converting Unicode zero-width spaces (U+200B) to the C<\:> *roff escape. It
also dropped attempts to add subtle formatting corrections in the output that
would only be visible when typeset with B<troff>, which had previously been a
significant source of bugs.
Pod::Man v6.0.0 and later unconditionally convert C<-> to the C<\-> *roff
escape, representing an ASCII hyphen-minus. Earlier versions attempted to use
heuristics to decide when a given C<-> character should translate to a
hyphen-minus or a true hyphen, but these heuristics were buggy and fragile.
6.00 and later also unconditionally convert C<`> and C<'> to ASCII grave
v6.0.0 and later also unconditionally convert C<`> and C<'> to ASCII grave
accent and apostrophe marks instead of the default *roff behavior of
interpreting them as paired quotes.
Expand Down Expand Up @@ -2391,13 +2391,13 @@ UNIX command options and most filenames. Hyphens, where appropriate, produce
better typesetting, but incorrectly using them for command names and options
can cause problems with searching and cut-and-paste.
POD does not draw this distinction. Before podlators 6.00, Pod::Man attempted
to translate C<-> in the input into either a hyphen or a hyphen-minus,
depending on context. However, this distinction proved impossible to do
correctly with heuristics. Pod::Man therefore translates all C<-> characters
in the input to C<\-> in the output, ensuring that command names and options
are correct at the cost of somewhat inferior typesetting and line breaking
issues with long hyphenated phrases.
POD does not draw this distinction. Before podlators v6.0.0, Pod::Man
attempted to translate C<-> in the input into either a hyphen or a
hyphen-minus, depending on context. However, this distinction proved
impossible to do correctly with heuristics. Pod::Man therefore translates all
C<-> characters in the input to C<\-> in the output, ensuring that command
names and options are correct at the cost of somewhat inferior typesetting and
line breaking issues with long hyphenated phrases.
To use true hyphens in the Pod::Man output, declare an input character set of
UTF-8 (or some other Unicode encoding) and use Unicode hyphens. Pod::Man and
Expand Down
13 changes: 7 additions & 6 deletions lib/Pod/Text.pm
Original file line number Diff line number Diff line change
Expand Up @@ -1203,12 +1203,13 @@ Pod::Text 4.09, included in Perl 5.25.7, fixed a serious bug on EBCDIC
systems, present in all versions back to 3.00, that would cause opening
brackets to disappear.
Pod::Text 5.00 and later default, on non-EBCDIC systems, to UTF-8 encoding if
it sees a non-ASCII character in the input and the input encoding is not
specified. They also commit to an encoding with the first non-ASCII character
and does not change the output encoding if the input encoding changes. The
L<Encode> module is now used for all output encoding rather than PerlIO
layers, which fixes earlier problems with output to scalars.
Pod::Text 5.00 and later, included in Perl 5.37.7, default, on non-EBCDIC
systems, to UTF-8 encoding if it sees a non-ASCII character in the input and
the input encoding is not specified. They also commit to an encoding with the
first non-ASCII character and does not change the output encoding if the input
encoding changes. The L<Encode> module is now used for all output encoding
rather than PerlIO layers, which fixes earlier problems with output to
scalars.
=head1 CAVEATS
Expand Down

0 comments on commit af5a367

Please sign in to comment.