In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/f3962485cead8dc91a01da568304dfc6b040c479?hp=95388f2eb27e74cdbfb715c0097f16aeba4e6e4e>
- Log ----------------------------------------------------------------- commit f3962485cead8dc91a01da568304dfc6b040c479 Author: Sawyer X <[email protected]> Date: Wed May 31 16:22:59 2017 +0200 Add changes ----------------------------------------------------------------------- Summary of changes: Cross/config.sh-arm-linux | 38 +- Cross/config.sh-arm-linux-n770 | 38 +- INSTALL | 30 +- MANIFEST | 1 + META.json | 4 +- META.yml | 2 +- Makefile.SH | 8 +- NetWare/Makefile | 4 +- NetWare/config_H.wc | 10 +- Porting/config.sh | 40 +- Porting/config_H | 18 +- Porting/epigraphs.pod | 10 + Porting/release_schedule.pod | 18 +- README.haiku | 4 +- README.macosx | 8 +- README.os2 | 2 +- README.vms | 4 +- README.win32 | 2 +- dist/Module-CoreList/Changes | 3 + dist/Module-CoreList/lib/Module/CoreList.pm | 25 +- .../lib/Module/CoreList/TieHashDelta.pm | 2 +- dist/Module-CoreList/lib/Module/CoreList/Utils.pm | 9 +- hints/catamount.sh | 4 +- lib/B/Op_private.pm | 2 +- lib/feature.pm | 8 +- patchlevel.h | 4 +- plan9/config.plan9 | 10 +- plan9/config_sh.sample | 36 +- pod/.gitignore | 2 +- pod/perl.pod | 1 + pod/{perldelta.pod => perl5260delta.pod} | 2 +- pod/perldelta.pod | 3309 ++------------------ regen/feature.pl | 4 +- sv.c | 2 +- uconfig.h | 18 +- uconfig.sh | 16 +- uconfig64.sh | 16 +- vms/descrip_mms.template | 2 +- win32/GNUmakefile | 26 +- win32/Makefile | 16 +- win32/Makefile.ce | 2 +- win32/makefile.mk | 22 +- win32/pod.mak | 4 + 43 files changed, 464 insertions(+), 3322 deletions(-) copy pod/{perldelta.pod => perl5260delta.pod} (99%) diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux index 6f934af8a0..f5cb28edd0 100644 --- a/Cross/config.sh-arm-linux +++ b/Cross/config.sh-arm-linux @@ -33,11 +33,11 @@ ansi2knr='' aphostname='/bin/hostname' api_revision='5' api_subversion='0' -api_version='26' -api_versionstring='5.26.0' +api_version='27' +api_versionstring='5.27.0' ar='ar' -archlib='/usr/lib/perl5/5.26.0/armv4l-linux' -archlibexp='/usr/lib/perl5/5.26.0/armv4l-linux' +archlib='/usr/lib/perl5/5.27.0/armv4l-linux' +archlibexp='/usr/lib/perl5/5.27.0/armv4l-linux' archname64='' archname='armv4l-linux' archobjs='' @@ -56,7 +56,7 @@ castflags='0' cat='cat' cc='cc' cccdlflags='-fpic' -ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.26.0/armv4l-linux/CORE' +ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.27.0/armv4l-linux/CORE' ccflags='-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='arm-linux-gcc' @@ -826,7 +826,7 @@ inc_version_list=' ' inc_version_list_init='0' incpath='' inews='' -installarchlib='./install_me_here/usr/lib/perl5/5.26.0/armv4l-linux' +installarchlib='./install_me_here/usr/lib/perl5/5.27.0/armv4l-linux' installbin='./install_me_here/usr/bin' installhtml1dir='' installhtml3dir='' @@ -834,13 +834,13 @@ installman1dir='./install_me_here/usr/share/man/man1' installman3dir='./install_me_here/usr/share/man/man3' installprefix='./install_me_here/usr' installprefixexp='./install_me_here/usr' -installprivlib='./install_me_here/usr/lib/perl5/5.26.0' +installprivlib='./install_me_here/usr/lib/perl5/5.27.0' installscript='./install_me_here/usr/bin' -installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.26.0/armv4l-linux' +installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' installsitebin='./install_me_here/usr/bin' installsitehtml1dir='' installsitehtml3dir='' -installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.26.0' +installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.27.0' installsiteman1dir='./install_me_here/usr/share/man/man1' installsiteman3dir='./install_me_here/usr/share/man/man3' installsitescript='./install_me_here/usr/bin' @@ -974,8 +974,8 @@ pmake='' pr='' prefix='/usr' prefixexp='/usr' -privlib='/usr/lib/perl5/5.26.0' -privlibexp='/usr/lib/perl5/5.26.0' +privlib='/usr/lib/perl5/5.27.0' +privlibexp='/usr/lib/perl5/5.27.0' procselfexe='"/proc/self/exe"' prototype='define' ptrsize='4' @@ -1040,17 +1040,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, ... [78 chars truncated] sig_size='68' signal_t='void' -sitearch='/usr/lib/perl5/site_perl/5.26.0/armv4l-linux' -sitearchexp='/usr/lib/perl5/site_perl/5.26.0/armv4l-linux' +sitearch='/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' +sitearchexp='/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' sitebin='/usr/bin' sitebinexp='/usr/bin' sitehtml1dir='' sitehtml1direxp='' sitehtml3dir='' sitehtml3direxp='' -sitelib='/usr/lib/perl5/site_perl/5.26.0' +sitelib='/usr/lib/perl5/site_perl/5.27.0' sitelib_stem='/usr/lib/perl5/site_perl' -sitelibexp='/usr/lib/perl5/site_perl/5.26.0' +sitelibexp='/usr/lib/perl5/site_perl/5.27.0' siteman1dir='/usr/share/man/man1' siteman1direxp='/usr/share/man/man1' siteman3dir='/usr/share/man/man3' @@ -1181,8 +1181,8 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.26.0' -version_patchlevel_string='version 26 subversion 0' +version='5.27.0' +version_patchlevel_string='version 27 subversion 0' versiononly='undef' vi='' xlibpth='/usr/lib/386 /lib/386' @@ -1195,10 +1195,10 @@ config_arg0='Configure' config_args='' config_argc=0 PERL_REVISION=5 -PERL_VERSION=26 +PERL_VERSION=27 PERL_SUBVERSION=0 PERL_API_REVISION=5 -PERL_API_VERSION=26 +PERL_API_VERSION=27 PERL_API_SUBVERSION=0 PERL_PATCHLEVEL= PERL_CONFIG_SH=true diff --git a/Cross/config.sh-arm-linux-n770 b/Cross/config.sh-arm-linux-n770 index 4b78f5dc47..5de3c1b63b 100644 --- a/Cross/config.sh-arm-linux-n770 +++ b/Cross/config.sh-arm-linux-n770 @@ -33,11 +33,11 @@ ansi2knr='' aphostname='/bin/hostname' api_revision='5' api_subversion='0' -api_version='26' -api_versionstring='5.26.0' +api_version='27' +api_versionstring='5.27.0' ar='ar' -archlib='/usr/lib/perl5/5.26.0/armv4l-linux' -archlibexp='/usr/lib/perl5/5.26.0/armv4l-linux' +archlib='/usr/lib/perl5/5.27.0/armv4l-linux' +archlibexp='/usr/lib/perl5/5.27.0/armv4l-linux' archname64='' archname='armv4l-linux' archobjs='' @@ -55,7 +55,7 @@ castflags='0' cat='cat' cc='arm-none-linux-gnueabi-gcc' cccdlflags='-fpic' -ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.26.0/armv4l-linux/CORE' +ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.27.0/armv4l-linux/CORE' ccflags='-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='arm-linux-gcc' @@ -699,7 +699,7 @@ inc_version_list=' ' inc_version_list_init='0' incpath='' inews='' -installarchlib='./install_me_here/usr/lib/perl5/5.26.0/armv4l-linux' +installarchlib='./install_me_here/usr/lib/perl5/5.27.0/armv4l-linux' installbin='./install_me_here/usr/bin' installhtml1dir='' installhtml3dir='' @@ -707,13 +707,13 @@ installman1dir='./install_me_here/usr/share/man/man1' installman3dir='./install_me_here/usr/share/man/man3' installprefix='./install_me_here/usr' installprefixexp='./install_me_here/usr' -installprivlib='./install_me_here/usr/lib/perl5/5.26.0' +installprivlib='./install_me_here/usr/lib/perl5/5.27.0' installscript='./install_me_here/usr/bin' -installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.26.0/armv4l-linux' +installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' installsitebin='./install_me_here/usr/bin' installsitehtml1dir='' installsitehtml3dir='' -installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.26.0' +installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.27.0' installsiteman1dir='./install_me_here/usr/share/man/man1' installsiteman3dir='./install_me_here/usr/share/man/man3' installsitescript='./install_me_here/usr/bin' @@ -841,8 +841,8 @@ pmake='' pr='' prefix='/usr' prefixexp='/usr' -privlib='/usr/lib/perl5/5.26.0' -privlibexp='/usr/lib/perl5/5.26.0' +privlib='/usr/lib/perl5/5.27.0' +privlibexp='/usr/lib/perl5/5.27.0' procselfexe='"/proc/self/exe"' prototype='define' ptrsize='4' @@ -903,17 +903,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, ... [78 chars truncated] sig_size='68' signal_t='void' -sitearch='/usr/lib/perl5/site_perl/5.26.0/armv4l-linux' -sitearchexp='/usr/lib/perl5/site_perl/5.26.0/armv4l-linux' +sitearch='/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' +sitearchexp='/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' sitebin='/usr/bin' sitebinexp='/usr/bin' sitehtml1dir='' sitehtml1direxp='' sitehtml3dir='' sitehtml3direxp='' -sitelib='/usr/lib/perl5/site_perl/5.26.0' +sitelib='/usr/lib/perl5/site_perl/5.27.0' sitelib_stem='/usr/lib/perl5/site_perl' -sitelibexp='/usr/lib/perl5/site_perl/5.26.0' +sitelibexp='/usr/lib/perl5/site_perl/5.27.0' siteman1dir='/usr/share/man/man1' siteman1direxp='/usr/share/man/man1' siteman3dir='/usr/share/man/man3' @@ -1035,8 +1035,8 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.26.0' -version_patchlevel_string='version 26 subversion 0' +version='5.27.0' +version_patchlevel_string='version 27 subversion 0' versiononly='undef' vi='' xlibpth='/usr/lib/386 /lib/386' @@ -1049,10 +1049,10 @@ config_arg0='Configure' config_args='' config_argc=0 PERL_REVISION=5 -PERL_VERSION=26 +PERL_VERSION=27 PERL_SUBVERSION=0 PERL_API_REVISION=5 -PERL_API_VERSION=26 +PERL_API_VERSION=27 PERL_API_SUBVERSION=0 PERL_PATCHLEVEL= PERL_CONFIG_SH=true diff --git a/INSTALL b/INSTALL index d2b5784fe3..7b528ea282 100644 --- a/INSTALL +++ b/INSTALL @@ -588,7 +588,7 @@ The directories set up by Configure fall into three broad categories. =item Directories for the perl distribution -By default, Configure will use the following directories for 5.26.0. +By default, Configure will use the following directories for 5.27.0. $version is the full perl version number, including subversion, e.g. 5.12.3, and $archname is a string like sun4-sunos, determined by Configure. The full definitions of all Configure @@ -2451,7 +2451,7 @@ http://www.chiark.greenend.org.uk/~sgtatham/bugs.html =head1 Coexistence with earlier versions of perl 5 -Perl 5.26.0 is not binary compatible with earlier versions of Perl. +Perl 5.27.0 is not binary compatible with earlier versions of Perl. In other words, you will have to recompile your XS modules. In general, you can usually safely upgrade from one version of Perl @@ -2526,9 +2526,9 @@ won't interfere with another version. (The defaults guarantee this for libraries after 5.6.0, but not for executables. TODO?) One convenient way to do this is by using a separate prefix for each version, such as - sh Configure -Dprefix=/opt/perl5.26.0 + sh Configure -Dprefix=/opt/perl5.27.0 -and adding /opt/perl5.26.0/bin to the shell PATH variable. Such users +and adding /opt/perl5.27.0/bin to the shell PATH variable. Such users may also wish to add a symbolic link /usr/local/bin/perl so that scripts can still start with #!/usr/local/bin/perl. @@ -2541,13 +2541,13 @@ seriously consider using a separate directory, since development subversions may not have all the compatibility wrinkles ironed out yet. -=head2 Upgrading from 5.25.9 or earlier +=head2 Upgrading from 5.25.12 or earlier -B<Perl 5.26.0 may not be binary compatible with Perl 5.25.9 or +B<Perl 5.27.0 may not be binary compatible with Perl 5.25.12 or earlier Perl releases.> Perl modules having binary parts (meaning that a C compiler is used) will have to be recompiled to be -used with 5.26.0. If you find you do need to rebuild an extension with -5.26.0, you may safely do so without disturbing the older +used with 5.27.0. If you find you do need to rebuild an extension with +5.27.0, you may safely do so without disturbing the older installations. (See L<"Coexistence with earlier versions of perl 5"> above.) @@ -2580,15 +2580,15 @@ Firstly, the bare minimum to run this script print("$f\n"); } -in Linux with perl-5.26.0 is as follows (under $Config{prefix}): +in Linux with perl-5.27.0 is as follows (under $Config{prefix}): ./bin/perl - ./lib/perl5/5.26.0/strict.pm - ./lib/perl5/5.26.0/warnings.pm - ./lib/perl5/5.26.0/i686-linux/File/Glob.pm - ./lib/perl5/5.26.0/feature.pm - ./lib/perl5/5.26.0/XSLoader.pm - ./lib/perl5/5.26.0/i686-linux/auto/File/Glob/Glob.so + ./lib/perl5/5.27.0/strict.pm + ./lib/perl5/5.27.0/warnings.pm + ./lib/perl5/5.27.0/i686-linux/File/Glob.pm + ./lib/perl5/5.27.0/feature.pm + ./lib/perl5/5.27.0/XSLoader.pm + ./lib/perl5/5.27.0/i686-linux/auto/File/Glob/Glob.so Secondly, for perl-5.10.1, the Debian perl-base package contains 591 files, (of which 510 are for lib/unicore) totaling about 3.5MB in its diff --git a/MANIFEST b/MANIFEST index 0a3757ea3b..732f7bff79 100644 --- a/MANIFEST +++ b/MANIFEST @@ -4931,6 +4931,7 @@ pod/perl5222delta.pod Perl changes in version 5.22.2 pod/perl5223delta.pod Perl changes in version 5.22.3 pod/perl5240delta.pod Perl changes in version 5.24.0 pod/perl5241delta.pod Perl changes in version 5.24.1 +pod/perl5260delta.pod Perl changes in version 5.26.0 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/META.json b/META.json index 8e5a6d2965..53f0c48334 100644 --- a/META.json +++ b/META.json @@ -113,7 +113,7 @@ "vxs.inc" ] }, - "release_status" : "stable", + "release_status" : "unstable", "resources" : { "bugtracker" : { "web" : "https://rt.perl.org/" @@ -126,6 +126,6 @@ "url" : "http://perl5.git.perl.org/" } }, - "version" : "5.026000", + "version" : "5.027000", "x_serialization_backend" : "JSON::PP version 2.27400_02" } diff --git a/META.yml b/META.yml index c164c52dee..008e528057 100644 --- a/META.yml +++ b/META.yml @@ -113,5 +113,5 @@ resources: homepage: http://www.perl.org/ license: http://dev.perl.org/licenses/ repository: http://perl5.git.perl.org/ -version: '5.026000' +version: '5.027000' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff --git a/Makefile.SH b/Makefile.SH index 51d3c8ee47..b03ef87591 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -570,7 +570,7 @@ esac $spitshell >>$Makefile <<'!NO!SUBS!' -perltoc_pod_prereqs = extra.pods pod/perl5260delta.pod pod/perlapi.pod pod/perlintern.pod pod/perlmodlib.pod pod/perluniprops.pod +perltoc_pod_prereqs = extra.pods pod/perl5270delta.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 @@ -1120,9 +1120,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/perl5260delta.pod: pod/perldelta.pod - $(RMS) pod/perl5260delta.pod - $(LNS) perldelta.pod pod/perl5260delta.pod +pod/perl5270delta.pod: pod/perldelta.pod + $(RMS) pod/perl5270delta.pod + $(LNS) perldelta.pod pod/perl5270delta.pod extra.pods: $(MINIPERL_EXE) -@test ! -f extra.pods || rm -f `cat extra.pods` diff --git a/NetWare/Makefile b/NetWare/Makefile index 779faeb5eb..29f08b68ee 100644 --- a/NetWare/Makefile +++ b/NetWare/Makefile @@ -86,7 +86,7 @@ NLM_VERSION = 3,20,0 # Here comes the CW tools - TO BE FILLED TO BUILD WITH CW - -MODULE_DESC = "Perl 5.26.0 for NetWare" +MODULE_DESC = "Perl 5.27.0 for NetWare" CCTYPE = CodeWarrior C_COMPILER = mwccnlm -c CPP_COMPILER = mwccnlm @@ -462,7 +462,7 @@ INST_NW_TOP2 = $(INST_NW_DRV)\perl # versioned installation can be obtained by setting INST_TOP above to a # path that includes an arbitrary version string. # -INST_VER = \5.26.0 +INST_VER = \5.27.0 # # Comment this out if you DON'T want your perl installation to have diff --git a/NetWare/config_H.wc b/NetWare/config_H.wc index b96d6c958f..b8e2366a7b 100644 --- a/NetWare/config_H.wc +++ b/NetWare/config_H.wc @@ -1042,7 +1042,7 @@ * This symbol contains the ~name expanded version of ARCHLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define ARCHLIB "c:\\perl\\5.26.0\\lib\\NetWare-x86-multi-thread" /**/ +#define ARCHLIB "c:\\perl\\5.27.0\\lib\\NetWare-x86-multi-thread" /**/ /*#define ARCHLIB_EXP "" /**/ /* ARCHNAME: @@ -1073,8 +1073,8 @@ * This symbol is the filename expanded version of the BIN symbol, for * programs that do not want to deal with that at run-time. */ -#define BIN "c:\\perl\\5.26.0\\bin\\NetWare-x86-multi-thread" /**/ -#define BIN_EXP "c:\\perl\\5.26.0\\bin\\NetWare-x86-multi-thread" /**/ +#define BIN "c:\\perl\\5.27.0\\bin\\NetWare-x86-multi-thread" /**/ +#define BIN_EXP "c:\\perl\\5.27.0\\bin\\NetWare-x86-multi-thread" /**/ /* BYTEORDER: * This symbol holds the hexadecimal constant defined in byteorder, @@ -3088,7 +3088,7 @@ * This symbol contains the ~name expanded version of SITEARCH, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define SITEARCH "c:\\perl\\site\\5.26.0\\lib\\NetWare-x86-multi-thread" /**/ +#define SITEARCH "c:\\perl\\site\\5.27.0\\lib\\NetWare-x86-multi-thread" /**/ /*#define SITEARCH_EXP "" /**/ /* SITELIB: @@ -3111,7 +3111,7 @@ * removed. The elements in inc_version_list (inc_version_list.U) can * be tacked onto this variable to generate a list of directories to search. */ -#define SITELIB "c:\\perl\\site\\5.26.0\\lib" /**/ +#define SITELIB "c:\\perl\\site\\5.27.0\\lib" /**/ /*#define SITELIB_EXP "" /**/ #define SITELIB_STEM "" /**/ diff --git a/Porting/config.sh b/Porting/config.sh index d0b4f7c453..5e8abedf4e 100644 --- a/Porting/config.sh +++ b/Porting/config.sh @@ -40,11 +40,11 @@ ansi2knr='' aphostname='/bin/hostname' api_revision='5' api_subversion='0' -api_version='26' -api_versionstring='5.26.0' +api_version='27' +api_versionstring='5.27.0' ar='ar' -archlib='/tmp/mblead/lib/perl5/5.26.0/darwin-2level' -archlibexp='/tmp/mblead/lib/perl5/5.26.0/darwin-2level' +archlib='/tmp/mblead/lib/perl5/5.27.0/darwin-2level' +archlibexp='/tmp/mblead/lib/perl5/5.27.0/darwin-2level' archname64='' archname='darwin-2level' archobjs='' @@ -846,7 +846,7 @@ incpath='' incpth='/usr/local/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeD ... [514 chars truncated] inews='' initialinstalllocation='/tmp/mblead/bin' -installarchlib='/tmp/mblead/lib/perl5/5.26.0/darwin-2level' +installarchlib='/tmp/mblead/lib/perl5/5.27.0/darwin-2level' installbin='/tmp/mblead/bin' installhtml1dir='' installhtml3dir='' @@ -854,13 +854,13 @@ installman1dir='/tmp/mblead/man/man1' installman3dir='/tmp/mblead/man/man3' installprefix='/tmp/mblead' installprefixexp='/tmp/mblead' -installprivlib='/tmp/mblead/lib/perl5/5.26.0' +installprivlib='/tmp/mblead/lib/perl5/5.27.0' installscript='/tmp/mblead/bin' -installsitearch='/tmp/mblead/lib/perl5/site_perl/5.26.0/darwin-2level' +installsitearch='/tmp/mblead/lib/perl5/site_perl/5.27.0/darwin-2level' installsitebin='/tmp/mblead/bin' installsitehtml1dir='' installsitehtml3dir='' -installsitelib='/tmp/mblead/lib/perl5/site_perl/5.26.0' +installsitelib='/tmp/mblead/lib/perl5/site_perl/5.27.0' installsiteman1dir='/tmp/mblead/man/man1' installsiteman3dir='/tmp/mblead/man/man3' installsitescript='/tmp/mblead/bin' @@ -985,7 +985,7 @@ perl_patchlevel='' perl_static_inline='static __inline__' perladmin='[email protected]' perllibs='-lpthread -ldl -lm -lutil -lc' -perlpath='/tmp/mblead/bin/perl5.26.0' +perlpath='/tmp/mblead/bin/perl5.27.0' pg='pg' phostname='hostname' pidtype='pid_t' @@ -994,8 +994,8 @@ pmake='' pr='' prefix='/tmp/mblead' prefixexp='/tmp/mblead' -privlib='/tmp/mblead/lib/perl5/5.26.0' -privlibexp='/tmp/mblead/lib/perl5/5.26.0' +privlib='/tmp/mblead/lib/perl5/5.27.0' +privlibexp='/tmp/mblead/lib/perl5/5.27.0' procselfexe='' prototype='define' ptrsize='8' @@ -1061,17 +1061,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 6, 0' sig_size='33' signal_t='void' -sitearch='/tmp/mblead/lib/perl5/site_perl/5.26.0/darwin-2level' -sitearchexp='/tmp/mblead/lib/perl5/site_perl/5.26.0/darwin-2level' +sitearch='/tmp/mblead/lib/perl5/site_perl/5.27.0/darwin-2level' +sitearchexp='/tmp/mblead/lib/perl5/site_perl/5.27.0/darwin-2level' sitebin='/tmp/mblead/bin' sitebinexp='/tmp/mblead/bin' sitehtml1dir='' sitehtml1direxp='' sitehtml3dir='' sitehtml3direxp='' -sitelib='/tmp/mblead/lib/perl5/site_perl/5.26.0' +sitelib='/tmp/mblead/lib/perl5/site_perl/5.27.0' sitelib_stem='/tmp/mblead/lib/perl5/site_perl' -sitelibexp='/tmp/mblead/lib/perl5/site_perl/5.26.0' +sitelibexp='/tmp/mblead/lib/perl5/site_perl/5.27.0' siteman1dir='/tmp/mblead/man/man1' siteman1direxp='/tmp/mblead/man/man1' siteman3dir='/tmp/mblead/man/man3' @@ -1097,7 +1097,7 @@ src='.' ssizetype='ssize_t' st_ino_sign='1' st_ino_size='8' -startperl='#!/tmp/mblead/bin/perl5.26.0' +startperl='#!/tmp/mblead/bin/perl5.27.0' startsh='#!/bin/sh' static_ext=' ' stdchar='char' @@ -1209,8 +1209,8 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.26.0' -version_patchlevel_string='version 26 subversion 0' +version='5.27.0' +version_patchlevel_string='version 27 subversion 0' versiononly='define' vi='' xlibpth='/usr/lib/386 /lib/386' @@ -1219,10 +1219,10 @@ yaccflags='' zcat='' zip='zip' PERL_REVISION=5 -PERL_VERSION=26 +PERL_VERSION=27 PERL_SUBVERSION=0 PERL_API_REVISION=5 -PERL_API_VERSION=26 +PERL_API_VERSION=27 PERL_API_SUBVERSION=0 PERL_PATCHLEVEL='' PERL_CONFIG_SH=true diff --git a/Porting/config_H b/Porting/config_H index 00197663e0..2de48c65f1 100644 --- a/Porting/config_H +++ b/Porting/config_H @@ -960,8 +960,8 @@ * This symbol contains the ~name expanded version of ARCHLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define ARCHLIB "/pro/lib/perl5/5.26.0/i686-linux-64int-ld" /**/ -#define ARCHLIB_EXP "/pro/lib/perl5/5.26.0/i686-linux-64int-ld" /**/ +#define ARCHLIB "/pro/lib/perl5/5.27.0/i686-linux-64int-ld" /**/ +#define ARCHLIB_EXP "/pro/lib/perl5/5.27.0/i686-linux-64int-ld" /**/ /* ARCHNAME: * This symbol holds a string representing the architecture name. @@ -2068,8 +2068,8 @@ * This symbol contains the ~name expanded version of PRIVLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define PRIVLIB "/pro/lib/perl5/5.26.0" /**/ -#define PRIVLIB_EXP "/pro/lib/perl5/5.26.0" /**/ +#define PRIVLIB "/pro/lib/perl5/5.27.0" /**/ +#define PRIVLIB_EXP "/pro/lib/perl5/5.27.0" /**/ /* PTRSIZE: * This symbol contains the size of a pointer, so that the C preprocessor @@ -2119,8 +2119,8 @@ * This symbol contains the ~name expanded version of SITEARCH, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define SITEARCH "/pro/lib/perl5/site_perl/5.26.0/i686-linux-64int-ld" /**/ -#define SITEARCH_EXP "/pro/lib/perl5/site_perl/5.26.0/i686-linux-64int-ld" /**/ +#define SITEARCH "/pro/lib/perl5/site_perl/5.27.0/i686-linux-64int-ld" /**/ +#define SITEARCH_EXP "/pro/lib/perl5/site_perl/5.27.0/i686-linux-64int-ld" /**/ /* SITELIB: * This symbol contains the name of the private library for this package. @@ -2142,8 +2142,8 @@ * removed. The elements in inc_version_list (inc_version_list.U) can * be tacked onto this variable to generate a list of directories to search. */ -#define SITELIB "/pro/lib/perl5/site_perl/5.26.0" /**/ -#define SITELIB_EXP "/pro/lib/perl5/site_perl/5.26.0" /**/ +#define SITELIB "/pro/lib/perl5/site_perl/5.27.0" /**/ +#define SITELIB_EXP "/pro/lib/perl5/site_perl/5.27.0" /**/ #define SITELIB_STEM "/pro/lib/perl5/site_perl" /**/ /* SSize_t: @@ -4282,7 +4282,7 @@ * script to make sure (one hopes) that it runs with perl and not * some shell. */ -#define STARTPERL "#!/pro/bin/perl5.26.0" /**/ +#define STARTPERL "#!/pro/bin/perl5.27.0" /**/ /* HAS_STDIO_STREAM_ARRAY: * This symbol, if defined, tells that there is an array diff --git a/Porting/epigraphs.pod b/Porting/epigraphs.pod index 2922fd69e9..dbddf498fe 100644 --- a/Porting/epigraphs.pod +++ b/Porting/epigraphs.pod @@ -17,6 +17,16 @@ Consult your favorite dictionary for details. =head1 EPIGRAPHS +=head2 v5.26.0 - Nine Simone, Ain't Got No / I Got Life + +Announced on 2017-05-30 by Sawyer X + + I've got the life + And I'm gonna keep it + I've got the life + And nobody's gonna take it away + I've got the life + =head2 v5.26.0-RC2 - Richard Condon, The Manchurian Candidate L<Announced on 2017-05-23 by Sawyer X|http://www.nntp.perl.org/group/perl.perl5.porters/2017/05/msg244511.html> diff --git a/Porting/release_schedule.pod b/Porting/release_schedule.pod index b557ff842d..1e93d8c0f9 100644 --- a/Porting/release_schedule.pod +++ b/Porting/release_schedule.pod @@ -11,17 +11,19 @@ release schedules for the next, current and previous stable versions of Perl. Dates with two or more question marks will only be releases if deemed necessary by the Pumpking. -=head2 Perl 5.26 +=head2 Perl 5.28 -Code freezes (which happen in the 5.25.X series) +Code freezes (which happen in the 5.27.X series) - 2016-12-20 5.25.8 Contentious changes freeze - 2017-01-20 5.25.9 User-visible changes to correctly + 2017-12-20 5.27.8 Contentious changes freeze + 2018-01-20 5.27.9 User-visible changes to correctly functioning programs freeze - 2017-02-20 5.25.10 Full code freeze - 2017-03-20 5.25.11 Full code freeze - 2017-04-20 5.25.12 Full code freeze - 2017-05-20 5.26.0 Stable release! + 2018-02-20 5.27.10 Full code freeze + 2018-04-20 5.28.0 Stable release! + +=head2 Perl 5.26 + + 2017-05-30 5.26.0 â Sawyer X =head2 Perl 5.24 diff --git a/README.haiku b/README.haiku index 3f148a4f19..8937c781d9 100644 --- a/README.haiku +++ b/README.haiku @@ -22,9 +22,9 @@ The build procedure is completely standard: Make perl executable and create a symlink for libperl: chmod a+x /boot/common/bin/perl - cd /boot/common/lib; ln -s perl5/5.26.0/BePC-haiku/CORE/libperl.so . + cd /boot/common/lib; ln -s perl5/5.27.0/BePC-haiku/CORE/libperl.so . -Replace C<5.26.0> with your respective version of Perl. +Replace C<5.27.0> with your respective version of Perl. =head1 KNOWN PROBLEMS diff --git a/README.macosx b/README.macosx index c5faf042ea..84549dbe1b 100644 --- a/README.macosx +++ b/README.macosx @@ -10,9 +10,9 @@ perlmacosx - Perl under Mac OS X This document briefly describes Perl under Mac OS X. - curl -O http://www.cpan.org/src/perl-5.26.0.tar.gz - tar -xzf perl-5.26.0.tar.gz - cd perl-5.26.0 + curl -O http://www.cpan.org/src/perl-5.27.0.tar.gz + tar -xzf perl-5.27.0.tar.gz + cd perl-5.27.0 ./Configure -des -Dprefix=/usr/local/ make make test @@ -20,7 +20,7 @@ This document briefly describes Perl under Mac OS X. =head1 DESCRIPTION -The latest Perl release (5.26.0 as of this writing) builds without changes +The latest Perl release (5.27.0 as of this writing) builds without changes under all versions of Mac OS X from 10.3 "Panther" onwards. In order to build your own version of Perl you will need 'make', diff --git a/README.os2 b/README.os2 index 8e3c2df3cf..89eefda08a 100644 --- a/README.os2 +++ b/README.os2 @@ -619,7 +619,7 @@ C<set PERLLIB_PREFIX> in F<Config.sys>, see L</"C<PERLLIB_PREFIX>">. =item Additional Perl modules - unzip perl_ste.zip -d f:/perllib/lib/site_perl/5.26.0/ + unzip perl_ste.zip -d f:/perllib/lib/site_perl/5.27.0/ Same remark as above applies. Additionally, if this directory is not one of directories on @INC (and @INC is influenced by C<PERLLIB_PREFIX>), you diff --git a/README.vms b/README.vms index 714bbaf91e..0c460b4eed 100644 --- a/README.vms +++ b/README.vms @@ -142,11 +142,11 @@ You may need to set up a foreign symbol for the unpacking utility of choice. Once you have done so, use a command like the following to unpack the archive: - vmstar -xvf perl-5^.26^.0.tar + vmstar -xvf perl-5^.27^.0.tar Then set default to the top-level source directory like so: - set default [.perl-5^.26^.0] + set default [.perl-5^.27^.0] and proceed with configuration as described in the next section. diff --git a/README.win32 b/README.win32 index 9845bd0a1d..d32f5289f2 100644 --- a/README.win32 +++ b/README.win32 @@ -393,7 +393,7 @@ Be sure to read the instructions near the top of the makefiles carefully. Type "dmake" (or "nmake" if you are using that make). This should build everything. Specifically, it will create perl.exe, -perl526.dll at the perl toplevel, and various other extension dll's +perl527.dll at the perl toplevel, and various other extension dll's under the lib\auto directory. If the build fails for any reason, make sure you have done the previous steps correctly. diff --git a/dist/Module-CoreList/Changes b/dist/Module-CoreList/Changes index bd356de6c6..b8419de2b6 100644 --- a/dist/Module-CoreList/Changes +++ b/dist/Module-CoreList/Changes @@ -1,3 +1,6 @@ +5.20170531 + - Updated for v5.27.0 + 5.20170530 - Updated for v5.26.0 diff --git a/dist/Module-CoreList/lib/Module/CoreList.pm b/dist/Module-CoreList/lib/Module/CoreList.pm index a4868b1485..1fe38bc20a 100644 --- a/dist/Module-CoreList/lib/Module/CoreList.pm +++ b/dist/Module-CoreList/lib/Module/CoreList.pm @@ -3,7 +3,7 @@ use strict; use vars qw/$VERSION %released %version %families %upstream %bug_tracker %deprecated %delta/; use version; -$VERSION = '5.20170530'; +$VERSION = '5.20170531'; sub _undelta { my ($delta) = @_; @@ -320,7 +320,8 @@ sub changes_between { 5.025010 => '2017-02-20', 5.025011 => '2017-03-20', 5.025012 => '2017-04-20', - 5.026000 => '????-??-??', + 5.026000 => '2017-05-30', + 5.027000 => '2017-05-31', ); for my $version ( sort { $a <=> $b } keys %released ) { @@ -14108,6 +14109,19 @@ for my $version ( sort { $a <=> $b } keys %released ) { removed => { } }, + 5.027000 => { + delta_from => 5.026000, + changed => { + 'B::Op_private' => '5.027000', + 'Config' => '5.027', + 'feature' => '1.48', + 'Module::CoreList' => '5.20170531', + 'Module::CoreList::TieHashDelta'=> '5.20170531', + 'Module::CoreList::Utils'=> '5.20170531', + }, + removed => { + } + }, ); sub is_core @@ -14867,6 +14881,13 @@ sub is_core removed => { } }, + 5.027000 => { + delta_from => 5.026000, + changed => { + }, + removed => { + } + }, ); %deprecated = _undelta(\%deprecated); diff --git a/dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm b/dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm index a6cdf0badd..0758f8cf6d 100644 --- a/dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm +++ b/dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm @@ -3,7 +3,7 @@ package Module::CoreList::TieHashDelta; use strict; use vars qw($VERSION); -$VERSION = '5.20170530'; +$VERSION = '5.20170531'; sub TIEHASH { my ($class, $changed, $removed, $parent) = @_; diff --git a/dist/Module-CoreList/lib/Module/CoreList/Utils.pm b/dist/Module-CoreList/lib/Module/CoreList/Utils.pm index b0b02f4c65..c8a9e0b7f5 100644 --- a/dist/Module-CoreList/lib/Module/CoreList/Utils.pm +++ b/dist/Module-CoreList/lib/Module/CoreList/Utils.pm @@ -5,7 +5,7 @@ use warnings; use vars qw[$VERSION %utilities]; use Module::CoreList; -$VERSION = '5.20170530'; +$VERSION = '5.20170531'; sub utilities { my $perl = shift; @@ -1263,6 +1263,13 @@ my %delta = ( removed => { } }, + 5.027000 => { + delta_from => 5.026000, + changed => { + }, + removed => { + } + }, ); %utilities = Module::CoreList::_undelta(\%delta); diff --git a/hints/catamount.sh b/hints/catamount.sh index d682a84223..5ad2592284 100644 --- a/hints/catamount.sh +++ b/hints/catamount.sh @@ -31,11 +31,11 @@ # mkdir -p /opt/perl-catamount # mkdir -p /opt/perl-catamount/include # mkdir -p /opt/perl-catamount/lib -# mkdir -p /opt/perl-catamount/lib/perl5/5.26.0 +# mkdir -p /opt/perl-catamount/lib/perl5/5.27.0 # mkdir -p /opt/perl-catamount/bin # cp *.h /opt/perl-catamount/include # cp libperl.a /opt/perl-catamount/lib -# cp -pr lib/* /opt/perl-catamount/lib/perl5/5.26.0 +# cp -pr lib/* /opt/perl-catamount/lib/perl5/5.27.0 # cp miniperl perl run.sh cc.sh /opt/perl-catamount/lib # # With the headers and the libperl.a you can embed Perl to your Catamount diff --git a/lib/B/Op_private.pm b/lib/B/Op_private.pm index 6b6edc88bd..f80cab3e88 100644 --- a/lib/B/Op_private.pm +++ b/lib/B/Op_private.pm @@ -118,7 +118,7 @@ package B::Op_private; our %bits; -our $VERSION = "5.026000"; +our $VERSION = "5.027000"; $bits{$_}{3} = 'OPpENTERSUB_AMPER' for qw(entersub rv2cv); $bits{$_}{6} = 'OPpENTERSUB_DB' for qw(entersub rv2cv); diff --git a/lib/feature.pm b/lib/feature.pm index ed13273f11..c23e96a693 100644 --- a/lib/feature.pm +++ b/lib/feature.pm @@ -5,7 +5,7 @@ package feature; -our $VERSION = '1.47'; +our $VERSION = '1.48'; our %feature = ( fc => 'feature_fc', @@ -46,6 +46,8 @@ $feature_bundle{"5.22"} = $feature_bundle{"5.15"}; $feature_bundle{"5.24"} = $feature_bundle{"5.23"}; $feature_bundle{"5.25"} = $feature_bundle{"5.23"}; $feature_bundle{"5.26"} = $feature_bundle{"5.23"}; +$feature_bundle{"5.27"} = $feature_bundle{"5.23"}; +$feature_bundle{"5.28"} = $feature_bundle{"5.23"}; $feature_bundle{"5.9.5"} = $feature_bundle{"5.10"}; my %noops = ( postderef => 1, @@ -385,6 +387,10 @@ The following feature bundles are available: unicode_eval evalbytes current_sub fc postderef_qq + :5.28 say state switch unicode_strings + unicode_eval evalbytes current_sub fc + postderef_qq + The C<:default> bundle represents the feature set that is enabled before any C<use feature> or C<no feature> declaration. diff --git a/patchlevel.h b/patchlevel.h index 6cacfde0c4..69e8baa6d7 100644 --- a/patchlevel.h +++ b/patchlevel.h @@ -14,7 +14,7 @@ * exactly on the third column */ #define PERL_REVISION 5 /* age */ -#define PERL_VERSION 26 /* epoch */ +#define PERL_VERSION 27 /* epoch */ #define PERL_SUBVERSION 0 /* generation */ /* The following numbers describe the earliest compatible version of @@ -35,7 +35,7 @@ changing them should not be necessary. */ #define PERL_API_REVISION 5 -#define PERL_API_VERSION 26 +#define PERL_API_VERSION 27 #define PERL_API_SUBVERSION 0 /* XXX Note: The selection of non-default Configure options, such diff --git a/plan9/config.plan9 b/plan9/config.plan9 index e1a0005274..dc26dea293 100644 --- a/plan9/config.plan9 +++ b/plan9/config.plan9 @@ -3329,8 +3329,8 @@ * This symbol contains the ~name expanded version of PRIVLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define PRIVLIB "/sys/lib/perl/5.26.0" /**/ -#define PRIVLIB_EXP "/sys/lib/perl/5.26.0" /**/ +#define PRIVLIB "/sys/lib/perl/5.27.0" /**/ +#define PRIVLIB_EXP "/sys/lib/perl/5.27.0" /**/ /* PTRSIZE: * This symbol contains the size of a pointer, so that the C preprocessor @@ -3457,9 +3457,9 @@ * removed. The elements in inc_version_list (inc_version_list.U) can * be tacked onto this variable to generate a list of directories to search. */ -#define SITELIB "/sys/lib/perl/5.26.0/site_perl" /**/ -#define SITELIB_EXP "/sys/lib/perl/5.26.0/site_perl" /**/ -#define SITELIB_STEM "/sys/lib/perl/5.26.0/site_perl" /**/ +#define SITELIB "/sys/lib/perl/5.27.0/site_perl" /**/ +#define SITELIB_EXP "/sys/lib/perl/5.27.0/site_perl" /**/ +#define SITELIB_STEM "/sys/lib/perl/5.27.0/site_perl" /**/ /* Size_t_size: * This symbol holds the size of a Size_t in bytes. diff --git a/plan9/config_sh.sample b/plan9/config_sh.sample index 6983c59f4f..2a83a57588 100644 --- a/plan9/config_sh.sample +++ b/plan9/config_sh.sample @@ -33,11 +33,11 @@ ansi2knr='' aphostname='/bin/uname -n' api_revision='5' api_subversion='0' -api_version='26' -api_versionstring='5.26.0' +api_version='27' +api_versionstring='5.27.0' ar='ar' -archlib='/sys/lib/perl5/5.26.0/386' -archlibexp='/sys/lib/perl5/5.26.0/386' +archlib='/sys/lib/perl5/5.27.0/386' +archlibexp='/sys/lib/perl5/5.27.0/386' archname64='' archname='386' archobjs='' @@ -820,17 +820,17 @@ inc_version_list=' ' inc_version_list_init='0' incpath='' inews='' -installarchlib='/sys/lib/perl/5.26.0/386' +installarchlib='/sys/lib/perl/5.27.0/386' installbin='/usr/bin' installman1dir='/sys/man/1pub' installman3dir='/sys/man/2pub' installprefix='/usr' installprefixexp='/usr' -installprivlib='/sys/lib/perl/5.26.0' +installprivlib='/sys/lib/perl/5.27.0' installscript='/usr/bin' -installsitearch='/sys/lib/perl/5.26.0/site_perl/386' +installsitearch='/sys/lib/perl/5.27.0/site_perl/386' installsitebin='/usr/bin' -installsitelib='/sys/lib/perl/5.26.0/site_perl' +installsitelib='/sys/lib/perl/5.27.0/site_perl' installstyle='lib/perl5' installusrbinperl='undef' installvendorarch='' @@ -955,8 +955,8 @@ pmake='' pr='' prefix='/usr' prefixexp='/usr' -privlib='/sys/lib/perl/5.26.0' -privlibexp='/sys/lib/perl/5.26.0' +privlib='/sys/lib/perl/5.27.0' +privlibexp='/sys/lib/perl/5.27.0' procselfexe='' prototype='define' ptrsize='4' @@ -1021,13 +1021,13 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, ... [7 chars truncated] sig_size='50' signal_t='void' -sitearch='/sys/lib/perl/5.26.0/site_perl/386' +sitearch='/sys/lib/perl/5.27.0/site_perl/386' sitearchexp='/sys/lib/perl/site_perl/386' sitebin='/usr/bin' sitebinexp='/usr/bin' -sitelib='/sys/lib/perl/5.26.0/site_perl' -sitelib_stem='/sys/lib/perl/5.26.0/site_perl' -sitelibexp='/sys/lib/perl/5.26.0/site_perl' +sitelib='/sys/lib/perl/5.27.0/site_perl' +sitelib_stem='/sys/lib/perl/5.27.0/site_perl' +sitelibexp='/sys/lib/perl/5.27.0/site_perl' siteprefix='/usr' siteprefixexp='/usr' sizesize='4' @@ -1142,8 +1142,8 @@ vendorlib_stem='' vendorlibexp='' vendorprefix='' vendorprefixexp='' -version='5.26.0' -version_patchlevel_string='version 26 subversion 0' +version='5.27.0' +version_patchlevel_string='version 27 subversion 0' versiononly='undef' vi='' xlibpth='' @@ -1156,10 +1156,10 @@ config_arg0='./Configure' config_args='' config_argc=0 PERL_REVISION=5 -PERL_VERSION=26 +PERL_VERSION=27 PERL_SUBVERSION=0 PERL_API_REVISION=5 -PERL_API_VERSION=26 +PERL_API_VERSION=27 PERL_API_SUBVERSION=0 PERL_PATCHLEVEL= PERL_CONFIG_SH=true diff --git a/pod/.gitignore b/pod/.gitignore index 65c3d4d9e7..7ea041ad64 100644 --- a/pod/.gitignore +++ b/pod/.gitignore @@ -50,7 +50,7 @@ /roffitall # generated -/perl5260delta.pod +/perl5270delta.pod /perlapi.pod /perlintern.pod /perlmodlib.pod diff --git a/pod/perl.pod b/pod/perl.pod index 8e2041cb3b..a6d314e1e5 100644 --- a/pod/perl.pod +++ b/pod/perl.pod @@ -181,6 +181,7 @@ aux h2ph h2xs perlbug pl2pm pod2html pod2man splain xsubpp perlhist Perl history records perldelta Perl changes since previous version + perl5260delta Perl changes in version 5.26.0 perl5241delta Perl changes in version 5.24.1 perl5240delta Perl changes in version 5.24.0 perl5223delta Perl changes in version 5.22.3 diff --git a/pod/perldelta.pod b/pod/perl5260delta.pod similarity index 99% copy from pod/perldelta.pod copy to pod/perl5260delta.pod index 06dcd1d74f..a2a1484dbe 100644 --- a/pod/perldelta.pod +++ b/pod/perl5260delta.pod @@ -2,7 +2,7 @@ =head1 NAME -perldelta - what is new for perl v5.26.0 +perl5260delta - what is new for perl v5.26.0 =head1 DESCRIPTION diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 06dcd1d74f..066efb717d 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -2,3309 +2,394 @@ =head1 NAME -perldelta - what is new for perl v5.26.0 +[ this is a template for a new perldelta file. Any text flagged as XXX needs +to be processed before release. ] -=head1 DESCRIPTION - -This document describes the differences between the 5.24.0 release and the -5.26.0 release. - -=head1 Notice - -This release includes three updates with widespread effects: - -=over 4 - -=item * C<"."> no longer in C<@INC> +perldelta - what is new for perl v5.27.0 -For security reasons, the current directory (C<".">) is no longer included -by default at the end of the module search path (C<@INC>). This may have -widespread implications for the building, testing and installing of -modules, and for the execution of scripts. See the section -L<< Removal of the current directory (C<".">) from C<@INC> >> -for the full details. - -=item * C<do> may now warn +=head1 DESCRIPTION -C<do> now gives a deprecation warning when it fails to load a file which -it would have loaded had C<"."> been in C<@INC>. +This document describes differences between the 5.26.0 release and the 5.27.0 +release. -=item * In regular expression patterns, a literal left brace C<"{"> -should be escaped +If you are upgrading from an earlier release such as 5.25.0, first read +L<perl5260delta>, which describes differences between 5.25.0 and 5.26.0. -See L</Unescaped literal C<"{"> characters in regular expression patterns are no longer permissible>. +=head1 Notice -=back +XXX Any important notices here =head1 Core Enhancements -=head2 Lexical subroutines are no longer experimental - -Using the C<lexical_subs> feature introduced in v5.18 no longer emits a warning. Existing -code that disables the C<experimental::lexical_subs> warning category -that the feature previously used will continue to work. The -C<lexical_subs> feature has no effect; all Perl code can use lexical -subroutines, regardless of what feature declarations are in scope. - -=head2 Indented Here-documents - -This adds a new modifier C<"~"> to here-docs that tells the parser -that it should look for C</^\s*$DELIM\n/> as the closing delimiter. - -These syntaxes are all supported: - - <<~EOF; - <<~\EOF; - <<~'EOF'; - <<~"EOF"; - <<~`EOF`; - <<~ 'EOF'; - <<~ "EOF"; - <<~ `EOF`; - -The C<"~"> modifier will strip, from each line in the here-doc, the -same whitespace that appears before the delimiter. - -Newlines will be copied as-is, and lines that don't include the -proper beginning whitespace will cause perl to croak. - -For example: - - if (1) { - print <<~EOF; - Hello there - EOF - } - -prints "Hello there\n" with no leading whitespace. - -=head2 New regular expression modifier C</xx> - -Specifying two C<"x"> characters to modify a regular expression pattern -does everything that a single one does, but additionally TAB and SPACE -characters within a bracketed character class are generally ignored and -can be added to improve readability, like -S<C</[ ^ A-Z d-f p-x ]/xx>>. Details are at -L<perlre/E<sol>x and E<sol>xx>. - -=head2 C<@{^CAPTURE}>, C<%{^CAPTURE}>, and C<%{^CAPTURE_ALL}> - -C<@{^CAPTURE}> exposes the capture buffers of the last match as an -array. So C<$1> is C<${^CAPTURE}[0]>. This is a more efficient equivalent -to code like C<substr($matched_string,$-[0],$+[0]-$-[0])>, and you don't -have to keep track of the C<$matched_string> either. This variable has no -single character equivalent. Note that, like the other regex magic variables, -the contents of this variable is dynamic; if you wish to store it beyond -the lifetime of the match you must copy it to another array. - -C<%{^CAPTURE}> is equivalent to C<%+> (I<i.e.>, named captures). Other than -being more self-documenting there is no difference between the two forms. - -C<%{^CAPTURE_ALL}> is equivalent to C<%-> (I<i.e.>, all named captures). -Other than being more self-documenting there is no difference between the -two forms. - -=head2 Declaring a reference to a variable - -As an experimental feature, Perl now allows the referencing operator to come -after L<C<my()>|perlfunc/my>, L<C<state()>|perlfunc/state>, -L<C<our()>|perlfunc/our>, or L<C<local()>|perlfunc/local>. This syntax must -be enabled with C<use feature 'declared_refs'>. It is experimental, and will -warn by default unless C<no warnings 'experimental::refaliasing'> is in effect. -It is intended mainly for use in assignments to references. For example: - - use experimental 'refaliasing', 'declared_refs'; - my \$a = \$b; +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. -See L<perlref/Assigning to References> for more details. - -=head2 Unicode 9.0 is now supported - -A list of changes is at L<http://www.unicode.org/versions/Unicode9.0.0/>. -Modules that are shipped with core Perl but not maintained by p5p do not -necessarily support Unicode 9.0. L<Unicode::Normalize> does work on 9.0. - -=head2 Use of C<\p{I<script>}> uses the improved Script_Extensions property - -Unicode 6.0 introduced an improved form of the Script (C<sc>) property, and -called it Script_Extensions (C<scx>). Perl now uses this improved -version when a property is specified as just C<\p{I<script>}>. This -should make programs more accurate when determining if a character is -used in a given script, but there is a slight chance of breakage for -programs that very specifically needed the old behavior. The meaning of -compound forms, like C<\p{sc=I<script>}> are unchanged. See -L<perlunicode/Scripts>. - -=head2 Perl can now do default collation in UTF-8 locales on platforms -that support it - -Some platforms natively do a reasonable job of collating and sorting in -UTF-8 locales. Perl now works with those. For portability and full -control, L<Unicode::Collate> is still recommended, but now you may -not need to do anything special to get good-enough results, depending on -your application. See -L<perllocale/Category C<LC_COLLATE>: Collation: Text Comparisons and Sorting>. - -=head2 Better locale collation of strings containing embedded C<NUL> -characters - -In locales that have multi-level character weights, C<NUL>s are now -ignored at the higher priority ones. There are still some gotchas in -some strings, though. See -L<perllocale/Collation of strings containing embedded C<NUL> characters>. - -=head2 C<CORE> subroutines for hash and array functions callable via -reference - -The hash and array functions in the C<CORE> namespace (C<keys>, C<each>, -C<values>, C<push>, C<pop>, C<shift>, C<unshift> and C<splice>) can now -be called with ampersand syntax (C<&CORE::keys(\%hash>) and via reference -(C<< my $k = \&CORE::keys; $k-E<gt>(\%hash) >>). Previously they could only be -used when inlined. - -=head2 New Hash Function For 64-bit Builds - -We have switched to a hybrid hash function to better balance -performance for short and long keys. - -For short keys, 16 bytes and under, we use an optimised variant of -One At A Time Hard, and for longer keys we use Siphash 1-3. For very -long keys this is a big improvement in performance. For shorter keys -there is a modest improvement. +[ List each enhancement as a =head2 entry ] =head1 Security -=head2 Removal of the current directory (C<".">) from C<@INC> - -The perl binary includes a default set of paths in C<@INC>. Historically -it has also included the current directory (C<".">) as the final entry, -unless run with taint mode enabled (C<perl -T>). While convenient, this has -security implications: for example, where a script attempts to load an -optional module when its current directory is untrusted (such as F</tmp>), -it could load and execute code from under that directory. +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. -Starting with v5.26, C<"."> is always removed by default, not just under -tainting. This has major implications for installing modules and executing -scripts. +[ List each security issue as a =head2 entry ] -The following new features have been added to help ameliorate these -issues. +=head1 Incompatible Changes -=over +XXX For a release on a stable branch, this section aspires to be: -=item * F<Configure -Udefault_inc_excludes_dot> + 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. -There is a new F<Configure> option, C<default_inc_excludes_dot> (enabled -by default) which builds a perl executable without C<".">; unsetting this -option using C<-U> reverts perl to the old behaviour. This may fix your -path issues but will reintroduce all the security concerns, so don't -build a perl executable like this unless you're I<really> confident that -such issues are not a concern in your environment. +[ List each incompatible change as a =head2 entry ] -=item * C<PERL_USE_UNSAFE_INC> +=head1 Deprecations -There is a new environment variable recognised by the perl interpreter. -If this variable has the value 1 when the perl interpreter starts up, -then C<"."> will be automatically appended to C<@INC> (except under tainting). +XXX Any deprecated features, syntax, modules etc. should be listed here. -This allows you restore the old perl interpreter behaviour on a -case-by-case basis. But note that this is intended to be a temporary crutch, -and this feature will likely be removed in some future perl version. -It is currently set by the C<cpan> utility and C<Test::Harness> to -ease installation of CPAN modules which have not been updated to handle the -lack of dot. Once again, don't use this unless you are sure that this -will not reintroduce any security concerns. +=head2 Module removals -=item * A new deprecation warning issued by C<do>. +XXX Remove this section if inapplicable. -While it is well-known that C<use> and C<require> use C<@INC> to search -for the file to load, many people don't realise that C<do "file"> also -searches C<@INC> if the file is a relative path. With the removal of C<".">, -a simple C<do "file.pl"> will fail to read in and execute C<file.pl> from -the current directory. Since this is commonly expected behaviour, a new -deprecation warning is now issued whenever C<do> fails to load a file which -it otherwise would have found if a dot had been in C<@INC>. +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. -=back +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. -Here are some things script and module authors may need to do to make -their software work in the new regime. +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. =over -=item * Script authors +=item XXX -If the issue is within your own code (rather than within included -modules), then you have two main options. Firstly, if you are confident -that your script will only be run within a trusted directory (under which -you expect to find trusted files and modules), then add C<"."> back into the -path; I<e.g.>: - - BEGIN { - my $dir = "/some/trusted/directory"; - chdir $dir or die "Can't chdir to $dir: $!\n"; - # safe now - push @INC, '.'; - } - - use "Foo::Bar"; # may load /some/trusted/directory/Foo/Bar.pm - do "config.pl"; # may load /some/trusted/directory/config.pl - -On the other hand, if your script is intended to be run from within -untrusted directories (such as F</tmp>), then your script suddenly failing -to load files may be indicative of a security issue. You most likely want -to replace any relative paths with full paths; for example, - - do "foo_config.pl" - -might become - - do "$ENV{HOME}/foo_config.pl" - -If you are absolutely certain that you want your script to load and -execute a file from the current directory, then use a C<./> prefix; for -example: - - do "./foo_config.pl" - -=item * Installing and using CPAN modules - -If you install a CPAN module using an automatic tool like C<cpan>, then -this tool will itself set the C<PERL_USE_UNSAFE_INC> environment variable -while building and testing the module, which may be sufficient to install -a distribution which hasn't been updated to be dot-aware. If you want to -install such a module manually, then you'll need to replace the -traditional invocation: - - perl Makefile.PL && make && make test && make install - -with something like - - (export PERL_USE_UNSAFE_INC=1; \ - perl Makefile.PL && make && make test && make install) - -Note that this only helps build and install an unfixed module. It's -possible for the tests to pass (since they were run under -C<PERL_USE_UNSAFE_INC=1>), but for the module itself to fail to perform -correctly in production. In this case, you may have to temporarily modify -your script until a fixed version of the module is released. -For example: - - use Foo::Bar; - { - local @INC = (@INC, '.'); - # assuming read_config() needs '.' in @INC - $config = Foo::Bar->read_config(); - } - -This is only rarely expected to be necessary. Again, if doing this, -assess the resultant risks first. - -=item * Module Authors - -If you maintain a CPAN distribution, it may need updating to run in -a dotless environment. Although C<cpan> and other such tools will -currently set the C<PERL_USE_UNSAFE_INC> during module build, this is a -temporary workaround for the set of modules which rely on C<"."> being in -C<@INC> for installation and testing, and this may mask deeper issues. It -could result in a module which passes tests and installs, but which -fails at run time. - -During build, test, and install, it will normally be the case that any perl -processes will be executing directly within the root directory of the -untarred distribution, or a known subdirectory of that, such as F<t/>. It -may well be that F<Makefile.PL> or F<t/foo.t> will attempt to include -local modules and configuration files using their direct relative -filenames, which will now fail. - -However, as described above, automatic tools like F<cpan> will (for now) -set the C<PERL_USE_UNSAFE_INC> environment variable, which introduces -dot during a build. - -This makes it likely that your existing build and test code will work, but -this may mask issues with your code which only manifest when used after -install. It is prudent to try and run your build process with that -variable explicitly disabled: - - (export PERL_USE_UNSAFE_INC=0; \ - perl Makefile.PL && make && make test && make install) - -This is more likely to show up any potential problems with your module's -build process, or even with the module itself. Fixing such issues will -ensure both that your module can again be installed manually, and that -it will still build once the C<PERL_USE_UNSAFE_INC> crutch goes away. - -When fixing issues in tests due to the removal of dot from C<@INC>, -reinsertion of dot into C<@INC> should be performed with caution, for this -too may suppress real errors in your runtime code. You are encouraged -wherever possible to apply the aforementioned approaches with explicit -absolute/relative paths, or to relocate your needed files into a -subdirectory and insert that subdirectory into C<@INC> instead. - -If your runtime code has problems under the dotless C<@INC>, then the comments -above on how to fix for script authors will mostly apply here too. Bear in -mind though that it is considered bad form for a module to globally add a dot to -C<@INC>, since it introduces both a security risk and hides issues of -accidentally requiring dot in C<@INC>, as explained above. +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 -=head2 Escaped colons and relative paths in PATH - -On Unix systems, Perl treats any relative paths in the C<PATH> environment -variable as tainted when starting a new process. Previously, it was -allowing a backslash to escape a colon (unlike the OS), consequently -allowing relative paths to be considered safe if the PATH was set to -something like C</\:.>. The check has been fixed to treat C<"."> as tainted -in that example. - -=head2 New C<-Di> switch is now required for PerlIO debugging output - -This is used for debugging of code within PerlIO to avoid recursive -calls. Previously this output would be sent to the file specified -by the C<PERLIO_DEBUG> environment variable if perl wasn't running -setuid and the C<-T> or C<-t> switches hadn't been parsed yet. - -If perl performed output at a point where it hadn't yet parsed its -switches this could result in perl creating or overwriting the file -named by C<PERLIO_DEBUG> even when the C<-T> switch had been supplied. - -Perl now requires the C<-Di> switch to be present before it will produce -PerlIO debugging -output. By default this is written to C<stderr>, but can optionally -be redirected to a file by setting the C<PERLIO_DEBUG> environment -variable. - -If perl is running setuid or the C<-T> switch was supplied, -C<PERLIO_DEBUG> is ignored and the debugging output is sent to -C<stderr> as for any other C<-D> switch. - -=head1 Incompatible Changes - -=head2 Unescaped literal C<"{"> characters in regular expression -patterns are no longer permissible - -You have to now say something like C<"\{"> or C<"[{]"> to specify to -match a LEFT CURLY BRACKET; otherwise, it is a fatal pattern compilation -error. This change will allow future extensions to the language. - -These have been deprecated since v5.16, with a deprecation message -raised for some uses starting in v5.22. Unfortunately, the code added -to raise the message was buggy and failed to warn in some cases where -it should have. Therefore, enforcement of this ban for these cases is -deferred until Perl 5.30, but the code has been fixed to raise a -default-on deprecation message for them in the meantime. - -Some uses of literal C<"{"> occur in contexts where we do not foresee -the meaning ever being anything but the literal, such as the very first -character in the pattern, or after a C<"|"> meaning alternation. Thus - - qr/{fee|{fie/ - -matches either of the strings C<{fee> or C<{fie>. To avoid forcing -unnecessary code changes, these uses do not need to be escaped, and no -warning is raised about them, and there are no current plans to change this. - -But it is always correct to escape C<"{">, and the simple rule to -remember is to always do so. - -See L<Unescaped left brace in regex is illegal here|perldiag/Unescaped left brace in regex is illegal here in regex; marked by S<E<lt>-- HERE> in mE<sol>%sE<sol>>. - -=head2 C<scalar(%hash)> return signature changed - -The value returned for C<scalar(%hash)> will no longer show information about -the buckets allocated in the hash. It will simply return the count of used -keys. It is thus equivalent to C<0+keys(%hash)>. - -A form of backward compatibility is provided via -L<C<Hash::Util::bucket_ratio()>|Hash::Util/bucket_ratio> which provides -the same behavior as -C<scalar(%hash)> provided in Perl 5.24 and earlier. - -=head2 C<keys> returned from an lvalue subroutine - -C<keys> returned from an lvalue subroutine can no longer be assigned -to in list context. - - sub foo : lvalue { keys(%INC) } - (foo) = 3; # death - sub bar : lvalue { keys(@_) } - (bar) = 3; # also an error - -This makes the lvalue sub case consistent with C<(keys %hash) = ...> and -C<(keys @_) = ...>, which are also errors. -L<[perl #128187]|https://rt.perl.org/Public/Bug/Display.html?id=128187> - -=head2 The C<${^ENCODING}> facility has been removed - -The special behaviour associated with assigning a value to this variable -has been removed. As a consequence, the L<encoding> pragma's default mode -is no longer supported. If -you still need to write your source code in encodings other than UTF-8, use a -source filter such as L<Filter::Encoding> on CPAN or L<encoding>'s C<Filter> -option. - -=head2 C<POSIX::tmpnam()> has been removed - -The fundamentally unsafe C<tmpnam()> interface was deprecated in -Perl 5.22 and has now been removed. In its place, you can use, -for example, the L<File::Temp> interfaces. - -=head2 require ::Foo::Bar is now illegal. - -Formerly, C<require ::Foo::Bar> would try to read F</Foo/Bar.pm>. Now any -bareword require which starts with a double colon dies instead. - -=head2 Literal control character variable names are no longer permissible - -A variable name may no longer contain a literal control character under -any circumstances. These previously were allowed in single-character -names on ASCII platforms, but have been deprecated there since Perl -5.20. This affects things like C<$I<\cT>>, where I<\cT> is a literal -control (such as a C<NAK> or C<NEGATIVE ACKNOWLEDGE> character) in the -source code. - -=head2 C<NBSP> is no longer permissible in C<\N{...}> - -The name of a character may no longer contain non-breaking spaces. It -has been deprecated to do so since Perl 5.22. - -=head1 Deprecations - -=head2 String delimiters that aren't stand-alone graphemes are now deprecated - -For Perl to eventually allow string delimiters to be Unicode -grapheme clusters (which look like a single character, but may be -a sequence of several ones), we have to stop allowing a single character -delimiter that isn't a grapheme by itself. These are unlikely to exist -in actual code, as they would typically display as attached to the -character in front of them. - -=head2 C<\cI<X>> that maps to a printable is no longer deprecated - -This means we have no plans to remove this feature. It still raises a -warning, but only if syntax warnings are enabled. The feature was -originally intended to be a way to express non-printable characters that -don't have a mnemonic (C<\t> and C<\n> are mnemonics for two -non-printable characters, but most non-printables don't have a -mnemonic.) But the feature can be used to specify a few printable -characters, though those are more clearly expressed as the printable -itself. See -L<http://www.nntp.perl.org/group/perl.perl5.porters/2017/02/msg242944.html>. +[ List each other deprecation as a =head2 entry ] =head1 Performance Enhancements -=over 4 - -=item * - -A hash in boolean context is now sometimes faster, I<e.g.> - - if (!%h) { ... } - -This was already special-cased, but some cases were missed (such as -C<grep %$_, @AoH>), and even the ones which weren't have been improved. - -=item * New Faster Hash Function on 64 bit builds +XXX Changes which enhance performance without changing behaviour go here. +There may well be none in a stable release. -We use a different hash function for short and long keys. This should -improve performance and security, especially for long keys. +[ List each enhancement as a =item entry ] -=item * readline is faster - -Reading from a file line-by-line with C<readline()> or C<< E<lt>E<gt> >> should -now typically be faster due to a better implementation of the code that -searches for the next newline character. - -=item * - -Assigning one reference to another, I<e.g.> C<$ref1 = $ref2> has been -optimized in some cases. - -=item * - -Remove some exceptions to creating Copy-on-Write strings. The string -buffer growth algorithm has been slightly altered so that you're less -likely to encounter a string which can't be COWed. +=over 4 =item * -Better optimise array and hash assignment: where an array or hash appears -in the LHS of a list assignment, such as C<(..., @a) = (...);>, it's -likely to be considerably faster, especially if it involves emptying the -array/hash. For example, this code runs about a third faster compared to -Perl 5.24.0: +XXX - my @a; - for my $i (1..10_000_000) { - @a = (1,2,3); - @a = (); - } - -=item * - -Converting a single-digit string to a number is now substantially faster. +=back -=item * +=head1 Modules and Pragmata -The C<split> builtin is now slightly faster in many cases: in particular -for the two specially-handled forms +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. - my @a = split ...; - local @a = split ...; +[ Within each section, list entries as a =item entry ] -=item * +=head2 New Modules and Pragmata -The rather slow implementation for the experimental subroutine signatures -feature has been made much faster; it is now comparable in speed with the -traditional C<my ($a, $b, @c) = @_>. +=over 4 =item * -Bareword constant strings are now permitted to take part in constant -folding. They were originally exempted from constant folding in August 1999, -during the development of Perl 5.6, to ensure that C<use strict "subs"> -would still apply to bareword constants. That has now been accomplished a -different way, so barewords, like other constants, now gain the performance -benefits of constant folding. - -This also means that void-context warnings on constant expressions of -barewords now report the folded constant operand, rather than the operation; -this matches the behaviour for non-bareword constants. +XXX =back -=head1 Modules and Pragmata - =head2 Updated Modules and Pragmata =over 4 =item * -IO::Compress has been upgraded from version 2.069 to 2.074. - -=item * - -L<Archive::Tar> has been upgraded from version 2.04 to 2.24. - -=item * - -L<arybase> has been upgraded from version 0.11 to 0.12. - -=item * - -L<attributes> has been upgraded from version 0.27 to 0.29. - -The deprecation message for the C<:unique> and C<:locked> attributes -now mention that they will disappear in Perl 5.28. - -=item * - -L<B> has been upgraded from version 1.62 to 1.68. +L<XXX> has been upgraded from version A.xx to B.yy. -=item * - -L<B::Concise> has been upgraded from version 0.996 to 0.999. - -Its output is now more descriptive for C<op_private> flags. - -=item * - -L<B::Debug> has been upgraded from version 1.23 to 1.24. - -=item * - -L<B::Deparse> has been upgraded from version 1.37 to 1.40. - -=item * - -L<B::Xref> has been upgraded from version 1.05 to 1.06. - -It now uses 3-arg C<open()> instead of 2-arg C<open()>. -L<[perl #130122]|https://rt.perl.org/Public/Bug/Display.html?id=130122> - -=item * - -L<base> has been upgraded from version 2.23 to 2.25. - -=item * - -L<bignum> has been upgraded from version 0.42 to 0.47. - -=item * - -L<Carp> has been upgraded from version 1.40 to 1.42. - -=item * - -L<charnames> has been upgraded from version 1.43 to 1.44. - -=item * - -L<Compress::Raw::Bzip2> has been upgraded from version 2.069 to 2.074. - -=item * - -L<Compress::Raw::Zlib> has been upgraded from version 2.069 to 2.074. +=back -=item * +=head2 Removed Modules and Pragmata -L<Config::Perl::V> has been upgraded from version 0.25 to 0.28. +=over 4 =item * -L<CPAN> has been upgraded from version 2.11 to 2.18. +XXX -=item * +=back -L<CPAN::Meta> has been upgraded from version 2.150005 to 2.150010. +=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<Data::Dumper> has been upgraded from version 2.160 to 2.167. +=head2 New Documentation -The XS implementation now supports Deparse. +XXX Changes which create B<new> files in F<pod/> go here. -=item * +=head3 L<XXX> -L<DB_File> has been upgraded from version 1.835 to 1.840. +XXX Description of the purpose of the new file here -=item * +=head2 Changes to Existing Documentation -L<Devel::Peek> has been upgraded from version 1.23 to 1.26. +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 * +=head3 L<XXX> -L<Devel::PPPort> has been upgraded from version 3.32 to 3.35. +=over 4 =item * -L<Devel::SelfStubber> has been upgraded from version 1.05 to 1.06. +XXX Description of the change here -It now uses 3-arg C<open()> instead of 2-arg C<open()>. -L<[perl #130122]|https://rt.perl.org/Public/Bug/Display.html?id=130122> +=back -=item * +=head1 Diagnostics -L<diagnostics> has been upgraded from version 1.34 to 1.36. +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>. -It now uses 3-arg C<open()> instead of 2-arg C<open()>. -L<[perl #130122]|https://rt.perl.org/Public/Bug/Display.html?id=130122> +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<Digest> has been upgraded from version 1.17 to 1.17_01. +XXX Newly added diagnostic messages go under here, separated into New Errors +and New Warnings -=item * +=head3 New Errors -L<Digest::MD5> has been upgraded from version 2.54 to 2.55. +=over 4 =item * -L<Digest::SHA> has been upgraded from version 5.95 to 5.96. +XXX L<message|perldiag/"message"> -=item * - -L<DynaLoader> has been upgraded from version 1.38 to 1.42. +=back -=item * +=head3 New Warnings -L<Encode> has been upgraded from version 2.80 to 2.88. +=over 4 =item * -L<encoding> has been upgraded from version 2.17 to 2.19. +XXX L<message|perldiag/"message"> -This module's default mode is no longer supported. It now -dies when imported, unless the C<Filter> option is being used. +=back -=item * +=head2 Changes to Existing Diagnostics -L<encoding::warnings> has been upgraded from version 0.12 to 0.13. +XXX Changes (i.e. rewording) of diagnostic messages go here -This module is no longer supported. It emits a warning to -that effect and then does nothing. +=over 4 =item * -L<Errno> has been upgraded from version 1.25 to 1.28. +XXX Describe change here -It now documents that using C<%!> automatically loads Errno for you. - -It now uses 3-arg C<open()> instead of 2-arg C<open()>. -L<[perl #130122]|https://rt.perl.org/Public/Bug/Display.html?id=130122> +=back -=item * +=head1 Utility Changes -L<ExtUtils::Embed> has been upgraded from version 1.33 to 1.34. +XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here. +Most of these are built within the directory F<utils>. -It now uses 3-arg C<open()> instead of 2-arg C<open()>. -L<[perl #130122]|https://rt.perl.org/Public/Bug/Display.html?id=130122> +[ 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<ExtUtils::MakeMaker> has been upgraded from version 7.10_01 to 7.24. +=over 4 =item * -L<ExtUtils::Miniperl> has been upgraded from version 1.05 to 1.06. +XXX -=item * - -L<ExtUtils::ParseXS> has been upgraded from version 3.31 to 3.34. +=back -=item * +=head1 Configuration and Compilation -L<ExtUtils::Typemaps> has been upgraded from version 3.31 to 3.34. +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. -=item * +[ List changes as a =item entry ]. -L<feature> has been upgraded from version 1.42 to 1.47. +=over 4 =item * -L<File::Copy> has been upgraded from version 2.31 to 2.32. +XXX **** PATCH TRUNCATED AT 2000 LINES -- 3071 NOT SHOWN **** -- Perl5 Master Repository
