CPANPLUS-Dist-Debora
view release on metacpan or search on metacpan
lib/CPANPLUS/Dist/Debora/Package.pm view on Meta::CPAN
}
return $name;
}
sub _get_author {
my $self = shift;
my $name;
my $author = $self->module->author;
if (defined $author && ref $author ne 'CPANPLUS::Module::Author::Fake') {
$name = $author->author;
}
return $name;
}
sub _get_packager {
my $self = shift;
my $name;
my $email;
my $EMAIL = qr{ \A
(?:([^<]*) \h+)? # name
<? ([^>]+@[^>]+) >? # email
}xms;
if ($self->rpm_eval('%{?packager}') =~ $EMAIL) {
$name = $1;
$email = $2;
}
if (!$name) {
NAME:
for my $key (qw(DEBFULLNAME NAME GITLAB_USER_NAME)) {
if ($ENV{$key}) {
$name = eval { decode_utf8($ENV{$key}) };
last NAME if $name;
}
}
}
for my $key (qw(DEBEMAIL EMAIL GITLAB_USER_EMAIL)) {
if ($ENV{$key}) {
my $value = eval { decode_utf8($ENV{$key}) };
if ($value && $value =~ $EMAIL) {
if (!$name) {
$name = $1;
}
if (!$email) {
$email = $2;
}
}
}
}
my $user;
my @pw = eval { getpwuid $UID };
if (@pw) {
$user = eval { decode_utf8($pw[0]) };
if (!$name) {
my $gecos = eval { decode_utf8($pw[6]) };
if ($gecos) {
($name) = split qr{,}xms, $gecos;
}
}
}
if (!$user) {
USER:
for my $key (qw(LOGNAME USER USERNAME)) {
if ($ENV{$key}) {
$user = eval { decode_utf8($ENV{$key}) };
last USER if $user;
}
}
}
if (!$user) {
$user = 'nobody';
}
if (!$name) {
$name = $user;
}
if (!$email) {
my $host = hostfqdn;
if (!$host) {
$host = 'localhost';
}
$host =~ s{[.]$}{}xms;
$email = $user . q{@} . $host;
}
return "$name <$email>";
}
sub _get_vendor {
my $self = shift;
my $vendor = $self->rpm_eval('%{?vendor}');
if (!$vendor || $vendor =~ m{%}xms) {
$vendor = 'CPANPLUS';
}
return $vendor;
}
sub _get_summary_from_meta {
my $self = shift;
my $summary;
my $meta = $self->_meta;
if (defined $meta) {
my $text = $meta->{abstract};
( run in 1.142 second using v1.01-cache-2.11-cpan-f56aa216473 )