App-ModuleBuildTiny
view release on metacpan or search on metacpan
lib/App/ModuleBuildTiny/Dist.pm view on Meta::CPAN
return delete $extra->{name} if defined $extra->{name};
return basename(rel2abs('.')) =~ s/ (?: ^ (?: perl|p5 ) - | [\-\.]pm $ )//xr;
}
sub detect_license {
my ($data, $filename, $authors, $mergedata) = @_;
if ($mergedata->{license} && @{$mergedata->{license}} == 1) {
require Software::LicenseUtils;
Software::LicenseUtils->VERSION(0.103014);
my $spec_version = $mergedata->{'meta-spec'} && $mergedata->{'meta-spec'}{version} ? $mergedata->{'meta-spec'}{version} : 2;
my @guess = Software::LicenseUtils->guess_license_from_meta_key($mergedata->{license}[0], $spec_version);
die "Couldn't parse license from metamerge: @guess\n" if @guess > 1;
if (@guess) {
my $class = $guess[0];
require_module($class);
return $class->new({holder => join(', ', @{$authors})});
}
}
my (@license_sections) = grep { /licen[cs]e|licensing|copyright|legal|authors?\b/i } $data->pod_inside;
for my $license_section (@license_sections) {
next unless defined ( my $license_pod = $data->pod($license_section) );
require Software::LicenseUtils;
Software::LicenseUtils->VERSION(0.103014);
my $content = "=head1 LICENSE\n" . $license_pod;
my @guess = Software::LicenseUtils->guess_license_from_pod($content);
next if not @guess;
die "Couldn't parse license from $license_section in $filename: @guess\n" if @guess != 1;
my $class = $guess[0];
my ($year) = $license_pod =~ /.*? copyright .*? ([\d\-]+)/;
require_module($class);
return $class->new({holder => join(', ', @{$authors}), year => $year});
}
die "No license found in $filename\n";
}
sub get_changes {
my $self = shift;
my $version = quotemeta $self->meta->version;
( run in 0.673 second using v1.01-cache-2.11-cpan-702932259ff )