diff options
Diffstat (limited to 'pod/perl5291delta.pod')
-rw-r--r-- | pod/perl5291delta.pod | 330 |
1 files changed, 330 insertions, 0 deletions
diff --git a/pod/perl5291delta.pod b/pod/perl5291delta.pod new file mode 100644 index 0000000000..37fba83bb4 --- /dev/null +++ b/pod/perl5291delta.pod @@ -0,0 +1,330 @@ +=encoding utf8 + +=head1 NAME + +perl5291delta - what is new for perl v5.29.1 + +=head1 DESCRIPTION + +This document describes differences between the 5.29.0 release and the 5.29.1 +release. + +If you are upgrading from an earlier release such as 5.28.0, first read +L<perl5290delta>, which describes differences between 5.28.0 and 5.29.0. + +=head1 Incompatible Changes + +=head2 Delimiters must now be graphemes + +See L<perldeprecation/Use of unassigned code point or non-standalone grapheme +for a delimiter.> + +=head2 Some formerly deprecated uses of an unescaped left brace C<"{"> in +regular expression patterns are now illegal + +But to avoid breaking code unnecessarily, most instances that issued a +deprecation warning, remain legal and now have a non-deprecation warning +raised. See L<perldeprecation/Unescaped left braces in regular expressions>. + +=head1 Performance Enhancements + +=over 4 + +=item * + +Translating from UTF-8 into the code point it represents now is done via a +deterministic finite automaton, speeding it up. As a typical example, +C<ord("\x7fff")> now requires 12% fewer instructions than before. The +performance of checking that a sequence of bytes is valid UTF-8 is similarly +improved, again by using a dfa. + +=back + +=head1 Modules and Pragmata + +=head2 Updated Modules and Pragmata + +=over 4 + +=item * + +L<bignum> has been upgraded from version 0.49 to 0.50. + +=item * + +L<Compress::Raw::Bzip2> has been upgraded from version 2.074 to 2.081. + +=item * + +L<Compress::Raw::Zlib> has been upgraded from version 2.076 to 2.081. + +=item * + +L<Config::Perl::V> has been upgraded from version 0.29 to 0.30. + +=item * + +L<DB_File> has been upgraded from version 1.840 to 1.842. + +=item * + +L<Devel::PPPort> has been upgraded from version 3.40 to 3.42. + +=item * + +L<Digest::SHA> has been upgraded from version 6.01 to 6.02. + +=item * + +L<experimental> has been upgraded from version 0.019 to 0.020. + +=item * + +L<ExtUtils::Manifest> has been upgraded from version 1.70 to 1.71. + +=item * + +L<File::Temp> has been upgraded from version 0.2304 to 0.2308. + +=item * + +IO-Compress has been upgraded from version 2.074 to 2.081. + +=item * + +L<IPC::Cmd> has been upgraded from version 1.00 to 1.02. + +=item * + +L<Locale::Codes> has been upgraded from version 3.56 to 3.57. + +=item * + +L<Math::BigInt> has been upgraded from version 1.999811 to 1.999813. + +=item * + +L<Math::BigInt::FastCalc> has been upgraded from version 0.5006 to 0.5007. + +=item * + +L<Math::BigRat> has been upgraded from version 0.2613 to 0.2614. + +=item * + +L<Module::CoreList> has been upgraded from version 5.20180626 to 5.20180720. + +=item * + +L<parent> has been upgraded from version 0.236 to 0.237. + +=item * + +L<perlfaq> has been upgraded from version 5.021011 to 5.20180605. + +=item * + +podlators has been upgraded from version 4.10 to 4.11. + +=item * + +L<Storable> has been upgraded from version 3.08 to 3.11. + +=item * + +L<Test::Simple> has been upgraded from version 1.302133 to 1.302138. + +=item * + +L<Thread::Queue> has been upgraded from version 3.12 to 3.13. + +=item * + +L<Time::Local> has been upgraded from version 1.25 to 1.28. + +=item * + +L<version> has been upgraded from version 0.9923 to 0.9924. + +=back + +=head1 Documentation + +=head2 Changes to Existing Documentation + +We have attempted to update the documentation to reflect the changes listed in +this document. If you find any we have missed, send email to +L<perlbug@perl.org|mailto:perlbug@perl.org>. + +Additionally, the following selected changes have been made: + +=head3 L<perlapi> + +=over 4 + +=item * + +C<AvFILL()> was wrongly listed as deprecated. This has been corrected. +L<[perl #133278]|https://rt.perl.org/Ticket/Display.html?id=133278> + +=back + +=head3 L<perlop> + +=over 4 + +=item * + +The behaviour of C<tr> when the delimiter is an apostrophe has been clarified. +In particular, hyphens aren't special, and C<\x{}> isn't interpolated. +L<[perl #130679]|https://rt.perl.org/Ticket/Display.html?id=130679> + +=back + +=head1 Diagnostics + +The following additions or changes have been made to diagnostic output, +including warnings and fatal error messages. For the complete list of +diagnostic messages, see L<perldiag>. + +=head2 Changes to Existing Diagnostics + +=over 4 + +=item * + +As noted under L<Incompatible Changes> above, the deprecation warning +"Unescaped left brace in regex is deprecated here (and will be fatal in Perl +5.30), passed through in regex; marked by S<<-- HERE> in m/%s/" has been +changed to the non-deprecation warning "Unescaped left brace in regex is passed +through in regex; marked by S<<-- HERE> in m/%s/". + +=back + +=head1 Testing + +Tests were added and changed to reflect the other additions and changes in this +release. + +=head1 Platform Support + +=head2 Platform-Specific Notes + +=over 4 + +=item HP-UX 11.11 + +An obscure problem in C<pack()> when compiling with HP C-ANSI-C has been fixed +by disabling optimizations in F<pp_pack.c>. + +=item Windows + +=over 4 + +=item * + +The C<USE_CPLUSPLUS> build option which has long been available in +F<win32/Makefile> (for B<nmake>) and F<win32/makefile.mk> (for B<dmake>) is now +also available in F<win32/GNUmakefile> (for B<gmake>). + +=item * + +The B<nmake> makefile no longer defaults to Visual C++ 6.0 (a very old version +which is unlikely to be widely used today). As a result, it is now a +requirement to specify the C<CCTYPE> since there is no obvious choice of which +modern version to default to instead. Failure to specify C<CCTYPE> will result +in an error being output and the build will stop. + +(The B<dmake> and B<gmake> makefiles will automatically detect which compiler +is being used, so do not require C<CCTYPE> to be set. This feature has not yet +been added to the B<nmake> makefile.) + +=back + +=back + +=head1 Selected Bug Fixes + +=over 4 + +=item * + +Compilation under C<-DPERL_MEM_LOG> and C<-DNO_LOCALE> have been fixed. + +=item * + +Perl 5.28 introduced an C<index()> optimization when comparing to -1 (or +indirectly, e.g. >= 0). When this optimization was triggered inside a C<when> +clause it caused a warning ("Argument %s isn't numeric in smart match"). This +has now been fixed. +L<[perl #133368]|https://rt.perl.org/Ticket/Display.html?id=133368> + +=back + +=head1 Acknowledgements + +Perl 5.29.1 represents approximately 3 weeks of development since Perl 5.29.0 +and contains approximately 68,000 lines of changes across 510 files from 18 +authors. + +Excluding auto-generated files, documentation and release tools, there were +approximately 62,000 lines of changes to 320 .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.29.1: + +Chris 'BinGOs' Williams, Craig A. Berry, Dagfinn Ilmari Mannsåker, Daniel +Dragan, David Mitchell, François Perrad, H.Merijn Brand, Hugo van der Sanden, +James E Keenan, Jerry D. Hedden, Jim Cromie, Karen Etheridge, Karl Williamson, +Nicholas Clark, Sawyer X, Steve Hay, Tina Müller, Yves Orton. + +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 |