App-cpm
view release on metacpan or search on metacpan
lib/App/cpm/Resolver/Fixed.pm view on Meta::CPAN
use parent 'App::cpm::Resolver::MetaDB';
sub new {
my $class = shift;
my %package;
for my $argv (@_) {
my ($package, $fixed_version) = split /\@/, $argv;
$package{$package} = $fixed_version;
}
my $self = $class->SUPER::new;
$self->{_packages} = \%package;
$self;
}
sub resolve {
my ($self, $argv) = @_;
my $fixed_version = $self->{_packages}{$argv->{package}};
return { error => "not found" } if !$fixed_version;
my $version_range = $argv->{version_range};
if ($version_range) {
$version_range .= ", == $fixed_version";
} else {
$version_range = "== $fixed_version";
}
$self->SUPER::resolve({ %$argv, version_range => $version_range });
}
1;
lib/App/cpm/Worker/Installer/Menlo.pm view on Meta::CPAN
use App::cpm::Logger::File;
use App::cpm::Util 'WIN32';
use Command::Runner;
use Config;
use File::Which ();
use Menlo::Builder::Static;
sub new {
my ($class, %option) = @_;
$option{log} ||= $option{logger}->file;
my $self = $class->SUPER::new(%option);
if ($self->{make} = File::Which::which($Config{make})) {
$self->{logger}->log("You have make $self->{make}");
}
{
my ($http, $desc) = App::cpm::HTTP->create;
$self->{http} = $http;
$self->{logger}->log("You have $desc");
}
{
lib/App/cpm/version.pm view on Meta::CPAN
$requirements->add_string_requirement('DummyModule', $version_range);
$requirements->accepts_module('DummyModule', $self->numify);
}
# suppress warnings
# > perl -Mwarnings -Mversion -e 'print version->parse("1.02_03")->numify'
# alpha->numify() is lossy at -e line 1.
# 1.020300
sub numify {
local $SIG{__WARN__} = sub {};
shift->SUPER::numify(@_);
}
sub parse {
local $SIG{__WARN__} = sub {};
shift->SUPER::parse(@_);
}
# utility function
sub range_merge {
my ($range1, $range2) = @_;
my $req = CPAN::Meta::Requirements->new;
$req->add_string_requirement('DummyModule', $_) for $range1, $range2; # may die
$req->requirements_for_module('DummyModule');
}
( run in 0.393 second using v1.01-cache-2.11-cpan-a9ef4e587e4 )