App-lcpan
view release on metacpan or search on metacpan
lib/App/lcpan.pm view on Meta::CPAN
},
},
tags => ['write-to-db', 'write-to-fs'],
};
sub update {
my %args = @_;
_set_args_default(\%args);
my $cpan = $args{cpan};
my $packages_path = "$cpan/modules/02packages.details.txt.gz";
my @st1 = stat($packages_path);
if (!$args{update_files}) {
log_info("Skipped updating files (reason: option update_files=0)");
} else {
_update_files(%args); # it only returns 200 or dies
}
my @st2 = stat($packages_path);
if (!$args{update_index} && !$args{force_update_index}) {
log_info("Skipped updating index (reason: option update_index=0)");
} elsif (!$args{force_update_index} && $args{update_files} &&
@st1 && @st2 && $st1[9] == $st2[9] && $st1[7] == $st2[7]) {
log_info("%s doesn't change mtime/size, skipping updating index",
$packages_path);
return [304, "Files did not change, index not updated"];
} else {
my $res = _update_index(%args);
( run in 0.937 second using v1.01-cache-2.11-cpan-49f99fa48dc )