#!/usr/bin/perl use warnings; use strict; use Module::CoreList; # find the highest subversion of perl in a family: e.g. 5.008007 for 5 +.008 sub highest_subversion { my ($perl_version, $module) = @_; # find the highest perl release for this version of perl return [reverse sort @{$Module::CoreList::families{$perl_version}} +]->[0]; } # find what version of a module is in a specific version of perl sub core_version { my ($perl_version, $module) = @_; if ( exists $Module::CoreList::version{$perl_version}{$module} ) { return $Module::CoreList::version{$perl_version}{$module}; } else { return; } } # print out the history of when a module was included in various perl +releases sub module_history { my ($module) = @_; my $in_core = Module::CoreList->first_release($module); if ($in_core) { print "$module version(s): \n"; for my $version (qw( 5.004 5.005 5.006 5.008 )) { my $subversion = highest_subversion( $version ); my $core_version = core_version( $subversion, $module); $core_version = "unknown version" unless $core_version; print " $core_version in perl $subversion\n"; } } else { print "$module: never released in core\n" } } module_history(shift @ARGV);
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Find version of a module included in perl core
by merlyn (Sage) on Aug 18, 2005 at 15:59 UTC | |
by xdg (Monsignor) on Aug 18, 2005 at 16:23 UTC |