App-MetaCPANUtils
view release on metacpan or search on metacpan
lib/App/MetaCPANUtils.pm view on Meta::CPAN
return $res unless $res->[0] == 200;
#use DD; dd $res;
my $rels = [sort {version->parse($b->{version}) <=> version->parse($a->{version})} @{$res->[2]}];
#use DD; dd $rels;
require Module::Release::Select;
my $rel = Module::Release::Select::select_release(
{detail=>1}, $args{version}, $rels);
#use DD; dd $rel;
return [404, "Version $args{version} of distribution $args{distribution} not found in releases"] unless $rel;
my $url = $rel->{download_url};
(my $filename = $url) =~ s!.+/!!;
return [412, "File '$filename' already exists, not overwriting (use -O to overwrite)"]
if (-f $filename) && !$args{overwrite};
open my $fh, ">", $filename
or return [500, "Can't open $filename for writing: $!"];
require HTTP::Tiny::Plugin;
( run in 2.016 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )