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 49 50
|
#line 1
package Module::Install::TrustMetaYml;
use 5.005;
use strict;
BEGIN {
$Module::Install::TrustMetaYml::AUTHORITY = 'cpan:TOBYINK';
$Module::Install::TrustMetaYml::VERSION = '0.002';
}
use base qw(Module::Install::Base);
sub trust_meta_yml
{
my ($self, $where) = @_;
$where ||= 'META.yml';
$self->perl_version('5.005') unless defined $self->perl_version;
$self->include_deps('YAML::Tiny', 0);
return $self if $self->is_admin;
require YAML::Tiny;
my $data = YAML::Tiny::LoadFile($where);
$self->perl_version($data->{requires}{perl} || '5.005');
KEY: foreach my $key (qw(requires recommends build_requires))
{
next KEY unless ref $data->{$key} eq 'HASH';
my %deps = %{$data->{$key}};
DEP: while (my ($pkg, $ver) = each %deps)
{
next if $pkg eq 'perl';
$self->$key($pkg, $ver);
}
}
return $self;
}
*trust_meta_yaml = \&trust_meta_yml;
1;
__END__
=encoding utf8
|