X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/9f30ef19956ec81727b42818cf83fbb801de3a82..cc1cbb0666e28628f59cb4250463295e43646214:/pod/perldelta.pod diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 40a5961..9e236c5 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -5,15 +5,15 @@ [ this is a template for a new perldelta file. Any text flagged as XXX needs to be processed before release. ] -perldelta - what is new for perl v5.29.11 +perldelta - what is new for perl v5.31.1 =head1 DESCRIPTION -This document describes differences between the 5.29.10 release and the 5.29.11 +This document describes differences between the 5.31.0 release and the 5.31.1 release. -If you are upgrading from an earlier release such as 5.29.9, first read -L, which describes differences between 5.29.9 and 5.29.10. +If you are upgrading from an earlier release such as 5.30.0, first read +L, which describes differences between 5.30.0 and 5.31.0. =head1 Notice @@ -125,13 +125,18 @@ XXX Remove this section if not applicable. =item * -L has been upgraded from version A.xx to B.yy. +L has been upgraded from version 1.40 to 1.41. -If there was something important to note about this change, include that here. +The supplied I is now always honoured for UDP sockets for calls to +the send() method. [perl #133936] =item * -L has been upgraded from version 5.20190420 to 5.20190520. +L has been upgraded from version 3.15 to 3.16. + +Regular expressions objects weren't properly counted for object id +purposes on retrieve. This would corrupt the resulting structure, or +cause a runtime error in some cases. [perl #134179] =back @@ -141,7 +146,9 @@ L has been upgraded from version 5.20190420 to 5.20190520. =item * -XXX +Pod::Parser has been removed from the core distribution. +It still is available for download from CPAN. This resolves [perl +#119439]. =back @@ -352,7 +359,8 @@ well. =item * -XXX +L no longer stringifies the exception when +C is true. [perl #134175] =back @@ -367,7 +375,87 @@ files in F and F are best summarized in L. =item * -XXX +close() on a pipe now preemptively clears the PerlIO object from the +IO SV. This prevents a second attempt to close the already closed +PerlIO object if a signal handler calls die() or exit() while close() +is waiting for the child process to complete. [perl #122112] + +=item * + +C<< sprintf("%.*a", -10000, $x) >> would cause a buffer overflow due +to mishandling of the negative precision value. [perl #134008] + +=item * + +scalar() on a reference could cause an erroneous assertion failure +during compilation. [perl #134045] + +=item * + +Extraordinarily large (over 2GB) floating point format widths could +cause an integer overflow in the underlying call to snprintf(), +resulting in an assertion. Formatted floating point widths are now +limited to the range of int, the return value of snprintf(). [perl +#133913] + +=item * + +Parsing the following constructs within a sub-parse (such as with +C<"${code here}"> or C) has changed to match how +they're parsed normally: + +=over + +=item * + +C no longer produces a syntax error. + +=item * + +Code like C now properly produces an "Ambiguous use +of ${time} resolved to $time at ..." warning when warnings are enabled. + +=item * + +C<@x {"a"}> (with the space) in a sub-parse now properly produces a +"better written as" warning when warnings are enabled. + +=item * + +attributes can now be used in a sub-parse. + +=back + +[perl #133850] + +=item * + +Incomplete hex and binary literals like C<0x> and C<0b> are now +treated as if the C or C is part of the next token. [perl +#134125] + +=item * + +A spurious C<)> in a subparse, such as in C or +C<"...${code here}">, no longer confuses the parser. + +Previously a subparse was bracketed with generated C<(> and C<)> +tokens, so a spurious C<)> would close the construct without doing the +normal subparse clean up, confusing the parser and possible causing an +assertion failure. + +Such constructs are now surrounded by artificial tokens that can't be +included in the source. [perl #130585] + +=item * + +Reference assignment of a sub, such as C<\&foo = \&bar;>, silently did +nothing in the C package. [perl #134072] + +=item * + +sv_gets() now recovers better if the target SV is modified by a signal +handler. [perl #134035] =back @@ -407,7 +495,7 @@ died, add a short obituary here. XXX Generate this with: - perl Porting/acknowledgements.pl v5.29.10..HEAD + perl Porting/acknowledgements.pl v5.31.0..HEAD =head1 Reporting Bugs