This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
New perldelta for 5.29.7
[perl5.git] / pod / perldelta.pod
index 9baa05a..65aad26 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.27.10
+perldelta - what is new for perl v5.29.7
 
 =head1 DESCRIPTION
 
-This document describes differences between the 5.27.9 release and the 5.27.10
+This document describes differences between the 5.29.6 release and the 5.29.7
 release.
 
-If you are upgrading from an earlier release such as 5.27.8, first read
-L<perl5279delta>, which describes differences between 5.27.8 and 5.27.9.
+If you are upgrading from an earlier release such as 5.29.5, first read
+L<perl5296delta>, which describes differences between 5.29.5 and 5.29.6.
 
 =head1 Notice
 
@@ -21,9 +21,11 @@ XXX Any important notices here
 
 =head1 Core Enhancements
 
-=head2 XXX
+XXX New core language features go here.  Summarize user-visible core language
+enhancements.  Particularly prominent performance optimisations could go
+here, but most should go in the L</Performance Enhancements> section.
 
-XXX
+[ List each enhancement as a =head2 entry ]
 
 =head1 Security
 
@@ -78,6 +80,11 @@ as an updated module in the L</Modules and Pragmata> section.
 
 =head1 Performance Enhancements
 
+XXX Changes which enhance performance without changing behaviour go here.
+There may well be none in a stable release.
+
+[ List each enhancement as an =item entry ]
+
 =over 4
 
 =item *
@@ -118,33 +125,9 @@ XXX Remove this section if not applicable.
 
 =item *
 
-L<Carp> has been upgraded from version 1.46 to 1.4x.
-
-XXX Please update the version number.
-
-L<Carp>, when generating stack traces, now attempts to work around
-longstanding bugs resulting from Perl's non-reference-counted stack.
-[perl #52610]
-
-Carp has been modified to avoid assuming that objects cannot be
-overloaded without the L<overload> module loaded (this can happen with
-objects created by XS modules).  Previously, infinite recursion would
-result if an XS-defined overload method itself called Carp.  [perl #132828]
-
-Carp now avoids using C<overload::StrVal>, partly because older versions
-of L<overload> (included with perl 5.14 and earlier) load L<Scalar::Util>
-at run time, which will fail if Carp has been invoked after a syntax error.
-
-L<I18N::Langinfo> has been upgraded from version 0.15 to 0.16.
-
-This module is now available on all platforms, emulating the system
-L<nl_langinfo(3)> on systems that lack it.  Some caveats apply, as
-L<detailed in its documentation|I18N::Langinfo>, the most severe being
-that, except for MS Windows, the C<CODESET> item is not implemented on
-those systems, always returning C<"">.
+L<XXX> has been upgraded from version A.xx to B.yy.
 
-It now sets the UTF-8 flag in its returned scalar if the string contains
-legal non-ASCII UTF-8, and the locale is UTF-8 ([perl #127288].
+If there was something important to note about this change, include that here.
 
 =back
 
@@ -173,6 +156,10 @@ XXX Description of the purpose of the new file here
 
 =head2 Changes to Existing Documentation
 
+We have attempted to update the documentation to reflect the changes
+listed in this document.  If you find any we have missed, send email
+to L<perlbug@perl.org|mailto:perlbug@perl.org>.
+
 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.
@@ -219,7 +206,7 @@ XXX L<message|perldiag/"message">
 
 =item *
 
-XXX
+XXX L<message|perldiag/"message">
 
 =back
 
@@ -231,20 +218,7 @@ XXX Changes (i.e. rewording) of diagnostic messages go here
 
 =item *
 
-The new (as of 5.27.8) restriction forbidding use of C<goto> to enter the
-argument of a binary or list expression (see L<perldiag/"Can't
-E<quot>gotoE<quot> into a binary or list expression">) has been relaxed to
-allow entering the I<first> argument of an operator that takes a fixed
-number of arguments, since this is a case that will not cause stack
-corruption.  [perl #132854]
-
-=item *
-
-The warning added in 5.27.8 concerning UTF-8 locale compatibility was
-misleading.  The new wording and explanation are at
-L<perldiag/Locale '%s' contains (at least) the following characters which
-have unexepected meanings: %s  The Perl program will use the exepected
-meanings>
+XXX Describe change here
 
 =back
 
@@ -280,26 +254,31 @@ L</Platform Support> section, instead.
 
 =item *
 
-F<lib/unicore/mktables> now correctly canonicalizes the names of the
-dependencies stored in the files it generates.
-
-F<regen/mk_invlists.pl>, unlike the other F<regen/*.pl> scripts, used
-C<$0> to name itself in the dependencies stored in the files it
-generates.  It now uses a literal so that the path stored in the
-generated files doesn't depend on how F<regen/mk_invlists.pl> is
-invoked.
-
-This lack of canonical names could cause test failures in
-F<t/porting/regen.t>.  [perl #132925]
+XXX
 
 =back
 
 =head1 Testing
 
+XXX Any significant changes to the testing of a freshly built perl should be
+listed here.  Changes which create B<new> files in F<t/> go here as do any
+large changes to the testing harness (e.g. when parallel testing was added).
+Changes to existing files in F<t/> aren't worth summarizing, although the bugs
+that they represent may be covered elsewhere.
+
+XXX If there were no significant test changes, say this:
+
+Tests were added and changed to reflect the other additions and changes
+in this release.
+
+XXX If instead there were significant changes, say this:
+
 Tests were added and changed to reflect the other additions and
 changes in this release.  Furthermore, these significant changes were
 made:
 
+[ List each test improvement as an =item entry ]
+
 =over 4
 
 =item *
@@ -310,11 +289,21 @@ XXX
 
 =head1 Platform Support
 
+XXX Any changes to platform support should be listed in the sections below.
+
+[ Within the sections, list each platform as an =item entry with specific
+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.
+
 =over 4
 
-=item That Plaftorm
+=item XXX-some-platform
 
 XXX
 
@@ -349,19 +338,27 @@ XXX
 
 =head1 Internal Changes
 
+XXX Changes which affect the interface available to C<XS> code go here.  Other
+significant internal changes for future core maintainers should be noted as
+well.
+
+[ List each change as an =item entry ]
+
 =over 4
 
 =item *
 
-The item names passed to the function L<perlapi/Perl_langinfo>,
-introduced in 5.27.4, may no longer be prefixed with C<PERL_>.  For
-example, if you want the current floating point radix character, you
-must call it like C<Perl_langinfo(RADIXCHAR)>.
+XXX
 
 =back
 
 =head1 Selected Bug Fixes
 
+XXX Important bug fixes in the core language are summarized here.  Bug fixes in
+files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
+
+[ List each fix as an =item entry ]
+
 =over 4
 
 =item *
@@ -406,13 +403,13 @@ died, add a short obituary here.
 
 XXX Generate this with:
 
-  perl Porting/acknowledgements.pl v5.27.9..HEAD
+  perl Porting/acknowledgements.pl v5.29.6..HEAD
 
 =head1 Reporting Bugs
 
 If you find what you think is a bug, you might check the perl bug database
-at L<https://rt.perl.org/> .  There may also be information at
-L<http://www.perl.org/> , the Perl Home Page.
+at L<https://rt.perl.org/>.  There may also be information at
+L<http://www.perl.org/>, the Perl Home Page.
 
 If you believe you have an unreported bug, please run the L<perlbug> program
 included with your release.  Be sure to trim your bug down to a tiny but