In perl.git, the branch ap/baseincguard-old/3 has been updated <http://perl5.git.perl.org/perl.git/commitdiff/f4388d063543ae703bba51fcb8e59958f8335077?hp=d2ae8c2344fcd085c00c5373f4ddcbad4c4ec86e>
discards d2ae8c2344fcd085c00c5373f4ddcbad4c4ec86e (commit) - Log ----------------------------------------------------------------- commit f4388d063543ae703bba51fcb8e59958f8335077 Author: Aristotle Pagaltzis <[email protected]> Date: Mon Feb 13 01:42:44 2017 +0100 wip ----------------------------------------------------------------------- Summary of changes: AUTHORS | 6 +- Configure | 21 +- Cross/config.sh-arm-linux | 46 +- Cross/config.sh-arm-linux-n770 | 46 +- INSTALL | 121 +- MANIFEST | 111 +- META.json | 4 +- META.yml | 2 +- Makefile.SH | 11 +- NetWare/Makefile | 4 +- NetWare/config_H.wc | 10 +- Porting/Maintainers.pl | 12 +- Porting/bench.pl | 47 +- Porting/checkAUTHORS.pl | 1 + Porting/cmpVERSION.pl | 7 + Porting/config.sh | 48 +- Porting/config_H | 18 +- Porting/deparse-skips.txt | 239 +- Porting/epigraphs.pod | 40 + Porting/perldelta_template.pod | 9 + Porting/release_managers_guide.pod | 7 +- Porting/release_schedule.pod | 50 +- README.haiku | 4 +- README.macosx | 8 +- README.os2 | 2 +- README.synology | 14 +- README.vms | 4 +- README.win32 | 2 +- XSUB.h | 8 +- av.c | 5 +- charclass_invlists.h | 2 +- cpan/ExtUtils-Install/lib/ExtUtils/Install.pm | 192 +- cpan/ExtUtils-Install/lib/ExtUtils/Installed.pm | 2 +- cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm | 2 +- cpan/ExtUtils-Install/t/Install.t | 14 +- cpan/ExtUtils-Install/t/InstallWithMM.t | 2 +- cpan/ExtUtils-Install/t/Installed.t | 3 + .../t/lib/MakeMaker/Test/Setup/BFD.pm | 12 + cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm | 5 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm | 2 +- .../ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm | 26 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | 17 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 36 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm | 26 +- .../lib/ExtUtils/MakeMaker/Config.pm | 2 +- .../lib/ExtUtils/MakeMaker/FAQ.pod | 2 +- .../lib/ExtUtils/MakeMaker/Locale.pm | 2 +- .../lib/ExtUtils/MakeMaker/Tutorial.pod | 4 +- .../lib/ExtUtils/MakeMaker/version.pm | 2 +- .../lib/ExtUtils/MakeMaker/version/regex.pm | 2 +- .../ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm | 2 +- cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm | 2 +- cpan/ExtUtils-MakeMaker/t/03-xsstatic.t | 3 - cpan/ExtUtils-MakeMaker/t/basic.t | 16 +- cpan/ExtUtils-MakeMaker/t/eu_command.t | 13 +- .../t/lib/MakeMaker/Test/Setup/XS.pm | 76 +- cpan/ExtUtils-MakeMaker/t/metafile_data.t | 106 +- cpan/ExtUtils-MakeMaker/t/os_unsupported.t | 15 + cpan/Locale-Codes/lib/Locale/Codes.pm | 702 +- cpan/Locale-Codes/lib/Locale/Codes.pod | 536 +- cpan/Locale-Codes/lib/Locale/Codes/API.pod | 335 - cpan/Locale-Codes/lib/Locale/Codes/Changes.pod | 80 +- cpan/Locale-Codes/lib/Locale/Codes/Constants.pm | 328 +- cpan/Locale-Codes/lib/Locale/Codes/Country.pm | 76 +- cpan/Locale-Codes/lib/Locale/Codes/Country.pod | 168 +- .../Locale-Codes/lib/Locale/Codes/Country_Codes.pm | 1142 +- .../lib/Locale/Codes/Country_Retired.pm | 8 +- cpan/Locale-Codes/lib/Locale/Codes/Currency.pm | 74 +- cpan/Locale-Codes/lib/Locale/Codes/Currency.pod | 102 +- .../lib/Locale/Codes/Currency_Codes.pm | 16 +- .../lib/Locale/Codes/Currency_Retired.pm | 4 +- cpan/Locale-Codes/lib/Locale/Codes/LangExt.pm | 75 +- cpan/Locale-Codes/lib/Locale/Codes/LangExt.pod | 98 +- .../Locale-Codes/lib/Locale/Codes/LangExt_Codes.pm | 310 +- .../lib/Locale/Codes/LangExt_Retired.pm | 6 +- cpan/Locale-Codes/lib/Locale/Codes/LangFam.pm | 75 +- cpan/Locale-Codes/lib/Locale/Codes/LangFam.pod | 98 +- .../Locale-Codes/lib/Locale/Codes/LangFam_Codes.pm | 4 +- .../lib/Locale/Codes/LangFam_Retired.pm | 2 +- cpan/Locale-Codes/lib/Locale/Codes/LangVar.pm | 76 +- cpan/Locale-Codes/lib/Locale/Codes/LangVar.pod | 98 +- .../Locale-Codes/lib/Locale/Codes/LangVar_Codes.pm | 464 +- .../lib/Locale/Codes/LangVar_Retired.pm | 4 +- cpan/Locale-Codes/lib/Locale/Codes/Language.pm | 75 +- cpan/Locale-Codes/lib/Locale/Codes/Language.pod | 105 +- .../lib/Locale/Codes/Language_Codes.pm | 32921 ++++++++++--------- .../lib/Locale/Codes/Language_Retired.pm | 30 +- cpan/Locale-Codes/lib/Locale/Codes/Script.pm | 74 +- cpan/Locale-Codes/lib/Locale/Codes/Script.pod | 101 +- cpan/Locale-Codes/lib/Locale/Codes/Script_Codes.pm | 2107 +- .../lib/Locale/Codes/Script_Retired.pm | 4 +- cpan/Locale-Codes/lib/Locale/Codes/Types.pod | 414 + cpan/Locale-Codes/lib/Locale/Country.pm | 104 +- cpan/Locale-Codes/lib/Locale/Country.pod | 168 +- cpan/Locale-Codes/lib/Locale/Currency.pm | 104 +- cpan/Locale-Codes/lib/Locale/Currency.pod | 102 +- cpan/Locale-Codes/lib/Locale/Language.pm | 104 +- cpan/Locale-Codes/lib/Locale/Language.pod | 105 +- cpan/Locale-Codes/lib/Locale/Script.pm | 104 +- cpan/Locale-Codes/lib/Locale/Script.pod | 101 +- cpan/Locale-Codes/t/country.t | 47 - cpan/Locale-Codes/t/country_func.t | 27 + cpan/Locale-Codes/t/country_old.t | 32 +- cpan/Locale-Codes/t/country_oo.t | 27 + cpan/Locale-Codes/t/currency.t | 47 - cpan/Locale-Codes/t/currency_func.t | 27 + cpan/Locale-Codes/t/currency_old.t | 32 +- cpan/Locale-Codes/t/currency_oo.t | 27 + cpan/Locale-Codes/t/do_tests.pl | 328 + cpan/Locale-Codes/t/langext.t | 47 - cpan/Locale-Codes/t/langext_func.t | 27 + cpan/Locale-Codes/t/langext_oo.t | 27 + cpan/Locale-Codes/t/langfam.t | 47 - cpan/Locale-Codes/t/langfam_func.t | 27 + cpan/Locale-Codes/t/langfam_oo.t | 27 + cpan/Locale-Codes/t/language.t | 47 - cpan/Locale-Codes/t/language_func.t | 27 + cpan/Locale-Codes/t/language_old.t | 32 +- cpan/Locale-Codes/t/language_oo.t | 27 + cpan/Locale-Codes/t/langvar.t | 47 - cpan/Locale-Codes/t/langvar_func.t | 27 + cpan/Locale-Codes/t/langvar_oo.t | 27 + cpan/Locale-Codes/t/script.t | 47 - cpan/Locale-Codes/t/script_func.t | 27 + cpan/Locale-Codes/t/script_old.t | 32 +- cpan/Locale-Codes/t/script_oo.t | 27 + cpan/Locale-Codes/t/testfunc.pl | 2 +- cpan/Locale-Codes/t/vals.pl | 212 - cpan/Locale-Codes/t/vals_country.pl | 60 +- cpan/Locale-Codes/t/vals_currency.pl | 12 +- cpan/Locale-Codes/t/vals_langext.pl | 7 +- cpan/Locale-Codes/t/vals_langfam.pl | 7 +- cpan/Locale-Codes/t/vals_language.pl | 8 +- cpan/Locale-Codes/t/vals_langvar.pl | 7 +- cpan/Locale-Codes/t/vals_script.pl | 9 +- cpan/version/lib/version.pm | 6 +- cpan/version/lib/version/regex.pm | 16 +- cpan/version/t/01base.t | 8 +- cpan/version/t/02derived.t | 8 +- cpan/version/t/03require.t | 8 +- cpan/version/t/04strict_lax.t | 15 + cpan/version/t/05sigdie.t | 2 +- cpan/version/t/06noop.t | 2 +- cpan/version/t/07locale.t | 2 +- cpan/version/t/08_corelist.t | 2 +- cpan/version/t/09_list_util.t | 2 +- cpan/version/t/11_taint.t | 24 + dist/Attribute-Handlers/lib/Attribute/Handlers.pm | 8 +- dist/Module-CoreList/Changes | 8 +- dist/Module-CoreList/corelist | 79 +- dist/Module-CoreList/lib/Module/CoreList.pm | 135 +- .../lib/Module/CoreList/TieHashDelta.pm | 2 +- dist/Module-CoreList/lib/Module/CoreList/Utils.pm | 16 +- dist/Module-CoreList/t/maintainer.t | 31 + dist/Time-HiRes/Makefile.PL | 4 +- dist/if/if.pm | 11 +- dist/threads-shared/lib/threads/shared.pm | 4 +- dist/threads-shared/shared.xs | 5 +- dist/threads/lib/threads.pm | 4 +- dist/threads/t/exit.t | 10 +- dist/threads/t/problems.t | 52 +- dist/threads/t/thread.t | 2 +- dist/threads/t/unique.t | 81 + dist/threads/threads.xs | 5 +- doio.c | 51 +- doop.c | 246 +- dquote_inline.h | 6 +- ebcdic_tables.h | 6 +- embed.fnc | 43 +- embed.h | 9 +- embedvar.h | 5 +- ext/B/B/Concise.pm | 4 +- ext/B/B/Terse.pm | 8 +- ext/B/O.pm | 10 +- ext/File-Glob/bsd_glob.c | 64 +- ext/File-Glob/t/rt131211.t | 94 + ext/GDBM_File/GDBM_File.pm | 4 +- ext/Hash-Util/t/Util.t | 4 +- ext/Hash-Util/t/builtin.t | 10 +- ext/PerlIO-via/t/thread.t | 73 + ext/PerlIO-via/t/via.t | 56 +- ext/PerlIO-via/via.pm | 2 +- ext/PerlIO-via/via.xs | 59 +- ext/XS-APItest/APItest.pm | 2 +- ext/XS-APItest/numeric.xs | 2 +- ext/XS-APItest/t/{handy0.t => handy00.t} | 0 ext/XS-APItest/t/{handy1.t => handy01.t} | 0 ext/XS-APItest/t/{handy2.t => handy02.t} | 0 ext/XS-APItest/t/{handy3.t => handy03.t} | 0 ext/XS-APItest/t/{handy4.t => handy04.t} | 0 ext/XS-APItest/t/{handy5.t => handy05.t} | 0 ext/XS-APItest/t/{handy6.t => handy06.t} | 0 ext/XS-APItest/t/{handy7.t => handy07.t} | 0 ext/XS-APItest/t/{handy8.t => handy08.t} | 0 ext/XS-APItest/t/{handy9.t => handy09.t} | 0 ext/XS-APItest/t/utf8.t | 27 +- ext/XS-APItest/t/utf8_setup.pl | 2 + ext/XS-APItest/t/{utf8_warn0.t => utf8_warn00.t} | 0 ext/XS-APItest/t/{utf8_warn1.t => utf8_warn01.t} | 0 ext/XS-APItest/t/{utf8_warn2.t => utf8_warn02.t} | 0 ext/XS-APItest/t/{utf8_warn3.t => utf8_warn03.t} | 0 ext/XS-APItest/t/{utf8_warn4.t => utf8_warn04.t} | 0 ext/XS-APItest/t/{utf8_warn5.t => utf8_warn05.t} | 0 ext/XS-APItest/t/{utf8_warn6.t => utf8_warn06.t} | 0 ext/XS-APItest/t/{utf8_warn7.t => utf8_warn07.t} | 0 ext/XS-APItest/t/{utf8_warn8.t => utf8_warn08.t} | 0 ext/XS-APItest/t/{utf8_warn9.t => utf8_warn09.t} | 0 ext/attributes/attributes.pm | 19 +- ext/mro/mro.pm | 8 +- gv.c | 13 +- handy.h | 6 +- hints/catamount.sh | 4 +- hints/freebsd.sh | 9 + hv.c | 55 +- hv_func.h | 430 +- hv_macro.h | 81 + inline.h | 39 +- intrpvar.h | 1 - lib/B/Deparse.pm | 250 +- lib/B/Deparse.t | 55 +- lib/B/Op_private.pm | 15 +- lib/DirHandle.pm | 23 +- lib/_charnames.pm | 6 +- lib/charnames.pm | 10 +- lib/feature.pm | 8 +- lib/unicore/mktables | 21 +- makedef.pl | 3 + malloc_ctl.h | 4 +- mg.c | 42 +- op.c | 14 +- op.h | 5 +- opcode.h | 547 +- patchlevel.h | 8 +- perl.c | 56 +- perl.h | 55 +- perlapi.h | 4 + perlio.h | 6 +- perliol.h | 6 +- perlvars.h | 6 + perly.act | 494 +- perly.h | 2 +- perly.tab | 66 +- perly.y | 6 + plan9/config.plan9 | 10 +- plan9/config_sh.sample | 44 +- pod/.gitignore | 2 +- pod/buildtoc | 2 +- pod/perl.pod | 15 +- pod/perl5250delta.pod | 95 - pod/perl52510delta.pod | 259 - pod/perl52511delta.pod | 201 - pod/perl5251delta.pod | 421 - pod/perl5252delta.pod | 482 - pod/perl5253delta.pod | 492 - pod/perl5254delta.pod | 429 - pod/perl5255delta.pod | 326 - pod/perl5256delta.pod | 413 - pod/perl5257delta.pod | 733 - pod/perl5258delta.pod | 213 - pod/perl5259delta.pod | 678 - pod/perl5260delta.pod | 3334 ++ pod/{perl52512delta.pod => perl5270delta.pod} | 89 +- pod/perldata.pod | 17 +- pod/perldelta.pod | 115 +- pod/perldeprecation.pod | 131 +- pod/perldiag.pod | 159 +- pod/perlexperiment.pod | 17 +- pod/perlfunc.pod | 13 +- pod/perlgit.pod | 7 + pod/perlguts.pod | 6 +- pod/perlhack.pod | 49 + pod/perlhist.pod | 33 +- pod/perlmodinstall.pod | 2 +- pod/perlop.pod | 16 +- pod/perlrun.pod | 1 - pod/perlunicode.pod | 11 +- pod/perluniintro.pod | 22 +- pod/perlvar.pod | 8 +- pp.c | 142 +- pp.h | 6 +- pp_ctl.c | 101 +- pp_sys.c | 10 +- proto.h | 52 +- reentr.h | 9 +- regcharclass.h | 10 +- regcomp.c | 102 +- regen/ebcdic.pl | 6 +- regen/feature.pl | 4 +- regen/op_private | 10 +- regen/reentr.pl | 9 +- regen/regcharclass.pl | 4 +- regen/unicode_constants.pl | 6 +- regexec.c | 3 + sbox32_hash.h | 1777 + stadtx_hash.h | 301 + sv.c | 2692 +- sv.h | 4 + t/TEST | 20 +- t/base/rs.t | 32 +- t/bigmem/hash.t | 33 + t/harness | 8 +- t/lib/croak/mg | 7 + t/lib/croak/pp_sys | 59 + t/lib/croak/toke | 17 + t/lib/warnings/9uninit | 12 +- t/lib/warnings/doop | 33 +- t/lib/warnings/gv | 29 - t/lib/warnings/mg | 33 - t/lib/warnings/pp | 10 - t/lib/warnings/pp_sys | 59 - t/lib/warnings/regcomp | 31 +- t/lib/warnings/toke | 55 - t/lib/warnings/utf8 | 33 - t/op/attrs.t | 7 +- t/op/bop.t | 208 +- t/op/catch.t | 50 + t/op/chdir.t | 25 +- t/op/chop.t | 6 +- t/op/closure.t | 2 +- t/op/coreamp.t | 2 +- t/op/delete.t | 30 +- t/op/eval.t | 34 +- t/op/fork.t | 2 +- t/op/gv.t | 40 +- t/op/hash.t | 20 +- t/op/heredoc.t | 12 +- t/op/infnan.t | 36 +- t/op/kvaslice.t | 9 +- t/op/kvhslice.t | 9 +- t/op/leaky-magic.t | 5 +- t/op/lex.t | 5 +- t/op/ref.t | 63 +- t/op/sprintf.t | 126 +- t/op/sprintf2.t | 148 +- t/op/stat.t | 33 +- t/op/sub_lval.t | 2 +- t/op/substr.t | 10 +- t/op/tie_fetch_count.t | 4 +- t/op/vec.t | 23 +- t/op/ver.t | 22 +- t/op/write.t | 14 +- t/perf/benchmarks | 103 + t/perf/optree.t | 3 +- t/porting/cmp_version.t | 7 + t/porting/customized.dat | 2 +- t/porting/diag.t | 1 - t/porting/globvar.t | 2 +- t/porting/known_pod_issues.dat | 2 + t/re/anyof.t | 4 +- t/re/pat.t | 7 +- t/re/pat_advanced.t | 313 +- t/re/pat_re_eval.t | 15 +- t/re/re_tests | 1 - t/re/reg_mesg.t | 28 +- t/uni/heavy.t | 40 - time64.h | 4 +- time64_config.h | 6 +- toke.c | 46 +- uconfig.h | 18 +- uconfig.sh | 16 +- uconfig64.sh | 16 +- unicode_constants.h | 6 +- utf8.c | 239 +- utf8.h | 41 +- util.c | 4 +- vms/descrip_mms.template | 2 +- vutil.c | 6 +- vutil.h | 2 +- vxs.inc | 11 +- win32/GNUmakefile | 28 +- win32/Makefile | 16 +- win32/Makefile.ce | 2 +- win32/makefile.mk | 32 +- win32/pod.mak | 69 +- zaphod32_hash.h | 287 + 393 files changed, 34625 insertions(+), 30603 deletions(-) create mode 100644 cpan/ExtUtils-MakeMaker/t/os_unsupported.t delete mode 100644 cpan/Locale-Codes/lib/Locale/Codes/API.pod create mode 100644 cpan/Locale-Codes/lib/Locale/Codes/Types.pod delete mode 100644 cpan/Locale-Codes/t/country.t create mode 100644 cpan/Locale-Codes/t/country_func.t create mode 100644 cpan/Locale-Codes/t/country_oo.t delete mode 100644 cpan/Locale-Codes/t/currency.t create mode 100644 cpan/Locale-Codes/t/currency_func.t create mode 100644 cpan/Locale-Codes/t/currency_oo.t create mode 100644 cpan/Locale-Codes/t/do_tests.pl delete mode 100644 cpan/Locale-Codes/t/langext.t create mode 100644 cpan/Locale-Codes/t/langext_func.t create mode 100644 cpan/Locale-Codes/t/langext_oo.t delete mode 100644 cpan/Locale-Codes/t/langfam.t create mode 100644 cpan/Locale-Codes/t/langfam_func.t create mode 100644 cpan/Locale-Codes/t/langfam_oo.t delete mode 100644 cpan/Locale-Codes/t/language.t create mode 100644 cpan/Locale-Codes/t/language_func.t create mode 100644 cpan/Locale-Codes/t/language_oo.t delete mode 100644 cpan/Locale-Codes/t/langvar.t create mode 100644 cpan/Locale-Codes/t/langvar_func.t create mode 100644 cpan/Locale-Codes/t/langvar_oo.t delete mode 100644 cpan/Locale-Codes/t/script.t create mode 100644 cpan/Locale-Codes/t/script_func.t create mode 100644 cpan/Locale-Codes/t/script_oo.t delete mode 100644 cpan/Locale-Codes/t/vals.pl create mode 100644 cpan/version/t/11_taint.t create mode 100644 dist/Module-CoreList/t/maintainer.t create mode 100644 dist/threads/t/unique.t create mode 100644 ext/File-Glob/t/rt131211.t create mode 100644 ext/PerlIO-via/t/thread.t rename ext/XS-APItest/t/{handy0.t => handy00.t} (100%) rename ext/XS-APItest/t/{handy1.t => handy01.t} (100%) rename ext/XS-APItest/t/{handy2.t => handy02.t} (100%) rename ext/XS-APItest/t/{handy3.t => handy03.t} (100%) rename ext/XS-APItest/t/{handy4.t => handy04.t} (100%) rename ext/XS-APItest/t/{handy5.t => handy05.t} (100%) rename ext/XS-APItest/t/{handy6.t => handy06.t} (100%) rename ext/XS-APItest/t/{handy7.t => handy07.t} (100%) rename ext/XS-APItest/t/{handy8.t => handy08.t} (100%) rename ext/XS-APItest/t/{handy9.t => handy09.t} (100%) rename ext/XS-APItest/t/{utf8_warn0.t => utf8_warn00.t} (100%) rename ext/XS-APItest/t/{utf8_warn1.t => utf8_warn01.t} (100%) rename ext/XS-APItest/t/{utf8_warn2.t => utf8_warn02.t} (100%) rename ext/XS-APItest/t/{utf8_warn3.t => utf8_warn03.t} (100%) rename ext/XS-APItest/t/{utf8_warn4.t => utf8_warn04.t} (100%) rename ext/XS-APItest/t/{utf8_warn5.t => utf8_warn05.t} (100%) rename ext/XS-APItest/t/{utf8_warn6.t => utf8_warn06.t} (100%) rename ext/XS-APItest/t/{utf8_warn7.t => utf8_warn07.t} (100%) rename ext/XS-APItest/t/{utf8_warn8.t => utf8_warn08.t} (100%) rename ext/XS-APItest/t/{utf8_warn9.t => utf8_warn09.t} (100%) create mode 100644 hv_macro.h delete mode 100644 pod/perl5250delta.pod delete mode 100644 pod/perl52510delta.pod delete mode 100644 pod/perl52511delta.pod delete mode 100644 pod/perl5251delta.pod delete mode 100644 pod/perl5252delta.pod delete mode 100644 pod/perl5253delta.pod delete mode 100644 pod/perl5254delta.pod delete mode 100644 pod/perl5255delta.pod delete mode 100644 pod/perl5256delta.pod delete mode 100644 pod/perl5257delta.pod delete mode 100644 pod/perl5258delta.pod delete mode 100644 pod/perl5259delta.pod create mode 100644 pod/perl5260delta.pod rename pod/{perl52512delta.pod => perl5270delta.pod} (53%) create mode 100644 sbox32_hash.h create mode 100644 stadtx_hash.h create mode 100644 t/bigmem/hash.t create mode 100644 t/op/catch.t delete mode 100644 t/uni/heavy.t create mode 100644 zaphod32_hash.h diff --git a/AUTHORS b/AUTHORS index 4e4756b494..7fdb6948c5 100644 --- a/AUTHORS +++ b/AUTHORS @@ -328,6 +328,7 @@ David Gay <[email protected]> David Glasser <[email protected]> David Golden <[email protected]> David H. Adler <[email protected]> +David H. Gutteridge <[email protected]> David Hammen <[email protected]> David J. Fiander <[email protected]> David Kerry <[email protected]> @@ -401,6 +402,7 @@ Erich Rickheit Eryq <[email protected]> Etienne Grossman <[email protected]> Eugene Alterman <[email protected]> +Eugen Konkov <[email protected]> Evan Miller <[email protected]> Evan Zacks <[email protected]> Fabien Tassin <[email protected]> @@ -530,6 +532,7 @@ J. Nick Koston <[email protected]> J. van Krieken <[email protected]> Jacinta Richardson <[email protected]> Jack Shirazi <[email protected]> +Jacques Germishuys <[email protected]> Jacqui Caren <[email protected]> Jake Hamby <[email protected]> James <[email protected]> @@ -593,7 +596,7 @@ Jim Cromie <[email protected]> Jim Meyering <[email protected]> Jim Miner <[email protected]> Jim Richardson -Jim Schneider <[email protected]> +Jim Schneider <[email protected]> Jirka HruÅ¡ka <[email protected]> Joachim Huober Joaquin Ferrero <[email protected]> @@ -691,6 +694,7 @@ KAWAI Takanori <[email protected]> Keedi Kim <[email protected]> Keith Neufeld <[email protected]> Keith Thompson <[email protected]> +Ken Cotterill <[email protected]> Ken Estes <[email protected]> Ken Fox <[email protected]> Ken Hirsch <[email protected]> diff --git a/Configure b/Configure index e32d18ce1f..3259249500 100755 --- a/Configure +++ b/Configure @@ -2896,7 +2896,6 @@ case "$lns" in *) echo "No symbolic links, so not testing for their testing..." >&4 ;; esac -echo " " : Make symlinks util case "$mksymlinks" in @@ -17114,8 +17113,9 @@ $volatile int bletched = 0; $signal_t blech(int s) { bletched = 1; } #endif -int checkit($nvtype d, char *where) { - unsigned char *p = (char *)&d; +int checkit($nvtype d, const char *where) { + void *v = &d; + unsigned char *p = (unsigned char *)v; unsigned char *end = p + sizeof(d); int fail = 0; @@ -17125,7 +17125,7 @@ int checkit($nvtype d, char *where) { if (!fail) return 0; - p = (char *)&d; + p = (unsigned char *)v; printf("No - %s: 0x", where); while (p < end) printf ("%02X", *p++); @@ -20666,9 +20666,13 @@ $cat >try.c <<EOP #define LONG_DOUBLEKIND $longdblkind #endif #$i_math I_MATH +#$i_string I_STRING #ifdef I_MATH #include <math.h> #endif +#ifdef I_STRING +# include <string.h> +#endif #include <stdio.h> /* Note that whether the sign bit is on or off * for NaN depends on the CPU/FPU, and possibly @@ -20685,7 +20689,8 @@ $cat >try.c <<EOP * to even mention, causing immediate SIGFPE or equivalent: this is * the case with VAX floating point, for example. */ -static void bytes(unsigned char *p, unsigned int n) { +static void bytes(void *v, unsigned int n) { + unsigned char *p = (unsigned char *)v; int i; for (i = 0; i < n; i++) { printf("0x%02x%s", p[i], i < n - 1 ? ", " : "\n"); @@ -21015,7 +21020,7 @@ EOM ;; *) dtraceobject=$undef ;; esac - $rm -f try.c try.o perldtrace.o perldtrace.h + $rm_try perldtrace.o perldtrace.h esac : Determine if this is an EBCDIC system @@ -23055,7 +23060,7 @@ main(int argc, char **argv) { return 4; } - buffer = malloc(size); + buffer = (char *)malloc(size); if (!buffer) { perror("malloc"); return 5; @@ -23154,7 +23159,7 @@ main(int argc, char **argv) { return 2; } - buffer = malloc(size); + buffer = (char *)malloc(size); if (!buffer) { perror("malloc"); return 3; diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux index 6f934af8a0..8af2fdcb86 100644 --- a/Cross/config.sh-arm-linux +++ b/Cross/config.sh-arm-linux @@ -32,12 +32,12 @@ alignbytes='4' ansi2knr='' aphostname='/bin/hostname' api_revision='5' -api_subversion='0' -api_version='26' -api_versionstring='5.26.0' +api_subversion='1' +api_version='27' +api_versionstring='5.27.1' 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.1/armv4l-linux' +archlibexp='/usr/lib/perl5/5.27.1/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.1/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.1/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.1' 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.1/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.1' 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.1' +privlibexp='/usr/lib/perl5/5.27.1' 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.1/armv4l-linux' +sitearchexp='/usr/lib/perl5/site_perl/5.27.1/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.1' sitelib_stem='/usr/lib/perl5/site_perl' -sitelibexp='/usr/lib/perl5/site_perl/5.26.0' +sitelibexp='/usr/lib/perl5/site_perl/5.27.1' siteman1dir='/usr/share/man/man1' siteman1direxp='/usr/share/man/man1' siteman3dir='/usr/share/man/man3' @@ -1089,7 +1089,7 @@ stdio_stream_array='' strerror_r_proto='0' strings='/usr/include/string.h' submit='' -subversion='0' +subversion='1' sysman='/usr/share/man/man1' tail='' tar='' @@ -1181,8 +1181,8 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.26.0' -version_patchlevel_string='version 26 subversion 0' +version='5.27.1' +version_patchlevel_string='version 27 subversion 1' 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_SUBVERSION=0 +PERL_VERSION=27 +PERL_SUBVERSION=1 PERL_API_REVISION=5 -PERL_API_VERSION=26 -PERL_API_SUBVERSION=0 +PERL_API_VERSION=27 +PERL_API_SUBVERSION=1 PERL_PATCHLEVEL= PERL_CONFIG_SH=true diff --git a/Cross/config.sh-arm-linux-n770 b/Cross/config.sh-arm-linux-n770 index 4b78f5dc47..22c6dc1e22 100644 --- a/Cross/config.sh-arm-linux-n770 +++ b/Cross/config.sh-arm-linux-n770 @@ -32,12 +32,12 @@ alignbytes='4' ansi2knr='' aphostname='/bin/hostname' api_revision='5' -api_subversion='0' -api_version='26' -api_versionstring='5.26.0' +api_subversion='1' +api_version='27' +api_versionstring='5.27.1' 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.1/armv4l-linux' +archlibexp='/usr/lib/perl5/5.27.1/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.1/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.1/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.1' 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.1/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.1' 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.1' +privlibexp='/usr/lib/perl5/5.27.1' 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.1/armv4l-linux' +sitearchexp='/usr/lib/perl5/site_perl/5.27.1/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.1' sitelib_stem='/usr/lib/perl5/site_perl' -sitelibexp='/usr/lib/perl5/site_perl/5.26.0' +sitelibexp='/usr/lib/perl5/site_perl/5.27.1' siteman1dir='/usr/share/man/man1' siteman1direxp='/usr/share/man/man1' siteman3dir='/usr/share/man/man3' @@ -950,7 +950,7 @@ stdio_stream_array='' strerror_r_proto='0' strings='/usr/include/string.h' submit='' -subversion='0' +subversion='1' sysman='/usr/share/man/man1' tail='' tar='' @@ -1035,8 +1035,8 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.26.0' -version_patchlevel_string='version 26 subversion 0' +version='5.27.1' +version_patchlevel_string='version 27 subversion 1' 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_SUBVERSION=0 +PERL_VERSION=27 +PERL_SUBVERSION=1 PERL_API_REVISION=5 -PERL_API_VERSION=26 -PERL_API_SUBVERSION=0 +PERL_API_VERSION=27 +PERL_API_SUBVERSION=1 PERL_PATCHLEVEL= PERL_CONFIG_SH=true diff --git a/INSTALL b/INSTALL index d2b5784fe3..c60b37230e 100644 --- a/INSTALL +++ b/INSTALL @@ -366,58 +366,79 @@ symbols during configure. An example might be: B<Unless stated otherwise these options are considered experimental or insecure and are not recommended for production use.> -Perl 5.18 includes support for multiple hash functions, and changed -the default (to ONE_AT_A_TIME_HARD), you can choose a different -algorithm by defining one of the following symbols. Note that as of -Perl 5.18 we can only recommend use of the default or SIPHASH. All -the others are known to have security issues and are for research -purposes only. +Since Perl 5.18 we have included support for multiple hash functions, +although from time to time we change which functions we support, +and which function is default (currently SBOX+STADTX on 64 bit builds +and SBOX+ZAPHOD32 for 32 bit builds). You can choose a different +algorithm by defining one of the following symbols during configure. +Note that there security implications of which hash function you choose +to use. The functions are listed roughly by how secure they are believed +to be, with the one believed to be most secure at release time being PERL_HASH_FUNC_SIPHASH. PERL_HASH_FUNC_SIPHASH - PERL_HASH_FUNC_SDBM - PERL_HASH_FUNC_DJB2 - PERL_HASH_FUNC_SUPERFAST - PERL_HASH_FUNC_MURMUR3 - PERL_HASH_FUNC_ONE_AT_A_TIME - PERL_HASH_FUNC_ONE_AT_A_TIME_HARD - PERL_HASH_FUNC_ONE_AT_A_TIME_OLD - -Perl 5.18 randomizes the order returned by keys(), values(), and each(), -and allows controlling this behavior by using of the PERL_PERTURB_KEYS -option. You can disable this option entirely with the define: + PERL_HASH_FUNC_SIPHASH13 + PERL_HASH_FUNC_ZAPHOD32 + PERL_HASH_FUNC_STADTX + +In addition, these, (or custom hash functions), may be "fronted" by the +SBOX32 hash function for keys under a chosen size. This hash function is +special in that it has proven theoretical security properties, and is very +fast to hash, but which by nature is restricted to a maximum key length, +and which has rather expensive setup costs (relatively speaking), both in +terms of performance and more importantly in terms of memory. SBOX32 +requires 1k of storage per character it can hash, and it must populate that +storage with 256 32-bit random values as well. In practice the RNG we use +for seeding the SBOX32 storage is very efficient and populating the table +required for hashing even fairly long keys is negligble as we only do it +during startup. By default we build with SBOX32 enabled, but you change that +by setting + + PERL_HASH_USE_SBOX32_ALSO + +to zero in configure. By default Perl will use SBOX32 to hash strings 24 bytes +or shorter, you can change this length by setting + + SBOX32_MAX_LEN + +to the desired length, with the maximum length being 256. + +As of Perl 5.18 the order returned by keys(), values(), and each() is +non-deterministic and distinct per hash, and the insert order for +colliding keys is randomized as well, and perl allows for controlling this +by the PERL_PERTURB_KEYS environment setting. You can disable this behavior +entirely with the define PERL_PERTURB_KEYS_DISABLED -You can disable the environment variable checks and specify the type of -key traversal randomization to be used by defining one of these: +You can disable the environment variable checks and compile time specify +the type of key traversal randomization to be used by defining one of these: PERL_PERTURB_KEYS_RANDOM PERL_PERTURB_KEYS_DETERMINISTIC -In Perl 5.18 the seed used for the hash function is randomly selected -at process start which can be overridden by specifying a seed by setting +Since Perl 5.18 the seed used for the hash function is randomly selected +at process start, which can be overridden by specifying a seed by setting the PERL_HASH_SEED environment variable. -You can change this behavior by building perl with the - - USE_HASH_SEED_EXPLICIT - -define, in which case one has to explicitly set the PERL_HASH_SEED -environment variable to enable the security feature or by adding +You can change this behavior so that your perl is built with a hard coded +seed with the define NO_HASH_SEED -to the compilation flags to completely disable the randomisation feature. -Note these modes are poorly tested, insecure and not recommended. +Note that if you do this you should modify the code in hv_func.h to specify +your own key. In the future this define may be renamed and replaced with one +that requires you to specify the key to use. -B<Perl has never guaranteed any ordering of the hash keys>, and the +B<NOTE WELL: Perl has never guaranteed any ordering of the hash keys>, and the ordering has already changed several times during the lifetime of Perl 5. Also, the ordering of hash keys has always been, and continues to -be, affected by the insertion order. Note that because of this -randomisation for example the Data::Dumper results will be different -between different runs of Perl, since Data::Dumper by default dumps -hashes "unordered". The use of the Data::Dumper C<Sortkeys> option is -recommended. +be, affected by the insertion order regardless of whether you build with +or without the randomization features. Note that because of this +and especially with randomization that the key order of a hash is *undefined* +and that things like Data::Dumper, for example, may produce different output +between different runs of Perl, since Data::Dumper serializes the key in the +native order for the hash. The use of the Data::Dumper C<Sortkeys> option is +recommended if you are comparing dumps between different invocations of perl. See L<perlrun/PERL_HASH_SEED> and L<perlrun/PERL_PERTURB_KEYS> for details on the environment variables, and L<perlsec/Algorithmic @@ -588,7 +609,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.1. $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 +2472,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.1 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 +2547,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.1 -and adding /opt/perl5.26.0/bin to the shell PATH variable. Such users +and adding /opt/perl5.27.1/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 +2562,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.1 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.1. If you find you do need to rebuild an extension with +5.27.1, you may safely do so without disturbing the older installations. (See L<"Coexistence with earlier versions of perl 5"> above.) @@ -2580,15 +2601,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.1 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.1/strict.pm + ./lib/perl5/5.27.1/warnings.pm + ./lib/perl5/5.27.1/i686-linux/File/Glob.pm + ./lib/perl5/5.27.1/feature.pm + ./lib/perl5/5.27.1/XSLoader.pm + ./lib/perl5/5.27.1/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 700d35d146..4fe8c80126 100644 --- a/MANIFEST +++ b/MANIFEST @@ -1200,6 +1200,7 @@ cpan/ExtUtils-MakeMaker/t/MM_Unix.t See if ExtUtils::MM_UNIX works cpan/ExtUtils-MakeMaker/t/MM_VMS.t See if ExtUtils::MM_VMS works cpan/ExtUtils-MakeMaker/t/MM_Win32.t See if ExtUtils::MM_Win32 works cpan/ExtUtils-MakeMaker/t/oneliner.t See if MM can generate perl one-liners +cpan/ExtUtils-MakeMaker/t/os_unsupported.t cpan/ExtUtils-MakeMaker/t/parse_abstract.t See if parse_abstract works cpan/ExtUtils-MakeMaker/t/parse_version.t See if parse_version works cpan/ExtUtils-MakeMaker/t/PL_FILES.t Test PL_FILES in MakeMaker @@ -1618,7 +1619,6 @@ cpan/libnet/t/smtp_ssl.t cpan/libnet/t/time.t libnet cpan/Locale-Codes/lib/Locale/Codes.pm Locale::Codes cpan/Locale-Codes/lib/Locale/Codes.pod Locale::Codes documentation -cpan/Locale-Codes/lib/Locale/Codes/API.pod Locale::Codes documentation cpan/Locale-Codes/lib/Locale/Codes/Changes.pod Locale::Codes documentation cpan/Locale-Codes/lib/Locale/Codes/Constants.pm Locale::Codes cpan/Locale-Codes/lib/Locale/Codes/Country.pm Locale::Codes @@ -1649,6 +1649,7 @@ cpan/Locale-Codes/lib/Locale/Codes/Script.pm Locale::Codes cpan/Locale-Codes/lib/Locale/Codes/Script.pod Locale::Codes documentation cpan/Locale-Codes/lib/Locale/Codes/Script_Codes.pm Locale::Codes cpan/Locale-Codes/lib/Locale/Codes/Script_Retired.pm Locale::Codes +cpan/Locale-Codes/lib/Locale/Codes/Types.pod Locale::Codes documentation cpan/Locale-Codes/lib/Locale/Country.pm Locale::Codes cpan/Locale-Codes/lib/Locale/Country.pod Locale::Codes documentation cpan/Locale-Codes/lib/Locale/Currency.pm Locale::Codes @@ -1657,26 +1658,33 @@ cpan/Locale-Codes/lib/Locale/Language.pm Locale::Codes cpan/Locale-Codes/lib/Locale/Language.pod Locale::Codes documentation cpan/Locale-Codes/lib/Locale/Script.pm Locale::Codes cpan/Locale-Codes/lib/Locale/Script.pod Locale::Codes documentation -cpan/Locale-Codes/t/country.t Locale::Codes tests +cpan/Locale-Codes/t/country_func.t Locale::Codes tests cpan/Locale-Codes/t/country_old.t Locale::Codes tests -cpan/Locale-Codes/t/currency.t -cpan/Locale-Codes/t/currency_old.t -cpan/Locale-Codes/t/langext.t -cpan/Locale-Codes/t/langfam.t -cpan/Locale-Codes/t/language.t Locale::Codes tests +cpan/Locale-Codes/t/country_oo.t Locale::Codes tests +cpan/Locale-Codes/t/currency_func.t Locale::Codes tests +cpan/Locale-Codes/t/currency_old.t Locale::Codes tests +cpan/Locale-Codes/t/currency_oo.t Locale::Codes tests +cpan/Locale-Codes/t/do_tests.pl Locale::Codes tests +cpan/Locale-Codes/t/langext_func.t Locale::Codes tests +cpan/Locale-Codes/t/langext_oo.t Locale::Codes tests +cpan/Locale-Codes/t/langfam_func.t Locale::Codes tests +cpan/Locale-Codes/t/langfam_oo.t Locale::Codes tests +cpan/Locale-Codes/t/language_func.t Locale::Codes tests cpan/Locale-Codes/t/language_old.t Locale::Codes tests -cpan/Locale-Codes/t/langvar.t -cpan/Locale-Codes/t/script.t -cpan/Locale-Codes/t/script_old.t +cpan/Locale-Codes/t/language_oo.t Locale::Codes tests +cpan/Locale-Codes/t/langvar_func.t Locale::Codes tests +cpan/Locale-Codes/t/langvar_oo.t Locale::Codes tests +cpan/Locale-Codes/t/script_func.t Locale::Codes tests +cpan/Locale-Codes/t/script_old.t Locale::Codes tests +cpan/Locale-Codes/t/script_oo.t Locale::Codes tests cpan/Locale-Codes/t/testfunc.pl Locale::Codes tests -cpan/Locale-Codes/t/vals.pl -cpan/Locale-Codes/t/vals_country.pl -cpan/Locale-Codes/t/vals_currency.pl -cpan/Locale-Codes/t/vals_langext.pl -cpan/Locale-Codes/t/vals_langfam.pl -cpan/Locale-Codes/t/vals_language.pl -cpan/Locale-Codes/t/vals_langvar.pl -cpan/Locale-Codes/t/vals_script.pl +cpan/Locale-Codes/t/vals_country.pl Locale::Codes tests +cpan/Locale-Codes/t/vals_currency.pl Locale::Codes tests +cpan/Locale-Codes/t/vals_langext.pl Locale::Codes tests +cpan/Locale-Codes/t/vals_langfam.pl Locale::Codes tests +cpan/Locale-Codes/t/vals_language.pl Locale::Codes tests +cpan/Locale-Codes/t/vals_langvar.pl Locale::Codes tests +cpan/Locale-Codes/t/vals_script.pl Locale::Codes tests cpan/Locale-Maketext-Simple/lib/Locale/Maketext/Simple.pm Locale::Simple cpan/Locale-Maketext-Simple/t/0-signature.t Locale::Simple tests cpan/Locale-Maketext-Simple/t/1-basic.t Locale::Simple tests @@ -3150,6 +3158,7 @@ cpan/version/t/07locale.t Tests for version objects cpan/version/t/08_corelist.t Tests for version objects cpan/version/t/09_list_util.t Tests for version objects cpan/version/t/10_lyon.t Tests for version objects +cpan/version/t/11_taint.t Tests for version objects cpan/version/t/coretests.pm Tests for version objects cpan/Win32/longpath.inc Win32 extension long path support cpan/Win32/Makefile.PL Win32 extension makefile writer @@ -3510,6 +3519,7 @@ dist/Module-CoreList/t/corelist.t Module::CoreList tests dist/Module-CoreList/t/deprecated.t Module::CoreList tests dist/Module-CoreList/t/find_modules.t Module::CoreList tests dist/Module-CoreList/t/is_core.t Module::CoreList tests +dist/Module-CoreList/t/maintainer.t Module::CoreList tests dist/Module-CoreList/t/pod.t Module::CoreList tests dist/Module-CoreList/t/utils.t Module::CoreList tests dist/Net-Ping/Changes Net::Ping @@ -3702,6 +3712,7 @@ dist/threads/t/stress_cv.t Test with multiple threads, coderef cv argument. dist/threads/t/stress_re.t Test with multiple threads, string cv argument and regexes. dist/threads/t/stress_string.t Test with multiple threads, string cv argument. dist/threads/t/thread.t General ithread tests from thr5005 +dist/threads/t/unique.t Test unique attribute with threads dist/threads/threads.xs ithreads dist/threads-shared/hints/linux.pl thread shared variables dist/threads-shared/lib/threads/shared.pm thread shared variables @@ -3949,6 +3960,7 @@ ext/File-Glob/t/basic.t See if File::Glob works ext/File-Glob/t/case.t See if File::Glob works ext/File-Glob/t/global.t See if File::Glob works ext/File-Glob/t/rt114984.t See if File::Glob works +ext/File-Glob/t/rt131211.t See if File::Glob works ext/File-Glob/t/taint.t See if File::Glob works ext/File-Glob/t/threads.t See if File::Glob + threads works ext/File-Glob/TODO File::Glob extension todo list @@ -4046,6 +4058,7 @@ ext/PerlIO-scalar/scalar.xs PerlIO layer for scalars ext/PerlIO-scalar/t/scalar.t See if PerlIO::scalar works ext/PerlIO-scalar/t/scalar_ungetc.t Tests for PerlIO layer for scalars ext/PerlIO-via/hints/aix.pl Hint for PerlIO::via for named architecture +ext/PerlIO-via/t/thread.t See if PerlIO::via works with threads ext/PerlIO-via/t/via.t See if PerlIO::via works ext/PerlIO-via/via.pm PerlIO layer for layers in perl ext/PerlIO-via/via.xs PerlIO layer for layers in perl @@ -4231,16 +4244,16 @@ ext/XS-APItest/t/gv_fetchmeth.t XS::APItest: tests for gv_fetchmeth() and varia ext/XS-APItest/t/gv_fetchmeth_autoload.t XS::APItest: tests for gv_fetchmeth_autoload() and variants ext/XS-APItest/t/gv_fetchmethod_flags.t XS::APItest: tests for gv_fetchmethod_flags() and variants ext/XS-APItest/t/gv_init.t XS::APItest: tests for gv_init and variants -ext/XS-APItest/t/handy0.t XS::APItest: tests for handy.h -ext/XS-APItest/t/handy1.t XS::APItest: tests for handy.h -ext/XS-APItest/t/handy2.t XS::APItest: tests for handy.h -ext/XS-APItest/t/handy3.t XS::APItest: tests for handy.h -ext/XS-APItest/t/handy4.t XS::APItest: tests for handy.h -ext/XS-APItest/t/handy5.t XS::APItest: tests for handy.h -ext/XS-APItest/t/handy6.t XS::APItest: tests for handy.h -ext/XS-APItest/t/handy7.t XS::APItest: tests for handy.h -ext/XS-APItest/t/handy8.t XS::APItest: tests for handy.h -ext/XS-APItest/t/handy9.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy00.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy01.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy02.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy03.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy04.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy05.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy06.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy07.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy08.t XS::APItest: tests for handy.h +ext/XS-APItest/t/handy09.t XS::APItest: tests for handy.h ext/XS-APItest/t/handy_base.pl XS::APItest: tests for handy.h ext/XS-APItest/t/hash.t XS::APItest: tests for hash related APIs ext/XS-APItest/t/join_with_space.t test op_convert_list @@ -4304,16 +4317,16 @@ ext/XS-APItest/t/utf16_to_utf8.t Test behaviour of utf16_to_utf8{,reversed} ext/XS-APItest/t/utf8.t Tests for code in utf8.c ext/XS-APItest/t/utf8_malformed.t Tests for code in utf8.c ext/XS-APItest/t/utf8_setup.pl Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn0.t Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn1.t Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn2.t Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn3.t Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn4.t Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn5.t Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn6.t Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn7.t Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn8.t Tests for code in utf8.c -ext/XS-APItest/t/utf8_warn9.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn00.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn01.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn02.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn03.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn04.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn05.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn06.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn07.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn08.t Tests for code in utf8.c +ext/XS-APItest/t/utf8_warn09.t Tests for code in utf8.c ext/XS-APItest/t/utf8_warn_base.pl Tests for code in utf8.c ext/XS-APItest/t/weaken.t XS::APItest: tests for sv_rvweaken() and sv_get_backrefs() ext/XS-APItest/t/whichsig.t XS::APItest: tests for whichsig() and variants @@ -4445,6 +4458,7 @@ hints/vos.sh Hints for named architecture hv.c Hash value code hv.h Hash value header hv_func.h Hash value static inline function header +hv_macro.h Macros used by hv_func.h inline.h Static inline functions INSTALL Detailed installation instructions install_lib.pl functions shared between install* scripts @@ -4932,19 +4946,8 @@ 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/perl5250delta.pod Perl changes in version 5.25.0 -pod/perl52510delta.pod Perl changes in version 5.25.10 -pod/perl52511delta.pod Perl changes in version 5.25.11 -pod/perl52512delta.pod Perl changes in version 5.25.12 -pod/perl5251delta.pod Perl changes in version 5.25.1 -pod/perl5252delta.pod Perl changes in version 5.25.2 -pod/perl5253delta.pod Perl changes in version 5.25.3 -pod/perl5254delta.pod Perl changes in version 5.25.4 -pod/perl5255delta.pod Perl changes in version 5.25.5 -pod/perl5256delta.pod Perl changes in version 5.25.6 -pod/perl5257delta.pod Perl changes in version 5.25.7 -pod/perl5258delta.pod Perl changes in version 5.25.8 -pod/perl5259delta.pod Perl changes in version 5.25.9 +pod/perl5260delta.pod Perl changes in version 5.26.0 +pod/perl5270delta.pod Perl changes in version 5.27.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 @@ -5208,8 +5211,10 @@ regexp.h Public declarations for the above regnodes.h Description of nodes of RE engine run.c The interpreter loop runtests.SH A script that generates runtests +sbox32_hash.h SBox hash code (32 Bit SBOX based hash function) scope.c Scope entry and exit code scope.h Scope entry and exit header +stadtx_hash.h StadtX hash code (64 Bit fast hash function) sv.c Scalar value code sv.h Scalar value header symbian/bld.inf Symbian sample app build config @@ -5272,6 +5277,7 @@ t/base/term.t See if various terms work t/base/translate.t See if character set translation works t/base/while.t See if while work t/benchmark/rt26188-speed-up-keys-on-empty-hash.t Benchmark if keys on empty hashes is fast enough +t/bigmem/hash.t Check hashing too large strings throws an exception t/bigmem/index.t Check that index() handles large offsets t/bigmem/pos.t Check that pos() handles large offsets t/bigmem/read.t Check read() handles large offsets @@ -5526,6 +5532,7 @@ t/op/blocks.t See if BEGIN and friends work t/op/bop.t See if bitops work t/op/caller.pl Tests shared between caller.t and XS op.t t/op/caller.t See if caller() works +t/op/catch.t See if catching exception works t/op/chars.t See if character escapes work t/op/chdir.t See if chdir works t/op/chop.t See if chop works @@ -5876,7 +5883,6 @@ t/uni/fold.t See if Unicode folding works t/uni/goto.t See if Unicode goto &sub works t/uni/greek.t See if Unicode in greek works t/uni/gv.t See if Unicode GVs work. -t/uni/heavy.t See if utf8_heavy.pl uses perl that depends on it t/uni/labels.t See if Unicode labels work t/uni/latin2.t See if Unicode in latin2 works t/uni/lex_utf8.t See if Unicode in lexer works @@ -6028,3 +6034,4 @@ win32/wince.h WinCE port win32/wincesck.c WinCE port write_buildcustomize.pl Generate lib/buildcustomize.pl XSUB.h Include file for extension subroutines +zaphod32_hash.h Zaphod32 hash code (32 bit fast hash function) diff --git a/META.json b/META.json index 8e5a6d2965..8b0b496f65 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.027001", "x_serialization_backend" : "JSON::PP version 2.27400_02" } diff --git a/META.yml b/META.yml index c164c52dee..a60e917fd8 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.027001' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff --git a/Makefile.SH b/Makefile.SH index 4f381087bb..66bc45fc68 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -570,7 +570,7 @@ esac $spitshell >>$Makefile <<'!NO!SUBS!' -perltoc_pod_prereqs = extra.pods pod/perl52513delta.pod pod/perlapi.pod pod/perlintern.pod pod/perlmodlib.pod pod/perluniprops.pod +perltoc_pod_prereqs = extra.pods pod/perl5271delta.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/perl52513delta.pod: pod/perldelta.pod - $(RMS) pod/perl52513delta.pod - $(LNS) perldelta.pod pod/perl52513delta.pod +pod/perl5271delta.pod: pod/perldelta.pod + $(RMS) pod/perl5271delta.pod + $(LNS) perldelta.pod pod/perl5271delta.pod extra.pods: $(MINIPERL_EXE) -@test ! -f extra.pods || rm -f `cat extra.pods` @@ -1499,8 +1499,9 @@ depend: makedepend $(DTRACE_H) $(generated_headers) test_prep_reonly test_tty test-tty test_notty test-notty \ test_harness test_harness_notty minitest test-reonly _test +# The _test target is there just for Test::Smoke, which does a make test_prep +# always before invoking this target, thus preventing checking again _test: - echo >&2 The _test target is deprecated. Please upgrade your smoker $(RUN_TESTS) choose # Cannot delegate rebuilding of t/perl to make diff --git a/NetWare/Makefile b/NetWare/Makefile index 779faeb5eb..88409eb3c6 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.1 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.1 # # 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..263c1cd04e 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.1\\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.1\\bin\\NetWare-x86-multi-thread" /**/ +#define BIN_EXP "c:\\perl\\5.27.1\\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.1\\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.1\\lib" /**/ /*#define SITELIB_EXP "" /**/ #define SITELIB_STEM "" /**/ diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl index e9032a91f3..693f2a5088 100755 --- a/Porting/Maintainers.pl +++ b/Porting/Maintainers.pl @@ -446,7 +446,7 @@ use File::Glob qw(:case); }, 'ExtUtils::Install' => { - 'DISTRIBUTION' => 'BINGOS/ExtUtils-Install-2.04.tar.gz', + 'DISTRIBUTION' => 'BINGOS/ExtUtils-Install-2.14.tar.gz', 'FILES' => q[cpan/ExtUtils-Install], 'EXCLUDED' => [ qw( t/lib/Test/Builder.pm @@ -460,7 +460,7 @@ use File::Glob qw(:case); }, 'ExtUtils::MakeMaker' => { - 'DISTRIBUTION' => 'BINGOS/ExtUtils-MakeMaker-7.24.tar.gz', + 'DISTRIBUTION' => 'BINGOS/ExtUtils-MakeMaker-7.28.tar.gz', 'FILES' => q[cpan/ExtUtils-MakeMaker], 'EXCLUDED' => [ qr{^t/lib/Test/}, @@ -684,7 +684,7 @@ use File::Glob qw(:case); }, 'Locale-Codes' => { - 'DISTRIBUTION' => 'SBECK/Locale-Codes-3.42.tar.gz', + 'DISTRIBUTION' => 'SBECK/Locale-Codes-3.52.tar.gz', 'FILES' => q[cpan/Locale-Codes], 'EXCLUDED' => [ qw( README.first @@ -802,7 +802,7 @@ use File::Glob qw(:case); }, 'Module::CoreList' => { - 'DISTRIBUTION' => 'BINGOS/Module-CoreList-5.20170420.tar.gz', + 'DISTRIBUTION' => 'BINGOS/Module-CoreList-5.20170531.tar.gz', 'FILES' => q[dist/Module-CoreList], }, @@ -1161,7 +1161,7 @@ use File::Glob qw(:case); }, 'threads' => { - 'DISTRIBUTION' => 'JDHEDDEN/threads-2.15.tar.gz', + 'DISTRIBUTION' => 'JDHEDDEN/threads-2.16.tar.gz', 'FILES' => q[dist/threads], 'EXCLUDED' => [ qr{^examples/}, @@ -1173,7 +1173,7 @@ use File::Glob qw(:case); }, 'threads::shared' => { - 'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.55.tar.gz', + 'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.57.tar.gz', 'FILES' => q[dist/threads-shared], 'EXCLUDED' => [ qw( examples/class.pl diff --git a/Porting/bench.pl b/Porting/bench.pl index efff214e7a..224e862e66 100755 --- a/Porting/bench.pl +++ b/Porting/bench.pl @@ -392,7 +392,7 @@ my %OPTS = ( 'norm=s' => \$OPTS{norm}, 'perlargs=s' => \$OPTS{perlargs}, 'raw' => \$OPTS{raw}, - 'read|r=s' => \$OPTS{read}, + 'read|r=s@' => \$OPTS{read}, 'show!' => \$OPTS{show}, 'sort=s' => \$OPTS{sort}, 'tests=s' => \$OPTS{tests}, @@ -431,7 +431,7 @@ my %OPTS = ( . "'$OPTS{sort}'\n"; } my ($field, $perl) = @s; - die "Error: --sort: unknown field '$field\n" + die "Error: --sort: unknown field '$field'\n" unless $VALID_FIELDS{$field}; # the 'perl' value will be validated later, after we have processed # the perls @@ -679,25 +679,48 @@ sub do_grind { if $bisect_min > $bisect_max; } - if ($OPTS{read}) { - open my $in, '<:encoding(UTF-8)', $OPTS{read} - or die " Error: can't open '$OPTS{read}' for reading: $!\n"; + foreach my $file (@{$OPTS{read}}) { + open my $in, '<:encoding(UTF-8)', $file + or die " Error: can't open '$file' for reading: $!\n"; my $data = do { local $/; <$in> }; close $in; my $hash = JSON::PP::decode_json($data); if (int($FORMAT_VERSION) < int($hash->{version})) { die "Error: unsupported version $hash->{version} in file" - . "'$OPTS{read}' (too new)\n"; + . "'$file' (too new)\n"; } - ($loop_counts, $perls, $results, $tests, $order) = + my ($read_loop_counts, $read_perls, $read_results, $read_tests, $read_order) = @$hash{qw(loop_counts perls results tests order)}; + filter_tests($read_results); + filter_tests($read_tests); + if (!$read_order) { + $order = [ sort keys %$read_tests ]; + } + if (!$loop_counts) { + ($loop_counts, $perls, $results, $tests, $order) = + ($read_loop_counts, $read_perls, $read_results, $read_tests, $read_order); + filter_tests($results); + filter_tests($tests); + if (!$order) { + $order = [ sort keys %$tests ]; + } + } else { + my @have_keys= sort keys %$read_tests; + my @want_keys= sort keys %$tests; + + if ("@have_keys" ne "@want_keys" or + "@$read_loop_counts" ne "@$loop_counts") + { + die "tests run aren't the same, cant merge read files"; + } - filter_tests($results); - filter_tests($tests); - - if (!$order) { - $order = [ sort keys %$tests ]; + push @$perls, @{$hash->{perls}}; + foreach my $test (keys %{$hash->{results}}) { + foreach my $perl (keys %{$hash->{results}{$test}}) { + $results->{$test}{$perl}= $hash->{results}{$test}{$perl}; + } + } } } diff --git a/Porting/checkAUTHORS.pl b/Porting/checkAUTHORS.pl index 9ee55f7724..57582d70bc 100755 --- a/Porting/checkAUTHORS.pl +++ b/Porting/checkAUTHORS.pl @@ -692,6 +692,7 @@ jpeacock\100messagesystems.com john.peacock\100havurah-software.org + jpeacock\100jpeacock-hp.doesntexist.org + jpeacock\100cpan.org + jpeacock\100rowman.com +james.schneider\100db.com jschneid\100netilla.com jpl.jpl\100gmail.com jpl\100research.att.com jql\100accessone.com jql\100jql.accessone.com jsm28\100hermes.cam.ac.uk jsm28\100cam.ac.uk diff --git a/Porting/cmpVERSION.pl b/Porting/cmpVERSION.pl index 01f77c8e82..dd21b655fe 100755 --- a/Porting/cmpVERSION.pl +++ b/Porting/cmpVERSION.pl @@ -81,6 +81,7 @@ if ($exclude_upstream) { # usually because they pull in their version from some other file. my %skip; @skip{ + 'cpan/ExtUtils-Install/t/lib/MakeMaker/Test/Setup/BFD.pm', # just a test module 'cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/BFD.pm', # just a test module 'cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/XS.pm', # just a test module 'cpan/IO-Compress/lib/File/GlobMapper.pm', # upstream needs to supply $VERSION @@ -169,6 +170,7 @@ unless (%module_diffs) { } printf "1..%d\n" => scalar keys %module_diffs if $tap; +print "#\n# Comparing against $tag_to_compare ....\n#\n" if $tap; my $count; my $diff_cmd = "git --no-pager diff $tag_to_compare "; @@ -194,9 +196,14 @@ foreach my $pm_file (sort keys %module_diffs) { print "ok $count - $pm_file\n" if $tap; } else { if ($tap) { + print "#\n# " . '-' x 75 . "\n" + . "# Version number ($pm_version) unchanged since" + . " $tag_to_compare, but contents have changed:\n#\n"; foreach (sort @{$module_diffs{$pm_file}}) { print "# $_" for `$diff_cmd $q$_$q`; } + print "# " . '-' x 75 . "\n"; + if (exists $skip_versions{$pm_file} and grep $pm_version eq $_, @{$skip_versions{$pm_file}}) { print "ok $count - SKIP $pm_file version $pm_version\n"; diff --git a/Porting/config.sh b/Porting/config.sh index d0b4f7c453..a688d454c9 100644 --- a/Porting/config.sh +++ b/Porting/config.sh @@ -39,12 +39,12 @@ alignbytes='8' ansi2knr='' aphostname='/bin/hostname' api_revision='5' -api_subversion='0' -api_version='26' -api_versionstring='5.26.0' +api_subversion='1' +api_version='27' +api_versionstring='5.27.1' 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.1/darwin-2level' +archlibexp='/tmp/mblead/lib/perl5/5.27.1/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.1/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.1' 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.1/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.1' 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.1' 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.1' +privlibexp='/tmp/mblead/lib/perl5/5.27.1' 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.1/darwin-2level' +sitearchexp='/tmp/mblead/lib/perl5/site_perl/5.27.1/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.1' 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.1' 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.1' startsh='#!/bin/sh' static_ext=' ' stdchar='char' @@ -1110,7 +1110,7 @@ stdio_stream_array='' strerror_r_proto='0' strings='/usr/include/string.h' submit='' -subversion='0' +subversion='1' sysman='/usr/share/man/man1' sysroot='' tail='' @@ -1209,8 +1209,8 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.26.0' -version_patchlevel_string='version 26 subversion 0' +version='5.27.1' +version_patchlevel_string='version 27 subversion 1' versiononly='define' vi='' xlibpth='/usr/lib/386 /lib/386' @@ -1219,10 +1219,10 @@ yaccflags='' zcat='' zip='zip' PERL_REVISION=5 -PERL_VERSION=26 -PERL_SUBVERSION=0 +PERL_VERSION=27 +PERL_SUBVERSION=1 PERL_API_REVISION=5 -PERL_API_VERSION=26 -PERL_API_SUBVERSION=0 +PERL_API_VERSION=27 +PERL_API_SUBVERSION=1 PERL_PATCHLEVEL='' PERL_CONFIG_SH=true diff --git a/Porting/config_H b/Porting/config_H index 00197663e0..9d2c4beaa9 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.1/i686-linux-64int-ld" /**/ +#define ARCHLIB_EXP "/pro/lib/perl5/5.27.1/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.1" /**/ +#define PRIVLIB_EXP "/pro/lib/perl5/5.27.1" /**/ /* 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.1/i686-linux-64int-ld" /**/ +#define SITEARCH_EXP "/pro/lib/perl5/site_perl/5.27.1/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.1" /**/ +#define SITELIB_EXP "/pro/lib/perl5/site_perl/5.27.1" /**/ #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.1" /**/ /* HAS_STDIO_STREAM_ARRAY: * This symbol, if defined, tells that there is an array diff --git a/Porting/deparse-skips.txt b/Porting/deparse-skips.txt index efac18fb0b..130fcaaff2 100644 --- a/Porting/deparse-skips.txt +++ b/Porting/deparse-skips.txt @@ -31,31 +31,79 @@ __DEPARSE_FAILURES__ -../cpan/Scalar-List-Utils/t/proto.t -../cpan/Term-ANSIColor/t/taint/basic.t -../cpan/autodie/t/internal.t -../cpan/AutoLoader/t/01AutoLoader.t -../cpan/CGI/t/utf8.t -../cpan/ExtUtils-MakeMaker/t/xs.t -../cpan/File-Path/t/taint.t -../cpan/Module-Build/t/manifypods_with_utf8.t -../cpan/Socket/t/sockaddr.t -../cpan/Term-ANSIColor/t/taint.t -../cpan/Test-Simple/t/Builder/carp.t -../cpan/Test-Simple/t/fail-more.t -../cpan/Test-Simple/t/is_deeply_fail.t -../cpan/Test-Simple/t/plan.t -../cpan/Test-Simple/t/plan_bad.t -../cpan/Test-Simple/t/subtest/line_numbers.t -../cpan/Test-Simple/t/subtest/predicate.t -../cpan/autodie/t/00-load.t +base/lex.t # checks regexp stringification +comp/final_line_num.t # tests syntax error after BEGIN block +comp/fold.t # mutability of folded constants +comp/parser.t # crazy #line directives ==> shell syntax errors +mro/basic_01_c3_utf8.t +mro/basic_01_dfs_utf8.t +mro/complex_c3_utf8.t +mro/isarev.t +mro/isarev_utf8.t +op/attrhand.t # Custom attrs ignored; also AH provides none +op/caller.t +op/each.t # utf8ness of deparsed strings +op/goto.t +op/gv.t # glob copy constants +op/hexfp.t +op/index.t +op/join.t # mutability of folded constants +op/length.t # utf8ness of deparsed strings +op/lexsub.t +op/local.t +op/lvref.t +op/not.t +op/overload_integer.t +op/override.t +op/pack.t +op/postfixderef.t +op/range.t +op/readline.t +op/srand.t +op/sub_lval.t +op/sub.t +op/switch.t +op/symbolcache.t +op/taint.t +op/vec.t +op/warn.t +op/write.t +porting/globvar.t +re/overload.t # [perl #123385] %^H output +re/pat_advanced.t # [perl #123417] +re/pat_rt_report.t # malformed utf8 constant; also /\c@/ -> /\c\@/ +re/pat.t # [perl #90590] +re/regexp_unicode_prop.t +re/regex_sets.t +re/reg_fold.t # [perl #123385] %^H output +re/rxcode.t # checks regexp stringification +re/subst.t +run/switchd-78586.t # -I on #! line is not deparsed +run/switchI.t # -I on #! line is not deparsed +uni/attrs.t +uni/bless.t +uni/gv.t +uni/labels.t +uni/lex_utf8.t +uni/method.t +uni/package.t +uni/parser.t +uni/readline.t +uni/select.t +uni/stash.t +uni/tie.t +uni/universal.t +uni/variables.t +../cpan/Archive-Tar/t/03_file.t # constant sub ref: FOO->() ../cpan/autodie/t/autodie.t +../cpan/autodie/t/basic_exceptions.t +../cpan/autodie/t/binmode.t ../cpan/autodie/t/blog_hints.t ../cpan/autodie/t/caller.t ../cpan/autodie/t/chmod.t ../cpan/autodie/t/chown.t -../cpan/autodie/t/context.t ../cpan/autodie/t/context_lexical.t +../cpan/autodie/t/context.t ../cpan/autodie/t/crickey.t ../cpan/autodie/t/dbmopen.t ../cpan/autodie/t/eval_error.t @@ -63,80 +111,86 @@ __DEPARSE_FAILURES__ ../cpan/autodie/t/exceptions.t ../cpan/autodie/t/exec.t ../cpan/autodie/t/filehandles.t -../cpan/autodie/t/hints.t +../cpan/autodie/t/fileno.t ../cpan/autodie/t/hints_insist.t ../cpan/autodie/t/hints_pod_examples.t ../cpan/autodie/t/hints_provider_does.t ../cpan/autodie/t/hints_provider_easy_does_it.t ../cpan/autodie/t/hints_provider_isa.t +../cpan/autodie/t/hints.t +../cpan/autodie/t/internal.t ../cpan/autodie/t/kill.t ../cpan/autodie/t/lethal.t +../cpan/autodie/t/mkdir.t ../cpan/autodie/t/open.t +../cpan/autodie/t/read.t ../cpan/autodie/t/recv.t ../cpan/autodie/t/repeat.t ../cpan/autodie/t/scope_leak.t ../cpan/autodie/t/sysopen.t +../cpan/autodie/t/truncate.t +../cpan/autodie/t/unlink.t ../cpan/autodie/t/user-context.t ../cpan/autodie/t/usersub.t ../cpan/autodie/t/utf8_open.t ../cpan/autodie/t/utime.t ../cpan/autodie/t/version_tag.t -../cpan/podlators/t/basic.t +../cpan/AutoLoader/t/01AutoLoader.t +../cpan/bignum/t/big_e_pi.t +../cpan/bignum/t/bigexp.t +../cpan/bignum/t/bigint.t +../cpan/bignum/t/bignum.t +../cpan/bignum/t/bigrat.t +../cpan/bignum/t/bii_e_pi.t +../cpan/bignum/t/biinfnan.t +../cpan/bignum/t/bir_e_pi.t +../cpan/bignum/t/bninfnan.t +../cpan/bignum/t/brinfnan.t +../cpan/bignum/t/in_effect.t +../cpan/bignum/t/option_a.t +../cpan/bignum/t/option_l.t +../cpan/bignum/t/option_p.t +../cpan/bignum/t/overrides.t +../cpan/bignum/t/ratopt_a.t +../cpan/bignum/t/scope_f.t +../cpan/bignum/t/scope_i.t +../cpan/bignum/t/scope_r.t +../cpan/Math-BigInt/t/constant.t +../cpan/Math-BigInt/t/const_mbf.t +../cpan/Module-Metadata/t/metadata.t +../cpan/Scalar-List-Utils/t/subname.t +../cpan/Scalar-List-Utils/t/uniq.t +../cpan/Socket/t/sockaddr.t +../cpan/Term-Cap/test.pl +../cpan/Test-Simple/t/Legacy/Builder/carp.t +../cpan/Test-Simple/t/Legacy/fail-more.t +../cpan/Test-Simple/t/Legacy/is_deeply_fail.t +../cpan/Test-Simple/t/Legacy/plan_bad.t +../cpan/Test-Simple/t/Legacy/plan.t +../cpan/Test-Simple/t/Legacy/subtest/line_numbers.t +../cpan/Test-Simple/t/Legacy/subtest/predicate.t +../cpan/Test-Simple/t/regression/684-nested_todo_diag.t +../cpan/Test-Simple/t/Test2/behavior/run_subtest_inherit.t ../dist/Attribute-Handlers/t/constants.t ../dist/Attribute-Handlers/t/data_convert.t ../dist/Attribute-Handlers/t/linerep.t ../dist/Attribute-Handlers/t/multi.t ../dist/Carp/t/Carp.t +../dist/constant/t/constant.t ../dist/Data-Dumper/t/dumper.t +../dist/Data-Dumper/t/trailing_comma.t ../dist/Exporter/t/Exporter.t ../dist/Filter-Simple/t/data.t -../dist/IO/t/io_file_export.t -../dist/IO/t/io_multihomed.t ../dist/IO/t/io_sel.t -../dist/IO/t/io_udp.t -../dist/Locale-Maketext/t/01_about_verbose.t -../dist/Locale-Maketext/t/10_make.t -../dist/Locale-Maketext/t/20_get.t -../dist/Locale-Maketext/t/40_super.t -../dist/Locale-Maketext/t/50_super.t -../dist/Locale-Maketext/t/60_super.t -../dist/Locale-Maketext/t/70_fail_auto.t -../dist/Locale-Maketext/t/91_backslash.t -../dist/Math-BigInt/t/const_mbf.t -../dist/Math-BigInt/t/constant.t ../dist/PathTools/t/cwd.t ../dist/Storable/t/blessed.t ../dist/Storable/t/croak.t -../dist/Thread-Queue/t/08_nothreads.t -../dist/bignum/t/big_e_pi.t -../dist/bignum/t/bigexp.t -../dist/bignum/t/bigint.t -../dist/bignum/t/bignum.t -../dist/bignum/t/bigrat.t -../dist/bignum/t/bii_e_pi.t -../dist/bignum/t/bir_e_pi.t -../dist/bignum/t/in_effect.t -../dist/bignum/t/option_a.t -../dist/bignum/t/option_l.t -../dist/bignum/t/option_p.t -../dist/bignum/t/overrides.t -../dist/bignum/t/ratopt_a.t -../dist/bignum/t/scope_f.t -../dist/bignum/t/scope_i.t -../dist/bignum/t/scope_r.t -../dist/constant/t/constant.t -../dist/threads/t/err.t -../dist/threads/t/exit.t -../dist/threads/t/kill2.t -../dist/threads/t/libc.t -../dist/threads/t/thread.t +../dist/threads/t/blocks.t ../ext/B/t/b.t ../ext/B/t/optree_constants.t ../ext/B/t/optree_samples.t ../ext/B/t/xref.t ../ext/Devel-Peek/t/Peek.t -../ext/File-Glob/t/taint.t -../ext/Hash-Util/t/Util.t ../ext/IPC-Open3/t/IPC-Open2.t ../ext/IPC-Open3/t/IPC-Open3.t ../ext/XS-APItest/t/autoload.t @@ -145,70 +199,13 @@ __DEPARSE_FAILURES__ ../ext/XS-APItest/t/cleanup.t ../ext/XS-APItest/t/fetch_pad_names.t ../ext/XS-APItest/t/svpeek.t -../lib/DB.t -../lib/English.t -../lib/File/Basename.t +../ext/XS-APItest/t/synthetic_scope.t +../lib/Benchmark.t ../lib/charnames.t +../lib/dumpvar.t +../lib/English.t ../lib/overload.t -base/lex.t # checks regexp stringification -comp/final_line_num.t # tests syntax error after BEGIN block -comp/fold.t # mutability of folded constants -comp/parser.t # crazy #line directives ==> shell syntax errors -mro/isarev.t -mro/isarev_utf8.t -op/attrhand.t # Custom attrs ignored; also AH provides none -op/attrs.t # [perl #70205] my attrs -op/caller.t -op/each.t # utf8ness of deparsed strings -op/getpid.t # [perl #70205] my attrs -op/goto.t -op/gv.t # glob copy constants -op/index.t -op/join.t # mutability of folded constants -op/length.t # utf8ness of deparsed strings -op/lexsub.t -op/local.t -op/not.t -op/overload_integer.t -op/override.t -op/pack.t -op/postfixderef.t -op/range.t -op/readline.t -op/srand.t -op/sub.t -op/sub_lval.t -op/switch.t -op/symbolcache.t -op/taint.t -op/vec.t -op/warn.t -op/write.t -porting/globvar.t -re/overload.t # [perl #123385] %^H output -re/pat.t # [perl #90590] -re/pat_advanced.t # [perl #123417] -re/pat_rt_report.t # malformed utf8 constant; also /\c@/ -> /\c\@/ -re/reg_fold.t # [perl #123385] %^H output -re/regex_sets.t -re/regexp_unicode_prop.t -re/rxcode.t # checks regexp stringification -re/subst.t -run/switchI.t # -I on #! line is not deparsed -run/switchd-78586.t # -I on #! line is not deparsed -uni/attrs.t -uni/bless.t -uni/gv.t -uni/labels.t -uni/lex_utf8.t -uni/method.t -uni/package.t -uni/parser.t -uni/readline.t -uni/select.t -uni/stash.t -uni/tie.t -uni/universal.t + __DEPARSE_SKIPS__ diff --git a/Porting/epigraphs.pod b/Porting/epigraphs.pod index 8baa6ab090..5c11425e8e 100644 --- a/Porting/epigraphs.pod +++ b/Porting/epigraphs.pod @@ -17,6 +17,46 @@ Consult your favorite dictionary for details. =head1 EPIGRAPHS +Announced on 2017-05-31 by Sawyer X + + People who have theories as to how one should live tend to forget the + limitations of nature. If your way of life involves constant + restraint of impulse for the sake of some one supreme aim that you + have set yourself, it is likely that the aim will become increasingly + distasteful because of the efforts that it demands; impulse, denied + its normal outlets, will find others, probably in spite; pleasure, if + you allow yourself any at all, will be dissociated from the main + current of your life, and will become Bacchic and frivolous. Such + pleasure brings no happiness, but only a deeper despair. + + -- Bertrand Russell, The Road to Happiness + +=head2 v5.26.0 - Nine Simone, Ain't Got No / I Got Life + +L<Announced on 2017-05-30 by Sawyer X|http://www.nntp.perl.org/group/perl.perl5.porters/2017/05/msg244573.html> + + 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> + + Amateur psychiatric prognosis can be fascinating when there is + absolutely nothing else to do. + +=head2 v5.26.0-RC1 - Thomas Paine, Common Sense + +L<Announced on 2017-05-11 by Sawyer X|http://www.nntp.perl.org/group/perl.perl5.porters/2017/05/msg244337.html> + + A long habit of not thinking a thing WRONG, gives it a superficial + appearance of being RIGHT, and raises at first a formidable outcry in + defense of custom. But the tumult soon subsides. Time makes more + converts than reason. + =head2 v5.25.12 - Kurt Vonnegut, Slaughterhouse-Five L<Announced on 2017-04-20 by Sawyer X|http://www.nntp.perl.org/group/perl.perl5.porters/2017/04/msg244146.html> diff --git a/Porting/perldelta_template.pod b/Porting/perldelta_template.pod index 1428f10f19..c84f324365 100644 --- a/Porting/perldelta_template.pod +++ b/Porting/perldelta_template.pod @@ -396,6 +396,15 @@ inappropriate to send to a publicly archived mailing list, then see L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION> for details of how to report the issue. +=head1 Give Thanks + +If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, +you can do so by running the C<perlthanks> program: + + perlthanks + +This will send an email to the Perl 5 Porters list with your show of thanks. + =head1 SEE ALSO The F<Changes> file for an explanation of how to view exhaustive details on diff --git a/Porting/release_managers_guide.pod b/Porting/release_managers_guide.pod index 5c9bf4995f..9f8004c7e0 100644 --- a/Porting/release_managers_guide.pod +++ b/Porting/release_managers_guide.pod @@ -1040,6 +1040,11 @@ Bootstrap the CPAN client on the clean install: =head4 Install the Inline module with CPAN and test it +If you're using C<local::lib>, you should reset your environment before +performing these actions: + + $ unset PERL5LIB PERL_MB_OPT PERL_LOCAL_LIB_ROOT PERL_MM_OPT + Try installing a popular CPAN module that's reasonably complex and that has dependencies; for example: @@ -1413,7 +1418,7 @@ Thanks for releasing perl! =head2 Building a release - the day after -=for checklist skip BLEAD-FINAL, MAINT, RC +=for checklist skip BLEAD-FINAL MAINT RC =head3 update Module::CoreList diff --git a/Porting/release_schedule.pod b/Porting/release_schedule.pod index b557ff842d..656b137ea5 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 @@ -51,23 +53,21 @@ When shipping a release, you should include the schedule for (at least) the next four releases. If a stable version of Perl is released, you should reset the version numbers to the next blead series. -=head2 Perl 5.25 - - 2016-04-08 5.25.0 â Ricardo Signes - 2016-05-20 5.25.1 â Sawyer X - 2016-06-20 5.25.2 â Matthew Horsfall - 2016-07-20 5.25.3 â Steve Hay - 2016-08-20 5.25.4 â BinGOs - 2016-09-20 5.25.5 â Stevan Little - 2016-10-20 5.25.6 â Aaron Crane - 2016-11-20 5.25.7 â Chad Granum - 2016-12-20 5.25.8 â Sawyer X - 2017-01-20 5.25.9 â Abigail - 2017-02-20 5.25.10 â Renée Bäcker - 2017-03-20 5.25.11 â Sawyer X - 2017-04-20 5.25.12 â Sawyer X - -(RC0 for 5.26.0 will be released once we think that all the blockers have been +=head2 Perl 5.27 + + 2017-05-31 5.27.0 â Sawyer X + 2017-06-20 5.27.1 Eric Herman + 2017-07-20 5.27.2 Aaron Crane + 2017-08-20 5.27.3 Matthew Horsfall + 2017-09-20 5.27.4 John Anderson + 2017-10-20 5.27.5 Steve Hay + 2017-11-20 5.27.6 Karen Etheridge + 2017-12-20 5.27.7 BinGOs + 2018-01-20 5.27.8 Abigail + 2018-02-20 5.27.9 ? + 2018-03-20 5.27.10 ? + +(RC0 for 5.28.0 will be released once we think that all the blockers have been addressed. This typically means some time in April or May.) =head1 VICTIMS diff --git a/README.haiku b/README.haiku index 3f148a4f19..46407e3765 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.1/BePC-haiku/CORE/libperl.so . -Replace C<5.26.0> with your respective version of Perl. +Replace C<5.27.1> with your respective version of Perl. =head1 KNOWN PROBLEMS diff --git a/README.macosx b/README.macosx index c5faf042ea..89893064a2 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.1.tar.gz + tar -xzf perl-5.27.1.tar.gz + cd perl-5.27.1 ./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.1 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..afe0d08145 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.1/ 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.synology b/README.synology index 6a02027164..b1b9d8811c 100644 --- a/README.synology +++ b/README.synology @@ -23,11 +23,11 @@ L<Synology FAQ|http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my Since it is based on Linux, the NAS can run many popular Linux software packages, including Perl. In fact, Synology provides a ready-to-install package for Perl, depending on the version of DSM -the installed perl ranges from 5.8.6 on DSM-4.3 to 5.18.4 on DSM-6.0.1. +the installed perl ranges from 5.8.6 on DSM-4.3 to 5.24.0 on DSM-6.1. There is an active user community that provides many software packages for the Synology DSM systems; at the time of writing this document -they provide Perl version 5.18.4. +they provide Perl version 5.24.1. This document describes various features of Synology DSM operating system that will affect how Perl 5 (hereafter just Perl) is @@ -138,11 +138,13 @@ for DSM 6: entware/opkg. For instructions on how to use that, please read L<Install Entware-ng on Synology NAS|https://github.com/Entware-ng/Entware-ng/wiki/Install-on-Synology-NAS> That sadly does not (yet) work on QorIQ. At the moment of writing, the -supported architectures are armv5, armv7, mipsel, x86_32 and x86_64. +supported architectures are armv5, armv7, mipsel, wl500g, x86_32, and x86_64. +Check L<here|http://pkg.entware.net/binaries/> for supported platforms. -Entware-ng comes with a precompiled 5.22.1 (June 2016) that allowes +Entware-ng comes with a precompiled 5.24.1 (June 2017) that allowes building shared XS code. Note that this installation does B<not> use -a site_perl folder. +a site_perl folder. The available C<cpan> works. If all required +development packages are installed too, also for XS. =head2 Compiling Perl 5 @@ -265,7 +267,7 @@ the programs are run. =head1 REVISION -June 2016, for Synology DSM 5.1.5022 and DSM 6.0.1-7393. +June 2017, for Synology DSM 5.1.5022 and DSM 6.1-15101-4. =head1 AUTHOR diff --git a/README.vms b/README.vms index 714bbaf91e..cb0eb57c1b 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^.1.tar Then set default to the top-level source directory like so: - set default [.perl-5^.26^.0] + set default [.perl-5^.27^.1] 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/XSUB.h b/XSUB.h index e74abae26f..cff8204940 100644 --- a/XSUB.h +++ b/XSUB.h @@ -8,8 +8,8 @@ * */ -#ifndef _INC_PERL_XSUB_H -#define _INC_PERL_XSUB_H 1 +#ifndef PERL_XSUB_H_ +#define PERL_XSUB_H_ 1 /* first, some documentation for xsubpp-generated items */ @@ -119,7 +119,7 @@ is a lexical C<$_> in scope. * "STATIC", ie. it exports XSUB symbols. You probably don't want that. */ -#define XSPROTO(name) void name(pTHX_ CV* cv) +#define XSPROTO(name) void name(pTHX_ CV* cv __attribute__unused__) #undef XS #undef XS_EXTERNAL @@ -703,7 +703,7 @@ Rethrows a previously caught exception. See L<perlguts/"Exception Handling">. # endif /* NO_XSLOCKS */ #endif /* PERL_IMPLICIT_SYS && !PERL_CORE */ -#endif /* _INC_PERL_XSUB_H */ /* include guard */ +#endif /* PERL_XSUB_H_ */ /* include guard */ /* * ex: set ts=8 sts=4 sw=4 et: diff --git a/av.c b/av.c index 5afae8d424..cf3386c92c 100644 --- a/av.c +++ b/av.c @@ -542,7 +542,7 @@ void Perl_av_undef(pTHX_ AV *av) { bool real; - SSize_t orig_ix; + SSize_t orig_ix = PL_tmps_ix; /* silence bogus warning about possible unitialized use */ PERL_ARGS_ASSERT_AV_UNDEF; assert(SvTYPE(av) == SVt_PVAV); @@ -551,7 +551,8 @@ Perl_av_undef(pTHX_ AV *av) if (SvTIED_mg((const SV *)av, PERL_MAGIC_tied)) av_fill(av, -1); - if ((real = cBOOL(AvREAL(av)))) { + real = cBOOL(AvREAL(av)); + if (real) { SSize_t key = AvFILLp(av) + 1; /* avoid av being freed when calling destructors below */ diff --git a/charclass_invlists.h b/charclass_invlists.h index 7b5b7eae1c..4b3d6cc363 100644 --- a/charclass_invlists.h +++ b/charclass_invlists.h @@ -95407,7 +95407,7 @@ static const U8 WB_table[24][24] = { * 37f6186253da9824bdb27f4ad867bfe8c25d4dc6bdb2f05585e40a034675a348 lib/unicore/extracted/DLineBreak.txt * ef24061b5a5dc93d7e90c2e34530ec757180ee75d872cba65ffc946e52624ae8 lib/unicore/extracted/DNumType.txt * a197371fec9a1b517058b440841f60f9378d81682084eef8db22a88cb2f96e90 lib/unicore/extracted/DNumValues.txt - * 79a7216aceb1d291f2857085545fdda289518bc540a09bc0a15cde105d76028d lib/unicore/mktables + * 717985d5fe0830f5b72ca21287a7d9f15ba6a383c29fbd3c47231d5f63edb68b lib/unicore/mktables * cdecb300baad839a6f62791229f551a4fa33f3cbdca08e378dc976466354e778 lib/unicore/version * 913d2f93f3cb6cdf1664db888bf840bc4eb074eef824e082fceda24a9445e60c regen/charset_translations.pl * 9534d0cc3914fa1f5d574332c3199605c3d14f8691a0729d68d8498ac2b36280 regen/mk_invlists.pl diff --git a/cpan/ExtUtils-Install/lib/ExtUtils/Install.pm b/cpan/ExtUtils-Install/lib/ExtUtils/Install.pm index 1e8ac4cd12..047c007145 100644 --- a/cpan/ExtUtils-Install/lib/ExtUtils/Install.pm +++ b/cpan/ExtUtils-Install/lib/ExtUtils/Install.pm @@ -1,24 +1,18 @@ package ExtUtils::Install; **** PATCH TRUNCATED AT 2000 LINES -- 119964 NOT SHOWN **** -- Perl5 Master Repository
