App-cpantimes
view release on metacpan or search on metacpan
use base 'App::cpanminus::script';
my $HOME =
defined $ENV{HOME} ? $ENV{HOME} :
defined $ENV{APPDATA} ? $ENV{APPDATA} :
die("Could not determine home directory!");
sub new
{
my ($class, @args) = @_;
my $self = $class->SUPER::new(@args);
$self->{_metabase_api} = 'https://metabase.cpantesters.org/api/v1/';
$self->{_metabase_file} = "File::Spec"->catfile(
$HOME,
qw< .cpantesters metabase_id.json >,
);
eval {
require Test::Reporter;
require Test::Reporter::Transport::Metabase;
return $self;
}
# Need to clear _current_dist before each installation, to ensure reports
# don't get sent based on incorrect info.
sub install_module
{
my ($self, @args) = @_;
delete $self->{_current_dist};
$self->SUPER::install_module(@args);
}
sub resolve_name
{
my ($self, @args) = @_;
my $dist = $self->SUPER::resolve_name(@args);
$self->{_current_dist} = $dist;
return $dist;
}
sub cpants_report
{
my ($self, $grade, $distname) = @_;
eval {
require Test::Reporter;
require Test::Reporter::Transport::Metabase;
( run in 0.339 second using v1.01-cache-2.11-cpan-a9ef4e587e4 )