diff options
Diffstat (limited to 'upstream/debian-bookworm/man1/perl5203delta.1')
-rw-r--r-- | upstream/debian-bookworm/man1/perl5203delta.1 | 299 |
1 files changed, 299 insertions, 0 deletions
diff --git a/upstream/debian-bookworm/man1/perl5203delta.1 b/upstream/debian-bookworm/man1/perl5203delta.1 new file mode 100644 index 00000000..d487aa21 --- /dev/null +++ b/upstream/debian-bookworm/man1/perl5203delta.1 @@ -0,0 +1,299 @@ +.\" 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 "PERL5203DELTA 1" +.TH PERL5203DELTA 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" +perl5203delta \- what is new for perl v5.20.3 +.SH "DESCRIPTION" +.IX Header "DESCRIPTION" +This document describes differences between the 5.20.2 release and the 5.20.3 +release. +.PP +If you are upgrading from an earlier release such as 5.20.1, first read +perl5202delta, which describes differences between 5.20.1 and 5.20.2. +.SH "Incompatible Changes" +.IX Header "Incompatible Changes" +There are no changes intentionally incompatible with 5.20.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 +Errno has been upgraded from version 1.20_05 to 1.20_06. +.Sp +Add \fB\-P\fR to the pre-processor command-line on \s-1GCC 5.\s0 \s-1GCC\s0 added extra line +directives, breaking parsing of error code definitions. +[\s-1GH\s0 #14491] <https://github.com/Perl/perl5/issues/14491> +.IP "\(bu" 4 +Module::CoreList has been upgraded from version 5.20150214 to 5.20150822. +.Sp +Updated to cover the latest releases of Perl. +.IP "\(bu" 4 +perl5db.pl has been upgraded from 1.44 to 1.44_01. +.Sp +The debugger would cause an assertion failure. +[\s-1GH\s0 #14605] <https://github.com/Perl/perl5/issues/14605> +.SH "Documentation" +.IX Header "Documentation" +.SS "Changes to Existing Documentation" +.IX Subsection "Changes to Existing Documentation" +\fIperlfunc\fR +.IX Subsection "perlfunc" +.IP "\(bu" 4 +Mention that \f(CW\*(C`study()\*(C'\fR is currently a no-op. +.PP +\fIperlguts\fR +.IX Subsection "perlguts" +.IP "\(bu" 4 +The \s-1OOK\s0 example has been updated to account for \s-1COW\s0 changes and a change in the +storage of the offset. +.PP +\fIperlhacktips\fR +.IX Subsection "perlhacktips" +.IP "\(bu" 4 +Documentation has been added illustrating the perils of assuming the contents +of static memory pointed to by the return values of Perl wrappers for C library +functions doesn't change. +.PP +\fIperlpodspec\fR +.IX Subsection "perlpodspec" +.IP "\(bu" 4 +The specification of the \s-1POD\s0 language is changing so that the default encoding +of PODs that aren't in \s-1UTF\-8\s0 (unless otherwise indicated) is \s-1CP1252\s0 instead of +\&\s-1ISO\-8859\-1\s0 (Latin1). +.SH "Utility Changes" +.IX Header "Utility Changes" +.SS "h2ph" +.IX Subsection "h2ph" +.IP "\(bu" 4 +\&\fBh2ph\fR now handles hexadecimal constants in the compiler's predefined macro +definitions, as visible in \f(CW$Config{cppsymbols}\fR. +[\s-1GH\s0 #14491] <https://github.com/Perl/perl5/issues/14491> +.SH "Testing" +.IX Header "Testing" +.IP "\(bu" 4 +\&\fIt/perf/taint.t\fR has been added to see if optimisations with taint issues are +keeping things fast. +.IP "\(bu" 4 +\&\fIt/porting/re_context.t\fR has been added to test that utf8 and its +dependencies only use the subset of the \f(CW\*(C`$1..$n\*(C'\fR capture vars that +\&\fBPerl_save_re_context()\fR is hard-coded to localize, because that function has no +efficient way of determining at runtime what vars to localize. +.SH "Platform Support" +.IX Header "Platform Support" +.SS "Platform-Specific Notes" +.IX Subsection "Platform-Specific Notes" +.IP "Win32" 4 +.IX Item "Win32" +.RS 4 +.PD 0 +.IP "\(bu" 4 +.PD +Previously, when compiling with a 64\-bit Visual \*(C+, every Perl \s-1XS\s0 module +(including \s-1CPAN\s0 ones) and Perl aware C file would unconditionally have around a +dozen warnings from \fIhv_func.h\fR. These warnings have been silenced. \s-1GCC\s0 (all +bitness) and 32\-bit Visual \*(C+ were not affected. +.IP "\(bu" 4 +\&\fBminiperl.exe\fR is now built with \fB\-fno\-strict\-aliasing\fR, allowing 64\-bit +builds to complete with \s-1GCC 4.8.\s0 +[\s-1GH\s0 #14556] <https://github.com/Perl/perl5/issues/14556> +.RE +.RS 4 +.RE +.SH "Selected Bug Fixes" +.IX Header "Selected Bug Fixes" +.IP "\(bu" 4 +Repeated global pattern matches in scalar context on large tainted strings were +exponentially slow depending on the current match position in the string. +[\s-1GH\s0 #14238] <https://github.com/Perl/perl5/issues/14238> +.IP "\(bu" 4 +The original visible value of \f(CW$/\fR is now preserved +when it is set to an invalid value. Previously if you set \f(CW$/\fR to a reference +to an array, for example, perl would produce a runtime error and not set PL_rs, +but Perl code that checked \f(CW$/\fR would see the array reference. +[\s-1GH\s0 #14245] <https://github.com/Perl/perl5/issues/14245> +.IP "\(bu" 4 +Perl 5.14.0 introduced a bug whereby \f(CW\*(C`eval { LABEL: }\*(C'\fR would crash. This has +been fixed. +[\s-1GH\s0 #14438] <https://github.com/Perl/perl5/issues/14438> +.IP "\(bu" 4 +Extending an array cloned from a parent thread could result in \*(L"Modification of +a read-only value attempted\*(R" errors when attempting to modify the new elements. +[\s-1GH\s0 #14605] <https://github.com/Perl/perl5/issues/14605> +.IP "\(bu" 4 +Several cases of data used to store environment variable contents in core C +code being potentially overwritten before being used have been fixed. +[\s-1GH\s0 #14476] <https://github.com/Perl/perl5/issues/14476> +.IP "\(bu" 4 +\&\s-1UTF\-8\s0 variable names used in array indexes, unquoted \s-1UTF\-8\s0 HERE-document +terminators and \s-1UTF\-8\s0 function names all now work correctly. +[\s-1GH\s0 #14601] <https://github.com/Perl/perl5/issues/14601> +.IP "\(bu" 4 +A subtle bug introduced in Perl 5.20.2 involving \s-1UTF\-8\s0 in regular expressions +and sometimes causing a crash has been fixed. A new test script has been added +to test this fix; see under \*(L"Testing\*(R". +[\s-1GH\s0 #14600] <https://github.com/Perl/perl5/issues/14600> +.IP "\(bu" 4 +Some patterns starting with \f(CW\*(C`/.*..../\*(C'\fR matched against long strings have been +slow since Perl 5.8, and some of the form \f(CW\*(C`/.*..../i\*(C'\fR have been slow since +Perl 5.18. They are now all fast again. +[\s-1GH\s0 #14475] <https://github.com/Perl/perl5/issues/14475> +.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. +[\s-1GH\s0 #14319] <https://github.com/Perl/perl5/issues/14319> +.IP "\(bu" 4 +\&\f(CW\*(C`setpgrp($nonzero)\*(C'\fR (with one argument) was accidentally changed in Perl 5.16 +to mean \f(CWsetpgrp(0)\fR. This has been fixed. +.IP "\(bu" 4 +A crash with \f(CW\*(C`%::=(); J\->${\e"::"}\*(C'\fR has been fixed. +[\s-1GH\s0 #14790] <https://github.com/Perl/perl5/issues/14790> +.IP "\(bu" 4 +Regular expression possessive quantifier Perl 5.20 regression now fixed. +\&\f(CW\*(C`qr/\*(C'\fR\fI\s-1PAT\s0\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\fI\s-1PAT\s0\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. +[\s-1GH\s0 #14857] <https://github.com/Perl/perl5/issues/14857> +.IP "\(bu" 4 +Code like \f(CW\*(C`/$a[/\*(C'\fR used to read the next line of input and treat it as though +it came immediately after the opening bracket. Some invalid code consequently +would parse and run, but some code caused crashes, so this is now disallowed. +[\s-1GH\s0 #14462] <https://github.com/Perl/perl5/issues/14462> +.SH "Acknowledgements" +.IX Header "Acknowledgements" +Perl 5.20.3 represents approximately 7 months of development since Perl 5.20.2 +and contains approximately 3,200 lines of changes across 99 files from 26 +authors. +.PP +Excluding auto-generated files, documentation and release tools, there were +approximately 1,500 lines of changes to 43 .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.20.3: +.PP +Alex Vandiver, Andy Dougherty, Aristotle Pagaltzis, Chris 'BinGOs' Williams, +Craig A. Berry, Dagfinn Ilmari Mannsåker, Daniel Dragan, David Mitchell, +Father Chrysostomos, H.Merijn Brand, James E Keenan, James McCoy, Jarkko +Hietaniemi, Karen Etheridge, Karl Williamson, kmx, Lajos Veres, Lukas Mai, +Matthew Horsfall, Petr Písař, Randy Stauner, Ricardo Signes, Sawyer X, Steve +Hay, 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 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 +\&\s-1CPAN.\s0 +.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. |