=head1 NAME
-perldelta - what is new for perl v5.33.3
+[ 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.3
=head1 DESCRIPTION
-This document describes differences between the 5.33.2 release and the 5.33.3
+This document describes differences between the 5.35.2 release and the 5.35.3
release.
-If you are upgrading from an earlier release such as 5.33.1, first read
-L<perl5332delta>, which describes differences between 5.33.1 and 5.33.2.
+If you are upgrading from an earlier release such as 5.35.1, first read
+L<perl5352delta>, which describes differences between 5.35.1 and 5.35.2.
-=head1 Modules and Pragmata
+=head1 Notice
-=head2 Updated Modules and Pragmata
+XXX Any important notices here
-=over 4
+=head1 Core Enhancements
-=item *
+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.
-L<bytes> has been upgraded from version 1.07 to 1.08.
+[ List each enhancement as a =head2 entry ]
-=item *
+=head1 Security
-L<CPAN> has been upgraded from version 2.27 to 2.28.
+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<Data::Dumper> has been upgraded from version 2.175 to 2.176.
+=head1 Incompatible Changes
-=item *
+XXX For a release on a stable branch, this section aspires to be:
-L<DB> has been upgraded from version 1.58 to 1.59.
+ 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.
-=item *
+[ List each incompatible change as a =head2 entry ]
-L<DB_File> has been upgraded from version 1.854 to 1.855.
+=head1 Deprecations
-=item *
+XXX Any deprecated features, syntax, modules etc. should be listed here.
-L<Devel::Peek> has been upgraded from version 1.29 to 1.30.
+=head2 Module removals
-=item *
+XXX Remove this section if not applicable.
-L<Devel::PPPort> has been upgraded from version 3.60 to 3.62.
+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.
-=item *
+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.
-L<Digest> has been upgraded from version 1.17_01 to 1.19.
+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.
-=item *
+=over
-L<Digest::MD5> has been upgraded from version 2.55_01 to 2.58.
+=item XXX
-=item *
+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.
+
+=back
-L<Encode> has been upgraded from version 3.06 to 3.07.
+[ List each other deprecation as a =head2 entry ]
-=item *
+=head1 Performance Enhancements
-L<Errno> has been upgraded from version 1.32 to 1.33.
+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<experimental> has been upgraded from version 0.020 to 0.022.
+=over 4
=item *
-L<Exporter> has been upgraded from version 5.75 to 5.76.
+XXX
-=item *
+=back
-L<ExtUtils::MakeMaker> has been upgraded from version 7.44 to 7.48.
+=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<ExtUtils::PL2Bat> has been upgraded from version 0.002 to 0.003.
+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<feature> has been upgraded from version 1.60 to 1.61.
+=over 4
=item *
-L<File::Temp> has been upgraded from version 0.2309 to 0.2311.
+XXX Remove this section if not applicable.
-=item *
+=back
+
+=head2 Updated Modules and Pragmata
-L<FindBin> has been upgraded from version 1.51 to 1.52.
+=over 4
=item *
-L<Getopt::Long> has been upgraded from version 2.51 to 2.52.
+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<Getopt::Std> has been upgraded from version 1.12 to 1.13.
+=back
-=item *
+=head2 Removed Modules and Pragmata
-L<I18N::LangTags> has been upgraded from version 0.44 to 0.45.
+=over 4
=item *
-L<if> has been upgraded from version 0.0608 to 0.0609.
+XXX
-=item *
+=back
-L<locale> has been upgraded from version 1.09 to 1.10.
+=head1 Documentation
-=item *
+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>.
-L<MIME::Base64> has been upgraded from version 3.15 to 3.16.
+=head2 New Documentation
-=item *
+XXX Changes which create B<new> files in F<pod/> go here.
-L<Module::CoreList> has been upgraded from version 5.20200920 to 5.20201020.
+=head3 L<XXX>
-=item *
+XXX Description of the purpose of the new file here
-L<Module::Load> has been upgraded from version 0.34 to 0.36.
+=head2 Changes to Existing Documentation
-=item *
+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>.
-L<mro> has been upgraded from version 1.24 to 1.25.
+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.
-=item *
+Additionally, the following selected changes have been made:
+
+=head3 L<XXX>
-L<overload> has been upgraded from version 1.32 to 1.33.
+=over 4
=item *
-L<Pod::Checker> has been upgraded from version 1.73 to 1.74.
+XXX Description of the change here
-=item *
+=back
-L<Pod::Simple> has been upgraded from version 3.40 to 3.41.
+=head1 Diagnostics
-=item *
+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>.
-L<Pod::Usage> has been upgraded from version 1.70 to 2.01.
+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.
-=item *
+=head2 New Diagnostics
+
+XXX Newly added diagnostic messages go under here, separated into New Errors
+and New Warnings
-L<re> has been upgraded from version 0.40 to 0.41.
+=head3 New Errors
-(See under L</Internal Changes> for more information.)
+=over 4
=item *
-L<Storable> has been upgraded from version 3.22 to 3.23.
+XXX L<message|perldiag/"message">
-=item *
+=back
+
+=head3 New Warnings
-L<subs> has been upgraded from version 1.03 to 1.04.
+=over 4
=item *
-L<Symbol> has been upgraded from version 1.08 to 1.09.
+XXX L<message|perldiag/"message">
-=item *
+=back
-L<Test::Simple> has been upgraded from version 1.302181 to 1.302182.
+=head2 Changes to Existing Diagnostics
-=item *
+XXX Changes (i.e. rewording) of diagnostic messages go here
-L<Tie::RefHash> has been upgraded from version 1.39 to 1.40.
+=over 4
=item *
-L<Time::Local> has been upgraded from version 1.28 to 1.30.
+XXX Describe change here
-=item *
+=back
-L<Unicode::Collate> has been upgraded from version 1.27 to 1.29.
+=head1 Utility Changes
-=item *
+XXX Changes to installed programs such as F<perldoc> and F<xsubpp> go here.
+Most of these are built within the directory F<utils>.
-L<utf8> has been upgraded from version 1.22 to 1.24.
+[ 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. ]
-=item *
+=head2 L<XXX>
-L<version> has been upgraded from version 0.9924 to 0.9928.
+=over 4
=item *
-L<Win32> has been upgraded from version 0.53 to 0.54.
+XXX
+
+=back
+
+=head1 Configuration and Compilation
+
+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.
+
+[ List changes as an =item entry ].
+
+=over 4
=item *
-L<XS::APItest> has been upgraded from version 1.11 to 1.12.
+XXX
=back
-=head1 Documentation
+=head1 Testing
-=head2 Changes to Existing Documentation
+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.
-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 If there were no significant test changes, say this:
-=head1 Configuration and Compilation
+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 *
-Added the F<Configure> option B<-Dusedefaultstrict> to enable strict by default
-in perl programs when not invoked with B<-e> or B<-E>. This is a diagnostic
-tool for development.
+XXX
-=item *
+=back
-We now trap SIGBUS when F<Configure> checks for C<va_copy>.
+=head1 Platform Support
-On several systems the attempt to determine if we need C<va_copy> or similar
-results in a SIGBUS instead of the expected SIGSEGV, which previously caused a
-core dump.
+XXX Any changes to platform support should be listed in the sections below.
-[L<GH #18148|https://github.com/Perl/perl5/issues/18148>]
+[ 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
-=head1 Testing
+=head2 Discontinued Platforms
-Tests were added and changed to reflect the other additions and changes in this
-release.
+XXX List any platforms that this version of perl no longer compiles on.
-=head1 Platform Support
+=over 4
+
+=item XXX-some-platform
+
+XXX
+
+=back
=head2 Platform-Specific Notes
-=over 4
+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.
-=item Windows
+=over 4
-The same manifest is now used for Visual C++ and gcc builds.
+=item XXX-some-platform
-Previously, MSVC builds were using the B</manifestdependency> flag instead of
-embedding F<perlexe.manifest>, which caused issues such as C<GetVersionEx()>
-returning the wrong version number on Windows 10.
+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 *
-The L<re> module has a new function C<optimization>, which can return a hashref
-of optimization data discovered about a compiled regexp.
+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 *
-Fixed a bug in which some regexps with recursive subpatterns matched
-incorrectly.
+XXX
+
+=back
-[L<GH #18096|https://github.com/Perl/perl5/issues/18096>]
+=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 *
+
+XXX
=back
-=head1 Acknowledgements
+=head1 Errata From Previous Releases
-Perl 5.33.3 represents approximately 4 weeks of development since Perl 5.33.2
-and contains approximately 90,000 lines of changes across 740 files from 20
-authors.
+=over 4
-Excluding auto-generated files, documentation and release tools, there were
-approximately 15,000 lines of changes to 500 .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.33.3:
+XXX Add anything here that we forgot to add, or were mistaken about, in
+the perldelta of a previous release.
-Christian Walde (Mithaldu), Dan Book, Eric Lindblad, Felipe Gasper, H.Merijn
-Brand, Hugo van der Sanden, Ichinose Shogo, James E Keenan, Karen Etheridge,
-Karl Williamson, Nicolas R., Richard Leach, Samanta Navarro, Sawyer X, Steve
-Hay, TAKAI Kousuke, Thibault Duponchelle, Todd Rinaldo, Tomasz Konojacki, Tony
-Cook.
+=back
-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.
+=head1 Obituary
+
+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.2..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
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