view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
# Perl versions (eg, 5.8.1).
sub _version ($) {
my $s = shift || 0;
my $d =()= $s =~ /(\.)/g;
if ( $d >= 2 ) {
# Normalise multipart versions
$s =~ s/(\.)(\d{1,3})/sprintf("$1%03d",$2)/eg;
}
$s =~ s/^(\d+)\.?//;
my $l = $1 || 0;
my @v = map {
$_ . '0' x (3 - length $_)
} $s =~ /(\d{1,3})\D?/g;
$l = $l . '.' . join '', @v if @v;
return $l + 0;
}
sub _cmp ($$) {
_version($_[0]) <=> _version($_[1]);
}
inc/Module/Install/AuthorTests.pm view on Meta::CPAN
my @tests = $self->tests ? (split / /, $self->tests) : 't/*.t';
# XXX: pick a default, later -- rjbs, 2008-02-24
my @dirs = @$dirs ? @$dirs : Carp::confess "no dirs given to author_tests";
@dirs = grep { -d } @dirs;
if ($recurse) {
require File::Find;
my %test_dir;
File::Find::find(_wanted(\%test_dir), @dirs);
$self->tests( join ' ', @tests, map { "$_/*.t" } sort keys %test_dir );
} else {
$self->tests( join ' ', @tests, map { "$_/*.t" } sort @dirs );
}
}
#line 107
1;
inc/Module/Install/Makefile.pm view on Meta::CPAN
sub _wanted_t {
}
sub tests_recursive {
my $self = shift;
my $dir = shift || 't';
unless ( -d $dir ) {
die "tests_recursive dir '$dir' does not exist";
}
my %tests = map { $_ => 1 } split / /, ($self->tests || '');
require File::Find;
File::Find::find(
sub { /\.t$/ and -f $_ and $tests{"$File::Find::dir/*.t"} = 1 },
$dir
);
$self->tests( join ' ', sort keys %tests );
}
sub write {
my $self = shift;
inc/Module/Install/Makefile.pm view on Meta::CPAN
my @tests = split ' ', $self->tests;
my %seen;
$args->{test} = {
TESTS => (join ' ', grep {!$seen{$_}++} @tests),
};
} elsif ( $Module::Install::ExtraTests::use_extratests ) {
# Module::Install::ExtraTests doesn't set $self->tests and does its own tests via harness.
# So, just ignore our xt tests here.
} elsif ( -d 'xt' and ($Module::Install::AUTHOR or $ENV{RELEASE_TESTING}) ) {
$args->{test} = {
TESTS => join( ' ', map { "$_/*.t" } grep { -d $_ } qw{ t xt } ),
};
}
if ( $] >= 5.005 ) {
$args->{ABSTRACT} = $self->abstract;
$args->{AUTHOR} = join ', ', @{$self->author || []};
}
if ( $self->makemaker(6.10) ) {
$args->{NO_META} = 1;
#$args->{NO_MYMETA} = 1;
}
inc/Module/Install/Makefile.pm view on Meta::CPAN
}
unless ( $self->is_admin ) {
delete $args->{SIGN};
}
if ( $self->makemaker(6.31) and $self->license ) {
$args->{LICENSE} = $self->license;
}
my $prereq = ($args->{PREREQ_PM} ||= {});
%$prereq = ( %$prereq,
map { @$_ } # flatten [module => version]
map { @$_ }
grep $_,
($self->requires)
);
# Remove any reference to perl, PREREQ_PM doesn't support it
delete $args->{PREREQ_PM}->{perl};
# Merge both kinds of requires into BUILD_REQUIRES
my $build_prereq = ($args->{BUILD_REQUIRES} ||= {});
%$build_prereq = ( %$build_prereq,
map { @$_ } # flatten [module => version]
map { @$_ }
grep $_,
($self->configure_requires, $self->build_requires)
);
# Remove any reference to perl, BUILD_REQUIRES doesn't support it
delete $args->{BUILD_REQUIRES}->{perl};
# Delete bundled dists from prereq_pm, add it to Makefile DIR
my $subdirs = ($args->{DIR} || []);
if ($self->bundles) {
inc/Module/Install/Makefile.pm view on Meta::CPAN
if ( $self->makemaker(6.48) ) {
$args->{MIN_PERL_VERSION} = $perl_version;
}
}
if ($self->installdirs) {
warn qq{old INSTALLDIRS (probably set by makemaker_args) is overriden by installdirs\n} if $args->{INSTALLDIRS};
$args->{INSTALLDIRS} = $self->installdirs;
}
my %args = map {
( $_ => $args->{$_} ) } grep {defined($args->{$_} )
} keys %$args;
my $user_preop = delete $args{dist}->{PREOP};
if ( my $preop = $self->admin->preop($user_preop) ) {
foreach my $key ( keys %$preop ) {
$args{dist}->{$key} = $preop->{$key};
}
}
inc/Module/Install/Metadata.pm view on Meta::CPAN
push @{$self->{values}->{$key}}, @_;
return $self;
};
}
foreach my $key ( @resource_keys ) {
*$key = sub {
my $self = shift;
unless ( @_ ) {
return () unless $self->{values}->{resources};
return map { $_->[1] }
grep { $_->[0] eq $key }
@{ $self->{values}->{resources} };
}
return $self->{values}->{resources}->{$key} unless @_;
my $uri = shift or die(
"Did not provide a value to $key()"
);
$self->resources( $key => $uri );
return 1;
};
inc/Module/Install/Metadata.pm view on Meta::CPAN
*$key = sub {
my $self = shift;
return $self->{values}->{$key} unless @_;
my @added;
while ( @_ ) {
my $module = shift or last;
my $version = shift || 0;
push @added, [ $module, $version ];
}
push @{ $self->{values}->{$key} }, @added;
return map {@$_} @added;
};
}
# Resource handling
my %lc_resource = map { $_ => 1 } qw{
homepage
license
bugtracker
repository
};
sub resources {
my $self = shift;
while ( @_ ) {
my $name = shift or last;
inc/Module/Install/Metadata.pm view on Meta::CPAN
# The user used ->feature like ->features by passing in the second
# argument as a reference. Accomodate for that.
$mods = $_[0];
} else {
$mods = \@_;
}
my $count = 0;
push @$features, (
$name => [
map {
ref($_) ? ( ref($_) eq 'HASH' ) ? %$_ : @$_ : $_
} @$mods
]
);
return @$features;
}
sub features {
my $self = shift;
inc/Module/Install/Metadata.pm view on Meta::CPAN
([^\n]*)
|
=head \d \s+ (?:licen[cs]e|licensing|copyright|legal)\b \s*
.*? copyright .*? \d\d\d[\d.]+ \s* (?:\bby\b)? \s*
([^\n]*)
/ixms) {
my $author = $1 || $2;
# XXX: ugly but should work anyway...
if (eval "require Pod::Escapes; 1") {
# Pod::Escapes has a mapping table.
# It's in core of perl >= 5.9.3, and should be installed
# as one of the Pod::Simple's prereqs, which is a prereq
# of Pod::Text 3.x (see also below).
$author =~ s{ E<( (\d+) | ([A-Za-z]+) )> }
{
defined $2
? chr($2)
: defined $Pod::Escapes::Name2character_number{$1}
? chr($Pod::Escapes::Name2character_number{$1})
: do {
warn "Unknown escape: E<$1>";
"E<$1>";
};
}gex;
}
elsif (eval "require Pod::Text; 1" && $Pod::Text::VERSION < 3) {
# Pod::Text < 3.0 has yet another mapping table,
# though the table name of 2.x and 1.x are different.
# (1.x is in core of Perl < 5.6, 2.x is in core of
# Perl < 5.9.3)
my $mapping = ($Pod::Text::VERSION < 2)
? \%Pod::Text::HTML_Escapes
: \%Pod::Text::ESCAPES;
$author =~ s{ E<( (\d+) | ([A-Za-z]+) )> }
{
defined $2
? chr($2)
: defined $mapping->{$1}
? $mapping->{$1}
: do {
warn "Unknown escape: E<$1>";
"E<$1>";
};
}gex;
}
else {
$author =~ s{E<lt>}{<}g;
$author =~ s{E<gt>}{>}g;
}
inc/Module/Install/Metadata.pm view on Meta::CPAN
# Load the advisory META.yml file
my @yaml = Parse::CPAN::Meta::LoadFile('META.yml');
my $meta = $yaml[0];
# Overwrite the non-configure dependency hashs
delete $meta->{requires};
delete $meta->{build_requires};
delete $meta->{recommends};
if ( exists $val->{requires} ) {
$meta->{requires} = { map { @$_ } @{ $val->{requires} } };
}
if ( exists $val->{build_requires} ) {
$meta->{build_requires} = { map { @$_ } @{ $val->{build_requires} } };
}
return $meta;
}
1;
inc/Test/More.pm view on Meta::CPAN
my @nok = ();
foreach my $method (@methods) {
$tb->_try( sub { $proto->can($method) } ) or push @nok, $method;
}
my $name = (@methods == 1) ? "$class->can('$methods[0]')" :
"$class->can(...)" ;
my $ok = $tb->ok( !@nok, $name );
$tb->diag( map " $class->can('$_') failed\n", @nok );
return $ok;
}
#line 572
sub isa_ok ($$;$) {
my( $object, $class, $obj_name ) = @_;
my $tb = Test::More->builder;
lib/Acme/W.pm view on Meta::CPAN
s/([^\$\w\d])sub([^\w\d])/$1Wwwww$2/g;
s/([^\$\w\d])sin([^\w\d])/$1wWWWW$2/g;
s/([^\$\w\d])say([^\w\d])/$1wWWWw$2/g;
s/([^\$\w\d])ref([^\w\d])/$1wWWwW$2/g;
s/([^\$\w\d])pos([^\w\d])/$1wWWww$2/g;
s/([^\$\w\d])pop([^\w\d])/$1wWwWW$2/g;
s/([^\$\w\d])our([^\w\d])/$1wWwWw$2/g;
s/([^\$\w\d])ord([^\w\d])/$1wWwwW$2/g;
s/([^\$\w\d])oct([^\w\d])/$1wWwww$2/g;
s/([^\$\w\d])not([^\w\d])/$1wwWWW$2/g;
s/([^\$\w\d])map([^\w\d])/$1wwWWw$2/g;
s/([^\$\w\d])log([^\w\d])/$1wwWwW$2/g;
s/([^\$\w\d])int([^\w\d])/$1wwWww$2/g;
s/([^\$\w\d])hex([^\w\d])/$1wwwWW$2/g;
s/([^\$\w\d])for([^\w\d])/$1wwwWw$2/g;
s/([^\$\w\d])exp([^\w\d])/$1wwwwW$2/g;
s/([^\$\w\d])eof([^\w\d])/$1wwwww$2/g;
s/([^\$\w\d])die([^\w\d])/$1WWWW$2/g;
s/([^\$\w\d])cos([^\w\d])/$1WWWw$2/g;
s/([^\$\w\d])cmp([^\w\d])/$1WWwW$2/g;
s/([^\$\w\d])chr([^\w\d])/$1WWww$2/g;
lib/Acme/W.pm view on Meta::CPAN
s/([^\$\w\d])Wwwww([^\w\d])/$1sub$2/g;
s/([^\$\w\d])wWWWW([^\w\d])/$1sin$2/g;
s/([^\$\w\d])wWWWw([^\w\d])/$1say$2/g;
s/([^\$\w\d])wWWwW([^\w\d])/$1ref$2/g;
s/([^\$\w\d])wWWww([^\w\d])/$1pos$2/g;
s/([^\$\w\d])wWwWW([^\w\d])/$1pop$2/g;
s/([^\$\w\d])wWwWw([^\w\d])/$1our$2/g;
s/([^\$\w\d])wWwwW([^\w\d])/$1ord$2/g;
s/([^\$\w\d])wWwww([^\w\d])/$1oct$2/g;
s/([^\$\w\d])wwWWW([^\w\d])/$1not$2/g;
s/([^\$\w\d])wwWWw([^\w\d])/$1map$2/g;
s/([^\$\w\d])wwWwW([^\w\d])/$1log$2/g;
s/([^\$\w\d])wwWww([^\w\d])/$1int$2/g;
s/([^\$\w\d])wwwWW([^\w\d])/$1hex$2/g;
s/([^\$\w\d])wwwWw([^\w\d])/$1for$2/g;
s/([^\$\w\d])wwwwW([^\w\d])/$1exp$2/g;
s/([^\$\w\d])wwwww([^\w\d])/$1eof$2/g;
s/([^\$\w\d])WWWW([^\w\d])/$1die$2/g;
s/([^\$\w\d])WWWw([^\w\d])/$1cos$2/g;
s/([^\$\w\d])WWwW([^\w\d])/$1cmp$2/g;
s/([^\$\w\d])WWww([^\w\d])/$1chr$2/g;
xt/01_podspell.t view on Meta::CPAN
use Test::More;
eval q{ use Test::Spelling };
plan skip_all => "Test::Spelling is not installed." if $@;
add_stopwords(map { split /[\s\:\-]/ } <DATA>);
$ENV{LANG} = 'C';
all_pod_files_spelling_ok('lib');
__DATA__
Takashi Higashigata
dameo@cpan.org
Acme::W