This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Reduce SelectSaver memory footprint
[perl5.git] / pod / perldelta.pod
index ad70e9a..ab2972d 100644 (file)
@@ -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.25.5
+perldelta - what is new for perl v5.25.6
 
 =head1 DESCRIPTION
 
-This document describes differences between the 5.25.4 release and the 5.25.5
+This document describes differences between the 5.25.5 release and the 5.25.6
 release.
 
-If you are upgrading from an earlier release such as 5.25.3, first read
-L<perl5254delta>, which describes differences between 5.25.3 and 5.25.4.
+If you are upgrading from an earlier release such as 5.25.4, first read
+L<perl5255delta>, which describes differences between 5.25.4 and 5.25.5.
 
 =head1 Notice
 
@@ -33,14 +33,7 @@ XXX Any security-related notices go here.  In particular, any security
 vulnerabilities closed should be noted here rather than in the
 L</Selected Bug Fixes> section.
 
-=head2 "Escaped" colons and relative paths in PATH
-
-On Unix systems, Perl treats any relative paths in the PATH environment
-variable as tainted when starting a new process.  Previously, it was
-allowing a backslash to escape a colon (unlike the OS), consequently
-allowing relative paths to be considered safe if the PATH was set to
-something like C</\:.>.  The check has been fixed to treat C<.> as tainted
-in that example.
+[ List each security issue as a =head2 entry ]
 
 =head1 Incompatible Changes
 
@@ -126,16 +119,11 @@ XXX
 
 =item *
 
-L<Filter::Simple> has been upgraded from version 0.92 to 0.93.
-
-It no longer treats C<no MyFilter> immediately following C<use MyFilter> as
-end-of-file.  [perl #107726]
+L<XXX> has been upgraded from version A.xx to B.yy.
 
 =item *
 
-L<Thread::Semaphore> has been upgraded from 2.12 to 2.13.
-
-Added the C<down_timed> method.
+L<SelectSaver> has been upgraded from version 1.02 to 1.03.
 
 =back
 
@@ -168,14 +156,13 @@ XXX Changes which significantly change existing files in F<pod/> go here.
 However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
 section.
 
-=head3 L<perlinterp>
+=head3 L<XXX>
 
 =over 4
 
 =item *
 
-L<perlinterp> has been expanded to give a more detailed example of how to
-hunt around in the parser for how a given operator is handled.
+XXX Description of the change here
 
 =back
 
@@ -275,9 +262,7 @@ that they represent may be covered elsewhere.
 
 =item *
 
-F<t/re/regexp_nonull.t> has been added to test that the regular expression
-engine can handle scalars that do not have a null byte just past the end of
-the string.
+XXX
 
 =back
 
@@ -290,10 +275,9 @@ changes as paragraphs below it. ]
 
 =head2 New Platforms
 
-XXX List any platforms that this version of perl compiles on, that previous
-versions did not.  These will either be enabled by new files in the F<hints/>
-directories, or new subdirectories and F<README> files at the top level of the
-source tree.
+A sub containing a "forward" declaration with the same name (e.g.,
+C<sub c { sub c; }>) could sometimes crash or loop infinitely.  [perl
+#129090]
 
 =over 4
 
@@ -324,38 +308,9 @@ L</Modules and Pragmata> section.
 
 =over 4
 
-=item VMS
-
-=over 4
-
-=item *
-
-The path separator for the C<PERL5LIB> and C<PERLLIB> environment entries is
-now a colon (C<:>) when running under a Unix shell. There is no change when
-running under DCL (it's still C<|>).
-
-=item *
-
-Remove some VMS-specific hacks from C<showlex.t>. These were added 15 years
-ago, and are no longer necessary for any VMS version now supported.
-
-=back
-
-=back
-
-=over 4
-
-=item Win32
-
-=over 4
-
-=item *
-
-Tweaks for Win32 VC vs GCC detection makefile code. This fixes issue that CCHOME
-depends on CCTYPE, which in auto detect mode is set after CCHOME, so CCHOME uses
-the uninit CCTYPE var. Also fix else vs .ELSE in makefile.mk
+=item XXX-some-platform
 
-=back
+XXX
 
 =back
 
@@ -371,16 +326,9 @@ well.
 
 =item *
 
-Several macros and functions have been added to the public API for
-dealing with Unicode and UTF-8-encoded strings.  See
-L<perlapi/Unicode Support>.
-
-=item *
-
-Use C<my_strlcat()> in C<locale.c>. While C<strcat()> is safe in this context,
-some compilers were optimizing this to C<strcpy()> causing a porting test to
-fail that looks for unsafe code. Rather than fighting this, we just use
-C<my_strlcat()> instead.
+The C<PADOFFSET> type has changed from being unsigned to signed, and
+several pad-related variables such as C<PL_padix> have changed from being
+of type C<I32> to type C<PADOFFSET>.
 
 =back
 
@@ -395,67 +343,7 @@ files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
 
 =item *
 
-Invalid assignments to a reference constructor (e.g., C<\eval=time>) could
-sometimes crash in addition to giving a syntax error.  [perl #125679]
-
-=item *
-
-The parser could sometimes crash if a bareword came after C<evalbytes>.
-[perl #129196]
-
-=item *
-
-Autoloading via a method call would warn erroneously ("Use of inherited
-AUTOLOAD for non-method") if there was a stub present in the package into
-which the invocant had been blessed.  The warning is no longer emitted in
-such circumstances.  [perl #47047]
-
-=item *
-
-A sub containing with a "forward" declaration with the same name (e.g.,
-C<sub c { sub c; }>) could sometimes crash or loop infinitely.  [perl
-#129090]
-
-=item *
-
-The use of C<splice> on arrays with nonexistent elements could cause other
-operators to crash.  [perl #129164]
-
-=item *
-
-Fixed case where C<re_untuit_start> will overshoot the length of a utf8
-string. [perl #129012]
-
-=item *
-
-Handle C<CXt_SUBST> better in C<Perl_deb_stack_all>, previously it wasn't
-checking that the I<current> C<cx> is the right type, and instead was always
-checking the base C<cx> (effectively a noop). [perl #129029]
-
-=item *
-
-Fixed two possible use-after-free bugs in C<Perl_yylex>. C<Perl_yylex>
-maintains up to two pointers into the parser buffer, one of which can
-become stale under the right conditions. [perl #129069]
-
-=item *
-
-Fixed a crash with C<s///l> where it thought it was dealing with UTF-8
-when it wasn't. [perl #129038]
-
-=item *
-
-Fixed place where regex was not setting the syntax error correctly.
-[perl #129122]
-
-=item *
-
-The C<&.> operator (and the C<&> operator, when it treats its arguments as
-strings) were failing to append a trailing null byte if at least one string
-was marked as utf8 internally.  Many code paths (system calls, regexp
-compilation) still expect there to be a null byte in the string buffer
-just past the end of the logical string.  An assertion failure was the
-result.  [perl #129287]
+XXX
 
 =back
 
@@ -488,16 +376,14 @@ the perldelta of a previous release.
 
 =head1 Obituary
 
-Jon Portnoy (AVENJ), a prolific Perl author and admired Gentoo community
-member, has passed away on August 10, 2016. He will be remembered and
-missed by all those with which he came in contact and enriched with his
-intellect, wit, and spirit.
+XXX If any significant core contributor has died, we've added a short obituary
+here.
 
 =head1 Acknowledgements
 
 XXX Generate this with:
 
-  perl Porting/acknowledgements.pl v5.25.4..HEAD
+  perl Porting/acknowledgements.pl v5.25.5..HEAD
 
 =head1 Reporting Bugs