diff options
-rw-r--r-- | MANIFEST | 1 | ||||
-rwxr-xr-x | Makefile.SH | 8 | ||||
-rw-r--r-- | pod/.gitignore | 2 | ||||
-rw-r--r-- | pod/perl.pod | 1 | ||||
-rw-r--r-- | pod/perl5179delta.pod | 670 | ||||
-rw-r--r-- | pod/perldelta.pod | 618 | ||||
-rw-r--r-- | vms/descrip_mms.template | 2 | ||||
-rw-r--r-- | win32/Makefile | 4 | ||||
-rw-r--r-- | win32/makefile.mk | 4 | ||||
-rw-r--r-- | win32/pod.mak | 4 |
10 files changed, 851 insertions, 463 deletions
@@ -4723,6 +4723,7 @@ pod/perl5175delta.pod Perl changes in version 5.17.5 pod/perl5176delta.pod Perl changes in version 5.17.6 pod/perl5177delta.pod Perl changes in version 5.17.7 pod/perl5178delta.pod Perl changes in version 5.17.8 +pod/perl5179delta.pod Perl changes in version 5.17.9 pod/perl561delta.pod Perl changes in version 5.6.1 pod/perl56delta.pod Perl changes in version 5.6 pod/perl581delta.pod Perl changes in version 5.8.1 diff --git a/Makefile.SH b/Makefile.SH index cadfafb6b7..ab4e4ca191 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -491,7 +491,7 @@ mini_obj = $(minindt_obj) $(MINIDTRACE_O) ndt_obj = $(obj0) $(obj1) $(obj2) $(obj3) $(ARCHOBJS) obj = $(ndt_obj) $(DTRACE_O) -perltoc_pod_prereqs = extra.pods pod/perl5179delta.pod pod/perlapi.pod pod/perlintern.pod pod/perlmodlib.pod pod/perluniprops.pod +perltoc_pod_prereqs = extra.pods pod/perl51710delta.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 @@ -1067,9 +1067,9 @@ pod/perlintern.pod: $(MINIPERL_EXE) autodoc.pl embed.fnc pod/perlmodlib.pod: $(MINIPERL_EXE) pod/perlmodlib.PL MANIFEST $(MINIPERL) $(Icwd) pod/perlmodlib.PL -q -pod/perl5179delta.pod: pod/perldelta.pod - $(RMS) pod/perl5179delta.pod - $(LNS) perldelta.pod pod/perl5179delta.pod +pod/perl51710delta.pod: pod/perldelta.pod + $(RMS) pod/perl51710delta.pod + $(LNS) perldelta.pod pod/perl51710delta.pod extra.pods: $(MINIPERL_EXE) -@test ! -f extra.pods || rm -f `cat extra.pods` diff --git a/pod/.gitignore b/pod/.gitignore index 17ebcb3ddc..2591d513bb 100644 --- a/pod/.gitignore +++ b/pod/.gitignore @@ -59,7 +59,7 @@ /roffitall # generated -/perl5179delta.pod +/perl51710delta.pod /perlapi.pod /perlintern.pod *.html diff --git a/pod/perl.pod b/pod/perl.pod index 2433edaf35..d3f9c054a3 100644 --- a/pod/perl.pod +++ b/pod/perl.pod @@ -179,6 +179,7 @@ aux a2p c2ph h2ph h2xs perlbug pl2pm pod2html pod2man s2p splain xsubpp perlhist Perl history records perldelta Perl changes since previous version + perl5179delta Perl changes in version 5.17.9 perl5178delta Perl changes in version 5.17.8 perl5177delta Perl changes in version 5.17.7 perl5176delta Perl changes in version 5.17.6 diff --git a/pod/perl5179delta.pod b/pod/perl5179delta.pod new file mode 100644 index 0000000000..432e1fc365 --- /dev/null +++ b/pod/perl5179delta.pod @@ -0,0 +1,670 @@ +=encoding utf8 + +=head1 NAME + +perl5179delta - what is new for perl v5.17.9 + +=head1 DESCRIPTION + +This document describes differences between the 5.17.8 release and the 5.17.9 +release. + +If you are upgrading from an earlier release such as 5.17.7, first read +L<perl5178delta>, which describes differences between 5.17.7 and 5.17.8. + +=head1 Core Enhancements + +=head2 Interpolations now Accepted in Regular Expression Set Operations + +Perl v5.17.8 introduced L<regular expression set operations|perlre/(?[ ])>. +They have now been expanded to allow the interpolation of a +previously-compiled set into a bigger set, like this: + + my $thai_or_lao = qr/\p{Thai} + \p{Lao}/; + ... + qr/(?[ \p{Digit} & $thai_or_lao ])/; + +=head1 Incompatible Changes + +=head2 C<$ENV{foo} = undef> no longer deletes value from environ + +5.17.3 Introduced a change where assiging C<undef> to an C<%ENV> key was equivalent +to C<delete $ENV{foo}>. + +This release reverts that change. + +=head1 Deprecations + +The deprecation of lexical C<$_> in 5.17.7 has been commuted. The feature +is now marked experimental. + +=head2 Deprecated pragma + +=over + +=item L<encoding> + +This module is deprecated under perl 5.18. It uses a mechanism provided by +perl that is deprecated under 5.18 and higher, and may be removed in a +future version. + +=back + +=head2 Deprecated Modules + +The following modules will be removed from the core distribution in a +future release, and should be installed from CPAN instead. Distributions +on CPAN which require these should add them to their prerequisites. The +core versions of these modules C<warnings> will issue a deprecation warning. + +You can silence these deprecation warnings by installing the modules +in question from CPAN. + +=over + +=item L<Archive::Extract> + +=item L<B::Lint> + +=item L<B::Lint::Debug> + +=item L<CPANPLUS> + +=item L<CPANPLUS::Backend> + +=item L<CPANPLUS::Backend::RV> + +=item L<CPANPLUS::Config> + +=item L<CPANPLUS::Config::HomeEnv> + +=item L<CPANPLUS::Configure> + +=item C<CPANPLUS::Configure::Setup> + +=item L<CPANPLUS::Dist> + +=item L<CPANPLUS::Dist::Autobundle> + +=item L<CPANPLUS::Dist::Base> + +=item L<CPANPLUS::Dist::Build> + +=item L<CPANPLUS::Dist::Build::Constants> + +=item L<CPANPLUS::Dist::MM> + +=item L<CPANPLUS::Dist::Sample> + +=item L<CPANPLUS::Error> + +=item L<CPANPLUS::Internals> + +=item C<CPANPLUS::Internals::Constants> + +=item C<CPANPLUS::Internals::Constants::Report> + +=item L<CPANPLUS::Internals::Extract> + +=item L<CPANPLUS::Internals::Fetch> + +=item L<CPANPLUS::Internals::Report> + +=item L<CPANPLUS::Internals::Search> + +=item L<CPANPLUS::Internals::Source> + +=item L<CPANPLUS::Internals::Source::Memory> + +=item L<CPANPLUS::Internals::Source::SQLite> + +=item C<CPANPLUS::Internals::Source::SQLite::Tie> + +=item L<CPANPLUS::Internals::Utils> + +=item C<CPANPLUS::Internals::Utils::Autoflush> + +=item L<CPANPLUS::Module> + +=item L<CPANPLUS::Module::Author> + +=item L<CPANPLUS::Module::Author::Fake> + +=item L<CPANPLUS::Module::Checksums> + +=item L<CPANPLUS::Module::Fake> + +=item C<CPANPLUS::Module::Signature> + +=item L<CPANPLUS::Selfupdate> + +=item L<CPANPLUS::Shell> + +=item L<CPANPLUS::Shell::Classic> + +=item L<CPANPLUS::Shell::Default> + +=item L<CPANPLUS::Shell::Default::Plugins::CustomSource> + +=item L<CPANPLUS::Shell::Default::Plugins::Remote> + +=item L<CPANPLUS::Shell::Default::Plugins::Source> + +=item L<Devel::InnerPackage> + +=item L<Log::Message> + +=item L<Log::Message::Config> + +=item L<Log::Message::Handlers> + +=item L<Log::Message::Item> + +=item L<Log::Message::Simple> + +=item L<Module::Pluggable> + +=item L<Module::Pluggable::Object> + +=item L<Object::Accessor> + +=item L<Term::UI> + +=item L<Term::UI::History> + +=back + +=head3 Deprecated Utilities + +The following utilities will be removed from the core distribution in a +future release as their associated modules have been deprecated. They +will remain available with the applicable CPAN distribution. + +=over + +=item L<cpanp> + +Included with L<CPANPLUS>. + +=item C<cpanp-run-perl> + +Included with L<CPANPLUS>. + +=item L<cpan2dist> + +Included with L<CPANPLUS>. + +=item L<pod2latex> + +The L<Pod::LaTeX> module was deprecated with 5.17.8. + +=back + +=head2 Five additional characters should be escaped in patterns with C</x> + +When a regular expression pattern is compiled with C</x>, Perl treats 6 +characters as white space to ignore, such as SPACE and TAB. However, +Unicode recommends 11 characters be treated thusly. In preparation to +conforming with this in a future Perl version, in the meantime, use of +any of the missing characters will raise a deprecation warning, unless +turned off. The five characters are: +U+0085 NEXT LINE, +U+200E LEFT-TO-RIGHT MARK, +U+200F RIGHT-TO-LEFT MARK, +U+2028 LINE SEPARATOR, +and +U+2029 PARAGRAPH SEPARATOR. + +=head1 Modules and Pragmata + +=head2 New Modules and Pragmata + +=over 4 + +=item * + +L<Config::Perl::V> version 0.16 has been added as a dual-lifed module. +It provides structured data retrieval of C<perl -V> output including +information only known to the C<perl> binary and not available via L<Config>. + +=back + +=head2 Updated Modules and Pragmata + +=over 4 + +=item * + +L<Archive::Extract> has been upgraded from version 0.62 to 0.68. + +NOTE: L<Archive::Extract> is deprecated and may be removed from a future version of Perl. + +=item * + +L<Attribute::Handlers> has been upgraded from version 0.93 to 0.94. + +=item * + +L<B::Lint> has been upgraded from version 1.14 to 1.17. + +NOTE: L<B::Lint> is deprecated and may be removed from a future version of Perl. + +=item * + +L<Benchmark> has been upgraded from version 1.13 to 1.14. + +The "too few iterations" message is now a warning on STDERR +instead of being output on STDOUT. + +=item * + +L<bignum> has been upgraded from version 0.31 to 0.32. + +=item * + +L<CPAN> has been upgraded from version 1.99_51 to 2.00. + +=item * + +L<CPANPLUS> has been upgraded from version 0.9133 to 0.9135. + +NOTE: L<CPANPLUS> is deprecated and may be removed from a future version of Perl. + +=item * + +L<CPANPLUS::Dist::Build> has been upgraded from version 0.68 to 0.70. + +NOTE: L<CPANPLUS::Dist::Build> is deprecated and may be removed from a future version of Perl. + +=item * + +L<Data::Dumper> has been upgraded from version 2.141 to 2.142. + +Additional tests were added in order to improve statement, branch, condition +and subroutine coverage. On the basis of the coverage analysis, some of the +internals of Dumper.pm were refactored. Almost all methods are now +documented. + +=item * + +L<DBM_Filter> has been upgraded from version 0.04 to 0.05. + +=item * + +L<Digest::SHA> has been upgraded from version 5.81 to 5.82. + +=item * + +L<Encode> has been upgraded from version 2.47 to 2.48. + +=item * + +L<ExtUtils::Manifest> has been upgraded from version 1.62 to 1.63. + +=item * + +L<File::CheckTree> has been upgraded from version 4.41 to 4.42. + +=item * + +L<File::DosGlob> has been upgraded from version 1.09 to 1.10. + +=item * + +L<File::Temp> has been upgraded from version 0.22 to 0.22_90 + +Fixes various bugs involving directory removal. Defers unlinking tempfiles if +the initial unlink fails, which fixes problems on NFS. + +=item * + +L<Filter::Simple> has been upgraded from version 0.88 to 0.89. + +=item * + +L<IO> has been upgraded from version 1.26 to 1.27. + +=item * + +L<Log::Message> has been upgraded from version 0.04 to 0.06. + +NOTE: L<Log::Message> is deprecated and may be removed from a future version of Perl. + +=item * + +L<Log::Message::Simple> has been upgraded from version 0.08 to 0.10. + +NOTE: L<Log::Message::Simple> is deprecated and may be removed from a future version of Perl. + +=item * + +L<Math::BigInt> has been upgraded from version 1.998 to 1.999. + +=item * + +L<Module::CoreList> has been upgraded from version 2.80 to 2.82. + +=item * + +L<Module::Load> has been upgraded from version 0.22 to 0.24. + +=item * + +L<Module::Pluggable> has been upgraded from version 4.5 to 4.6. + +NOTE: L<Module::Pluggable> is deprecated and may be removed from a future version of Perl. + +=item * + +L<Object::Accessor> has been upgraded from version 0.44 to 0.46. + +NOTE: L<Object::Accessor> is deprecated and may be removed from a future version of Perl. + +=item * + +L<overload> has been upgraded from version 1.20 to 1.21. + +=item * + +L<PerlIO::scalar> has been upgraded from version 0.15 to 0.16. + +The buffer scalar supplied may now only contain code pounts 0xFF or +lower. [perl #109828] + +=item * + +L<Pod::Checker> has been upgraded from version 1.51 to 1.60. + +=item * + +L<Pod::Html> has been upgraded from version 1.17 to 1.18. + +=item * + +L<Pod::Parser> has been upgraded from version 1.51 to 1.60. + +=item * + +L<Pod::Perldoc> has been upgraded from version 3.17 to 3.19. + +=item * + +L<Pod::Usage> has been upgraded from version 1.51 to 1.61. + +=item * + +L<SelfLoader> has been upgraded from version 1.20 to 1.21. + +=item * + +L<Term::UI> has been upgraded from version 0.32 to 0.34. + +NOTE: L<Term::UI> is deprecated and may be removed from a future version of Perl. + +=item * + +L<Test::Harness> has been upgraded from version 3.25_01 to 3.26. + +=item * + +L<Text::Soundex> has been upgraded from version 3.03_01 to 3.04. + +=item * + +L<Thread::Queue> has been upgraded from version 3.01 to 3.02. + +=item * + +L<Unicode::UCD> has been upgraded from version 0.47 to 0.50. + +=item * + +L<warnings> has been upgraded from version 1.16 to 1.17. + +=item * + +L<Win32> has been upgraded from version 0.45 to 0.46. + +=item * + +L<Win32API::File> has been upgraded from version 0.1200 to 0.1201. + +=back + +=head1 Documentation + +=head2 Changes to Existing Documentation + +=head3 L<perlsec> + +=over 4 + +=item * + +A syntax error was fixed in one of illustrative examples. + +=back + +=head1 Diagnostics + +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>. + +=head2 New Diagnostics + +=head3 New Warnings + +=over 4 + +=item * + +Strings with code points over 0xFF may not be mapped into in-memory file handles + +=back + +=head2 Changes to Existing Diagnostics + +=over 4 + +=item * + +The warnings for \b{ and \B{ were added in the 5.17 series; they are a +deprecation warning which should be turned off by that category. One +should not have to turn off regular regexp warnings as well to get rid +of these. + +=back + +=head1 Utility Changes + +=head3 L<corelist> + +=over 4 + +=item * + +Added C<--feature> switch which lists the first version bundle of each +named feature given. + +=item * + +Added C<--upstream> switch which shows if the given module +is primarily maintained in perl core or on CPAN and bug tracker URL. + +=back + +=head1 Configuration and Compilation + +=over 4 + +=item * + +Added C<useversionedarchname> option to Configure + +When set, it includes 'api_versionstring' in 'archname'. E.g. +x86_64-linux-5.13.6-thread-multi. It is unset by default. + +This feature was requested by Tim Bunce, who observed that +INSTALL_BASE creates a library structure that does not +differentiate by perl version. Instead, it places architecture +specific files in "$install_base/lib/perl5/$archname". This makes +it difficult to use a common INSTALL_BASE library path with +multiple versions of perl. + +By setting -Duseversionedarchname, the $archname will be +distinct for architecture *and* API version, allowing mixed use of +INSTALL_BASE. + +=item * + +Configure will honour the external C<MAILDOMAIN> environment variable, if set. + +=item * + +C<installman> no longer ignores the silent option + +=item * + +Both C<META.yml> and C<META.json> files are now included in the distribution. + +=back + +=head1 Testing + +=over 4 + +=item * + +Enable perl core tests to pass when locale support is not available. + +use L<locale> - this will now die if $Config{d_setlocale} is not true. +All tests that use L<locale> will skip if $Config{d_setlocale} is not true. +This enables us to pass tests on Android which uses ICU instead of locales. + +=back + +=head1 Platform Support + +=head2 Platform-Specific Notes + +=over 4 + +=item VMS + +The character set for Extended Filename Syntax (EFS) is now enabled by default on +VMS. Among other things, this provides better handling of dots in directory names, +multiple dots in filenames,and spaces in filenames. To obtain the old behavior, +set the logical name C<DECC$EFS_CHARSET> to C<DISABLE>. + +=item MidnightBSD + +C<libc_r> was removed from recent versions of MidnightBSD and older versions +work better with C<pthread>. Threading is now enabled using C<pthread> which +corrects build errors with threading enabled on 0.4-CURRENT. + +=back + +=head1 Internal Changes + +=over 4 + +=item * + +Synonyms for the misleadingly named C<av_len()> has been created: +C<av_top_index()> and C<av_tindex>. All three of these return the +number of the highest index in the array, not the number of elements it +contains. (The name C<av_top> which was introduced in Perl v.5.17.8 has +been removed.) + +=back + +=head1 Selected Bug Fixes + +=over 4 + +=item * + +-DPERL_GLOBAL_STRUCT builds now free the global struct B<after> +they've finished using it. + +=item * + +A trailing '/' on a path in @INC will no longer have an additional '/' appended. + +=item * + +The C<:crlf> layer now works when unread data doesn't fit into its own +buffer. [perl #112244]. + +=item * + +C<ungetc()> now handles UTF-8 encoded data. [perl #116322]. + +=back + +=head1 Acknowledgements + +Perl 5.17.9 represents approximately 4 weeks of development since Perl 5.17.8 +and contains approximately 42,000 lines of changes across 510 files from 35 +authors. + +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.17.9: + +Aaron Crane, Alan Haggai Alavi, Alexandr Ciornii, Andy Dougherty, Brad +Gilbert, Chris 'BinGOs' Williams, Christian Hansen, Craig A. Berry, Dagfinn +Ilmari Mannsåker, Daniel Dragan, Dave Rolsky, David Golden, David Mitchell, +Father Chrysostomos, H.Merijn Brand, James E Keenan, Jan Dubois, Jerry D. +Hedden, Jess Robinson, Karl Williamson, Kent Fredric, Leon Timmermans, Lucas +Holt, Matthew Horsfall, Nicholas Clark, Peter Martini, Rafael Garcia-Suarez, +Ricardo Signes, Smylers, Steffen Müller, Steve Hay, Thomas Sibley, Tobias +Leich, Tony Cook. + +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 articles recently +posted to the comp.lang.perl.misc newsgroup and the perl bug database at +http://rt.perl.org/perlbug/ . There may also be information at +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 +sufficient test case. Your bug report, along with the output of C<perl -V>, +will be sent off to perlbug@perl.org to be analysed by the Perl porting team. + +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 +CPAN. + +=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 5cd6510933..ba0930858f 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -2,220 +2,83 @@ =head1 NAME -perldelta - what is new for perl v5.17.9 +[ 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.17.10 =head1 DESCRIPTION -This document describes differences between the 5.17.8 release and the 5.17.9 +This document describes differences between the 5.17.9 release and the 5.17.10 release. -If you are upgrading from an earlier release such as 5.17.7, first read -L<perl5178delta>, which describes differences between 5.17.7 and 5.17.8. - -=head1 Core Enhancements - -=head2 Interpolations now Accepted in Regular Expression Set Operations - -Perl v5.17.8 introduced L<regular expression set operations|perlre/(?[ ])>. -They have now been expanded to allow the interpolation of a -previously-compiled set into a bigger set, like this: - - my $thai_or_lao = qr/\p{Thai} + \p{Lao}/; - ... - qr/(?[ \p{Digit} & $thai_or_lao ])/; - -=head1 Incompatible Changes - -=head2 C<$ENV{foo} = undef> no longer deletes value from environ - -5.17.3 Introduced a change where assiging C<undef> to an C<%ENV> key was equivalent -to C<delete $ENV{foo}>. - -This release reverts that change. - -=head1 Deprecations - -The deprecation of lexical C<$_> in 5.17.7 has been commuted. The feature -is now marked experimental. - -=head2 Deprecated pragma - -=over - -=item L<encoding> - -This module is deprecated under perl 5.18. It uses a mechanism provided by -perl that is deprecated under 5.18 and higher, and may be removed in a -future version. - -=back - -=head2 Deprecated Modules - -The following modules will be removed from the core distribution in a -future release, and should be installed from CPAN instead. Distributions -on CPAN which require these should add them to their prerequisites. The -core versions of these modules C<warnings> will issue a deprecation warning. - -You can silence these deprecation warnings by installing the modules -in question from CPAN. - -=over - -=item L<Archive::Extract> - -=item L<B::Lint> - -=item L<B::Lint::Debug> - -=item L<CPANPLUS> - -=item L<CPANPLUS::Backend> - -=item L<CPANPLUS::Backend::RV> +If you are upgrading from an earlier release such as 5.17.8, first read +L<perl5179delta>, which describes differences between 5.17.8 and 5.17.9. -=item L<CPANPLUS::Config> +=head1 Notice -=item L<CPANPLUS::Config::HomeEnv> +XXX Any important notices here -=item L<CPANPLUS::Configure> - -=item C<CPANPLUS::Configure::Setup> - -=item L<CPANPLUS::Dist> - -=item L<CPANPLUS::Dist::Autobundle> - -=item L<CPANPLUS::Dist::Base> - -=item L<CPANPLUS::Dist::Build> - -=item L<CPANPLUS::Dist::Build::Constants> - -=item L<CPANPLUS::Dist::MM> - -=item L<CPANPLUS::Dist::Sample> - -=item L<CPANPLUS::Error> - -=item L<CPANPLUS::Internals> - -=item C<CPANPLUS::Internals::Constants> - -=item C<CPANPLUS::Internals::Constants::Report> - -=item L<CPANPLUS::Internals::Extract> - -=item L<CPANPLUS::Internals::Fetch> - -=item L<CPANPLUS::Internals::Report> - -=item L<CPANPLUS::Internals::Search> - -=item L<CPANPLUS::Internals::Source> - -=item L<CPANPLUS::Internals::Source::Memory> - -=item L<CPANPLUS::Internals::Source::SQLite> - -=item C<CPANPLUS::Internals::Source::SQLite::Tie> - -=item L<CPANPLUS::Internals::Utils> - -=item C<CPANPLUS::Internals::Utils::Autoflush> - -=item L<CPANPLUS::Module> - -=item L<CPANPLUS::Module::Author> - -=item L<CPANPLUS::Module::Author::Fake> - -=item L<CPANPLUS::Module::Checksums> - -=item L<CPANPLUS::Module::Fake> - -=item C<CPANPLUS::Module::Signature> +=head1 Core Enhancements -=item L<CPANPLUS::Selfupdate> +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. -=item L<CPANPLUS::Shell> +[ List each enhancement as a =head2 entry ] -=item L<CPANPLUS::Shell::Classic> +=head1 Security -=item L<CPANPLUS::Shell::Default> +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 L<CPANPLUS::Shell::Default::Plugins::CustomSource> +[ List each security issue as a =head2 entry ] -=item L<CPANPLUS::Shell::Default::Plugins::Remote> +=head1 Incompatible Changes -=item L<CPANPLUS::Shell::Default::Plugins::Source> +XXX For a release on a stable branch, this section aspires to be: -=item L<Devel::InnerPackage> + 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 L<Log::Message> +[ List each incompatible change as a =head2 entry ] -=item L<Log::Message::Config> +=head1 Deprecations -=item L<Log::Message::Handlers> +XXX Any deprecated features, syntax, modules etc. should be listed here. In +particular, deprecated modules should be listed here even if they are listed as +an updated module in the L</Modules and Pragmata> section. -=item L<Log::Message::Item> +[ List each deprecation as a =head2 entry ] -=item L<Log::Message::Simple> +=head1 Performance Enhancements -=item L<Module::Pluggable> +XXX Changes which enhance performance without changing behaviour go here. +There may well be none in a stable release. -=item L<Module::Pluggable::Object> +[ List each enhancement as a =item entry ] -=item L<Object::Accessor> +=over 4 -=item L<Term::UI> +=item * -=item L<Term::UI::History> +XXX =back -=head3 Deprecated Utilities - -The following utilities will be removed from the core distribution in a -future release as their associated modules have been deprecated. They -will remain available with the applicable CPAN distribution. - -=over - -=item L<cpanp> - -Included with L<CPANPLUS>. - -=item C<cpanp-run-perl> - -Included with L<CPANPLUS>. - -=item L<cpan2dist> - -Included with L<CPANPLUS>. - -=item L<pod2latex> - -The L<Pod::LaTeX> module was deprecated with 5.17.8. - -=back +=head1 Modules and Pragmata -=head2 Five additional characters should be escaped in patterns with C</x> - -When a regular expression pattern is compiled with C</x>, Perl treats 6 -characters as white space to ignore, such as SPACE and TAB. However, -Unicode recommends 11 characters be treated thusly. In preparation to -conforming with this in a future Perl version, in the meantime, use of -any of the missing characters will raise a deprecation warning, unless -turned off. The five characters are: -U+0085 NEXT LINE, -U+200E LEFT-TO-RIGHT MARK, -U+200F RIGHT-TO-LEFT MARK, -U+2028 LINE SEPARATOR, -and -U+2029 PARAGRAPH SEPARATOR. +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>, which prints stub +entries to STDOUT. Results can be pasted in place of the '=head2' entries +below. 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. -=head1 Modules and Pragmata +[ Within each section, list entries as a =item entry ] =head2 New Modules and Pragmata @@ -223,9 +86,7 @@ U+2029 PARAGRAPH SEPARATOR. =item * -L<Config::Perl::V> version 0.16 has been added as a dual-lifed module. -It provides structured data retrieval of C<perl -V> output including -information only known to the C<perl> binary and not available via L<Config>. +XXX =back @@ -235,404 +96,255 @@ information only known to the C<perl> binary and not available via L<Config>. =item * -L<Archive::Extract> has been upgraded from version 0.62 to 0.68. - -NOTE: L<Archive::Extract> is deprecated and may be removed from a future version of Perl. - -=item * - -L<Attribute::Handlers> has been upgraded from version 0.93 to 0.94. - -=item * - -L<B::Lint> has been upgraded from version 1.14 to 1.17. - -NOTE: L<B::Lint> is deprecated and may be removed from a future version of Perl. - -=item * - -L<Benchmark> has been upgraded from version 1.13 to 1.14. - -The "too few iterations" message is now a warning on STDERR -instead of being output on STDOUT. - -=item * - -L<bignum> has been upgraded from version 0.31 to 0.32. - -=item * - -L<CPAN> has been upgraded from version 1.99_51 to 2.00. - -=item * - -L<CPANPLUS> has been upgraded from version 0.9133 to 0.9135. - -NOTE: L<CPANPLUS> is deprecated and may be removed from a future version of Perl. - -=item * - -L<CPANPLUS::Dist::Build> has been upgraded from version 0.68 to 0.70. - -NOTE: L<CPANPLUS::Dist::Build> is deprecated and may be removed from a future version of Perl. - -=item * - -L<Data::Dumper> has been upgraded from version 2.141 to 2.142. - -Additional tests were added in order to improve statement, branch, condition -and subroutine coverage. On the basis of the coverage analysis, some of the -internals of Dumper.pm were refactored. Almost all methods are now -documented. - -=item * - -L<DBM_Filter> has been upgraded from version 0.04 to 0.05. - -=item * - -L<Digest::SHA> has been upgraded from version 5.81 to 5.82. - -=item * - -L<Encode> has been upgraded from version 2.47 to 2.48. - -=item * - -L<ExtUtils::Manifest> has been upgraded from version 1.62 to 1.63. - -=item * - -L<File::CheckTree> has been upgraded from version 4.41 to 4.42. - -=item * - -L<File::DosGlob> has been upgraded from version 1.09 to 1.10. - -=item * - -L<File::Temp> has been upgraded from version 0.22 to 0.22_90 - -Fixes various bugs involving directory removal. Defers unlinking tempfiles if -the initial unlink fails, which fixes problems on NFS. - -=item * - -L<Filter::Simple> has been upgraded from version 0.88 to 0.89. - -=item * - -L<IO> has been upgraded from version 1.26 to 1.27. +L<XXX> has been upgraded from version A.xx to B.yy. -=item * +=back -L<Log::Message> has been upgraded from version 0.04 to 0.06. +=head2 Removed Modules and Pragmata -NOTE: L<Log::Message> is deprecated and may be removed from a future version of Perl. +=over 4 =item * -L<Log::Message::Simple> has been upgraded from version 0.08 to 0.10. - -NOTE: L<Log::Message::Simple> is deprecated and may be removed from a future version of Perl. +XXX -=item * - -L<Math::BigInt> has been upgraded from version 1.998 to 1.999. +=back -=item * +=head1 Documentation -L<Module::CoreList> has been upgraded from version 2.80 to 2.82. +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>. -=item * +=head2 New Documentation -L<Module::Load> has been upgraded from version 0.22 to 0.24. +XXX Changes which create B<new> files in F<pod/> go here. -=item * +=head3 L<XXX> -L<Module::Pluggable> has been upgraded from version 4.5 to 4.6. +XXX Description of the purpose of the new file here -NOTE: L<Module::Pluggable> is deprecated and may be removed from a future version of Perl. +=head2 Changes to Existing Documentation -=item * +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. -L<Object::Accessor> has been upgraded from version 0.44 to 0.46. +=head3 L<XXX> -NOTE: L<Object::Accessor> is deprecated and may be removed from a future version of Perl. +=over 4 =item * -L<overload> has been upgraded from version 1.20 to 1.21. - -=item * +XXX Description of the change here -L<PerlIO::scalar> has been upgraded from version 0.15 to 0.16. +=back -The buffer scalar supplied may now only contain code pounts 0xFF or -lower. [perl #109828] +=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::Checker> has been upgraded from version 1.51 to 1.60. +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 -L<Pod::Html> has been upgraded from version 1.17 to 1.18. +XXX Newly added diagnostic messages go under here, separated into New Errors +and New Warnings -=item * +=head3 New Errors -L<Pod::Parser> has been upgraded from version 1.51 to 1.60. +=over 4 =item * -L<Pod::Perldoc> has been upgraded from version 3.17 to 3.19. +XXX L<message|perldiag/"message"> -=item * - -L<Pod::Usage> has been upgraded from version 1.51 to 1.61. +=back -=item * +=head3 New Warnings -L<SelfLoader> has been upgraded from version 1.20 to 1.21. +=over 4 =item * -L<Term::UI> has been upgraded from version 0.32 to 0.34. +XXX L<message|perldiag/"message"> -NOTE: L<Term::UI> is deprecated and may be removed from a future version of Perl. - -=item * +=back -L<Test::Harness> has been upgraded from version 3.25_01 to 3.26. +=head2 Changes to Existing Diagnostics -=item * +XXX Changes (i.e. rewording) of diagnostic messages go here -L<Text::Soundex> has been upgraded from version 3.03_01 to 3.04. +=over 4 =item * -L<Thread::Queue> has been upgraded from version 3.01 to 3.02. +XXX Describe change here -=item * +=back -L<Unicode::UCD> has been upgraded from version 0.47 to 0.50. +=head1 Utility Changes -=item * +XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here. +Most of these are built within the directories F<utils> and F<x2p>. -L<warnings> has been upgraded from version 1.16 to 1.17. +[ List utility changes as a =head3 entry for each utility and =item +entries for each change +Use L<XXX> with program names to get proper documentation linking. ] -=item * +=head3 L<XXX> -L<Win32> has been upgraded from version 0.45 to 0.46. +=over 4 =item * -L<Win32API::File> has been upgraded from version 0.1200 to 0.1201. +XXX =back -=head1 Documentation +=head1 Configuration and Compilation -=head2 Changes to Existing Documentation +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. -=head3 L<perlsec> +[ List changes as a =item entry ]. =over 4 =item * -A syntax error was fixed in one of illustrative examples. +XXX =back -=head1 Diagnostics +=head1 Testing -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 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. -=head2 New Diagnostics - -=head3 New Warnings +[ List each test improvement as a =item entry ] =over 4 =item * -Strings with code points over 0xFF may not be mapped into in-memory file handles +XXX =back -=head2 Changes to Existing Diagnostics - -=over 4 - -=item * +=head1 Platform Support -The warnings for \b{ and \B{ were added in the 5.17 series; they are a -deprecation warning which should be turned off by that category. One -should not have to turn off regular regexp warnings as well to get rid -of these. +XXX Any changes to platform support should be listed in the sections below. -=back +[ Within the sections, list each platform as a =item entry with specific +changes as paragraphs below it. ] -=head1 Utility Changes +=head2 New Platforms -=head3 L<corelist> +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 * - -Added C<--feature> switch which lists the first version bundle of each -named feature given. - -=item * +=item XXX-some-platform -Added C<--upstream> switch which shows if the given module -is primarily maintained in perl core or on CPAN and bug tracker URL. +XXX =back -=head1 Configuration and Compilation +=head2 Discontinued Platforms -=over 4 +XXX List any platforms that this version of perl no longer compiles on. -=item * +=over 4 -Added C<useversionedarchname> option to Configure +=item XXX-some-platform -When set, it includes 'api_versionstring' in 'archname'. E.g. -x86_64-linux-5.13.6-thread-multi. It is unset by default. +XXX -This feature was requested by Tim Bunce, who observed that -INSTALL_BASE creates a library structure that does not -differentiate by perl version. Instead, it places architecture -specific files in "$install_base/lib/perl5/$archname". This makes -it difficult to use a common INSTALL_BASE library path with -multiple versions of perl. +=back -By setting -Duseversionedarchname, the $archname will be -distinct for architecture *and* API version, allowing mixed use of -INSTALL_BASE. +=head2 Platform-Specific Notes -=item * +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. -Configure will honour the external C<MAILDOMAIN> environment variable, if set. +=over 4 -=item * +=item XXX-some-platform -C<installman> no longer ignores the silent option +XXX -=item * +=back -Both C<META.yml> and C<META.json> files are now included in the distribution. +=head1 Internal Changes -=back +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. -=head1 Testing +[ List each change as a =item entry ] =over 4 =item * -Enable perl core tests to pass when locale support is not available. - -use L<locale> - this will now die if $Config{d_setlocale} is not true. -All tests that use L<locale> will skip if $Config{d_setlocale} is not true. -This enables us to pass tests on Android which uses ICU instead of locales. +XXX =back -=head1 Platform Support - -=head2 Platform-Specific Notes - -=over 4 - -=item VMS - -The character set for Extended Filename Syntax (EFS) is now enabled by default on -VMS. Among other things, this provides better handling of dots in directory names, -multiple dots in filenames,and spaces in filenames. To obtain the old behavior, -set the logical name C<DECC$EFS_CHARSET> to C<DISABLE>. - -=item MidnightBSD - -C<libc_r> was removed from recent versions of MidnightBSD and older versions -work better with C<pthread>. Threading is now enabled using C<pthread> which -corrects build errors with threading enabled on 0.4-CURRENT. +=head1 Selected Bug Fixes -=back +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>. -=head1 Internal Changes +[ List each fix as a =item entry ] =over 4 =item * -Synonyms for the misleadingly named C<av_len()> has been created: -C<av_top_index()> and C<av_tindex>. All three of these return the -number of the highest index in the array, not the number of elements it -contains. (The name C<av_top> which was introduced in Perl v.5.17.8 has -been removed.) +XXX =back -=head1 Selected Bug Fixes - -=over 4 +=head1 Known Problems -=item * +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. --DPERL_GLOBAL_STRUCT builds now free the global struct B<after> -they've finished using it. +[ List each fix as a =item entry ] -=item * - -A trailing '/' on a path in @INC will no longer have an additional '/' appended. +=over 4 =item * -The C<:crlf> layer now works when unread data doesn't fit into its own -buffer. [perl #112244]. +XXX -=item * +=back -C<ungetc()> now handles UTF-8 encoded data. [perl #116322]. +=head1 Obituary -=back +XXX If any significant core contributor has died, we've added a short obituary +here. =head1 Acknowledgements -Perl 5.17.9 represents approximately 4 weeks of development since Perl 5.17.8 -and contains approximately 42,000 lines of changes across 510 files from 35 -authors. - -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.17.9: - -Aaron Crane, Alan Haggai Alavi, Alexandr Ciornii, Andy Dougherty, Brad -Gilbert, Chris 'BinGOs' Williams, Christian Hansen, Craig A. Berry, Dagfinn -Ilmari Mannsåker, Daniel Dragan, Dave Rolsky, David Golden, David Mitchell, -Father Chrysostomos, H.Merijn Brand, James E Keenan, Jan Dubois, Jerry D. -Hedden, Jess Robinson, Karl Williamson, Kent Fredric, Leon Timmermans, Lucas -Holt, Matthew Horsfall, Nicholas Clark, Peter Martini, Rafael Garcia-Suarez, -Ricardo Signes, Smylers, Steffen Müller, Steve Hay, Thomas Sibley, Tobias -Leich, Tony Cook. - -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. +XXX Generate this with: + + perl Porting/acknowledgements.pl v5.17.9..HEAD =head1 Reporting Bugs diff --git a/vms/descrip_mms.template b/vms/descrip_mms.template index 1ecd3be5e5..abcedeb6b5 100644 --- a/vms/descrip_mms.template +++ b/vms/descrip_mms.template @@ -326,7 +326,7 @@ x2p : [.x2p]$(DBG)a2p$(E) [.x2p]s2p.com [.x2p]find2perl.com extra.pods : miniperl @ @extra_pods.com -PERLDELTA_CURRENT = [.pod]perl5179delta.pod +PERLDELTA_CURRENT = [.pod]perl51710delta.pod $(PERLDELTA_CURRENT) : [.pod]perldelta.pod Copy/NoConfirm/Log $(MMS$SOURCE) $(PERLDELTA_CURRENT) diff --git a/win32/Makefile b/win32/Makefile index 203b919211..06cbb94a3c 100644 --- a/win32/Makefile +++ b/win32/Makefile @@ -1157,7 +1157,7 @@ utils: $(PERLEXE) $(X2P) copy ..\README.tw ..\pod\perltw.pod copy ..\README.vos ..\pod\perlvos.pod copy ..\README.win32 ..\pod\perlwin32.pod - copy ..\pod\perldelta.pod ..\pod\perl5179delta.pod + copy ..\pod\perldelta.pod ..\pod\perl51710delta.pod cd ..\win32 $(PERLEXE) $(PL2BAT) $(UTILS) $(PERLEXE) $(ICWD) ..\autodoc.pl .. @@ -1250,7 +1250,7 @@ distclean: realclean -if exist $(LIBDIR)\XS rmdir /s /q $(LIBDIR)\XS -if exist $(LIBDIR)\Win32API rmdir /s /q $(LIBDIR)\Win32API -cd $(PODDIR) && del /f *.html *.bat roffitall \ - perl5179delta.pod perlaix.pod perlamiga.pod perlapi.pod \ + perl51710delta.pod perlaix.pod perlamiga.pod perlapi.pod \ perlbs2000.pod perlce.pod perlcn.pod perlcygwin.pod \ perldgux.pod perldos.pod perlfreebsd.pod perlhaiku.pod \ perlhpux.pod perlhurd.pod perlintern.pod perlirix.pod \ diff --git a/win32/makefile.mk b/win32/makefile.mk index c144fe1967..a43323cd78 100644 --- a/win32/makefile.mk +++ b/win32/makefile.mk @@ -1337,7 +1337,7 @@ utils: $(PERLEXE) $(X2P) copy ..\README.tw ..\pod\perltw.pod copy ..\README.vos ..\pod\perlvos.pod copy ..\README.win32 ..\pod\perlwin32.pod - copy ..\pod\perldelta.pod ..\pod\perl5179delta.pod + copy ..\pod\perldelta.pod ..\pod\perl51710delta.pod $(PERLEXE) $(PL2BAT) $(UTILS) $(PERLEXE) $(ICWD) ..\autodoc.pl .. $(PERLEXE) $(ICWD) ..\pod\perlmodlib.pl -q @@ -1429,7 +1429,7 @@ distclean: realclean -if exist $(LIBDIR)\XS rmdir /s /q $(LIBDIR)\XS -if exist $(LIBDIR)\Win32API rmdir /s /q $(LIBDIR)\Win32API -cd $(PODDIR) && del /f *.html *.bat roffitall \ - perl5179delta.pod perlaix.pod perlamiga.pod perlapi.pod \ + perl51710delta.pod perlaix.pod perlamiga.pod perlapi.pod \ perlbs2000.pod perlce.pod perlcn.pod perlcygwin.pod \ perldgux.pod perldos.pod perlfreebsd.pod perlhaiku.pod \ perlhpux.pod perlhurd.pod perlintern.pod perlirix.pod \ diff --git a/win32/pod.mak b/win32/pod.mak index 5b6b9ac977..4287aa7d87 100644 --- a/win32/pod.mak +++ b/win32/pod.mak @@ -32,6 +32,7 @@ POD = perl.pod \ perl5161delta.pod \ perl5162delta.pod \ perl5170delta.pod \ + perl51710delta.pod \ perl5171delta.pod \ perl5172delta.pod \ perl5173delta.pod \ @@ -164,6 +165,7 @@ MAN = perl.man \ perl5161delta.man \ perl5162delta.man \ perl5170delta.man \ + perl51710delta.man \ perl5171delta.man \ perl5172delta.man \ perl5173delta.man \ @@ -296,6 +298,7 @@ HTML = perl.html \ perl5161delta.html \ perl5162delta.html \ perl5170delta.html \ + perl51710delta.html \ perl5171delta.html \ perl5172delta.html \ perl5173delta.html \ @@ -428,6 +431,7 @@ TEX = perl.tex \ perl5161delta.tex \ perl5162delta.tex \ perl5170delta.tex \ + perl51710delta.tex \ perl5171delta.tex \ perl5172delta.tex \ perl5173delta.tex \ |