#!/usr/bin/perl use strict; no warnings "all"; use Module::CoreList; use Module::Version 'get_version'; use Module::InstalledVersion; my $d = shift @ARGV; my @mods = ( 'App::Cpan', 'App::Prove', 'App::Prove::State', 'App::Prove::State::Result', 'App::Prove::State::Result::Test', 'Archive::Extract', 'Archive::Tar', 'Archive::Tar::Constant', 'Attribute::Handlers', 'AutoLoader', 'AutoSplit', 'B::Debug', 'B::Lint', 'B::Lint::Debug', 'CGI', 'CGI::Apache', 'CGI::Carp', 'CGI::Cookie', 'CGI::Fast', 'CGI::Pretty', 'CGI::Push', 'CGI::Switch', 'CGI::Util', 'CPAN', 'CPAN::Author', 'CPAN::Bundle', 'CPAN::CacheMgr', 'CPAN::Complete', 'CPAN::Debug', 'CPAN::DeferredCode', 'CPAN::Distribution', 'CPAN::Distroprefs', 'CPAN::Distrostatus', 'CPAN::Exception::RecursiveDependency', 'CPAN::Exception::blocked_urllist', 'CPAN::Exception::yaml_not_installed', 'CPAN::FTP', 'CPAN::FTP::netrc', 'CPAN::FirstTime', 'CPAN::HandleConfig', 'CPAN::Index', 'CPAN::InfoObj', 'CPAN::Kwalify', 'CPAN::LWP::UserAgent', 'CPAN::Mirrors', 'CPAN::Module', 'CPAN::Nox', 'CPAN::Prompt', 'CPAN::Queue', 'CPAN::Shell', 'CPAN::Tarzip', 'CPAN::URL', 'CPAN::Version', 'CPANPLUS', 'CPANPLUS::Backend', 'CPANPLUS::Backend::RV', 'CPANPLUS::Config', 'CPANPLUS::Configure', 'CPANPLUS::Configure::Setup', 'CPANPLUS::Dist', 'CPANPLUS::Dist::Autobundle', 'CPANPLUS::Dist::Base', 'CPANPLUS::Dist::Build', 'CPANPLUS::Dist::Build::Constants', 'CPANPLUS::Dist::MM', 'CPANPLUS::Dist::Sample', 'CPANPLUS::Error', 'CPANPLUS::Internals', 'CPANPLUS::Internals::Constants', 'CPANPLUS::Internals::Constants::Report', 'CPANPLUS::Internals::Extract', 'CPANPLUS::Internals::Fetch', 'CPANPLUS::Internals::Report', 'CPANPLUS::Internals::Search', 'CPANPLUS::Internals::Source', 'CPANPLUS::Internals::Source::Memory', 'CPANPLUS::Internals::Source::SQLite', 'CPANPLUS::Internals::Source::SQLite::Tree', 'CPANPLUS::Internals::Utils', 'CPANPLUS::Internals::Utils::Autoflush', 'CPANPLUS::Module', 'CPANPLUS::Module::Author', 'CPANPLUS::Module::Author::Fake', 'CPANPLUS::Module::Checksums', 'CPANPLUS::Module::Fake', 'CPANPLUS::Module::Signature', 'CPANPLUS::Selfupdate', 'CPANPLUS::Shell', 'CPANPLUS::Shell::Classic', 'CPANPLUS::Shell::Default', 'CPANPLUS::Shell::Default::Plugins::CustomSource', 'CPANPLUS::Shell::Default::Plugins::Remote', 'CPANPLUS::Shell::Default::Plugins::Source', 'Class::ISA', 'Class::Struct', 'Compress::Raw::Bzip2', 'Compress::Raw::Zlib', 'Compress::Zlib', 'Config', 'Config::Extensions', 'Cwd', 'DB_File', 'Data::Dumper', 'Devel::PPPort', 'Digest', 'Digest::MD5', 'Digest::SHA', 'Digest::base', 'Digest::file', 'Encode', 'Encode::Alias', 'Encode::Byte', 'Encode::CJKConstants', 'Encode::CN', 'Encode::CN::HZ', 'Encode::Config', 'Encode::EBCDIC', 'Encode::Encoder', 'Encode::Encoding', 'Encode::GSM0338', 'Encode::Guess', 'Encode::JP', 'Encode::JP::H2Z', 'Encode::JP::JIS7', 'Encode::KR', 'Encode::KR::2022_KR', 'Encode::MIME::Header', 'Encode::MIME::Header::ISO_2022_JP', 'Encode::MIME::Name', 'Encode::Symbol', 'Encode::TW', 'Encode::Unicode', 'Encode::Unicode::UTF7', 'Exporter', 'Exporter::Heavy', 'ExtUtils::CBuilder', 'ExtUtils::CBuilder::Base', 'ExtUtils::CBuilder::Platform::Unix', 'ExtUtils::CBuilder::Platform::VMS', 'ExtUtils::CBuilder::Platform::Windows', 'ExtUtils::CBuilder::Platform::Windows::BCC', 'ExtUtils::CBuilder::Platform::Windows::GCC', 'ExtUtils::CBuilder::Platform::Windows::MSVC', 'ExtUtils::CBuilder::Platform::aix', 'ExtUtils::CBuilder::Platform::cygwin', 'ExtUtils::CBuilder::Platform::darwin', 'ExtUtils::CBuilder::Platform::dec_osf', 'ExtUtils::CBuilder::Platform::os2', 'ExtUtils::Command', 'ExtUtils::Command::MM', 'ExtUtils::Constant', 'ExtUtils::Constant::Base', 'ExtUtils::Constant::Utils', 'ExtUtils::Constant::XS', 'ExtUtils::Install', 'ExtUtils::Installed', 'ExtUtils::Liblist', 'ExtUtils::Liblist::Kid', 'ExtUtils::MM', 'ExtUtils::MM_AIX', 'ExtUtils::MM_Any', 'ExtUtils::MM_BeOS', 'ExtUtils::MM_Cygwin', 'ExtUtils::MM_DOS', 'ExtUtils::MM_Darwin', 'ExtUtils::MM_MacOS', 'ExtUtils::MM_NW5', 'ExtUtils::MM_OS2', 'ExtUtils::MM_QNX', 'ExtUtils::MM_UWIN', 'ExtUtils::MM_Unix', 'ExtUtils::MM_VMS', 'ExtUtils::MM_VOS', 'ExtUtils::MM_Win32', 'ExtUtils::MM_Win95', 'ExtUtils::MY', 'ExtUtils::MakeMaker', 'ExtUtils::MakeMaker::Config', 'ExtUtils::Manifest', 'ExtUtils::Mkbootstrap', 'ExtUtils::Mksymlists', 'ExtUtils::Packlist', 'ExtUtils::ParseXS', 'ExtUtils::testlib', 'Fatal', 'File::Fetch', 'File::GlobMapper', 'File::Path', 'File::Spec', 'File::Spec::Cygwin', 'File::Spec::Epoc', 'File::Spec::Functions', 'File::Spec::Mac', 'File::Spec::OS2', 'File::Spec::Unix', 'File::Spec::VMS', 'File::Spec::Win32', 'File::Temp', 'Filter::Simple', 'Filter::Util::Call', 'Getopt::Long', 'I18N::LangTags', 'I18N::LangTags::Detect', 'I18N::LangTags::List', 'I18N::Langinfo', 'IO', 'IO::Compress::Adapter::Bzip2', 'IO::Compress::Adapter::Deflate', 'IO::Compress::Adapter::Identity', 'IO::Compress::Base', 'IO::Compress::Base::Common', 'IO::Compress::Bzip2', 'IO::Compress::Deflate', 'IO::Compress::Gzip', 'IO::Compress::Gzip::Constants', 'IO::Compress::RawDeflate', 'IO::Compress::Zip', 'IO::Compress::Zip::Constants', 'IO::Compress::Zlib::Constants', 'IO::Compress::Zlib::Extra', 'IO::Dir', 'IO::File', 'IO::Handle', 'IO::Pipe', 'IO::Poll', 'IO::Seekable', 'IO::Select', 'IO::Socket', 'IO::Socket::INET', 'IO::Socket::UNIX', 'IO::Uncompress::Adapter::Bunzip2', 'IO::Uncompress::Adapter::Identity', 'IO::Uncompress::Adapter::Inflate', 'IO::Uncompress::AnyInflate', 'IO::Uncompress::AnyUncompress', 'IO::Uncompress::Base', 'IO::Uncompress::Bunzip2', 'IO::Uncompress::Gunzip', 'IO::Uncompress::Inflate', 'IO::Uncompress::RawInflate', 'IO::Uncompress::Unzip', 'IO::Zlib', 'IPC::Cmd', 'IPC::Msg', 'IPC::Semaphore', 'IPC::SharedMem', 'IPC::SysV', 'List::Util', 'List::Util::PP', 'List::Util::XS', 'Locale::Constants', 'Locale::Country', 'Locale::Currency', 'Locale::Language', 'Locale::Maketext', 'Locale::Maketext::Guts', 'Locale::Maketext::GutsLoader', 'Locale::Maketext::Simple', 'Locale::Script', 'Log::Message', 'Log::Message::Config', 'Log::Message::Handlers', 'Log::Message::Item', 'Log::Message::Simple', 'MIME::Base64', 'MIME::QuotedPrint', 'Math::BigFloat', 'Math::BigFloat::Trace', 'Math::BigInt', 'Math::BigInt::Calc', 'Math::BigInt::CalcEmu', 'Math::BigInt::FastCalc', 'Math::BigInt::Trace', 'Math::BigRat', 'Math::Complex', 'Math::Trig', 'Memoize', 'Memoize::AnyDBM_File', 'Memoize::Expire', 'Memoize::ExpireFile', 'Memoize::ExpireTest', 'Memoize::NDBM_File', 'Memoize::SDBM_File', 'Memoize::Storable', 'Module::Build', 'Module::Build::Base', 'Module::Build::Compat', 'Module::Build::Config', 'Module::Build::ConfigData', 'Module::Build::Cookbook', 'Module::Build::Dumper', 'Module::Build::ModuleInfo', 'Module::Build::Notes', 'Module::Build::PPMMaker', 'Module::Build::Platform::Amiga', 'Module::Build::Platform::Default', 'Module::Build::Platform::EBCDIC', 'Module::Build::Platform::MPEiX', 'Module::Build::Platform::MacOS', 'Module::Build::Platform::RiscOS', 'Module::Build::Platform::Unix', 'Module::Build::Platform::VMS', 'Module::Build::Platform::VOS', 'Module::Build::Platform::Windows', 'Module::Build::Platform::aix', 'Module::Build::Platform::cygwin', 'Module::Build::Platform::darwin', 'Module::Build::Platform::os2', 'Module::Build::PodParser', 'Module::Build::Version', 'Module::Build::YAML', 'Module::CoreList', 'Module::Load', 'Module::Load::Conditional', 'Module::Loaded', 'Module::Pluggable', 'Module::Pluggable::Object', 'NEXT', 'Net::Cmd', 'Net::Config', 'Net::Domain', 'Net::FTP', 'Net::FTP::A', 'Net::FTP::E', 'Net::FTP::I', 'Net::FTP::L', 'Net::FTP::dataconn', 'Net::NNTP', 'Net::Netrc', 'Net::POP3', 'Net::SMTP', 'Net::Time', 'Object::Accessor', 'Package::Constants', 'Params::Check', 'Parse::CPAN::Meta', 'PerlIO::via::QuotedPrint', 'Pod::Checker', 'Pod::Escapes', 'Pod::Find', 'Pod::Html', 'Pod::InputObjects', 'Pod::LaTeX', 'Pod::Man', 'Pod::ParseLink', 'Pod::ParseUtils', 'Pod::Parser', 'Pod::Perldoc', 'Pod::Perldoc::BaseTo', 'Pod::Perldoc::GetOptsOO', 'Pod::Perldoc::ToChecker', 'Pod::Perldoc::ToMan', 'Pod::Perldoc::ToNroff', 'Pod::Perldoc::ToPod', 'Pod::Perldoc::ToRtf', 'Pod::Perldoc::ToText', 'Pod::Perldoc::ToTk', 'Pod::Perldoc::ToXml', 'Pod::PlainText', 'Pod::Plainer', 'Pod::Select', 'Pod::Simple', 'Pod::Simple::BlackBox', 'Pod::Simple::Checker', 'Pod::Simple::Debug', 'Pod::Simple::DumpAsText', 'Pod::Simple::DumpAsXML', 'Pod::Simple::HTML', 'Pod::Simple::HTMLBatch', 'Pod::Simple::HTMLLegacy', 'Pod::Simple::LinkSection', 'Pod::Simple::Methody', 'Pod::Simple::Progress', 'Pod::Simple::PullParser', 'Pod::Simple::PullParserEndToken', 'Pod::Simple::PullParserStartToken', 'Pod::Simple::PullParserTextToken', 'Pod::Simple::PullParserToken', 'Pod::Simple::RTF', 'Pod::Simple::Search', 'Pod::Simple::SimpleTree', 'Pod::Simple::Text', 'Pod::Simple::TextContent', 'Pod::Simple::TiedOutFH', 'Pod::Simple::Transcode', 'Pod::Simple::TranscodeDumb', 'Pod::Simple::TranscodeSmart', 'Pod::Simple::XHTML', 'Pod::Simple::XMLOutStream', 'Pod::Text', 'Pod::Text::Color', 'Pod::Text::Overstrike', 'Pod::Text::Termcap', 'Pod::Usage', 'Safe', 'Scalar::Util', 'Scalar::Util::PP', 'SelfLoader', 'Shell', 'Storable', 'Switch', 'Sys::Syslog', 'Sys::Syslog::Win32', 'TAP::Base', 'TAP::Formatter::Base', 'TAP::Formatter::Color', 'TAP::Formatter::Console', 'TAP::Formatter::Console::ParallelSession', 'TAP::Formatter::Console::Session', 'TAP::Formatter::File', 'TAP::Formatter::File::Session', 'TAP::Formatter::Session', 'TAP::Harness', 'TAP::Object', 'TAP::Parser', 'TAP::Parser::Aggregator', 'TAP::Parser::Grammar', 'TAP::Parser::Iterator', 'TAP::Parser::Iterator::Array', 'TAP::Parser::Iterator::Process', 'TAP::Parser::Iterator::Stream', 'TAP::Parser::IteratorFactory', 'TAP::Parser::Multiplexer', 'TAP::Parser::Result', 'TAP::Parser::Result::Bailout', 'TAP::Parser::Result::Comment', 'TAP::Parser::Result::Plan', 'TAP::Parser::Result::Pragma', 'TAP::Parser::Result::Test', 'TAP::Parser::Result::Unknown', 'TAP::Parser::Result::Version', 'TAP::Parser::Result::YAML', 'TAP::Parser::ResultFactory', 'TAP::Parser::Scheduler', 'TAP::Parser::Scheduler::Job', 'TAP::Parser::Scheduler::Spinner', 'TAP::Parser::Source', 'TAP::Parser::Source::Perl', 'TAP::Parser::Utils', 'TAP::Parser::YAMLish::Reader', 'TAP::Parser::YAMLish::Writer', 'Term::ANSIColor', 'Term::Cap', 'Term::UI', 'Term::UI::History', 'Test', 'Test::Builder', 'Test::Builder::Module', 'Test::Builder::Tester', 'Test::Builder::Tester::Color', 'Test::Harness', 'Test::More', 'Test::Simple', 'Text::Balanced', 'Text::ParseWords', 'Text::Soundex', 'Text::Tabs', 'Text::Wrap', 'Thread::Queue', 'Thread::Semaphore', 'Tie::File', 'Tie::RefHash', 'Time::HiRes', 'Time::Local', 'Time::Piece', 'Time::Seconds', 'Unicode::Collate', 'Unicode::Normalize', 'Win32', 'Win32API::File', 'ExtUtils::Myconst2perl', 'XSLoader', 'autodie', 'autodie::exception', 'autodie::exception::system', 'autodie::hints', 'autouse', 'base', 'bigint', 'bignum', 'bigrat', 'constant', 'encoding', 'encoding::warnings', 'fields', 'if', 'inc::latest', 'lib', 'parent', 'threads', 'threads:shared', 'version', 'vmsish'); my @matches = grep $_ eq $d, @mods; if (@matches) { print "First released with perl: " . Module::CoreList->first_release($d), "\n"; print "@matches is core and is dualLived", "\n"; print "The current version number is: " . get_version($d), "\n"; my $m = Module::InstalledVersion->new($d); print "Your installed version is $m->{version}\n"; } else { system("corelist $d"), "\n"; print "It's not on the dual-lived list", "\n"; print "The current version number is: " . get_version($d), "\n"; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: RFC: DualLivedList
by Corion (Patriarch) on Apr 27, 2010 at 07:27 UTC | |
|
Re: RFC: DualLivedList
by toolic (Bishop) on Apr 29, 2010 at 15:42 UTC |