summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MANIFEST1
-rwxr-xr-xMakefile.SH8
-rw-r--r--pod/.gitignore2
-rw-r--r--pod/perl.pod1
-rw-r--r--pod/perl53511delta.pod317
-rw-r--r--pod/perldelta.pod460
-rw-r--r--vms/descrip_mms.template2
-rw-r--r--win32/GNUmakefile4
-rw-r--r--win32/Makefile4
-rw-r--r--win32/pod.mak4
10 files changed, 626 insertions, 177 deletions
diff --git a/MANIFEST b/MANIFEST
index a6d8587e90..b7c3b0acb8 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -5310,6 +5310,7 @@ pod/perl5340delta.pod Perl changes in version 5.34.0
pod/perl5341delta.pod Perl changes in version 5.34.1
pod/perl5350delta.pod Perl changes in version 5.35.0
pod/perl53510delta.pod Perl changes in version 5.35.10
+pod/perl53511delta.pod Perl changes in version 5.35.11
pod/perl5351delta.pod Perl changes in version 5.35.1
pod/perl5352delta.pod Perl changes in version 5.35.2
pod/perl5353delta.pod Perl changes in version 5.35.3
diff --git a/Makefile.SH b/Makefile.SH
index e6cb0e0284..e20aeb120c 100755
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -613,7 +613,7 @@ esac
$spitshell >>$Makefile <<'!NO!SUBS!'
-perltoc_pod_prereqs = extra.pods pod/perl53511delta.pod pod/perlapi.pod pod/perlintern.pod pod/perlmodlib.pod pod/perluniprops.pod
+perltoc_pod_prereqs = extra.pods pod/perl53512delta.pod pod/perlapi.pod pod/perlintern.pod pod/perlmodlib.pod pod/perluniprops.pod
generated_pods = pod/perltoc.pod $(perltoc_pod_prereqs)
generated_headers = uudmap.h bitcount.h mg_data.h
@@ -1130,9 +1130,9 @@ pod/perlintern.pod: $(MINIPERL_EXE) autodoc.pl embed.fnc
pod/perlmodlib.pod: $(MINIPERL_EXE) pod/perlmodlib.PL MANIFEST
$(MINIPERL) pod/perlmodlib.PL -q
-pod/perl53511delta.pod: pod/perldelta.pod
- $(RMS) pod/perl53511delta.pod
- $(LNS) perldelta.pod pod/perl53511delta.pod
+pod/perl53512delta.pod: pod/perldelta.pod
+ $(RMS) pod/perl53512delta.pod
+ $(LNS) perldelta.pod pod/perl53512delta.pod
extra.pods: $(MINIPERL_EXE)
-@test ! -f extra.pods || rm -f `cat extra.pods`
diff --git a/pod/.gitignore b/pod/.gitignore
index 11fed438b4..37f995706e 100644
--- a/pod/.gitignore
+++ b/pod/.gitignore
@@ -47,7 +47,7 @@
/roffitall
# generated
-/perl53511delta.pod
+/perl53512delta.pod
/perlapi.pod
/perlintern.pod
/perlmodlib.pod
diff --git a/pod/perl.pod b/pod/perl.pod
index d8bbd99c1a..e483d5753b 100644
--- a/pod/perl.pod
+++ b/pod/perl.pod
@@ -179,6 +179,7 @@ aux h2ph h2xs perlbug pl2pm pod2html pod2man splain xsubpp
perlhist Perl history records
perldelta Perl changes since previous version
+ perl53511delta Perl changes in version 5.35.11
perl53510delta Perl changes in version 5.35.10
perl5359delta Perl changes in version 5.35.9
perl5358delta Perl changes in version 5.35.8
diff --git a/pod/perl53511delta.pod b/pod/perl53511delta.pod
new file mode 100644
index 0000000000..e6932d0540
--- /dev/null
+++ b/pod/perl53511delta.pod
@@ -0,0 +1,317 @@
+=encoding utf8
+
+=head1 NAME
+
+perl53511delta - what is new for perl v5.35.11
+
+=head1 DESCRIPTION
+
+This document describes differences between the 5.35.10 release and the 5.35.11
+release.
+
+If you are upgrading from an earlier release such as 5.35.9, first read
+L<perl53510delta>, which describes differences between 5.35.9 and 5.35.10.
+
+=head1 Core Enhancements
+
+=head2 New functions C<builtin::created_as_string> and C<builtin::created_as_number>
+
+These new functions allow code to inspect whether a defined but non-referential
+scalar value originated from an expression that was string-like in nature, or
+number-like. While most uses within Perl should not care about such
+distinctions, this can be useful when serialising or encoding Perl data
+structures for export to other languages or data formats where such a
+distinction does matter.
+
+=head2 Support for not sharing all keys in large hash tables.
+
+This release includes support to build Perl so that it does not share all keys
+in hash tables as has been historically the case since Perl v5.6. The shared
+key behavior was added to Perl originally to support having many objects with
+the same keys without having to store each key many times. For objects that
+might be created hundreds or thousands of times this key sharing behavior can
+result in using significantly less memory. However, key sharing comes at the
+cost of having to maintain an internal "master hash table" (PL_str_tab), and
+having to do two store operations per key stored in a hash table. It also can
+result in surprising consequences with programs that fork, causing the master
+hash table to be COWed (copy on write) into the memory space for each forked
+process which can, in worst case, greatly increase the memory utilization of
+such scripts.
+
+The new behavior is an attempt to have our cake and eat it too. Small hash
+tables will continue to share keys, but once the hash table is used to store
+more than a certain number of keys (currently 64) it will not share the new
+keys that are added. This should benefit scripts that build large hash tables,
+especially those that do so in forked sub-processes. The unshared mode is
+triggered when the hash table is resized which is non-deterministic and depends
+on the underlying hash function that perl has been built with and the seed used
+by the current process so the exact circumstances when this new mode will be
+enabled for a given hash will vary between different invocations of a script.
+
+We are uncertain of the exact effects of this new mode and are keen to get
+field reports about the consequences of enabling it. We know that in many
+cases not sharing keys speeds up scripts in general, and may result in a
+reduction in memory consumption. Code that builds large hashes where the keys
+are stored in only one hash, for instance where the keys are message digests,
+will likely benefit from this change by being faster and using less memory.
+However, there are also circumstances where not sharing keys can significantly
+increase memory consumption, such as where large numbers of keys are stored in
+multiple hash tables at once. We have data to suggest that not sharing keys
+will reduce COW churn and overall memory consumption in scripts that fork and
+construct large hash tables, however such scripts may also encounter a modest
+speed penalty. Overall, the consequences of not sharing keys will vary
+depending on workload. However, we believe that broadly speaking enabling this
+feature will be beneficial for most of our users. We would like to get data
+from the field to validate our assumptions.
+
+We are not enabling the new mode by default in this release as we want to
+gather more data and obtain feedback from the field about how it affects
+people's scripts, but our intention is to ship the next release of Perl,
+version 5.38, with some form of this functionality enabled. We are hopeful
+that people will try to build their perls with this feature and provide us
+feedback on the results. This will help guide our next steps. So please try
+it and send feedback to the porters mailing list.
+
+You can enable this new feature by passing
+
+ -Accflags='-DPERL_USE_UNSHARED_KEYS_IN_LARGE_HASHES'
+
+to F<Configure> during the Configuration process.
+
+Big thanks to Nicholas Clark for all the hard work in implementing this new
+feature.
+
+=head1 Modules and Pragmata
+
+=head2 Updated Modules and Pragmata
+
+=over 4
+
+=item *
+
+L<B::Deparse> has been upgraded from version 1.63 to 1.64.
+
+Deparse now tries harder to preserve the original type of numeric constants, so
+!0 is deparsed as '!0' rather than '1', 2.0 is deparsed as '2.0' rather than
+'2' etc. The 'use/no warnings' lines for custom warnings categories are now
+fully handled - in the previous few releases only a small number of categories
+were correctly handled.
+
+=item *
+
+L<bignum> has been upgraded from version 0.64 to 0.65.
+
+=item *
+
+L<Compress::Raw::Bzip2> has been upgraded from version 2.101 to 2.103.
+
+=item *
+
+L<Compress::Raw::Zlib> has been upgraded from version 2.101 to 2.103.
+
+=item *
+
+L<Encode> has been upgraded from version 3.16 to 3.17.
+
+=item *
+
+L<IO> has been upgraded from version 1.49 to 1.49_01.
+
+=item *
+
+IO-Compress has been upgraded from version 2.102 to 2.106.
+
+=item *
+
+libnet has been upgraded from version 3.13 to 3.14.
+
+=item *
+
+L<Locale::Maketext> has been upgraded from version 1.30 to 1.31.
+
+=item *
+
+L<Math::BigInt> has been upgraded from version 1.999829 to 1.999830.
+
+=item *
+
+L<Math::BigRat> has been upgraded from version 0.2620 to 0.2621.
+
+=item *
+
+L<Module::CoreList> has been upgraded from version 5.20220320 to 5.20220420.
+
+=item *
+
+L<re> has been upgraded from version 0.42 to 0.43.
+
+=item *
+
+L<Socket> has been upgraded from version 2.032 to 2.033.
+
+=item *
+
+L<Storable> has been upgraded from version 3.25 to 3.26.
+
+=item *
+
+L<Test::Harness> has been upgraded from version 3.43 to 3.44.
+
+=item *
+
+L<Text::ParseWords> has been upgraded from version 3.30 to 3.31.
+
+=item *
+
+L<Time::HiRes> has been upgraded from version 1.9769 to 1.9770.
+
+=item *
+
+L<Unicode::Normalize> has been upgraded from version 1.30 to 1.31.
+
+=back
+
+=head1 Documentation
+
+=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, open an issue
+at L<https://github.com/Perl/perl5/issues>.
+
+Additionally, the following selected changes have been made:
+
+=head3 L<perlfunc>
+
+=over 4
+
+=item *
+
+Add the new flow-control keywords (try, catch, finally and defer).
+
+=back
+
+=head2 Removed Documentation
+
+=over
+
+=item *
+
+The long-obsolete F<README.macos> (aka the perlmacos manpage) has been removed.
+
+=back
+
+=head1 Configuration and Compilation
+
+=over 4
+
+=item *
+
+A new question has been added to Configure, to ask if you want to build perl
+with taint support. If you say "no", then all taint features, such as the
+B<-T> and B<-t> switches, will silently do nothing. It defaults to "yes", so
+if you run Configure accepting all defaults, you'll get a perl which supports
+taint just like before.
+
+If you're used to running Configure in "batch mode", here's how you'd build
+Perl without taint support:
+
+ ./Configure -des -Utaint_support
+
+You can check the C<taint_support> key in the C<%Config> hash (in the B<Config>
+module) to determine whether your perl supports taint. If the key doesn't
+exist in the hash, then you're almost certainly running under an older perl
+which predates this change, and you can assume that taint is support. See
+L<perlsec> for more details.
+
+=back
+
+=head1 Testing
+
+Tests were added and changed to reflect the other additions and changes in this
+release.
+
+=head1 Selected Bug Fixes
+
+=over 4
+
+=item *
+
+Early bailout from the inner one of a pair of nested lookbehinds could cause
+the outer lookbehind to give the wrong answer.
+[L<GH #19557|https://github.com/Perl/perl5/issues/19557>].
+
+=item *
+
+ACCEPT inside of a C<< (...)+ >> now works as expected.
+[L<GH #19484|https://github.com/Perl/perl5/issues/19484>].
+
+=back
+
+=head1 Acknowledgements
+
+Perl 5.35.11 represents approximately 4 weeks of development since Perl 5.35.10
+and contains approximately 42,000 lines of changes across 360 files from 24
+authors.
+
+Excluding auto-generated files, documentation and release tools, there were
+approximately 36,000 lines of changes to 250 .pm, .t, .c and .h files.
+
+Perl continues to flourish into its fourth decade thanks to a vibrant community
+of users and developers. The following people are known to have contributed
+the improvements that became Perl 5.35.11:
+
+Bram, brian d foy, Dagfinn Ilmari Mannsåker, David Mitchell, Eugen Konkov,
+Graham Knop, Hugo van der Sanden, James E Keenan, Karl Williamson, Leon
+Timmermans, Magnus Woldrich, Neil Bowers, Niyas Sait, Paul Evans, Paul
+Marquess, Ricardo Signes, Richard Leach, Sawyer X, Sergey Poznyakoff, Sisyphus,
+Steve Hay, Todd Rinaldo, Tony Cook, Yves Orton.
+
+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.
+
+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.
+
+For a more complete list of all of Perl's historical contributors, please see
+the F<AUTHORS> file in the Perl source distribution.
+
+=head1 Reporting Bugs
+
+If you find what you think is a bug, you might check the perl bug database at
+L<https://github.com/Perl/perl5/issues>. There may also be information at
+L<http://www.perl.org/>, the Perl Home Page.
+
+If you believe you have an unreported bug, please open an issue at
+L<https://github.com/Perl/perl5/issues>. Be sure to trim your bug down to a
+tiny but sufficient test case.
+
+If the bug you are reporting has security implications which make it
+inappropriate to send to a public issue tracker, then see
+L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION> for details of how to
+report the issue.
+
+=head1 Give Thanks
+
+If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, you
+can do so by running the C<perlthanks> program:
+
+ perlthanks
+
+This will send an email to the Perl 5 Porters list with your show of thanks.
+
+=head1 SEE ALSO
+
+The F<Changes> file for an explanation of how to view exhaustive details on
+what changed.
+
+The F<INSTALL> file for how to build Perl.
+
+The F<README> file for general stuff.
+
+The F<Artistic> and F<Copying> files for copyright information.
+
+=cut
diff --git a/pod/perldelta.pod b/pod/perldelta.pod
index 66b47d393e..67161aa04b 100644
--- a/pod/perldelta.pod
+++ b/pod/perldelta.pod
@@ -2,287 +2,413 @@
=head1 NAME
-perldelta - what is new for perl v5.35.11
+[ 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.35.12
=head1 DESCRIPTION
-This document describes differences between the 5.35.10 release and the 5.35.11
+This document describes differences between the 5.35.11 release and the 5.35.12
release.
-If you are upgrading from an earlier release such as 5.35.9, first read
-L<perl53510delta>, which describes differences between 5.35.9 and 5.35.10.
+If you are upgrading from an earlier release such as 5.35.10, first read
+L<perl53511delta>, which describes differences between 5.35.10 and 5.35.11.
+
+=head1 Notice
+
+XXX Any important notices here
=head1 Core Enhancements
-=head2 New functions C<builtin::created_as_string> and C<builtin::created_as_number>
-
-These new functions allow code to inspect whether a defined but non-referential
-scalar value originated from an expression that was string-like in nature, or
-number-like. While most uses within Perl should not care about such
-distinctions, this can be useful when serialising or encoding Perl data
-structures for export to other languages or data formats where such a
-distinction does matter.
-
-=head2 Support for not sharing all keys in large hash tables.
-
-This release includes support to build Perl so that it does not share all keys
-in hash tables as has been historically the case since Perl v5.6. The shared
-key behavior was added to Perl originally to support having many objects with
-the same keys without having to store each key many times. For objects that
-might be created hundreds or thousands of times this key sharing behavior can
-result in using significantly less memory. However, key sharing comes at the
-cost of having to maintain an internal "master hash table" (PL_str_tab), and
-having to do two store operations per key stored in a hash table. It also can
-result in surprising consequences with programs that fork, causing the master
-hash table to be COWed (copy on write) into the memory space for each forked
-process which can, in worst case, greatly increase the memory utilization of
-such scripts.
-
-The new behavior is an attempt to have our cake and eat it too. Small hash
-tables will continue to share keys, but once the hash table is used to store
-more than a certain number of keys (currently 64) it will not share the new
-keys that are added. This should benefit scripts that build large hash tables,
-especially those that do so in forked sub-processes. The unshared mode is
-triggered when the hash table is resized which is non-deterministic and depends
-on the underlying hash function that perl has been built with and the seed used
-by the current process so the exact circumstances when this new mode will be
-enabled for a given hash will vary between different invocations of a script.
-
-We are uncertain of the exact effects of this new mode and are keen to get
-field reports about the consequences of enabling it. We know that in many
-cases not sharing keys speeds up scripts in general, and may result in a
-reduction in memory consumption. Code that builds large hashes where the keys
-are stored in only one hash, for instance where the keys are message digests,
-will likely benefit from this change by being faster and using less memory.
-However, there are also circumstances where not sharing keys can significantly
-increase memory consumption, such as where large numbers of keys are stored in
-multiple hash tables at once. We have data to suggest that not sharing keys
-will reduce COW churn and overall memory consumption in scripts that fork and
-construct large hash tables, however such scripts may also encounter a modest
-speed penalty. Overall, the consequences of not sharing keys will vary
-depending on workload. However, we believe that broadly speaking enabling this
-feature will be beneficial for most of our users. We would like to get data
-from the field to validate our assumptions.
-
-We are not enabling the new mode by default in this release as we want to
-gather more data and obtain feedback from the field about how it affects
-people's scripts, but our intention is to ship the next release of Perl,
-version 5.38, with some form of this functionality enabled. We are hopeful
-that people will try to build their perls with this feature and provide us
-feedback on the results. This will help guide our next steps. So please try
-it and send feedback to the porters mailing list.
-
-You can enable this new feature by passing
-
- -Accflags='-DPERL_USE_UNSHARED_KEYS_IN_LARGE_HASHES'
-
-to F<Configure> during the Configuration process.
-
-Big thanks to Nicholas Clark for all the hard work in implementing this new
-feature.
+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.
-=head1 Modules and Pragmata
+[ List each enhancement as a =head2 entry ]
-=head2 Updated Modules and Pragmata
+=head1 Security
-=over 4
+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.
-=item *
+[ List each security issue as a =head2 entry ]
-L<B::Deparse> has been upgraded from version 1.63 to 1.64.
+=head1 Incompatible Changes
-Deparse now tries harder to preserve the original type of numeric constants, so
-!0 is deparsed as '!0' rather than '1', 2.0 is deparsed as '2.0' rather than
-'2' etc. The 'use/no warnings' lines for custom warnings categories are now
-fully handled - in the previous few releases only a small number of categories
-were correctly handled.
+XXX For a release on a stable branch, this section aspires to be:
-=item *
+ There are no changes intentionally incompatible with 5.XXX.XXX
+ If any exist, they are bugs, and we request that you submit a
+ report. See L</Reporting Bugs> below.
-L<bignum> has been upgraded from version 0.64 to 0.65.
+[ List each incompatible change as a =head2 entry ]
-=item *
+=head1 Deprecations
-L<Compress::Raw::Bzip2> has been upgraded from version 2.101 to 2.103.
+XXX Any deprecated features, syntax, modules etc. should be listed here.
-=item *
+=head2 Module removals
-L<Compress::Raw::Zlib> has been upgraded from version 2.101 to 2.103.
+XXX Remove this section if not applicable.
-=item *
+The following modules will be removed from the core distribution in a
+future release, and will at that time need to be installed from CPAN.
+Distributions on CPAN which require these modules will need to list them as
+prerequisites.
-L<Encode> has been upgraded from version 3.16 to 3.17.
+The core versions of these modules will now issue C<"deprecated">-category
+warnings to alert you to this fact. To silence these deprecation warnings,
+install the modules in question from CPAN.
-=item *
+Note that these are (with rare exceptions) fine modules that you are encouraged
+to continue to use. Their disinclusion from core primarily hinges on their
+necessity to bootstrapping a fully functional, CPAN-capable Perl installation,
+not usually on concerns over their design.
-L<IO> has been upgraded from version 1.49 to 1.49_01.
+=over
-=item *
+=item XXX
-IO-Compress has been upgraded from version 2.102 to 2.106.
+XXX Note that deprecated modules should be listed here even if they are listed
+as an updated module in the L</Modules and Pragmata> section.
-=item *
+=back
-libnet has been upgraded from version 3.13 to 3.14.
+[ List each other deprecation as a =head2 entry ]
-=item *
+=head1 Performance Enhancements
-L<Locale::Maketext> has been upgraded from version 1.30 to 1.31.
+XXX Changes which enhance performance without changing behaviour go here.
+There may well be none in a stable release.
-=item *
+[ List each enhancement as an =item entry ]
-L<Math::BigInt> has been upgraded from version 1.999829 to 1.999830.
+=over 4
=item *
-L<Math::BigRat> has been upgraded from version 0.2620 to 0.2621.
+XXX
-=item *
+=back
-L<Module::CoreList> has been upgraded from version 5.20220320 to 5.20220420.
+=head1 Modules and Pragmata
-=item *
+XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
+go here. If Module::CoreList is updated, generate an initial draft of the
+following sections using F<Porting/corelist-perldelta.pl>. A paragraph summary
+for important changes should then be added by hand. In an ideal world,
+dual-life modules would have a F<Changes> file that could be cribbed.
-L<re> has been upgraded from version 0.42 to 0.43.
+The list of new and updated modules is modified automatically as part of
+preparing a Perl release, so the only reason to manually add entries here is if
+you're summarising the important changes in the module update. (Also, if the
+manually-added details don't match the automatically-generated ones, the
+release manager will have to investigate the situation carefully.)
-=item *
+[ Within each section, list entries as an =item entry ]
+
+=head2 New Modules and Pragmata
-L<Socket> has been upgraded from version 2.032 to 2.033.
+=over 4
=item *
-L<Storable> has been upgraded from version 3.25 to 3.26.
+XXX Remove this section if not applicable.
-=item *
+=back
-L<Test::Harness> has been upgraded from version 3.43 to 3.44.
+=head2 Updated Modules and Pragmata
+
+=over 4
=item *
-L<Text::ParseWords> has been upgraded from version 3.30 to 3.31.
+L<XXX> has been upgraded from version A.xx to B.yy.
-=item *
+If there was something important to note about this change, include that here.
-L<Time::HiRes> has been upgraded from version 1.9769 to 1.9770.
+=back
+
+=head2 Removed Modules and Pragmata
+
+=over 4
=item *
-L<Unicode::Normalize> has been upgraded from version 1.30 to 1.31.
+XXX
=back
=head1 Documentation
+XXX Changes to files in F<pod/> go here. Consider grouping entries by
+file and be sure to link to the appropriate page, e.g. L<perlfunc>.
+
+=head2 New Documentation
+
+XXX Changes which create B<new> files in F<pod/> go here.
+
+=head3 L<XXX>
+
+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, open an issue
at L<https://github.com/Perl/perl5/issues>.
+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.
+
Additionally, the following selected changes have been made:
-=head3 L<perlfunc>
+=head3 L<XXX>
=over 4
=item *
-Add the new flow-control keywords (try, catch, finally and defer).
+XXX Description of the change here
=back
-=head2 Removed Documentation
+=head1 Diagnostics
-=over
+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 L<perldiag>.
+
+XXX New or changed warnings emitted by the core's C<C> code go here. Also
+include any changes in L<perldiag> that reconcile it to the C<C> code.
+
+=head2 New Diagnostics
+
+XXX Newly added diagnostic messages go under here, separated into New Errors
+and New Warnings
+
+=head3 New Errors
+
+=over 4
=item *
-The long-obsolete F<README.macos> (aka the perlmacos manpage) has been removed.
+XXX L<message|perldiag/"message">
=back
-=head1 Configuration and Compilation
+=head3 New Warnings
+
+=over 4
+
+=item *
+
+XXX L<message|perldiag/"message">
+
+=back
+
+=head2 Changes to Existing Diagnostics
+
+XXX Changes (i.e. rewording) of diagnostic messages go here
+
+=over 4
+
+=item *
+
+XXX Describe change here
+
+=back
+
+=head1 Utility Changes
+
+XXX Changes to installed programs such as F<perldoc> and F<xsubpp> go here.
+Most of these are built within the directory F<utils>.
+
+[ List utility changes as a =head2 entry for each utility and =item
+entries for each change
+Use L<XXX> with program names to get proper documentation linking. ]
+
+=head2 L<XXX>
=over 4
=item *
-A new question has been added to Configure, to ask if you want to build perl
-with taint support. If you say "no", then all taint features, such as the
-B<-T> and B<-t> switches, will silently do nothing. It defaults to "yes", so
-if you run Configure accepting all defaults, you'll get a perl which supports
-taint just like before.
+XXX
+
+=back
+
+=head1 Configuration and Compilation
-If you're used to running Configure in "batch mode", here's how you'd build
-Perl without taint support:
+XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
+go here. Any other changes to the Perl build process should be listed here.
+However, any platform-specific changes should be listed in the
+L</Platform Support> section, instead.
- ./Configure -des -Utaint_support
+[ List changes as an =item entry ].
-You can check the C<taint_support> key in the C<%Config> hash (in the B<Config>
-module) to determine whether your perl supports taint. If the key doesn't
-exist in the hash, then you're almost certainly running under an older perl
-which predates this change, and you can assume that taint is support. See
-L<perlsec> for more details.
+=over 4
+
+=item *
+
+XXX
=back
=head1 Testing
-Tests were added and changed to reflect the other additions and changes in this
-release.
+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 *
+
+XXX
+
+=back
+
+=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 XXX-some-platform
+
+XXX
+
+=back
+
+=head2 Discontinued Platforms
+
+XXX List any platforms that this version of perl no longer compiles on.
+
+=over 4
+
+=item XXX-some-platform
+
+XXX
+
+=back
+
+=head2 Platform-Specific Notes
+
+XXX List any changes for specific platforms. This could include configuration
+and compilation changes or changes in portability/compatibility. However,
+changes within modules for platforms should generally be listed in the
+L</Modules and Pragmata> section.
+
+=over 4
+
+=item XXX-some-platform
+
+XXX
+
+=back
+
+=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 *
+
+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 *
-Early bailout from the inner one of a pair of nested lookbehinds could cause
-the outer lookbehind to give the wrong answer.
-[L<GH #19557|https://github.com/Perl/perl5/issues/19557>].
+XXX
+
+=back
+
+=head1 Known Problems
+
+XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
+tests that had to be C<TODO>ed for the release would be noted here. Unfixed
+platform specific bugs also go here.
+
+[ List each fix as an =item entry ]
+
+=over 4
=item *
-ACCEPT inside of a C<< (...)+ >> now works as expected.
-[L<GH #19484|https://github.com/Perl/perl5/issues/19484>].
+XXX
=back
-=head1 Acknowledgements
+=head1 Errata From Previous Releases
-Perl 5.35.11 represents approximately 4 weeks of development since Perl 5.35.10
-and contains approximately 42,000 lines of changes across 360 files from 24
-authors.
+=over 4
-Excluding auto-generated files, documentation and release tools, there were
-approximately 36,000 lines of changes to 250 .pm, .t, .c and .h files.
+=item *
-Perl continues to flourish into its fourth decade thanks to a vibrant community
-of users and developers. The following people are known to have contributed
-the improvements that became Perl 5.35.11:
+XXX Add anything here that we forgot to add, or were mistaken about, in
+the perldelta of a previous release.
-Bram, brian d foy, Dagfinn Ilmari Mannsåker, David Mitchell, Eugen Konkov,
-Graham Knop, Hugo van der Sanden, James E Keenan, Karl Williamson, Leon
-Timmermans, Magnus Woldrich, Neil Bowers, Niyas Sait, Paul Evans, Paul
-Marquess, Ricardo Signes, Richard Leach, Sawyer X, Sergey Poznyakoff, Sisyphus,
-Steve Hay, Todd Rinaldo, Tony Cook, Yves Orton.
+=back
+
+=head1 Obituary
-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.
+XXX If any significant core contributor or member of the CPAN community has
+died, add a short obituary here.
+
+=head1 Acknowledgements
-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.
+XXX Generate this with:
-For a more complete list of all of Perl's historical contributors, please see
-the F<AUTHORS> file in the Perl source distribution.
+ perl Porting/acknowledgements.pl v5.35.11..HEAD
=head1 Reporting Bugs
-If you find what you think is a bug, you might check the perl bug database at
-L<https://github.com/Perl/perl5/issues>. There may also be information at
+If you find what you think is a bug, you might check the perl bug database
+at L<https://github.com/Perl/perl5/issues>. There may also be information at
L<http://www.perl.org/>, the Perl Home Page.
If you believe you have an unreported bug, please open an issue at
@@ -291,13 +417,13 @@ tiny but sufficient test case.
If the bug you are reporting has security implications which make it
inappropriate to send to a public issue tracker, then see
-L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION> for details of how to
-report the issue.
+L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION>
+for details of how to report the issue.
=head1 Give Thanks
-If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, you
-can do so by running the C<perlthanks> program:
+If you wish to thank the Perl 5 Porters for the work we had done in Perl 5,
+you can do so by running the C<perlthanks> program:
perlthanks
diff --git a/vms/descrip_mms.template b/vms/descrip_mms.template
index 2f9d981432..28b1a585b9 100644
--- a/vms/descrip_mms.template
+++ b/vms/descrip_mms.template
@@ -313,7 +313,7 @@ utils : $(utils1) $(utils2) $(utils3) $(utils4) $(utils5)
extra.pods : miniperl
@ @extra_pods.com
-PERLDELTA_CURRENT = [.pod]perl53511delta.pod
+PERLDELTA_CURRENT = [.pod]perl53512delta.pod
$(PERLDELTA_CURRENT) : [.pod]perldelta.pod
Copy/NoConfirm/Log $(MMS$SOURCE) $(PERLDELTA_CURRENT)
diff --git a/win32/GNUmakefile b/win32/GNUmakefile
index 9e010e504b..3aa147ca17 100644
--- a/win32/GNUmakefile
+++ b/win32/GNUmakefile
@@ -1624,7 +1624,7 @@ utils: $(HAVEMINIPERL) ..\utils\Makefile
copy ..\README.tw ..\pod\perltw.pod
copy ..\README.vos ..\pod\perlvos.pod
copy ..\README.win32 ..\pod\perlwin32.pod
- copy ..\pod\perldelta.pod ..\pod\perl53511delta.pod
+ copy ..\pod\perldelta.pod ..\pod\perl53512delta.pod
$(MINIPERL) -I..\lib $(PL2BAT) $(UTILS)
$(MINIPERL) -I..\lib ..\autodoc.pl ..
$(MINIPERL) -I..\lib ..\pod\perlmodlib.PL -q ..
@@ -1723,7 +1723,7 @@ distclean: realclean
-if exist $(LIBDIR)\Win32API rmdir /s /q $(LIBDIR)\Win32API
-if exist $(LIBDIR)\XS rmdir /s /q $(LIBDIR)\XS
-cd $(PODDIR) && del /f *.html *.bat roffitall \
- perl53511delta.pod perlaix.pod perlamiga.pod perlandroid.pod \
+ perl53512delta.pod perlaix.pod perlamiga.pod perlandroid.pod \
perlapi.pod perlbs2000.pod perlcn.pod perlcygwin.pod \
perlfreebsd.pod perlhaiku.pod perlhpux.pod perlhurd.pod \
perlintern.pod perlirix.pod perljp.pod perlko.pod perllinux.pod \
diff --git a/win32/Makefile b/win32/Makefile
index ed2cff7d5c..a1bc954caf 100644
--- a/win32/Makefile
+++ b/win32/Makefile
@@ -1156,7 +1156,7 @@ utils: $(PERLEXE) ..\utils\Makefile
copy ..\README.tw ..\pod\perltw.pod
copy ..\README.vos ..\pod\perlvos.pod
copy ..\README.win32 ..\pod\perlwin32.pod
- copy ..\pod\perldelta.pod ..\pod\perl53511delta.pod
+ copy ..\pod\perldelta.pod ..\pod\perl53512delta.pod
cd ..\win32
$(PERLEXE) $(PL2BAT) $(UTILS)
$(MINIPERL) -I..\lib ..\autodoc.pl ..
@@ -1256,7 +1256,7 @@ distclean: realclean
-if exist $(LIBDIR)\Win32API rmdir /s /q $(LIBDIR)\Win32API
-if exist $(LIBDIR)\XS rmdir /s /q $(LIBDIR)\XS
-cd $(PODDIR) && del /f *.html *.bat roffitall \
- perl53511delta.pod perlaix.pod perlamiga.pod perlandroid.pod \
+ perl53512delta.pod perlaix.pod perlamiga.pod perlandroid.pod \
perlapi.pod perlbs2000.pod perlcn.pod perlcygwin.pod \
perlfreebsd.pod perlhaiku.pod perlhpux.pod perlhurd.pod \
perlintern.pod perlirix.pod perljp.pod perlko.pod perllinux.pod \
diff --git a/win32/pod.mak b/win32/pod.mak
index 28a554c22f..92d20479fd 100644
--- a/win32/pod.mak
+++ b/win32/pod.mak
@@ -69,6 +69,7 @@ POD = perl.pod \
perl5350delta.pod \
perl53510delta.pod \
perl53511delta.pod \
+ perl53512delta.pod \
perl5351delta.pod \
perl5352delta.pod \
perl5353delta.pod \
@@ -245,6 +246,7 @@ MAN = perl.man \
perl5350delta.man \
perl53510delta.man \
perl53511delta.man \
+ perl53512delta.man \
perl5351delta.man \
perl5352delta.man \
perl5353delta.man \
@@ -421,6 +423,7 @@ HTML = perl.html \
perl5350delta.html \
perl53510delta.html \
perl53511delta.html \
+ perl53512delta.html \
perl5351delta.html \
perl5352delta.html \
perl5353delta.html \
@@ -597,6 +600,7 @@ TEX = perl.tex \
perl5350delta.tex \
perl53510delta.tex \
perl53511delta.tex \
+ perl53512delta.tex \
perl5351delta.tex \
perl5352delta.tex \
perl5353delta.tex \