Initial Commit
This commit is contained in:
199
database/perl/lib/pods/perl5282delta.pod
Normal file
199
database/perl/lib/pods/perl5282delta.pod
Normal file
@@ -0,0 +1,199 @@
|
||||
=encoding utf8
|
||||
|
||||
=head1 NAME
|
||||
|
||||
perl5282delta - what is new for perl v5.28.2
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
This document describes differences between the 5.28.1 release and the 5.28.2
|
||||
release.
|
||||
|
||||
If you are upgrading from an earlier release such as 5.28.0, first read
|
||||
L<perl5281delta>, which describes differences between 5.28.0 and 5.28.1.
|
||||
|
||||
=head1 Incompatible Changes
|
||||
|
||||
=head2 Any set of digits in the Common script are legal in a script run of
|
||||
another script
|
||||
|
||||
There are several sets of digits in the Common script. C<[0-9]> is the most
|
||||
familiar. But there are also C<[\x{FF10}-\x{FF19}]> (FULLWIDTH DIGIT ZERO -
|
||||
FULLWIDTH DIGIT NINE), and several sets for use in mathematical notation, such
|
||||
as the MATHEMATICAL DOUBLE-STRUCK DIGITs. Any of these sets should be able to
|
||||
appear in script runs of, say, Greek. But the previous design overlooked all
|
||||
but the ASCII digits C<[0-9]>, so the design was flawed. This has been fixed,
|
||||
so is both a bug fix and an incompatibility.
|
||||
|
||||
All digits in a run still have to come from the same set of ten digits.
|
||||
|
||||
L<[perl #133547]|https://rt.perl.org/Ticket/Display.html?id=133547>
|
||||
|
||||
=head1 Modules and Pragmata
|
||||
|
||||
=head2 Updated Modules and Pragmata
|
||||
|
||||
=over 4
|
||||
|
||||
=item *
|
||||
|
||||
L<Module::CoreList> has been upgraded from version 5.20181129_28 to 5.20190419.
|
||||
|
||||
=item *
|
||||
|
||||
L<PerlIO::scalar> has been upgraded from version 0.29 to 0.30.
|
||||
|
||||
=item *
|
||||
|
||||
L<Storable> has been upgraded from version 3.08 to 3.08_01.
|
||||
|
||||
=back
|
||||
|
||||
=head1 Platform Support
|
||||
|
||||
=head2 Platform-Specific Notes
|
||||
|
||||
=over 4
|
||||
|
||||
=item Windows
|
||||
|
||||
The Windows Server 2003 SP1 Platform SDK build, with its early x64 compiler and
|
||||
tools, was accidentally broken in Perl 5.27.9. This has now been fixed.
|
||||
|
||||
=item Mac OS X
|
||||
|
||||
Perl's build and testing process on Mac OS X for C<-Duseshrplib> builds is now
|
||||
compatible with Mac OS X System Integrity Protection (SIP).
|
||||
|
||||
SIP prevents binaries in F</bin> (and a few other places) being passed the
|
||||
C<DYLD_LIBRARY_PATH> environment variable. For our purposes this prevents
|
||||
C<DYLD_LIBRARY_PATH> from being passed to the shell, which prevents that
|
||||
variable being passed to the testing or build process, so running C<perl>
|
||||
couldn't find F<libperl.dylib>.
|
||||
|
||||
To work around that, the initial build of the F<perl> executable expects to
|
||||
find F<libperl.dylib> in the build directory, and the library path is then
|
||||
adjusted during installation to point to the installed library.
|
||||
|
||||
L<[perl #126706]|https://rt.perl.org/Ticket/Display.html?id=126706>
|
||||
|
||||
=back
|
||||
|
||||
=head1 Selected Bug Fixes
|
||||
|
||||
=over 4
|
||||
|
||||
=item *
|
||||
|
||||
If an in-place edit is still in progress during global destruction and the
|
||||
process exit code (as stored in C<$?>) is zero, perl will now treat the
|
||||
in-place edit as successful, replacing the input file with any output produced.
|
||||
|
||||
This allows code like:
|
||||
|
||||
perl -i -ne 'print "Foo"; last'
|
||||
|
||||
to replace the input file, while code like:
|
||||
|
||||
perl -i -ne 'print "Foo"; die'
|
||||
|
||||
will not. Partly resolves [perl #133659].
|
||||
|
||||
L<[perl #133659]|https://rt.perl.org/Ticket/Display.html?id=133659>
|
||||
|
||||
=item *
|
||||
|
||||
A regression in Perl 5.28 caused the following code to fail
|
||||
|
||||
close(STDIN); open(CHILD, "|wc -l")'
|
||||
|
||||
because the child's stdin would be closed on exec. This has now been fixed.
|
||||
|
||||
=item *
|
||||
|
||||
C<pack "u", "invalid uuencoding"> now properly NUL terminates the zero-length
|
||||
SV produced.
|
||||
|
||||
L<[perl #132655]|https://rt.perl.org/Ticket/Display.html?id=132655>
|
||||
|
||||
=item *
|
||||
|
||||
Failing to compile a format now aborts compilation. Like other errors in
|
||||
sub-parses this could leave the parser in a strange state, possibly crashing
|
||||
perl if compilation continued.
|
||||
|
||||
L<[perl #132158]|https://rt.perl.org/Ticket/Display.html?id=132158>
|
||||
|
||||
=item *
|
||||
|
||||
See L</Any set of digits in the Common script are legal in a script run of
|
||||
another script>.
|
||||
|
||||
=back
|
||||
|
||||
=head1 Acknowledgements
|
||||
|
||||
Perl 5.28.2 represents approximately 4 months of development since Perl 5.28.1
|
||||
and contains approximately 2,500 lines of changes across 75 files from 13
|
||||
authors.
|
||||
|
||||
Excluding auto-generated files, documentation and release tools, there were
|
||||
approximately 1,200 lines of changes to 29 .pm, .t, .c and .h files.
|
||||
|
||||
Perl continues to flourish into its fourth decade thanks to a vibrant community
|
||||
of users and developers. The following people are known to have contributed
|
||||
the improvements that became Perl 5.28.2:
|
||||
|
||||
Aaron Crane, Abigail, Andy Dougherty, David Mitchell, Karen Etheridge, Karl
|
||||
Williamson, Leon Timmermans, Nicolas R., Sawyer X, Steve Hay, Tina Müller,
|
||||
Tony Cook, Zak B. Elep.
|
||||
|
||||
The list above is almost certainly incomplete as it is automatically generated
|
||||
from version control history. In particular, it does not include the names of
|
||||
the (very much appreciated) contributors who reported issues to the Perl bug
|
||||
tracker.
|
||||
|
||||
Many of the changes included in this version originated in the CPAN modules
|
||||
included in Perl's core. We're grateful to the entire CPAN community for
|
||||
helping Perl to flourish.
|
||||
|
||||
For a more complete list of all of Perl's historical contributors, please see
|
||||
the F<AUTHORS> file in the Perl source distribution.
|
||||
|
||||
=head1 Reporting Bugs
|
||||
|
||||
If you find what you think is a bug, you might check the perl bug database
|
||||
at L<https://rt.perl.org/> . There may also be information at
|
||||
L<http://www.perl.org/> , the Perl Home Page.
|
||||
|
||||
If you believe you have an unreported bug, please run the L<perlbug> program
|
||||
included with your release. Be sure to trim your bug down to a tiny but
|
||||
sufficient test case. Your bug report, along with the output of C<perl -V>,
|
||||
will be sent off to perlbug@perl.org to be analysed by the Perl porting team.
|
||||
|
||||
If the bug you are reporting has security implications which make it
|
||||
inappropriate to send to a publicly archived mailing list, then see
|
||||
L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION>
|
||||
for details of how to report the issue.
|
||||
|
||||
=head1 Give Thanks
|
||||
|
||||
If you wish to thank the Perl 5 Porters for the work we had done in Perl 5,
|
||||
you can do so by running the C<perlthanks> program:
|
||||
|
||||
perlthanks
|
||||
|
||||
This will send an email to the Perl 5 Porters list with your show of thanks.
|
||||
|
||||
=head1 SEE ALSO
|
||||
|
||||
The F<Changes> file for an explanation of how to view exhaustive details on
|
||||
what changed.
|
||||
|
||||
The F<INSTALL> file for how to build Perl.
|
||||
|
||||
The F<README> file for general stuff.
|
||||
|
||||
The F<Artistic> and F<Copying> files for copyright information.
|
||||
|
||||
=cut
|
||||
Reference in New Issue
Block a user