Acme-CPANAuthors-French
view release on metacpan or search on metacpan
use strict;
use warnings;
use Module::Build;
my $builder = Module::Build->new(
module_name => 'Acme::CPANAuthors::French',
license => 'perl',
dist_author => 'Sébastien Aperghis-Tramoni <sebastien@aperghis.net>',
dist_version_from => 'lib/Acme/CPANAuthors/French.pm',
requires => {
'perl' => '5.008',
'Acme::CPANAuthors' => '0.04',
},
build_requires => {
'Test::More' => 0,
},
add_to_cleanup => [ 'Acme-CPANAuthors-French-*' ],
);
MANIFEST
META.yml
Build.PL
Makefile.PL
README
Changes
lib/Acme/CPANAuthors/French.pm
eg/author_info
eg/count
t/00-load.t
t/10-synopsis.t
t/80-cpan-rt-45077.t
t/90-pod.t
t/91-pod-coverage.t
---
abstract: 'Nous sommes des auteurs CPAN francophones'
author:
- 'Sébastien Aperghis-Tramoni <sebastien@aperghis.net>'
build_requires:
Test::More: 0
configure_requires:
Module::Build: 0.36
generated_by: 'Module::Build version 0.3607'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
NAME
Acme::CPANAuthors::French - We are French CPAN authors
Nous sommes des auteurs CPAN francophones
DESCRIPTION
This class provides a hash of French CPAN authors' PAUSE ID and name to
the Acme::CPANAuthors module.
INSTALLATION
To install this module, run the following commands:
perl Makefile.PL
make
make test
eg/author_info view on Meta::CPAN
#!/usr/bin/perl
use strict;
use Acme::CPANAuthors;
die "usage: $0 PAUSE_ID [PAUSE_ID ...]\n" unless @ARGV;
my $authors = Acme::CPANAuthors->new("French");
for my $id (@ARGV) {
$id = uc $id;
my $name = $authors->name($id) || $id;
my @dists = $authors->distributions($id);
my $kwalitee = $authors->kwalitee($id);
print "$name has published ", ~~@dists," distributions:\n";
@dists = sort { lc($a->dist) cmp lc($b->dist) } @dists;
for my $dist (@dists) {
printf " - %s v%s, kwalitee %s\n",
$dist->dist, $dist->version,
$kwalitee->{distributions}{ $dist->dist }{kwalitee},
}
#!/usr/bin/perl
use strict;
use Acme::CPANAuthors;
my $authors = Acme::CPANAuthors->new("French");
my $number = $authors->count;
print "$number declared French-speaking CPAN authors\n";
lib/Acme/CPANAuthors/French.pm view on Meta::CPAN
» http://www.myspace.com/cloclomadeinjapan
>
__END__
=encoding UTF-8
=head1 NAME
Acme::CPANAuthors::French - We are French-speaking CPAN authors
Acme::CPANAuthors::French - Nous sommes des auteurs CPAN francophones
=head1 VERSION
Version 0.07
=head1 SYNOPSIS
use Acme::CPANAuthors;
my $authors = Acme::CPANAuthors->new("French");
my $number = $authors->count;
my @ids = $authors->id;
my @distros = $authors->distributions("SAPER");
my $url = $authors->avatar_url("VPIT");
my $kwalitee = $authors->kwalitee("BOOK");
my $name = $authors->name("RGARCIA");
=head1 DESCRIPTION
This class provides a hash of French CPAN authors' PAUSE ID and name to
the C<Acme::CPANAuthors> module.
=head1 MAINTENANCE
If you are a French CPAN author not listed here, please send me your ID/name
via email or RT so we can always keep this module up to date. If there's a
mistake and you're listed here but are not French (or just don't want to be
listed), sorry for the inconvenience: please contact me and I'll remove the
entry right away.
=head1 SEE ALSO
L<Acme::CPANAuthors> - Main class to manipulate this one
L<Acme::CPANAuthors::Austrian> - Austrian CPAN authors
L<Acme::CPANAuthors::Brazilian> - Brazilian CPAN authors
L<Acme::CPANAuthors::Chinese> - Chinese CPAN authors
L<Acme::CPANAuthors::Japanese> - Japanese CPAN authors
=head1 AUTHOR
Sébastien Aperghis-Tramoni C<< <sebastien at aperghis.net> >>
=head1 BUGS
Please report any bugs or feature requests to
C<bug-acme-cpanauthors-french at rt.cpan.org>, or through the web interface at
L<http://rt.cpan.org/Dist/Display.html?Queue=Acme-CPANAuthors-French>.
I will be notified, and then you'll automatically be notified of
progress on your bug as I make changes.
=head1 SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Acme::CPANAuthors::French
t/10-synopsis.t view on Meta::CPAN
#!perl
use strict;
use warnings;
use Test::More;
plan skip_all => "can't load Acme::CPANAuthors"
unless eval "use Acme::CPANAuthors; 1";
plan tests => 9;
my $authors = eval { Acme::CPANAuthors->new("French") };
is( $@, "", "creating a new Acme::CPANAuthors object with French authors" );
isa_ok( $authors, "Acme::CPANAuthors" );
my $number = $authors->count;
cmp_ok( $number, ">", 0, " .. \$authors->count is a non-null number" );
my @ids = $authors->id;
cmp_ok( ~~@ids, ">", 0, " .. \$authors->id gives a non-empty list" );
is( ~~@ids, $number, " .. \$authors->id eqals \$authors->count" );
SKIP: {
skip "CPAN configuration not available", 4
unless eval "Acme::CPANAuthors::Utils::_cpan_authors_file() ; 1";
my @distros = $authors->distributions("SAPER");
cmp_ok( ~~@distros, ">", 0, " .. \$authors->distributions gives a non-empty list" );
my $url = $authors->avatar_url("VPIT");
cmp_ok( length($url), ">", 0, " .. \$authors->avatar_url('VPIT') gives a non-empty string" );
my $kwalitee = eval { $authors->kwalitee("BOOK") };
SKIP: {
skip $@, 1 if $@ =~ /Can't connect to cpants.perl.org/;
isa_ok( $kwalitee, "HASH", " .. \$authors->kwalitee('BOOK')" );
}
my $name = $authors->name("RGARCIA");
cmp_ok( length($name), ">", 0, " .. \$authors->name('RGARCIA') gives a non-empty string" );
}
t/80-cpan-rt-45077.t view on Meta::CPAN
# checks for bug CPAN-RT#45077, contributed by Olivier Mengue
my %name = (
DOLMEN => [ 23, "Olivier Mengué (dolmen)" ],
JFENAL => [ 12, "Jérôme Fenal" ],
);
plan tests => 2 * keys %name;
my $authors = Acme::CPANAuthors->new('French');
for my $pauseid (keys %name) {
my $author = $authors->name($pauseid);
is( length $author, $name{$pauseid}[0],
"$pauseid: author name must be $name{$pauseid}[0] chars long" );
is( $author, $name{$pauseid}[1], "$pauseid: checking encoding" );
}
( run in 1.136 second using v1.01-cache-2.11-cpan-5c0b1e786e0 )