diff options
Diffstat (limited to 'upstream/mageia-cauldron/man1/perl5221delta.1')
-rw-r--r-- | upstream/mageia-cauldron/man1/perl5221delta.1 | 305 |
1 files changed, 305 insertions, 0 deletions
diff --git a/upstream/mageia-cauldron/man1/perl5221delta.1 b/upstream/mageia-cauldron/man1/perl5221delta.1 new file mode 100644 index 00000000..19a233c6 --- /dev/null +++ b/upstream/mageia-cauldron/man1/perl5221delta.1 @@ -0,0 +1,305 @@ +.\" -*- mode: troff; coding: utf-8 -*- +.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. +.ie n \{\ +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds C` +. ds C' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is >0, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.\" +.\" Avoid warning from groff about undefined register 'F'. +.de IX +.. +.nr rF 0 +.if \n(.g .if rF .nr rF 1 +.if (\n(rF:(\n(.g==0)) \{\ +. if \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. if !\nF==2 \{\ +. nr % 0 +. nr F 2 +. \} +. \} +.\} +.rr rF +.\" ======================================================================== +.\" +.IX Title "PERL5221DELTA 1" +.TH PERL5221DELTA 1 2023-11-28 "perl v5.38.2" "Perl Programmers Reference Guide" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH NAME +perl5221delta \- what is new for perl v5.22.1 +.SH DESCRIPTION +.IX Header "DESCRIPTION" +This document describes differences between the 5.22.0 release and the 5.22.1 +release. +.PP +If you are upgrading from an earlier release such as 5.20.0, first read +perl5220delta, which describes differences between 5.20.0 and 5.22.0. +.SH "Incompatible Changes" +.IX Header "Incompatible Changes" +There are no changes intentionally incompatible with 5.20.0 other than the +following single exception, which we deemed to be a sensible change to make in +order to get the new \f(CW\*(C`\eb{wb}\*(C'\fR and (in particular) \f(CW\*(C`\eb{sb}\*(C'\fR features sane +before people decided they're worthless because of bugs in their Perl 5.22.0 +implementation and avoided them in the future. +If any others exist, they are bugs, and we request that you submit a report. +See "Reporting Bugs" below. +.SS "Bounds Checking Constructs" +.IX Subsection "Bounds Checking Constructs" +Several bugs, including a segmentation fault, have been fixed with the bounds +checking constructs (introduced in Perl 5.22) \f(CW\*(C`\eb{gcb}\*(C'\fR, \f(CW\*(C`\eb{sb}\*(C'\fR, \f(CW\*(C`\eb{wb}\*(C'\fR, +\&\f(CW\*(C`\eB{gcb}\*(C'\fR, \f(CW\*(C`\eB{sb}\*(C'\fR, and \f(CW\*(C`\eB{wb}\*(C'\fR. All the \f(CW\*(C`\eB{}\*(C'\fR ones now match an empty +string; none of the \f(CW\*(C`\eb{}\*(C'\fR ones do. +[GH #14976] <https://github.com/Perl/perl5/issues/14976> +.SH "Modules and Pragmata" +.IX Header "Modules and Pragmata" +.SS "Updated Modules and Pragmata" +.IX Subsection "Updated Modules and Pragmata" +.IP \(bu 4 +Module::CoreList has been upgraded from version 5.20150520 to 5.20151213. +.IP \(bu 4 +PerlIO::scalar has been upgraded from version 0.22 to 0.23. +.IP \(bu 4 +POSIX has been upgraded from version 1.53 to 1.53_01. +.Sp +If \f(CW\*(C`POSIX::strerror\*(C'\fR was passed \f(CW$!\fR as its argument then it accidentally +cleared \f(CW$!\fR. This has been fixed. +[GH #14951] <https://github.com/Perl/perl5/issues/14951> +.IP \(bu 4 +Storable has been upgraded from version 2.53 to 2.53_01. +.IP \(bu 4 +warnings has been upgraded from version 1.32 to 1.34. +.Sp +The \f(CW\*(C`warnings::enabled\*(C'\fR example now actually uses \f(CW\*(C`warnings::enabled\*(C'\fR. +[GH #14905] <https://github.com/Perl/perl5/issues/14905> +.IP \(bu 4 +Win32 has been upgraded from version 0.51 to 0.52. +.Sp +This has been updated for Windows 8.1, 10 and 2012 R2 Server. +.SH Documentation +.IX Header "Documentation" +.SS "Changes to Existing Documentation" +.IX Subsection "Changes to Existing Documentation" +\fIperltie\fR +.IX Subsection "perltie" +.IP \(bu 4 +The usage of \f(CW\*(C`FIRSTKEY\*(C'\fR and \f(CW\*(C`NEXTKEY\*(C'\fR has been clarified. +.PP +\fIperlvar\fR +.IX Subsection "perlvar" +.IP \(bu 4 +The specific true value of \f(CW$!{E...}\fR is now documented, noting that it is +subject to change and not guaranteed. +.SH Diagnostics +.IX Header "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 perldiag. +.SS "Changes to Existing Diagnostics" +.IX Subsection "Changes to Existing Diagnostics" +.IP \(bu 4 +The \f(CW\*(C`printf\*(C'\fR and \f(CW\*(C`sprintf\*(C'\fR builtins are now more careful about the warnings +they emit: argument reordering now disables the "redundant argument" warning in +all cases. +[GH #14772] <https://github.com/Perl/perl5/issues/14772> +.SH "Configuration and Compilation" +.IX Header "Configuration and Compilation" +.IP \(bu 4 +Using the \f(CW\*(C`NO_HASH_SEED\*(C'\fR define in combination with the default hash algorithm +\&\f(CW\*(C`PERL_HASH_FUNC_ONE_AT_A_TIME_HARD\*(C'\fR resulted in a fatal error while compiling +the interpreter, since Perl 5.17.10. This has been fixed. +.IP \(bu 4 +Configuring with ccflags containing quotes (e.g. +\&\f(CW\*(C`\-Accflags=\*(Aq\-DAPPLLIB_EXP=\e"/usr/libperl\e"\*(Aq\*(C'\fR) was broken in Perl 5.22.0 +but has now been fixed again. +[GH #14732] <https://github.com/Perl/perl5/issues/14732> +.SH "Platform Support" +.IX Header "Platform Support" +.SS "Platform-Specific Notes" +.IX Subsection "Platform-Specific Notes" +.IP IRIX 4 +.IX Item "IRIX" +.RS 4 +.PD 0 +.IP \(bu 4 +.PD +Under some circumstances IRIX stdio \fBfgetc()\fR and \fBfread()\fR set the errno to +\&\f(CW\*(C`ENOENT\*(C'\fR, which made no sense according to either IRIX or POSIX docs. Errno +is now cleared in such cases. +[GH #14557] <https://github.com/Perl/perl5/issues/14557> +.IP \(bu 4 +Problems when multiplying long doubles by infinity have been fixed. +[GH #14993] <https://github.com/Perl/perl5/issues/14993> +.IP \(bu 4 +All tests pass now on IRIX with the default build configuration. +.RE +.RS 4 +.RE +.SH "Selected Bug Fixes" +.IX Header "Selected Bug Fixes" +.IP \(bu 4 +\&\f(CW\*(C`qr/(?[ () ])/\*(C'\fR no longer segfaults, giving a syntax error message instead. +[GH #14851] <https://github.com/Perl/perl5/issues/14851> +.IP \(bu 4 +Regular expression possessive quantifier Perl 5.20 regression now fixed. +\&\f(CW\*(C`qr/\*(C'\fR\fIPAT\fR\f(CW\*(C`{\*(C'\fR\fImin\fR,\fImax\fR\f(CW\*(C`}+\*(C'\fR\f(CW\*(C`/\*(C'\fR is supposed to behave identically to +\&\f(CW\*(C`qr/(?>\*(C'\fR\fIPAT\fR\f(CW\*(C`{\*(C'\fR\fImin\fR,\fImax\fR\f(CW\*(C`})/\*(C'\fR. Since Perl 5.20, this didn't work +if \fImin\fR and \fImax\fR were equal. +[GH #14857] <https://github.com/Perl/perl5/issues/14857> +.IP \(bu 4 +Certain syntax errors in +"Extended Bracketed Character Classes" in perlrecharclass caused panics instead +of the proper error message. This has now been fixed. +[GH #15016] <https://github.com/Perl/perl5/issues/15016> +.IP \(bu 4 +\&\f(CW\*(C`BEGIN <>\*(C'\fR no longer segfaults and properly produces an error message. +[GH #13546] <https://github.com/Perl/perl5/issues/13546> +.IP \(bu 4 +A regression from Perl 5.20 has been fixed, in which some syntax errors in +\&\f(CW\*(C`(?[...])\*(C'\fR constructs +within regular expression patterns could cause a segfault instead of a proper +error message. +[GH #14933] <https://github.com/Perl/perl5/issues/14933> +.IP \(bu 4 +Another problem with +\&\f(CW\*(C`(?[...])\*(C'\fR +constructs has been fixed wherein things like \f(CW\*(C`\ec]\*(C'\fR could cause panics. +[GH #14934] <https://github.com/Perl/perl5/issues/14934> +.IP \(bu 4 +In Perl 5.22.0, the logic changed when parsing a numeric parameter to the \-C +option, such that the successfully parsed number was not saved as the option +value if it parsed to the end of the argument. +[GH #14748] <https://github.com/Perl/perl5/issues/14748> +.IP \(bu 4 +Warning fatality is now ignored when rewinding the stack. This prevents +infinite recursion when the now fatal error also causes rewinding of the stack. +[GH #14319] <https://github.com/Perl/perl5/issues/14319> +.IP \(bu 4 +A crash with \f(CW\*(C`%::=(); J\->${\e"::"}\*(C'\fR has been fixed. +[GH #14790] <https://github.com/Perl/perl5/issues/14790> +.IP \(bu 4 +Nested quantifiers such as \f(CW\*(C`/.{1}??/\*(C'\fR should cause perl to throw a fatal +error, but were being silently accepted since Perl 5.20.0. This has been +fixed. +[GH #14960] <https://github.com/Perl/perl5/issues/14960> +.IP \(bu 4 +Regular expression sequences such as \f(CW\*(C`/(?i/\*(C'\fR (and similarly with other +recognized flags or combination of flags) should cause perl to throw a fatal +error, but were being silently accepted since Perl 5.18.0. This has been +fixed. +[GH #14931] <https://github.com/Perl/perl5/issues/14931> +.IP \(bu 4 +A bug in hexadecimal floating point literal support meant that high-order bits +could be lost in cases where mantissa overflow was caused by too many trailing +zeros in the fractional part. This has been fixed. +[GH #15032] <https://github.com/Perl/perl5/issues/15032> +.IP \(bu 4 +Another hexadecimal floating point bug, causing low-order bits to be lost in +cases where the last hexadecimal digit of the mantissa has bits straddling the +limit of the number of bits allowed for the mantissa, has also been fixed. +[GH #15033] <https://github.com/Perl/perl5/issues/15033> +.IP \(bu 4 +Further hexadecimal floating point bugs have been fixed: In some circumstances, +the \f(CW%a\fR format specifier could variously lose the sign of the negative zero, +fail to display zeros after the radix point with the requested precision, or +even lose the radix point after the leftmost hexadecimal digit completely. +.IP \(bu 4 +A crash caused by incomplete expressions within \f(CW\*(C`/(?[ ])/\*(C'\fR (e.g. +\&\f(CW\*(C`/(?[[0]+()+])/\*(C'\fR) has been fixed. +[GH #15045] <https://github.com/Perl/perl5/issues/15045> +.SH Acknowledgements +.IX Header "Acknowledgements" +Perl 5.22.1 represents approximately 6 months of development since Perl 5.22.0 +and contains approximately 19,000 lines of changes across 130 files from 27 +authors. +.PP +Excluding auto-generated files, documentation and release tools, there were +approximately 1,700 lines of changes to 44 .pm, .t, .c and .h files. +.PP +Perl continues to flourish into its third decade thanks to a vibrant community +of users and developers. The following people are known to have contributed +the improvements that became Perl 5.22.1: +.PP +Aaron Crane, Abigail, Andy Broad, Aristotle Pagaltzis, Chase Whitener, Chris +\&'BinGOs' Williams, Craig A. Berry, Daniel Dragan, David Mitchell, Father +Chrysostomos, Herbert Breunung, Hugo van der Sanden, James E Keenan, Jan +Dubois, Jarkko Hietaniemi, Karen Etheridge, Karl Williamson, Lukas Mai, Matthew +Horsfall, Peter Martini, Rafael Garcia-Suarez, Ricardo Signes, Shlomi Fish, +Sisyphus, Steve Hay, Tony Cook, Victor Adam. +.PP +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. +.PP +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. +.PP +For a more complete list of all of Perl's historical contributors, please see +the \fIAUTHORS\fR file in the Perl source distribution. +.SH "Reporting Bugs" +.IX Header "Reporting Bugs" +If you find what you think is a bug, you might check the articles recently +posted to the comp.lang.perl.misc newsgroup and the perl bug database at +https://rt.perl.org/ . There may also be information at +http://www.perl.org/ , the Perl Home Page. +.PP +If you believe you have an unreported bug, please run the 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 \f(CW\*(C`perl \-V\*(C'\fR, +will be sent off to perlbug@perl.org to be analysed by the Perl porting team. +.PP +If the bug you are reporting has security implications, which make it +inappropriate to send to a publicly archived mailing list, then please send it +to perl5\-security\-report@perl.org. This points to a closed subscription +unarchived mailing list, which includes all the core committers, who will be +able to help assess the impact of issues, figure out a resolution, and help +co-ordinate the release of patches to mitigate or fix the problem across all +platforms on which Perl is supported. Please only use this address for +security issues in the Perl core, not for modules independently distributed on +CPAN. +.SH "SEE ALSO" +.IX Header "SEE ALSO" +The \fIChanges\fR file for an explanation of how to view exhaustive details on +what changed. +.PP +The \fIINSTALL\fR file for how to build Perl. +.PP +The \fIREADME\fR file for general stuff. +.PP +The \fIArtistic\fR and \fICopying\fR files for copyright information. |