diff options
Diffstat (limited to 'Master/tlpkg/tlperl/lib/Module')
-rw-r--r-- | Master/tlpkg/tlperl/lib/Module/CoreList.pm | 962 | ||||
-rw-r--r-- | Master/tlpkg/tlperl/lib/Module/CoreList/TieHashDelta.pm | 2 | ||||
-rwxr-xr-x | Master/tlpkg/tlperl/lib/Module/CoreList/Utils.pm | 111 | ||||
-rw-r--r-- | Master/tlpkg/tlperl/lib/Module/Load/Conditional.pm | 18 | ||||
-rw-r--r-- | Master/tlpkg/tlperl/lib/Module/Metadata.pm | 59 |
5 files changed, 1098 insertions, 54 deletions
diff --git a/Master/tlpkg/tlperl/lib/Module/CoreList.pm b/Master/tlpkg/tlperl/lib/Module/CoreList.pm index 6cbf8d054bf..624a8c899f0 100644 --- a/Master/tlpkg/tlperl/lib/Module/CoreList.pm +++ b/Master/tlpkg/tlperl/lib/Module/CoreList.pm @@ -2,9 +2,21 @@ package Module::CoreList; use strict; use vars qw/$VERSION %released %version %families %upstream %bug_tracker %deprecated %delta/; -use Module::CoreList::TieHashDelta; use version; -$VERSION = '5.20170114_24'; +$VERSION = '5.20170922_26'; + +sub _undelta { + my ($delta) = @_; + my (%expanded, $delta_from, $base, $changed, $removed); + for my $v (sort keys %$delta) { + ($delta_from, $changed, $removed) = @{$delta->{$v}}{qw( delta_from changed removed )}; + $base = $delta_from ? $expanded{$delta_from} : {}; + my %full = ( %$base, %{$changed || {}} ); + delete @full{ keys %$removed }; + $expanded{$v} = \%full; + } + return %expanded; +} sub _released_order { # Sort helper, to make '?' sort after everything else (substr($released{$a}, 0, 1) eq "?") @@ -302,7 +314,21 @@ sub changes_between { 5.025006 => '2016-10-20', 5.025007 => '2016-11-20', 5.025008 => '2016-12-20', + 5.022003 => '2017-01-14', 5.024001 => '2017-01-14', + 5.025009 => '2017-01-20', + 5.025010 => '2017-02-20', + 5.025011 => '2017-03-20', + 5.025012 => '2017-04-20', + 5.026000 => '2017-05-30', + 5.027000 => '2017-05-31', + 5.027001 => '2017-06-20', + 5.022004 => '2017-07-15', + 5.024002 => '2017-07-15', + 5.027002 => '2017-07-20', + 5.027003 => '2017-08-21', + 5.027004 => '2017-09-20', + 5.026001 => '2017-09-22', ); for my $version ( sort { $a <=> $b } keys %released ) { @@ -12974,7 +13000,7 @@ for my $version ( sort { $a <=> $b } keys %released ) { 'Sys::Syslog' => '0.34_01', 'TAP::Base' => '3.36_01', 'TAP::Formatter::Base' => '3.36_01', - 'TAP::Formatter::Color' => '3.36_01', + 'TAP::Formatter::Color' => '3.36_01', 'TAP::Formatter::Console'=> '3.36_01', 'TAP::Formatter::Console::ParallelSession'=> '3.36_01', 'TAP::Formatter::Console::Session'=> '3.36_01', @@ -13520,6 +13546,174 @@ for my $version ( sort { $a <=> $b } keys %released ) { removed => { } }, + 5.022003 => { + delta_from => 5.022002, + changed => { + 'App::Cpan' => '1.63_01', + 'App::Prove' => '3.35_01', + 'App::Prove::State' => '3.35_01', + 'App::Prove::State::Result'=> '3.35_01', + 'App::Prove::State::Result::Test'=> '3.35_01', + 'Archive::Tar' => '2.04_01', + 'Archive::Tar::Constant'=> '2.04_01', + 'Archive::Tar::File' => '2.04_01', + 'B::Op_private' => '5.022003', + 'CPAN' => '2.11_01', + 'Compress::Zlib' => '2.068_001', + 'Config' => '5.022003', + 'Cwd' => '3.56_02', + 'Digest' => '1.17_01', + 'Digest::SHA' => '5.95_01', + 'Encode' => '2.72_01', + 'ExtUtils::Command' => '1.20_01', + 'ExtUtils::Command::MM' => '7.04_02', + 'ExtUtils::Liblist' => '7.04_02', + 'ExtUtils::Liblist::Kid'=> '7.04_02', + 'ExtUtils::MM' => '7.04_02', + 'ExtUtils::MM_AIX' => '7.04_02', + 'ExtUtils::MM_Any' => '7.04_02', + 'ExtUtils::MM_BeOS' => '7.04_02', + 'ExtUtils::MM_Cygwin' => '7.04_02', + 'ExtUtils::MM_DOS' => '7.04_02', + 'ExtUtils::MM_Darwin' => '7.04_02', + 'ExtUtils::MM_MacOS' => '7.04_02', + 'ExtUtils::MM_NW5' => '7.04_02', + 'ExtUtils::MM_OS2' => '7.04_02', + 'ExtUtils::MM_QNX' => '7.04_02', + 'ExtUtils::MM_UWIN' => '7.04_02', + 'ExtUtils::MM_Unix' => '7.04_02', + 'ExtUtils::MM_VMS' => '7.04_02', + 'ExtUtils::MM_VOS' => '7.04_02', + 'ExtUtils::MM_Win32' => '7.04_02', + 'ExtUtils::MM_Win95' => '7.04_02', + 'ExtUtils::MY' => '7.04_02', + 'ExtUtils::MakeMaker' => '7.04_02', + 'ExtUtils::MakeMaker::Config'=> '7.04_02', + 'ExtUtils::Mkbootstrap' => '7.04_02', + 'ExtUtils::Mksymlists' => '7.04_02', + 'ExtUtils::testlib' => '7.04_02', + 'File::Fetch' => '0.48_01', + 'File::Spec' => '3.56_02', + 'File::Spec::Cygwin' => '3.56_02', + 'File::Spec::Epoc' => '3.56_02', + 'File::Spec::Functions' => '3.56_02', + 'File::Spec::Mac' => '3.56_02', + 'File::Spec::OS2' => '3.56_02', + 'File::Spec::Unix' => '3.56_02', + 'File::Spec::VMS' => '3.56_02', + 'File::Spec::Win32' => '3.56_02', + 'HTTP::Tiny' => '0.054_01', + 'I18N::LangTags::Detect'=> '1.05_01', + 'IO' => '1.35_01', + 'IO::Compress::Adapter::Bzip2'=> '2.068_001', + 'IO::Compress::Adapter::Deflate'=> '2.068_001', + 'IO::Compress::Adapter::Identity'=> '2.068_001', + 'IO::Compress::Base' => '2.068_001', + 'IO::Compress::Base::Common'=> '2.068_001', + 'IO::Compress::Bzip2' => '2.068_001', + 'IO::Compress::Deflate' => '2.068_001', + 'IO::Compress::Gzip' => '2.068_001', + 'IO::Compress::Gzip::Constants'=> '2.068_001', + 'IO::Compress::RawDeflate'=> '2.068_001', + 'IO::Compress::Zip' => '2.068_001', + 'IO::Compress::Zip::Constants'=> '2.068_001', + 'IO::Compress::Zlib::Constants'=> '2.068_001', + 'IO::Compress::Zlib::Extra'=> '2.068_001', + 'IO::Uncompress::Adapter::Bunzip2'=> '2.068_001', + 'IO::Uncompress::Adapter::Identity'=> '2.068_001', + 'IO::Uncompress::Adapter::Inflate'=> '2.068_001', + 'IO::Uncompress::AnyInflate'=> '2.068_001', + 'IO::Uncompress::AnyUncompress'=> '2.068_001', + 'IO::Uncompress::Base' => '2.068_001', + 'IO::Uncompress::Bunzip2'=> '2.068_001', + 'IO::Uncompress::Gunzip'=> '2.068_001', + 'IO::Uncompress::Inflate'=> '2.068_001', + 'IO::Uncompress::RawInflate'=> '2.068_001', + 'IO::Uncompress::Unzip' => '2.068_001', + 'IPC::Cmd' => '0.92_01', + 'JSON::PP' => '2.27300_01', + 'Locale::Maketext' => '1.26_01', + 'Locale::Maketext::Simple'=> '0.21_01', + 'Memoize' => '1.03_01', + 'Module::CoreList' => '5.20170114_22', + 'Module::CoreList::TieHashDelta'=> '5.20170114_22', + 'Module::CoreList::Utils'=> '5.20170114_22', + 'Module::Metadata::corpus::BOMTest::UTF16BE'=> undef, + 'Module::Metadata::corpus::BOMTest::UTF16LE'=> undef, + 'Module::Metadata::corpus::BOMTest::UTF8'=> '1', + 'Net::Cmd' => '3.05_01', + 'Net::Config' => '3.05_01', + 'Net::Domain' => '3.05_01', + 'Net::FTP' => '3.05_01', + 'Net::FTP::A' => '3.05_01', + 'Net::FTP::E' => '3.05_01', + 'Net::FTP::I' => '3.05_01', + 'Net::FTP::L' => '3.05_01', + 'Net::FTP::dataconn' => '3.05_01', + 'Net::NNTP' => '3.05_01', + 'Net::Netrc' => '3.05_01', + 'Net::POP3' => '3.05_01', + 'Net::Ping' => '2.43_01', + 'Net::SMTP' => '3.05_01', + 'Net::Time' => '3.05_01', + 'Parse::CPAN::Meta' => '1.4414_001', + 'Pod::Html' => '1.2201', + 'Pod::Perldoc' => '3.25_01', + 'Storable' => '2.53_02', + 'Sys::Syslog' => '0.33_01', + 'TAP::Base' => '3.35_01', + 'TAP::Formatter::Base' => '3.35_01', + 'TAP::Formatter::Color' => '3.35_01', + 'TAP::Formatter::Console'=> '3.35_01', + 'TAP::Formatter::Console::ParallelSession'=> '3.35_01', + 'TAP::Formatter::Console::Session'=> '3.35_01', + 'TAP::Formatter::File' => '3.35_01', + 'TAP::Formatter::File::Session'=> '3.35_01', + 'TAP::Formatter::Session'=> '3.35_01', + 'TAP::Harness' => '3.35_01', + 'TAP::Harness::Env' => '3.35_01', + 'TAP::Object' => '3.35_01', + 'TAP::Parser' => '3.35_01', + 'TAP::Parser::Aggregator'=> '3.35_01', + 'TAP::Parser::Grammar' => '3.35_01', + 'TAP::Parser::Iterator' => '3.35_01', + 'TAP::Parser::Iterator::Array'=> '3.35_01', + 'TAP::Parser::Iterator::Process'=> '3.35_01', + 'TAP::Parser::Iterator::Stream'=> '3.35_01', + 'TAP::Parser::IteratorFactory'=> '3.35_01', + 'TAP::Parser::Multiplexer'=> '3.35_01', + 'TAP::Parser::Result' => '3.35_01', + 'TAP::Parser::Result::Bailout'=> '3.35_01', + 'TAP::Parser::Result::Comment'=> '3.35_01', + 'TAP::Parser::Result::Plan'=> '3.35_01', + 'TAP::Parser::Result::Pragma'=> '3.35_01', + 'TAP::Parser::Result::Test'=> '3.35_01', + 'TAP::Parser::Result::Unknown'=> '3.35_01', + 'TAP::Parser::Result::Version'=> '3.35_01', + 'TAP::Parser::Result::YAML'=> '3.35_01', + 'TAP::Parser::ResultFactory'=> '3.35_01', + 'TAP::Parser::Scheduler'=> '3.35_01', + 'TAP::Parser::Scheduler::Job'=> '3.35_01', + 'TAP::Parser::Scheduler::Spinner'=> '3.35_01', + 'TAP::Parser::Source' => '3.35_01', + 'TAP::Parser::SourceHandler'=> '3.35_01', + 'TAP::Parser::SourceHandler::Executable'=> '3.35_01', + 'TAP::Parser::SourceHandler::File'=> '3.35_01', + 'TAP::Parser::SourceHandler::Handle'=> '3.35_01', + 'TAP::Parser::SourceHandler::Perl'=> '3.35_01', + 'TAP::Parser::SourceHandler::RawTAP'=> '3.35_01', + 'TAP::Parser::YAMLish::Reader'=> '3.35_01', + 'TAP::Parser::YAMLish::Writer'=> '3.35_01', + 'Test' => '1.26_01', + 'Test::Harness' => '3.35_01', + 'XSLoader' => '0.20_01', + 'bigint' => '0.39_01', + 'bignum' => '0.39_01', + 'bigrat' => '0.39_01', + }, + removed => { + } + }, 5.024001 => { delta_from => 5.024000, changed => { @@ -13690,6 +13884,571 @@ for my $version ( sort { $a <=> $b } keys %released ) { removed => { } }, + 5.025009 => { + delta_from => 5.025008, + changed => { + 'App::Cpan' => '1.66', + 'B::Deparse' => '1.40', + 'B::Op_private' => '5.025009', + 'B::Terse' => '1.07', + 'B::Xref' => '1.06', + 'CPAN' => '2.16', + 'CPAN::Bundle' => '5.5002', + 'CPAN::Distribution' => '2.16', + 'CPAN::Exception::RecursiveDependency'=> '5.5001', + 'CPAN::FTP' => '5.5008', + 'CPAN::FirstTime' => '5.5310', + 'CPAN::HandleConfig' => '5.5008', + 'CPAN::Module' => '5.5003', + 'Compress::Raw::Bzip2' => '2.070', + 'Compress::Raw::Zlib' => '2.070', + 'Config' => '5.025009', + 'DB_File' => '1.840', + 'Data::Dumper' => '2.167', + 'Devel::SelfStubber' => '1.06', + 'DynaLoader' => '1.41', + 'Errno' => '1.28', + 'ExtUtils::Embed' => '1.34', + 'File::Glob' => '1.28', + 'I18N::LangTags' => '0.42', + 'Module::CoreList' => '5.20170120', + 'Module::CoreList::TieHashDelta'=> '5.20170120', + 'Module::CoreList::Utils'=> '5.20170120', + 'OS2::Process' => '1.12', + 'PerlIO::scalar' => '0.26', + 'Pod::Html' => '1.2202', + 'Storable' => '2.61', + 'Symbol' => '1.08', + 'Term::ReadLine' => '1.16', + 'Test' => '1.30', + 'Unicode::UCD' => '0.68', + 'VMS::DCLsym' => '1.08', + 'XS::APItest' => '0.88', + 'XSLoader' => '0.26', + 'attributes' => '0.29', + 'diagnostics' => '1.36', + 'feature' => '1.46', + 'lib' => '0.64', + 'overload' => '1.28', + 're' => '0.34', + 'threads' => '2.12', + 'threads::shared' => '1.54', + }, + removed => { + } + }, + 5.025010 => { + delta_from => 5.025009, + changed => { + 'B' => '1.68', + 'B::Op_private' => '5.025010', + 'CPAN' => '2.17', + 'CPAN::Distribution' => '2.17', + 'Config' => '5.02501', + 'Getopt::Std' => '1.12', + 'Module::CoreList' => '5.20170220', + 'Module::CoreList::TieHashDelta'=> '5.20170220', + 'Module::CoreList::Utils'=> '5.20170220', + 'PerlIO' => '1.10', + 'Storable' => '2.62', + 'Thread::Queue' => '3.12', + 'feature' => '1.47', + 'open' => '1.11', + 'threads' => '2.13', + }, + removed => { + } + }, + 5.025011 => { + delta_from => 5.025010, + changed => { + 'App::Prove' => '3.38', + 'App::Prove::State' => '3.38', + 'App::Prove::State::Result'=> '3.38', + 'App::Prove::State::Result::Test'=> '3.38', + 'B::Op_private' => '5.025011', + 'Compress::Raw::Bzip2' => '2.074', + 'Compress::Raw::Zlib' => '2.074', + 'Compress::Zlib' => '2.074', + 'Config' => '5.025011', + 'Config::Perl::V' => '0.28', + 'Cwd' => '3.67', + 'ExtUtils::ParseXS' => '3.34', + 'ExtUtils::ParseXS::Constants'=> '3.34', + 'ExtUtils::ParseXS::CountLines'=> '3.34', + 'ExtUtils::ParseXS::Eval'=> '3.34', + 'ExtUtils::Typemaps' => '3.34', + 'ExtUtils::Typemaps::Cmd'=> '3.34', + 'ExtUtils::Typemaps::InputMap'=> '3.34', + 'ExtUtils::Typemaps::OutputMap'=> '3.34', + 'ExtUtils::Typemaps::Type'=> '3.34', + 'File::Spec' => '3.67', + 'File::Spec::AmigaOS' => '3.67', + 'File::Spec::Cygwin' => '3.67', + 'File::Spec::Epoc' => '3.67', + 'File::Spec::Functions' => '3.67', + 'File::Spec::Mac' => '3.67', + 'File::Spec::OS2' => '3.67', + 'File::Spec::Unix' => '3.67', + 'File::Spec::VMS' => '3.67', + 'File::Spec::Win32' => '3.67', + 'IO::Compress::Adapter::Bzip2'=> '2.074', + 'IO::Compress::Adapter::Deflate'=> '2.074', + 'IO::Compress::Adapter::Identity'=> '2.074', + 'IO::Compress::Base' => '2.074', + 'IO::Compress::Base::Common'=> '2.074', + 'IO::Compress::Bzip2' => '2.074', + 'IO::Compress::Deflate' => '2.074', + 'IO::Compress::Gzip' => '2.074', + 'IO::Compress::Gzip::Constants'=> '2.074', + 'IO::Compress::RawDeflate'=> '2.074', + 'IO::Compress::Zip' => '2.074', + 'IO::Compress::Zip::Constants'=> '2.074', + 'IO::Compress::Zlib::Constants'=> '2.074', + 'IO::Compress::Zlib::Extra'=> '2.074', + 'IO::Uncompress::Adapter::Bunzip2'=> '2.074', + 'IO::Uncompress::Adapter::Identity'=> '2.074', + 'IO::Uncompress::Adapter::Inflate'=> '2.074', + 'IO::Uncompress::AnyInflate'=> '2.074', + 'IO::Uncompress::AnyUncompress'=> '2.074', + 'IO::Uncompress::Base' => '2.074', + 'IO::Uncompress::Bunzip2'=> '2.074', + 'IO::Uncompress::Gunzip'=> '2.074', + 'IO::Uncompress::Inflate'=> '2.074', + 'IO::Uncompress::RawInflate'=> '2.074', + 'IO::Uncompress::Unzip' => '2.074', + 'Module::CoreList' => '5.20170320', + 'Module::CoreList::TieHashDelta'=> '5.20170230', + 'Module::CoreList::Utils'=> '5.20170320', + 'Pod::Perldoc' => '3.28', + 'Pod::Perldoc::BaseTo' => '3.28', + 'Pod::Perldoc::GetOptsOO'=> '3.28', + 'Pod::Perldoc::ToANSI' => '3.28', + 'Pod::Perldoc::ToChecker'=> '3.28', + 'Pod::Perldoc::ToMan' => '3.28', + 'Pod::Perldoc::ToNroff' => '3.28', + 'Pod::Perldoc::ToPod' => '3.28', + 'Pod::Perldoc::ToRtf' => '3.28', + 'Pod::Perldoc::ToTerm' => '3.28', + 'Pod::Perldoc::ToText' => '3.28', + 'Pod::Perldoc::ToTk' => '3.28', + 'Pod::Perldoc::ToXml' => '3.28', + 'TAP::Base' => '3.38', + 'TAP::Formatter::Base' => '3.38', + 'TAP::Formatter::Color' => '3.38', + 'TAP::Formatter::Console'=> '3.38', + 'TAP::Formatter::Console::ParallelSession'=> '3.38', + 'TAP::Formatter::Console::Session'=> '3.38', + 'TAP::Formatter::File' => '3.38', + 'TAP::Formatter::File::Session'=> '3.38', + 'TAP::Formatter::Session'=> '3.38', + 'TAP::Harness' => '3.38', + 'TAP::Harness::Env' => '3.38', + 'TAP::Object' => '3.38', + 'TAP::Parser' => '3.38', + 'TAP::Parser::Aggregator'=> '3.38', + 'TAP::Parser::Grammar' => '3.38', + 'TAP::Parser::Iterator' => '3.38', + 'TAP::Parser::Iterator::Array'=> '3.38', + 'TAP::Parser::Iterator::Process'=> '3.38', + 'TAP::Parser::Iterator::Stream'=> '3.38', + 'TAP::Parser::IteratorFactory'=> '3.38', + 'TAP::Parser::Multiplexer'=> '3.38', + 'TAP::Parser::Result' => '3.38', + 'TAP::Parser::Result::Bailout'=> '3.38', + 'TAP::Parser::Result::Comment'=> '3.38', + 'TAP::Parser::Result::Plan'=> '3.38', + 'TAP::Parser::Result::Pragma'=> '3.38', + 'TAP::Parser::Result::Test'=> '3.38', + 'TAP::Parser::Result::Unknown'=> '3.38', + 'TAP::Parser::Result::Version'=> '3.38', + 'TAP::Parser::Result::YAML'=> '3.38', + 'TAP::Parser::ResultFactory'=> '3.38', + 'TAP::Parser::Scheduler'=> '3.38', + 'TAP::Parser::Scheduler::Job'=> '3.38', + 'TAP::Parser::Scheduler::Spinner'=> '3.38', + 'TAP::Parser::Source' => '3.38', + 'TAP::Parser::SourceHandler'=> '3.38', + 'TAP::Parser::SourceHandler::Executable'=> '3.38', + 'TAP::Parser::SourceHandler::File'=> '3.38', + 'TAP::Parser::SourceHandler::Handle'=> '3.38', + 'TAP::Parser::SourceHandler::Perl'=> '3.38', + 'TAP::Parser::SourceHandler::RawTAP'=> '3.38', + 'TAP::Parser::YAMLish::Reader'=> '3.38', + 'TAP::Parser::YAMLish::Writer'=> '3.38', + 'Test::Harness' => '3.38', + 'VMS::Stdio' => '2.41', + 'threads' => '2.15', + 'threads::shared' => '1.55', + }, + removed => { + } + }, + 5.025012 => { + delta_from => 5.025011, + changed => { + 'B::Op_private' => '5.025012', + 'CPAN' => '2.18', + 'CPAN::Bundle' => '5.5003', + 'CPAN::Distribution' => '2.18', + 'Config' => '5.025012', + 'DynaLoader' => '1.42', + 'Module::CoreList' => '5.20170420', + 'Module::CoreList::TieHashDelta'=> '5.20170420', + 'Module::CoreList::Utils'=> '5.20170420', + 'Safe' => '2.40', + 'XSLoader' => '0.27', + 'base' => '2.25', + 'threads::shared' => '1.56', + }, + removed => { + } + }, + 5.026000 => { + delta_from => 5.025012, + changed => { + 'B::Op_private' => '5.026000', + 'Config' => '5.026', + 'Module::CoreList' => '5.20170530', + 'Module::CoreList::TieHashDelta'=> '5.20170530', + 'Module::CoreList::Utils'=> '5.20170530', + }, + removed => { + } + }, + 5.027000 => { + delta_from => 5.026000, + changed => { + 'Attribute::Handlers' => '1.00', + 'B::Concise' => '1.000', + 'B::Deparse' => '1.41', + 'B::Op_private' => '5.027000', + 'Config' => '5.027', + 'Module::CoreList' => '5.20170531', + 'Module::CoreList::TieHashDelta'=> '5.20170531', + 'Module::CoreList::Utils'=> '5.20170531', + 'O' => '1.02', + 'attributes' => '0.3', + 'feature' => '1.48', + }, + removed => { + } + }, + 5.027001 => { + delta_from => 5.027, + changed => { + 'App::Prove' => '3.39', + 'App::Prove::State' => '3.39', + 'App::Prove::State::Result'=> '3.39', + 'App::Prove::State::Result::Test'=> '3.39', + 'Archive::Tar' => '2.26', + 'Archive::Tar::Constant'=> '2.26', + 'Archive::Tar::File' => '2.26', + 'B::Op_private' => '5.027001', + 'B::Terse' => '1.08', + 'Config' => '5.027001', + 'Devel::PPPort' => '3.36', + 'DirHandle' => '1.05', + 'ExtUtils::Command' => '7.30', + 'ExtUtils::Command::MM' => '7.30', + 'ExtUtils::Install' => '2.14', + 'ExtUtils::Installed' => '2.14', + 'ExtUtils::Liblist' => '7.30', + 'ExtUtils::Liblist::Kid'=> '7.30', + 'ExtUtils::MM' => '7.30', + 'ExtUtils::MM_AIX' => '7.30', + 'ExtUtils::MM_Any' => '7.30', + 'ExtUtils::MM_BeOS' => '7.30', + 'ExtUtils::MM_Cygwin' => '7.30', + 'ExtUtils::MM_DOS' => '7.30', + 'ExtUtils::MM_Darwin' => '7.30', + 'ExtUtils::MM_MacOS' => '7.30', + 'ExtUtils::MM_NW5' => '7.30', + 'ExtUtils::MM_OS2' => '7.30', + 'ExtUtils::MM_QNX' => '7.30', + 'ExtUtils::MM_UWIN' => '7.30', + 'ExtUtils::MM_Unix' => '7.30', + 'ExtUtils::MM_VMS' => '7.30', + 'ExtUtils::MM_VOS' => '7.30', + 'ExtUtils::MM_Win32' => '7.30', + 'ExtUtils::MM_Win95' => '7.30', + 'ExtUtils::MY' => '7.30', + 'ExtUtils::MakeMaker' => '7.30', + 'ExtUtils::MakeMaker::Config'=> '7.30', + 'ExtUtils::MakeMaker::Locale'=> '7.30', + 'ExtUtils::MakeMaker::version'=> '7.30', + 'ExtUtils::MakeMaker::version::regex'=> '7.30', + 'ExtUtils::Mkbootstrap' => '7.30', + 'ExtUtils::Mksymlists' => '7.30', + 'ExtUtils::Packlist' => '2.14', + 'ExtUtils::testlib' => '7.30', + 'File::Path' => '2.14', + 'Filter::Util::Call' => '1.57', + 'GDBM_File' => '1.16', + 'Getopt::Long' => '2.5', + 'IO::Socket::IP' => '0.39', + 'IPC::Cmd' => '0.98', + 'JSON::PP' => '2.94', + 'JSON::PP::Boolean' => '2.94', + 'Locale::Codes' => '3.52', + 'Locale::Codes::Constants'=> '3.52', + 'Locale::Codes::Country'=> '3.52', + 'Locale::Codes::Country_Codes'=> '3.52', + 'Locale::Codes::Country_Retired'=> '3.52', + 'Locale::Codes::Currency'=> '3.52', + 'Locale::Codes::Currency_Codes'=> '3.52', + 'Locale::Codes::Currency_Retired'=> '3.52', + 'Locale::Codes::LangExt'=> '3.52', + 'Locale::Codes::LangExt_Codes'=> '3.52', + 'Locale::Codes::LangExt_Retired'=> '3.52', + 'Locale::Codes::LangFam'=> '3.52', + 'Locale::Codes::LangFam_Codes'=> '3.52', + 'Locale::Codes::LangFam_Retired'=> '3.52', + 'Locale::Codes::LangVar'=> '3.52', + 'Locale::Codes::LangVar_Codes'=> '3.52', + 'Locale::Codes::LangVar_Retired'=> '3.52', + 'Locale::Codes::Language'=> '3.52', + 'Locale::Codes::Language_Codes'=> '3.52', + 'Locale::Codes::Language_Retired'=> '3.52', + 'Locale::Codes::Script' => '3.52', + 'Locale::Codes::Script_Codes'=> '3.52', + 'Locale::Codes::Script_Retired'=> '3.52', + 'Locale::Country' => '3.52', + 'Locale::Currency' => '3.52', + 'Locale::Language' => '3.52', + 'Locale::Script' => '3.52', + 'Module::CoreList' => '5.20170621', + 'Module::CoreList::TieHashDelta'=> '5.20170621', + 'Module::CoreList::Utils'=> '5.20170621', + 'PerlIO::scalar' => '0.27', + 'PerlIO::via' => '0.17', + 'Storable' => '2.63', + 'TAP::Base' => '3.39', + 'TAP::Formatter::Base' => '3.39', + 'TAP::Formatter::Color' => '3.39', + 'TAP::Formatter::Console'=> '3.39', + 'TAP::Formatter::Console::ParallelSession'=> '3.39', + 'TAP::Formatter::Console::Session'=> '3.39', + 'TAP::Formatter::File' => '3.39', + 'TAP::Formatter::File::Session'=> '3.39', + 'TAP::Formatter::Session'=> '3.39', + 'TAP::Harness' => '3.39', + 'TAP::Harness::Env' => '3.39', + 'TAP::Object' => '3.39', + 'TAP::Parser' => '3.39', + 'TAP::Parser::Aggregator'=> '3.39', + 'TAP::Parser::Grammar' => '3.39', + 'TAP::Parser::Iterator' => '3.39', + 'TAP::Parser::Iterator::Array'=> '3.39', + 'TAP::Parser::Iterator::Process'=> '3.39', + 'TAP::Parser::Iterator::Stream'=> '3.39', + 'TAP::Parser::IteratorFactory'=> '3.39', + 'TAP::Parser::Multiplexer'=> '3.39', + 'TAP::Parser::Result' => '3.39', + 'TAP::Parser::Result::Bailout'=> '3.39', + 'TAP::Parser::Result::Comment'=> '3.39', + 'TAP::Parser::Result::Plan'=> '3.39', + 'TAP::Parser::Result::Pragma'=> '3.39', + 'TAP::Parser::Result::Test'=> '3.39', + 'TAP::Parser::Result::Unknown'=> '3.39', + 'TAP::Parser::Result::Version'=> '3.39', + 'TAP::Parser::Result::YAML'=> '3.39', + 'TAP::Parser::ResultFactory'=> '3.39', + 'TAP::Parser::Scheduler'=> '3.39', + 'TAP::Parser::Scheduler::Job'=> '3.39', + 'TAP::Parser::Scheduler::Spinner'=> '3.39', + 'TAP::Parser::Source' => '3.39', + 'TAP::Parser::SourceHandler'=> '3.39', + 'TAP::Parser::SourceHandler::Executable'=> '3.39', + 'TAP::Parser::SourceHandler::File'=> '3.39', + 'TAP::Parser::SourceHandler::Handle'=> '3.39', + 'TAP::Parser::SourceHandler::Perl'=> '3.39', + 'TAP::Parser::SourceHandler::RawTAP'=> '3.39', + 'TAP::Parser::YAMLish::Reader'=> '3.39', + 'TAP::Parser::YAMLish::Writer'=> '3.39', + 'Test::Harness' => '3.39', + 'XS::APItest' => '0.89', + '_charnames' => '1.45', + 'charnames' => '1.45', + 'if' => '0.0607', + 'mro' => '1.21', + 'threads' => '2.16', + 'threads::shared' => '1.57', + 'version' => '0.9918', + 'version::regex' => '0.9918', + }, + removed => { + } + }, + 5.022004 => { + delta_from => 5.022003, + changed => { + 'B::Op_private' => '5.022004', + 'Config' => '5.022004', + 'Module::CoreList' => '5.20170715_22', + 'Module::CoreList::TieHashDelta'=> '5.20170715_22', + 'Module::CoreList::Utils'=> '5.20170715_22', + 'base' => '2.22_01', + }, + removed => { + } + }, + 5.024002 => { + delta_from => 5.024001, + changed => { + 'B::Op_private' => '5.024002', + 'Config' => '5.024002', + 'Module::CoreList' => '5.20170715_24', + 'Module::CoreList::TieHashDelta'=> '5.20170715_24', + 'Module::CoreList::Utils'=> '5.20170715_24', + 'base' => '2.23_01', + }, + removed => { + } + }, + 5.027002 => { + delta_from => 5.027001, + changed => { + 'B::Op_private' => '5.027002', + 'Carp' => '1.43', + 'Carp::Heavy' => '1.43', + 'Config' => '5.027002', + 'Cwd' => '3.68', + 'Encode' => '2.92', + 'Encode::Alias' => '2.23', + 'Encode::CN::HZ' => '2.09', + 'Encode::Encoding' => '2.08', + 'Encode::GSM0338' => '2.07', + 'Encode::Guess' => '2.07', + 'Encode::JP::JIS7' => '2.07', + 'Encode::KR::2022_KR' => '2.04', + 'Encode::MIME::Header' => '2.27', + 'Encode::MIME::Header::ISO_2022_JP'=> '1.09', + 'Encode::Unicode' => '2.16', + 'Encode::Unicode::UTF7' => '2.10', + 'ExtUtils::CBuilder' => '0.280228', + 'ExtUtils::CBuilder::Base'=> '0.280228', + 'ExtUtils::CBuilder::Platform::Unix'=> '0.280228', + 'ExtUtils::CBuilder::Platform::VMS'=> '0.280228', + 'ExtUtils::CBuilder::Platform::Windows'=> '0.280228', + 'ExtUtils::CBuilder::Platform::Windows::BCC'=> '0.280228', + 'ExtUtils::CBuilder::Platform::Windows::GCC'=> '0.280228', + 'ExtUtils::CBuilder::Platform::Windows::MSVC'=> '0.280228', + 'ExtUtils::CBuilder::Platform::aix'=> '0.280228', + 'ExtUtils::CBuilder::Platform::android'=> '0.280228', + 'ExtUtils::CBuilder::Platform::cygwin'=> '0.280228', + 'ExtUtils::CBuilder::Platform::darwin'=> '0.280228', + 'ExtUtils::CBuilder::Platform::dec_osf'=> '0.280228', + 'ExtUtils::CBuilder::Platform::os2'=> '0.280228', + 'File::Glob' => '1.29', + 'File::Spec' => '3.68', + 'File::Spec::AmigaOS' => '3.68', + 'File::Spec::Cygwin' => '3.68', + 'File::Spec::Epoc' => '3.68', + 'File::Spec::Functions' => '3.68', + 'File::Spec::Mac' => '3.68', + 'File::Spec::OS2' => '3.68', + 'File::Spec::Unix' => '3.68', + 'File::Spec::VMS' => '3.68', + 'File::Spec::Win32' => '3.68', + 'List::Util' => '1.48', + 'List::Util::XS' => '1.48', + 'Math::BigRat' => '0.2613', + 'Module::CoreList' => '5.20170720', + 'Module::CoreList::TieHashDelta'=> '5.20170720', + 'Module::CoreList::Utils'=> '5.20170720', + 'Opcode' => '1.40', + 'POSIX' => '1.77', + 'PerlIO::scalar' => '0.29', + 'Scalar::Util' => '1.48', + 'Sub::Util' => '1.48', + 'Time::HiRes' => '1.9743', + 'Time::Piece' => '1.3201', + 'Time::Seconds' => '1.3201', + 'Unicode' => '10.0.0', + 'XS::APItest' => '0.90', + 'arybase' => '0.13', + 'encoding' => '2.20', + 'feature' => '1.49', + 're' => '0.35', + }, + removed => { + } + }, + 5.027003 => { + delta_from => 5.027002, + changed => { + 'B' => '1.69', + 'B::Concise' => '1.001', + 'B::Debug' => '1.25', + 'B::Deparse' => '1.42', + 'B::Op_private' => '5.027003', + 'Config' => '5.027003', + 'Data::Dumper' => '2.167_02', + 'Devel::Peek' => '1.27', + 'ExtUtils::Constant' => '0.24', + 'ExtUtils::Constant::Base'=> '0.06', + 'ExtUtils::Constant::ProxySubs'=> '0.09', + 'ExtUtils::Constant::Utils'=> '0.04', + 'ExtUtils::ParseXS' => '3.35', + 'ExtUtils::ParseXS::Constants'=> '3.35', + 'ExtUtils::ParseXS::CountLines'=> '3.35', + 'ExtUtils::ParseXS::Eval'=> '3.35', + 'ExtUtils::ParseXS::Utilities'=> '3.35', + 'ExtUtils::Typemaps' => '3.35', + 'ExtUtils::Typemaps::Cmd'=> '3.35', + 'ExtUtils::Typemaps::InputMap'=> '3.35', + 'ExtUtils::Typemaps::OutputMap'=> '3.35', + 'ExtUtils::Typemaps::Type'=> '3.35', + 'Filter::Simple' => '0.94', + 'Module::CoreList' => '5.20170821', + 'Module::CoreList::TieHashDelta'=> '5.20170821', + 'Module::CoreList::Utils'=> '5.20170821', + 'SelfLoader' => '1.24', + 'Storable' => '2.64', + 'XS::APItest' => '0.91', + 'base' => '2.26', + 'threads' => '2.17', + 'utf8' => '1.20', + }, + removed => { + } + }, + 5.027004 => { + delta_from => 5.027003, + changed => { + 'B::Op_private' => '5.027004', + 'Config' => '5.027004', + 'File::Glob' => '1.30', + 'I18N::Langinfo' => '0.14', + 'Module::CoreList' => '5.20170920', + 'Module::CoreList::TieHashDelta'=> '5.20170920', + 'Module::CoreList::Utils'=> '5.20170920', + 'Term::ReadLine' => '1.17', + 'VMS::Stdio' => '2.42', + 'XS::APItest' => '0.92', + 'attributes' => '0.31', + 'sort' => '2.03', + 'threads' => '2.18', + }, + removed => { + } + }, + 5.026001 => { + delta_from => 5.026000, + changed => { + 'B::Op_private' => '5.026001', + 'Config' => '5.026001', + 'Module::CoreList' => '5.20170922_26', + 'Module::CoreList::TieHashDelta'=> '5.20170922_26', + 'Module::CoreList::Utils'=> '5.20170922_26', + '_charnames' => '1.45', + 'base' => '2.26', + 'charnames' => '1.45', + }, + removed => { + } + }, ); sub is_core @@ -13743,13 +14502,7 @@ sub is_core return $perl_version <= $final_release; } -for my $version (sort { $a <=> $b } keys %delta) { - my $data = $delta{$version}; - - tie %{$version{$version}}, 'Module::CoreList::TieHashDelta', - $data->{changed}, $data->{removed}, - $data->{delta_from} ? $version{$data->{delta_from}} : undef; -} +%version = _undelta(\%delta); %deprecated = ( 5.011 => { @@ -14406,6 +15159,13 @@ for my $version (sort { $a <=> $b } keys %delta) { removed => { } }, + 5.022003 => { + delta_from => 5.022002, + changed => { + }, + removed => { + } + }, 5.024001 => { delta_from => 5.024000, changed => { @@ -14413,15 +15173,101 @@ for my $version (sort { $a <=> $b } keys %delta) { removed => { } }, + 5.025009 => { + delta_from => 5.025008, + changed => { + }, + removed => { + } + }, + 5.025010 => { + delta_from => 5.025009, + changed => { + }, + removed => { + } + }, + 5.025011 => { + delta_from => 5.025010, + changed => { + }, + removed => { + } + }, + 5.025012 => { + delta_from => 5.025011, + changed => { + }, + removed => { + } + }, + 5.026000 => { + delta_from => 5.025012, + changed => { + }, + removed => { + } + }, + 5.027000 => { + delta_from => 5.026, + changed => { + }, + removed => { + } + }, + 5.027001 => { + delta_from => 5.027, + changed => { + }, + removed => { + } + }, + 5.022004 => { + delta_from => 5.022003, + changed => { + }, + removed => { + } + }, + 5.024002 => { + delta_from => 5.024001, + changed => { + }, + removed => { + } + }, + 5.027002 => { + delta_from => 5.027001, + changed => { + }, + removed => { + } + }, + 5.027003 => { + delta_from => 5.027002, + changed => { + 'B::Debug' => '1', + }, + removed => { + } + }, + 5.027004 => { + delta_from => 5.027003, + changed => { + }, + removed => { + } + }, + 5.026001 => { + delta_from => 5.026000, + changed => { + }, + removed => { + } + }, ); -for my $version (sort { $a <=> $b } keys %deprecated) { - my $data = $deprecated{$version}; - - tie %{ $deprecated{$version} }, 'Module::CoreList::TieHashDelta', - $data->{changed}, $data->{removed}, - $data->{delta_from} ? $deprecated{ $data->{delta_from} } : undef; -} +%deprecated = _undelta(\%deprecated); %upstream = ( 'App::Cpan' => 'cpan', @@ -14634,6 +15480,7 @@ for my $version (sort { $a <=> $b } keys %deprecated) { 'Math::BigInt::Calc' => 'cpan', 'Math::BigInt::CalcEmu' => 'cpan', 'Math::BigInt::FastCalc'=> 'cpan', + 'Math::BigInt::Lib' => 'cpan', 'Math::BigInt::Trace' => 'cpan', 'Math::BigRat' => 'cpan', 'Math::Complex' => 'cpan', @@ -14650,9 +15497,6 @@ for my $version (sort { $a <=> $b } keys %deprecated) { 'Module::Load::Conditional'=> 'cpan', 'Module::Loaded' => 'cpan', 'Module::Metadata' => 'cpan', - 'Module::Metadata::corpus::BOMTest::UTF16BE'=> 'cpan', - 'Module::Metadata::corpus::BOMTest::UTF16LE'=> 'cpan', - 'Module::Metadata::corpus::BOMTest::UTF8'=> 'cpan', 'NEXT' => 'cpan', 'Net::Cmd' => 'cpan', 'Net::Config' => 'cpan', @@ -14778,11 +15622,47 @@ for my $version (sort { $a <=> $b } keys %deprecated) { 'TAP::Parser::YAMLish::Writer'=> 'cpan', 'Term::ANSIColor' => 'cpan', 'Term::Cap' => 'cpan', + 'Test2' => 'cpan', + 'Test2::API' => 'cpan', + 'Test2::API::Breakage' => 'cpan', + 'Test2::API::Context' => 'cpan', + 'Test2::API::Instance' => 'cpan', + 'Test2::API::Stack' => 'cpan', + 'Test2::Event' => 'cpan', + 'Test2::Event::Bail' => 'cpan', + 'Test2::Event::Diag' => 'cpan', + 'Test2::Event::Encoding'=> 'cpan', + 'Test2::Event::Exception'=> 'cpan', + 'Test2::Event::Generic' => 'cpan', + 'Test2::Event::Info' => 'cpan', + 'Test2::Event::Note' => 'cpan', + 'Test2::Event::Ok' => 'cpan', + 'Test2::Event::Plan' => 'cpan', + 'Test2::Event::Skip' => 'cpan', + 'Test2::Event::Subtest' => 'cpan', + 'Test2::Event::TAP::Version'=> 'cpan', + 'Test2::Event::Waiting' => 'cpan', + 'Test2::Formatter' => 'cpan', + 'Test2::Formatter::TAP' => 'cpan', + 'Test2::Hub' => 'cpan', + 'Test2::Hub::Interceptor'=> 'cpan', + 'Test2::Hub::Interceptor::Terminator'=> 'cpan', + 'Test2::Hub::Subtest' => 'cpan', + 'Test2::IPC' => 'cpan', + 'Test2::IPC::Driver' => 'cpan', + 'Test2::IPC::Driver::Files'=> 'cpan', + 'Test2::Tools::Tiny' => 'cpan', + 'Test2::Util' => 'cpan', + 'Test2::Util::ExternalMeta'=> 'cpan', + 'Test2::Util::HashBase' => 'cpan', + 'Test2::Util::Trace' => 'cpan', 'Test::Builder' => 'cpan', + 'Test::Builder::Formatter'=> 'cpan', 'Test::Builder::IO::Scalar'=> 'cpan', 'Test::Builder::Module' => 'cpan', 'Test::Builder::Tester' => 'cpan', 'Test::Builder::Tester::Color'=> 'cpan', + 'Test::Builder::TodoDiag'=> 'cpan', 'Test::Harness' => 'cpan', 'Test::More' => 'cpan', 'Test::Simple' => 'cpan', @@ -14808,7 +15688,6 @@ for my $version (sort { $a <=> $b } keys %deprecated) { 'Unicode::Collate::CJK::Stroke'=> 'cpan', 'Unicode::Collate::CJK::Zhuyin'=> 'cpan', 'Unicode::Collate::Locale'=> 'cpan', - 'Unicode::Normalize' => 'cpan', 'Win32' => 'cpan', 'Win32API::File' => 'cpan', 'Win32API::File::inc::ExtUtils::Myconst2perl'=> 'cpan', @@ -15041,6 +15920,7 @@ for my $version (sort { $a <=> $b } keys %deprecated) { 'Math::BigInt::Calc' => undef, 'Math::BigInt::CalcEmu' => undef, 'Math::BigInt::FastCalc'=> undef, + 'Math::BigInt::Lib' => undef, 'Math::BigInt::Trace' => undef, 'Math::BigRat' => undef, 'Math::Complex' => undef, @@ -15057,9 +15937,6 @@ for my $version (sort { $a <=> $b } keys %deprecated) { 'Module::Load::Conditional'=> undef, 'Module::Loaded' => undef, 'Module::Metadata' => 'https://rt.cpan.org/Public/Dist/Display.html?Name=Module-Metadata', - 'Module::Metadata::corpus::BOMTest::UTF16BE'=> undef, - 'Module::Metadata::corpus::BOMTest::UTF16LE'=> undef, - 'Module::Metadata::corpus::BOMTest::UTF8'=> undef, 'NEXT' => undef, 'Net::Cmd' => undef, 'Net::Config' => undef, @@ -15185,11 +16062,47 @@ for my $version (sort { $a <=> $b } keys %deprecated) { 'TAP::Parser::YAMLish::Writer'=> 'http://rt.cpan.org/Public/Dist/Display.html?Name=Test-Harness', 'Term::ANSIColor' => 'https://rt.cpan.org/Dist/Display.html?Name=Term-ANSIColor', 'Term::Cap' => undef, + 'Test2' => 'http://github.com/Test-More/test-more/issues', + 'Test2::API' => 'http://github.com/Test-More/test-more/issues', + 'Test2::API::Breakage' => 'http://github.com/Test-More/test-more/issues', + 'Test2::API::Context' => 'http://github.com/Test-More/test-more/issues', + 'Test2::API::Instance' => 'http://github.com/Test-More/test-more/issues', + 'Test2::API::Stack' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Bail' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Diag' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Encoding'=> 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Exception'=> 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Generic' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Info' => undef, + 'Test2::Event::Note' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Ok' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Plan' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Skip' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Subtest' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::TAP::Version'=> 'http://github.com/Test-More/test-more/issues', + 'Test2::Event::Waiting' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Formatter' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Formatter::TAP' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Hub' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Hub::Interceptor'=> 'http://github.com/Test-More/test-more/issues', + 'Test2::Hub::Interceptor::Terminator'=> 'http://github.com/Test-More/test-more/issues', + 'Test2::Hub::Subtest' => 'http://github.com/Test-More/test-more/issues', + 'Test2::IPC' => 'http://github.com/Test-More/test-more/issues', + 'Test2::IPC::Driver' => 'http://github.com/Test-More/test-more/issues', + 'Test2::IPC::Driver::Files'=> 'http://github.com/Test-More/test-more/issues', + 'Test2::Tools::Tiny' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Util' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Util::ExternalMeta'=> 'http://github.com/Test-More/test-more/issues', + 'Test2::Util::HashBase' => 'http://github.com/Test-More/test-more/issues', + 'Test2::Util::Trace' => 'http://github.com/Test-More/test-more/issues', 'Test::Builder' => 'http://github.com/Test-More/test-more/issues', + 'Test::Builder::Formatter'=> 'http://github.com/Test-More/test-more/issues', 'Test::Builder::IO::Scalar'=> 'http://github.com/Test-More/test-more/issues', 'Test::Builder::Module' => 'http://github.com/Test-More/test-more/issues', 'Test::Builder::Tester' => 'http://github.com/Test-More/test-more/issues', 'Test::Builder::Tester::Color'=> 'http://github.com/Test-More/test-more/issues', + 'Test::Builder::TodoDiag'=> 'http://github.com/Test-More/test-more/issues', 'Test::Harness' => 'http://rt.cpan.org/Public/Dist/Display.html?Name=Test-Harness', 'Test::More' => 'http://github.com/Test-More/test-more/issues', 'Test::Simple' => 'http://github.com/Test-More/test-more/issues', @@ -15215,7 +16128,6 @@ for my $version (sort { $a <=> $b } keys %deprecated) { 'Unicode::Collate::CJK::Stroke'=> undef, 'Unicode::Collate::CJK::Zhuyin'=> undef, 'Unicode::Collate::Locale'=> undef, - 'Unicode::Normalize' => 'https://rt.cpan.org/Public/Dist/Display.html?Name=Unicode-Normalize', 'Win32' => undef, 'Win32API::File' => undef, 'Win32API::File::inc::ExtUtils::Myconst2perl'=> undef, diff --git a/Master/tlpkg/tlperl/lib/Module/CoreList/TieHashDelta.pm b/Master/tlpkg/tlperl/lib/Module/CoreList/TieHashDelta.pm index dedd3ab4995..c3e4bd67bcc 100644 --- a/Master/tlpkg/tlperl/lib/Module/CoreList/TieHashDelta.pm +++ b/Master/tlpkg/tlperl/lib/Module/CoreList/TieHashDelta.pm @@ -3,7 +3,7 @@ package Module::CoreList::TieHashDelta; use strict; use vars qw($VERSION); -$VERSION = '5.20170114_24'; +$VERSION = '5.20170922_26'; sub TIEHASH { my ($class, $changed, $removed, $parent) = @_; diff --git a/Master/tlpkg/tlperl/lib/Module/CoreList/Utils.pm b/Master/tlpkg/tlperl/lib/Module/CoreList/Utils.pm index 71edc4f4d07..abcb152c82d 100755 --- a/Master/tlpkg/tlperl/lib/Module/CoreList/Utils.pm +++ b/Master/tlpkg/tlperl/lib/Module/CoreList/Utils.pm @@ -4,9 +4,8 @@ use strict; use warnings; use vars qw[$VERSION %utilities]; use Module::CoreList; -use Module::CoreList::TieHashDelta; -$VERSION = '5.20170114_24'; +$VERSION = '5.20170922_26'; sub utilities { my $perl = shift; @@ -1213,6 +1212,13 @@ my %delta = ( removed => { } }, + 5.022003 => { + delta_from => 5.022002, + changed => { + }, + removed => { + } + }, 5.024001 => { delta_from => 5.024000, changed => { @@ -1220,15 +1226,102 @@ my %delta = ( removed => { } }, + 5.025009 => { + delta_from => 5.025008, + changed => { + }, + removed => { + 'c2ph' => 1, + 'pstruct' => 1, + } + }, + 5.025010 => { + delta_from => 5.025009, + changed => { + }, + removed => { + } + }, + 5.025011 => { + delta_from => 5.025010, + changed => { + }, + removed => { + } + }, + 5.025012 => { + delta_from => 5.025011, + changed => { + }, + removed => { + } + }, + 5.026000 => { + delta_from => 5.025012, + changed => { + }, + removed => { + } + }, + 5.027000 => { + delta_from => 5.026000, + changed => { + }, + removed => { + } + }, + 5.027001 => { + delta_from => 5.027000, + changed => { + }, + removed => { + } + }, + 5.022004 => { + delta_from => 5.022003, + changed => { + }, + removed => { + } + }, + 5.024002 => { + delta_from => 5.024001, + changed => { + }, + removed => { + } + }, + 5.027002 => { + delta_from => 5.027001, + changed => { + }, + removed => { + } + }, + 5.027003 => { + delta_from => 5.027002, + changed => { + }, + removed => { + } + }, + 5.027004 => { + delta_from => 5.027003, + changed => { + }, + removed => { + } + }, + 5.026001 => { + delta_from => 5.026000, + changed => { + }, + removed => { + } + }, ); -for my $version (sort { $a <=> $b } keys %delta) { - my $data = $delta{$version}; - - tie %{$utilities{$version}}, 'Module::CoreList::TieHashDelta', - $data->{changed}, $data->{removed}, - $data->{delta_from} ? $utilities{$data->{delta_from}} : undef; -} +%utilities = Module::CoreList::_undelta(\%delta); # Create aliases with trailing zeros for $] use diff --git a/Master/tlpkg/tlperl/lib/Module/Load/Conditional.pm b/Master/tlpkg/tlperl/lib/Module/Load/Conditional.pm index ace55ad845d..89e22b57207 100644 --- a/Master/tlpkg/tlperl/lib/Module/Load/Conditional.pm +++ b/Master/tlpkg/tlperl/lib/Module/Load/Conditional.pm @@ -19,14 +19,15 @@ use constant QUOTE => do { ON_WIN32 ? q["] : q['] }; BEGIN { use vars qw[ $VERSION @ISA $VERBOSE $CACHE @EXPORT_OK $DEPRECATED - $FIND_VERSION $ERROR $CHECK_INC_HASH]; + $FIND_VERSION $ERROR $CHECK_INC_HASH $FORCE_SAFE_INC ]; use Exporter; @ISA = qw[Exporter]; - $VERSION = '0.64'; + $VERSION = '0.68'; $VERBOSE = 0; $DEPRECATED = 0; $FIND_VERSION = 1; $CHECK_INC_HASH = 0; + $FORCE_SAFE_INC = 0; @EXPORT_OK = qw[check_install can_load requires]; } @@ -201,6 +202,8 @@ sub check_install { ### so scan the dirs unless( $filename ) { + local @INC = @INC[0..$#INC-1] if $FORCE_SAFE_INC && $INC[-1] eq '.'; + DIR: for my $dir ( @INC ) { my $fh; @@ -307,6 +310,7 @@ sub check_install { } if ( $DEPRECATED and "$]" >= 5.011 ) { + local @INC = @INC[0..$#INC-1] if $FORCE_SAFE_INC && $INC[-1] eq '.'; require Module::CoreList; require Config; @@ -444,6 +448,8 @@ sub can_load { if ( $CACHE->{$mod}->{uptodate} ) { + local @INC = @INC[0..$#INC-1] if $FORCE_SAFE_INC && $INC[-1] eq '.'; + if ( $args->{autoload} ) { my $who = (caller())[0]; eval { autoload_remote $who, $mod }; @@ -509,6 +515,8 @@ sub requires { return undef; } + local @INC = @INC[0..$#INC-1] if $FORCE_SAFE_INC && $INC[-1] eq '.'; + my $lib = join " ", map { qq["-I$_"] } @INC; my $oneliner = 'print(join(qq[\n],map{qq[BONG=$_]}keys(%INC)),qq[\n])'; my $cmd = join '', qq["$^X" $lib -M$who -e], QUOTE, $oneliner, QUOTE; @@ -562,6 +570,12 @@ you. The default is 0; +=head2 $Module::Load::Conditional::FORCE_SAFE_INC + +This controls whether C<Module::Load::Conditional> sanitises C<@INC> +by removing "C<.>". The current default setting is C<0>, but this +may change in a future release. + =head2 $Module::Load::Conditional::CACHE This holds the cache of the C<can_load> function. If you explicitly diff --git a/Master/tlpkg/tlperl/lib/Module/Metadata.pm b/Master/tlpkg/tlperl/lib/Module/Metadata.pm index f7017cf90ff..7f49da6d59a 100644 --- a/Master/tlpkg/tlperl/lib/Module/Metadata.pm +++ b/Master/tlpkg/tlperl/lib/Module/Metadata.pm @@ -1,6 +1,6 @@ # -*- mode: cperl; tab-width: 8; indent-tabs-mode: nil; basic-offset: 2 -*- -# vim:ts=8:sw=2:et:sta:sts=2 -package Module::Metadata; # git description: v1.000030-2-g52f466c +# vim:ts=8:sw=2:et:sta:sts=2:tw=78 +package Module::Metadata; # git description: v1.000032-7-gb4e8a3f # ABSTRACT: Gather package and POD information from perl module files # Adapted from Perl-licensed code originally distributed with @@ -14,7 +14,7 @@ sub __clean_eval { eval $_[0] } use strict; use warnings; -our $VERSION = '1.000031'; # TRIAL +our $VERSION = '1.000033'; use Carp qw/croak/; use File::Spec; @@ -411,15 +411,29 @@ sub _init { } $self->_parse_fh($handle); + @{$self->{packages}} = __uniq(@{$self->{packages}}); + unless($self->{module} and length($self->{module})) { - my ($v, $d, $f) = File::Spec->splitpath($self->{filename}); - if($f =~ /\.pm$/) { + # CAVEAT (possible TODO): .pmc files not treated the same as .pm + if ($self->{filename} =~ /\.pm$/) { + my ($v, $d, $f) = File::Spec->splitpath($self->{filename}); $f =~ s/\..+$//; - my @candidates = grep /$f$/, @{$self->{packages}}; - $self->{module} = shift(@candidates); # punt + my @candidates = grep /(^|::)$f$/, @{$self->{packages}}; + $self->{module} = shift(@candidates); # this may be undef } else { - $self->{module} = 'main'; + # this seems like an atrocious heuristic, albeit marginally better than + # what was here before. It should be rewritten entirely to be more like + # "if it's not a .pm file, it's not require()able as a name, therefore + # name() should be undef." + if ((grep /main/, @{$self->{packages}}) + or (grep /main/, keys %{$self->{versions}})) { + $self->{module} = 'main'; + } + else { + # TODO: this should maybe default to undef instead + $self->{module} = $self->{packages}[0] || ''; + } } } @@ -440,6 +454,7 @@ sub _do_find_module { my $testfile = File::Spec->catfile($dir, $file); return [ File::Spec->rel2abs( $testfile ), $dir ] if -e $testfile and !-d _; # For stuff like ExtUtils::xsubpp + # CAVEAT (possible TODO): .pmc files are not discoverable here $testfile .= '.pm'; return [ File::Spec->rel2abs( $testfile ), $dir ] if -e $testfile; @@ -649,6 +664,12 @@ sub _parse_fh { $self->{pod_headings} = \@pod; } +sub __uniq (@) +{ + my (%seen, $key); + grep { not $seen{ $key = $_ }++ } @_; +} + { my $pn = 0; sub _evaluate_version_line { @@ -820,7 +841,7 @@ Module::Metadata - Gather package and POD information from perl module files =head1 VERSION -version 1.000031 +version 1.000033 =head1 SYNOPSIS @@ -1037,7 +1058,7 @@ There is also a mailing list available for users of this distribution, at L<http://lists.perl.org/list/cpan-workers.html>. There is also an irc channel available for users of this distribution, at -L<irc://irc.perl.org/#toolchain>. +L<C<#toolchain> on C<irc.perl.org>|irc://irc.perl.org/#toolchain>. =head1 AUTHOR @@ -1049,7 +1070,7 @@ assistance from David Golden (xdg) <dagolden@cpan.org>. =head1 CONTRIBUTORS -=for stopwords Karen Etheridge David Golden Vincent Pit Matt S Trout Chris Nehren Graham Knop Olivier Mengué Tomas Doran Tatsuhiko Miyagawa tokuhirom Peter Rabbitson Steve Hay Josh Jore Craig A. Berry Mitchell Steinbrunner Edward Zborowski Gareth Harper James Raspass Jerry D. Hedden 'BinGOs' Williams Kent Fredric +=for stopwords Karen Etheridge David Golden Vincent Pit Matt S Trout Chris Nehren Graham Knop Olivier Mengué Tomas Doran Tatsuhiko Miyagawa tokuhirom Kent Fredric Peter Rabbitson Steve Hay Jerry D. Hedden Craig A. Berry Mitchell Steinbrunner Edward Zborowski Gareth Harper James Raspass 'BinGOs' Williams Josh Jore =over 4 @@ -1095,6 +1116,10 @@ tokuhirom <tokuhirom@gmail.com> =item * +Kent Fredric <kentnl@cpan.org> + +=item * + Peter Rabbitson <ribasushi@cpan.org> =item * @@ -1103,7 +1128,7 @@ Steve Hay <steve.m.hay@googlemail.com> =item * -Josh Jore <jjore@cpan.org> +Jerry D. Hedden <jdhedden@cpan.org> =item * @@ -1111,6 +1136,10 @@ Craig A. Berry <cberry@cpan.org> =item * +Craig A. Berry <craigberry@mac.com> + +=item * + David Mitchell <davem@iabyn.com> =item * @@ -1131,15 +1160,11 @@ James Raspass <jraspass@gmail.com> =item * -Jerry D. Hedden <jdhedden@cpan.org> - -=item * - Chris 'BinGOs' Williams <chris@bingosnet.co.uk> =item * -Kent Fredric <kentnl@cpan.org> +Josh Jore <jjore@cpan.org> =back |