diff options
Diffstat (limited to 'upstream/debian-bookworm/man1/perl5243delta.1')
-rw-r--r-- | upstream/debian-bookworm/man1/perl5243delta.1 | 331 |
1 files changed, 331 insertions, 0 deletions
diff --git a/upstream/debian-bookworm/man1/perl5243delta.1 b/upstream/debian-bookworm/man1/perl5243delta.1 new file mode 100644 index 00000000..eb5abacf --- /dev/null +++ b/upstream/debian-bookworm/man1/perl5243delta.1 @@ -0,0 +1,331 @@ +.\" Automatically generated by Pod::Man 4.14 (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 +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +. 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 "PERL5243DELTA 1" +.TH PERL5243DELTA 1 "2023-11-25" "perl v5.36.0" "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" +perl5243delta \- what is new for perl v5.24.3 +.SH "DESCRIPTION" +.IX Header "DESCRIPTION" +This document describes differences between the 5.24.2 release and the 5.24.3 +release. +.PP +If you are upgrading from an earlier release such as 5.24.1, first read +perl5242delta, which describes differences between 5.24.1 and 5.24.2. +.SH "Security" +.IX Header "Security" +.SS "[\s-1CVE\-2017\-12837\s0] Heap buffer overflow in regular expression compiler" +.IX Subsection "[CVE-2017-12837] Heap buffer overflow in regular expression compiler" +Compiling certain regular expression patterns with the case-insensitive +modifier could cause a heap buffer overflow and crash perl. This has now been +fixed. +[\s-1GH\s0 #16021] <https://github.com/Perl/perl5/issues/16021> +.SS "[\s-1CVE\-2017\-12883\s0] Buffer over-read in regular expression parser" +.IX Subsection "[CVE-2017-12883] Buffer over-read in regular expression parser" +For certain types of syntax error in a regular expression pattern, the error +message could either contain the contents of a random, possibly large, chunk of +memory, or could crash perl. This has now been fixed. +[\s-1GH\s0 #16025] <https://github.com/Perl/perl5/issues/16025> +.ie n .SS "[\s-1CVE\-2017\-12814\s0] $ENV{$key} stack buffer overflow on Windows" +.el .SS "[\s-1CVE\-2017\-12814\s0] \f(CW$ENV{$key}\fP stack buffer overflow on Windows" +.IX Subsection "[CVE-2017-12814] $ENV{$key} stack buffer overflow on Windows" +A possible stack buffer overflow in the \f(CW%ENV\fR code on Windows has been fixed +by removing the buffer completely since it was superfluous anyway. +[\s-1GH\s0 #16051] <https://github.com/Perl/perl5/issues/16051> +.SH "Incompatible Changes" +.IX Header "Incompatible Changes" +There are no changes intentionally incompatible with 5.24.2. If any exist, +they are bugs, and we request that you submit a report. See \*(L"Reporting +Bugs\*(R" below. +.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.20170715_24 to +5.20170922_24. +.IP "\(bu" 4 +\&\s-1POSIX\s0 has been upgraded from version 1.65 to 1.65_01. +.IP "\(bu" 4 +Time::HiRes has been upgraded from version 1.9733 to 1.9741. +.Sp +[\s-1GH\s0 #15396] <https://github.com/Perl/perl5/issues/15396> +[\s-1GH\s0 #15401] <https://github.com/Perl/perl5/issues/15401> +[\s-1GH\s0 #15524] <https://github.com/Perl/perl5/issues/15524> +[cpan #120032] <https://rt.cpan.org/Public/Bug/Display.html?id=120032> +.SH "Configuration and Compilation" +.IX Header "Configuration and Compilation" +.IP "\(bu" 4 +When building with \s-1GCC 6\s0 and link-time optimization (the \fB\-flto\fR option to +\&\fBgcc\fR), \fIConfigure\fR was treating all probed symbols as present on the system, +regardless of whether they actually exist. This has been fixed. +[\s-1GH\s0 #15322] <https://github.com/Perl/perl5/issues/15322> +.IP "\(bu" 4 +\&\fIConfigure\fR now aborts if both \f(CW\*(C`\-Duselongdouble\*(C'\fR and \f(CW\*(C`\-Dusequadmath\*(C'\fR are +requested. +[\s-1GH\s0 #14944] <https://github.com/Perl/perl5/issues/14944> +.IP "\(bu" 4 +Fixed a bug in which \fIConfigure\fR could append \f(CW\*(C`\-quadmath\*(C'\fR to the archname +even if it was already present. +[\s-1GH\s0 #15423] <https://github.com/Perl/perl5/issues/15423> +.IP "\(bu" 4 +Clang builds with \f(CW\*(C`\-DPERL_GLOBAL_STRUCT\*(C'\fR or \f(CW\*(C`\-DPERL_GLOBAL_STRUCT_PRIVATE\*(C'\fR +have been fixed (by disabling Thread Safety Analysis for these configurations). +.SH "Platform Support" +.IX Header "Platform Support" +.SS "Platform-Specific Notes" +.IX Subsection "Platform-Specific Notes" +.IP "\s-1VMS\s0" 4 +.IX Item "VMS" +.RS 4 +.PD 0 +.IP "\(bu" 4 +.PD +\&\f(CW\*(C`configure.com\*(C'\fR now recognizes the VSI-branded C compiler. +.RE +.RS 4 +.RE +.IP "Windows" 4 +.IX Item "Windows" +.RS 4 +.PD 0 +.IP "\(bu" 4 +.PD +Building \s-1XS\s0 modules with \s-1GCC 6\s0 in a 64\-bit build of Perl failed due to +incorrect mapping of \f(CW\*(C`strtoll\*(C'\fR and \f(CW\*(C`strtoull\*(C'\fR. This has now been fixed. +[\s-1GH\s0 #16074] <https://github.com/Perl/perl5/issues/16074> +[cpan #121683] <https://rt.cpan.org/Public/Bug/Display.html?id=121683> +[cpan #122353] <https://rt.cpan.org/Public/Bug/Display.html?id=122353> +.RE +.RS 4 +.RE +.SH "Selected Bug Fixes" +.IX Header "Selected Bug Fixes" +.IP "\(bu" 4 +\&\f(CW\*(C`/@0{0*\->@*/*0\*(C'\fR and similar contortions used to crash, but no longer +do, but merely produce a syntax error. +[\s-1GH\s0 #15333] <https://github.com/Perl/perl5/issues/15333> +.IP "\(bu" 4 +\&\f(CW\*(C`do\*(C'\fR or \f(CW\*(C`require\*(C'\fR with an argument which is a reference or typeglob which, +when stringified, contains a null character, started crashing in Perl 5.20, but +has now been fixed. +[\s-1GH\s0 #15337] <https://github.com/Perl/perl5/issues/15337> +.IP "\(bu" 4 +Expressions containing an \f(CW\*(C`&&\*(C'\fR or \f(CW\*(C`||\*(C'\fR operator (or their synonyms \f(CW\*(C`and\*(C'\fR and +\&\f(CW\*(C`or\*(C'\fR) were being compiled incorrectly in some cases. If the left-hand side +consisted of either a negated bareword constant or a negated \f(CW\*(C`do {}\*(C'\fR block +containing a constant expression, and the right-hand side consisted of a +negated non-foldable expression, one of the negations was effectively ignored. +The same was true of \f(CW\*(C`if\*(C'\fR and \f(CW\*(C`unless\*(C'\fR statement modifiers, though with the +left-hand and right-hand sides swapped. This long-standing bug has now been +fixed. +[\s-1GH\s0 #15285] <https://github.com/Perl/perl5/issues/15285> +.IP "\(bu" 4 +\&\f(CW\*(C`reset\*(C'\fR with an argument no longer crashes when encountering stash entries +other than globs. +[\s-1GH\s0 #15314] <https://github.com/Perl/perl5/issues/15314> +.IP "\(bu" 4 +Assignment of hashes to, and deletion of, typeglobs named \f(CW*::::::\fR no longer +causes crashes. +[\s-1GH\s0 #15307] <https://github.com/Perl/perl5/issues/15307> +.IP "\(bu" 4 +Assignment variants of any bitwise ops under the \f(CW\*(C`bitwise\*(C'\fR feature would crash +if the left-hand side was an array or hash. +[\s-1GH\s0 #15346] <https://github.com/Perl/perl5/issues/15346> +.IP "\(bu" 4 +\&\f(CW\*(C`socket\*(C'\fR now leaves the error code returned by the system in \f(CW$!\fR on failure. +[\s-1GH\s0 #15383] <https://github.com/Perl/perl5/issues/15383> +.IP "\(bu" 4 +Parsing bad \s-1POSIX\s0 charclasses no longer leaks memory. +[\s-1GH\s0 #15382] <https://github.com/Perl/perl5/issues/15382> +.IP "\(bu" 4 +Since Perl 5.20, line numbers have been off by one when perl is invoked with +the \fB\-x\fR switch. This has been fixed. +[\s-1GH\s0 #15413] <https://github.com/Perl/perl5/issues/15413> +.IP "\(bu" 4 +Some obscure cases of subroutines and file handles being freed at the same time +could result in crashes, but have been fixed. The crash was introduced in Perl +5.22. +[\s-1GH\s0 #15435] <https://github.com/Perl/perl5/issues/15435> +.IP "\(bu" 4 +Some regular expression parsing glitches could lead to assertion failures with +regular expressions such as \f(CW\*(C`/(?<=/\*(C'\fR and \f(CW\*(C`/(?<!/\*(C'\fR. This has now been +fixed. +[\s-1GH\s0 #15332] <https://github.com/Perl/perl5/issues/15332> +.IP "\(bu" 4 +\&\f(CW\*(C`gethostent\*(C'\fR and similar functions now perform a null check internally, to +avoid crashing with the torsocks library. This was a regression from Perl +5.22. +[\s-1GH\s0 #15478] <https://github.com/Perl/perl5/issues/15478> +.IP "\(bu" 4 +Mentioning the same constant twice in a row (which is a syntax error) no longer +fails an assertion under debugging builds. This was a regression from Perl +5.20. +[\s-1GH\s0 #15017] <https://github.com/Perl/perl5/issues/15017> +.IP "\(bu" 4 +In Perl 5.24 \f(CW\*(C`fchown\*(C'\fR was changed not to accept negative one as an argument +because in some platforms that is an error. However, in some other platforms +that is an acceptable argument. This change has been reverted. +[\s-1GH\s0 #15523] <https://github.com/Perl/perl5/issues/15523>. +.IP "\(bu" 4 +\&\f(CW\*(C`@{x\*(C'\fR followed by a newline where \f(CW"x"\fR represents a control or non-ASCII +character no longer produces a garbled syntax error message or a crash. +[\s-1GH\s0 #15518] <https://github.com/Perl/perl5/issues/15518> +.IP "\(bu" 4 +A regression in Perl 5.24 with \f(CW\*(C`tr/\eN{U+...}/foo/\*(C'\fR when the code point was +between 128 and 255 has been fixed. +[\s-1GH\s0 #15475] <https://github.com/Perl/perl5/issues/15475>. +.IP "\(bu" 4 +Many issues relating to \f(CW\*(C`printf "%a"\*(C'\fR of hexadecimal floating point were +fixed. In addition, the \*(L"subnormals\*(R" (formerly known as \*(L"denormals\*(R") floating +point numbers are now supported both with the plain \s-1IEEE 754\s0 floating point +numbers (64\-bit or 128\-bit) and the x86 80\-bit \*(L"extended precision\*(R". Note that +subnormal hexadecimal floating point literals will give a warning about +\&\*(L"exponent underflow\*(R". +[\s-1GH\s0 #15495] <https://github.com/Perl/perl5/issues/15495> +[\s-1GH\s0 #15502] <https://github.com/Perl/perl5/issues/15502> +[\s-1GH\s0 #15503] <https://github.com/Perl/perl5/issues/15503> +[\s-1GH\s0 #15504] <https://github.com/Perl/perl5/issues/15504> +[\s-1GH\s0 #15505] <https://github.com/Perl/perl5/issues/15505> +[\s-1GH\s0 #15510] <https://github.com/Perl/perl5/issues/15510> +[\s-1GH\s0 #15512] <https://github.com/Perl/perl5/issues/15512> +.IP "\(bu" 4 +The parser could sometimes crash if a bareword came after \f(CW\*(C`evalbytes\*(C'\fR. +[\s-1GH\s0 #15586] <https://github.com/Perl/perl5/issues/15586> +.IP "\(bu" 4 +Fixed a place where the regex parser was not setting the syntax error correctly +on a syntactically incorrect pattern. +[\s-1GH\s0 #15565] <https://github.com/Perl/perl5/issues/15565> +.IP "\(bu" 4 +A vulnerability in Perl's \f(CW\*(C`sprintf\*(C'\fR implementation has been fixed by avoiding +a possible memory wrap. +[\s-1GH\s0 #15970] <https://github.com/Perl/perl5/issues/15970> +.SH "Acknowledgements" +.IX Header "Acknowledgements" +Perl 5.24.3 represents approximately 2 months of development since Perl 5.24.2 +and contains approximately 3,200 lines of changes across 120 files from 23 +authors. +.PP +Excluding auto-generated files, documentation and release tools, there were +approximately 1,600 lines of changes to 56 .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.24.3: +.PP +Aaron Crane, Craig A. Berry, Dagfinn Ilmari Mannsåker, Dan Collins, Daniel +Dragan, Dave Cross, David Mitchell, Eric Herman, Father Chrysostomos, H.Merijn +Brand, Hugo van der Sanden, James E Keenan, Jarkko Hietaniemi, John \s-1SJ\s0 +Anderson, Karl Williamson, Ken Brown, Lukas Mai, Matthew Horsfall, Stevan +Little, Steve Hay, Steven Humphrey, Tony Cook, Yves Orton. +.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 \s-1CPAN\s0 modules +included in Perl's core. We're grateful to the entire \s-1CPAN\s0 community for +helping Perl to flourish. +.PP +For a more complete list of all of Perl's historical contributors, please see +the \fI\s-1AUTHORS\s0\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 see +\&\*(L"\s-1SECURITY VULNERABILITY CONTACT INFORMATION\*(R"\s0 in perlsec for details of how to +report the issue. +.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 \fI\s-1INSTALL\s0\fR file for how to build Perl. +.PP +The \fI\s-1README\s0\fR file for general stuff. +.PP +The \fIArtistic\fR and \fICopying\fR files for copyright information. |