Acme-CPANAuthors-British
view release on metacpan or search on metacpan
Revision history for Acme-CPANAuthors-British
=============================================
1.05 2019-08-25
- PR #3 from Mohammad S Anwar
https://github.com/barbie/acme-cpanauthors-british/pull/3
- PR #4 from Mohammad S Anwar
https://github.com/barbie/acme-cpanauthors-british/pull/4
1.04 2019-08-17
- 7 new authors added.
- improvements following suggestions from Kratika.io.
1.03 2015-02-24
- James Aitken sadly died last year.
- extended META test suite.
1.02 2014-08-18
- fixed license fields in META.json to be lists.
- added new Authors: PRICHMOND, PWR.
0.15 2012-11-04
- removed JMCNAMARA.
0.14 2012-11-04
- change quality test for a company with distros!
0.13 2012-09-19
- implemented Perl::Critic suggestions.
- change file dates changed to meet W3CDTF standards.
- updated ping test to api.cpanauthors.org
- added BOB (Bob Walker)
0.12 2012-08-21
- added NEWELLC (Colin Newell)
0.11 2012-07-03
- added JAITKEN (James Aitken)
0.10 2012-04-29
- more reliable skip tests added to 11companies.t.
- more reliable skip tests.
0.08 2012-04-17
- spelling fix. (thanks to Florian Schlichting & Gregor Herrmann).
- added minimum perl version (5.006).
- fixed test pre-requisites.
- reworked Makefile.PL for clarity.
- more documentation.
0.07 2012-04-09
- added NEILB and IOANR as British authors.
0.06 2012-04-08
- added missing test pre-requisite, IO::File.
- added 1 British CPAN company.
- added 34 British CPAN authors.
0.05 2012-04-06
- fixed CPANTS tests.
- added META.json and test script.
0.04 2010-11-04
- fixed skip count and updated pingtest for 11companies.t.
0.03 2010-10-31
- revised pingtest.
- added CJK, CYCLES, SKX and XEONTIME as British authors.
0.02 2009-12-09
- added DOTTK as a British Company (RT#51438, thanks DAXIM).
0.01 2009-11-10
First version, released because no-one else dared!
MANIFEST
META.json
META.yml
Makefile.PL
README
Changes
lib/Acme/CPANAuthors/British.pm
lib/Acme/CPANAuthors/British/Companies.pm
LICENSE
examples/author_info
examples/company_info
examples/count
t/00load.t
t/10british.t
t/11companies.t
t/90podtest.t
t/91podcover.t
t/94metatest.t
t/95changedate.t
t/96metatest.t
{
"name": "Acme-CPANAuthors-British",
"version": "1.05",
"abstract": "We are British CPAN authors.",
"author": [
"Barbie (BARBIE) <barbie@cpan.org>"
],
"license": [ "artistic_2" ],
"dynamic_config" : 0,
"release_status" : "stable",
"meta-spec": {
"version": "2",
"url": "http://search.cpan.org/dist/CPAN-Meta/lib/CPAN/Meta/Spec.pm"
},
"generated_by": "The Hand of Barbie 1.0",
"keywords" : [
"acme",
"cpan",
"authors"
],
"prereqs" : {
"runtime" : {
"requires" : {
"perl": "5.006",
"Acme::CPANAuthors": "0.04"
}
},
"test" : {
}
},
"no_index": {
"directory": ["t","examples"]
},
"resources": {
"license": [ "http://www.perlfoundation.org/artistic_license_2_0" ],
"bugtracker": { "web": "http://rt.cpan.org/Public/Dist/Display.html?Name=Acme-CPANAuthors-British" },
"repository": {
"url": "git://github.com/barbie/acme-cpanauthors-british.git",
"web": "http://github.com/barbie/acme-cpanauthors-british",
"type": "git"
}
}
}
--- #YAML:1.0
name: Acme-CPANAuthors-British
version: 1.05
abstract: We are British CPAN authors.
author:
- Barbie <barbie@cpan.org>
license: artistic_2
distribution_type: module
installdirs: site
requires:
perl: 5.006
Acme::CPANAuthors: 0.04
recommends:
file: lib/Acme/CPANAuthors/British/Companies.pm
version: 1.05
no_index:
directory:
- t
- examples
resources:
license: http://www.perlfoundation.org/artistic_license_2_0
bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=Acme-CPANAuthors-British
repository: http://github.com/barbie/acme-cpanauthors-british
meta-spec:
version: 1.4
url: http://module-build.sourceforge.net/META-spec-v1.4.html
generated_by: The Hand of Barbie 1.0
Makefile.PL view on Meta::CPAN
use strict;
use warnings;
use 5.006;
use ExtUtils::MakeMaker;
WriteMakefile(
AUTHOR => 'Barbie <barbie@cpan.org>',
NAME => 'Acme::CPANAuthors::British',
VERSION_FROM => 'lib/Acme/CPANAuthors/British.pm',
ABSTRACT => 'We are British CPAN authors',
NO_META => 1,
PREREQ_PM => {
# prereqs
'Acme::CPANAuthors' => '0.04',
# build/test prereqs
'Test::More' => '0.70',
'IO::File' => '0'
NAME
Acme::CPANAuthors::British - We are British CPAN authors
DESCRIPTION
This class provides a hash of British CPAN authors' PAUSE ID and name to
the Acme::CPANAuthors module. As an added bonus this distribution also
includes a list of British Companies too!
INSTALLATION
To install this module, run the following commands:
perl Makefile.PL
make
make test
CPAN Ratings
http://cpanratings.perl.org/d/Acme-CPANAuthors-British
Bugs, patches and feature requests can be reported at:
RT, CPAN's request tracker
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Acme-CPANAuthors-British
GitHub
http://github.com/barbie/acme-cpanauthors-british
There are no known bugs at the time of this release. However, if you spot a
bug or are experiencing difficulties that are not explained within the POD
documentation, please send an email to barbie@cpan.org or submit a bug to
the RT queue. However, it would help greatly if you are able to pinpoint
problems or even supply a patch.
Fixes are dependent upon their severity and my availability. Should a fix
not be forthcoming, please feel free to (politely) remind me.
examples/author_info view on Meta::CPAN
#!/usr/bin/perl
use warnings;
use strict;
use Acme::CPANAuthors;
die "usage: $0 PAUSE_ID [PAUSE_ID ...]\n" unless @ARGV;
my $authors = Acme::CPANAuthors->new("British");
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},
}
examples/company_info view on Meta::CPAN
#!/usr/bin/perl
use warnings;
use strict;
use Acme::CPANAuthors;
die "usage: $0 PAUSE_ID [PAUSE_ID ...]\n" unless @ARGV;
my $authors = Acme::CPANAuthors->new("British::Companies");
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},
}
examples/count view on Meta::CPAN
#!/usr/bin/perl
use warnings;
use strict;
use Acme::CPANAuthors;
my $authors = Acme::CPANAuthors->new("British");
my $number = $authors->count;
print "$number declared British CPAN authors\n";
lib/Acme/CPANAuthors/British.pm view on Meta::CPAN
United, united, united we stand
United we stand one and all
>
__END__
=encoding UTF-8
=head1 NAME
Acme::CPANAuthors::British - We are British CPAN authors
=head1 SYNOPSIS
use Acme::CPANAuthors;
my $authors = Acme::CPANAuthors->new("British");
my $number = $authors->count;
my @ids = $authors->id;
my @distros = $authors->distributions("BARBIE");
my $url = $authors->avatar_url("BINGOS");
my $kwalitee = $authors->kwalitee("JONALLEN");
my $name = $authors->name("DGL");
=head1 DESCRIPTION
This class provides a hash of British CPAN authors' PAUSE ID and name to be
used with the C<Acme::CPANAuthors> module.
This module was created simply because nobody had written it and uploaded it
to CPAN before me :)
=head1 MAINTENANCE
If you are a British 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 British (or just don't want to be
listed), sorry for the inconvenience: please contact me and I'll remove the
entry right away.
Please note that British implies that you consider yourself from England, Wales,
Scotland or Northern Ireland.
=head1 SEE ALSO
L<Acme::CPANAuthors> - Main class to manipulate this one
Other European authors:
L<Acme::CPANAuthors::Austrian> - Austrian CPAN authors
L<Acme::CPANAuthors::Dutch> - Dutch CPAN authors
L<Acme::CPANAuthors::French> - French CPAN authors
L<Acme::CPANAuthors::Portuguese> - Portuguese CPAN authors
Or you could use the following to include them all:
L<Acme::CPANAuthors::European> - European CPAN authors
L<Acme::CPANAuthors::EU> - EU CPAN authors
=head1 SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Acme::CPANAuthors::British
You can also look for information at:
=over 4
lib/Acme/CPANAuthors/British.pm view on Meta::CPAN
Bugs, patches and feature requests can be reported at:
=over 4
=item * RT: CPAN's request tracker
L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Acme-CPANAuthors-British>
=item * GitHub
L<http://github.com/barbie/acme-cpanauthors-british>
=back
There are no known bugs at the time of this release. However, if you spot a
bug or are experiencing difficulties that are not explained within the POD
documentation, please send an email to barbie@cpan.org or submit a bug to
the RT queue. However, it would help greatly if you are able to pinpoint
problems or even supply a patch.
Fixes are dependent upon their severity and my availability. Should a fix
lib/Acme/CPANAuthors/British/Companies.pm view on Meta::CPAN
=encoding UTF-8
=head1 NAME
Acme::CPANAuthors::British::Companies - We are British Companies with PAUSE IDs
=head1 SYNOPSIS
use Acme::CPANAuthors;
my $authors = Acme::CPANAuthors->new("British::Companies");
my $number = $authors->count;
my @ids = $authors->id;
my @distros = $authors->distributions("FOTANGO");
my $url = $authors->avatar_url("PROFERO");
my $kwalitee = $authors->kwalitee("GMGRD");
my $name = $authors->name("BBCIFL");
=head1 DESCRIPTION
This class provides a hash of British Companies who have PAUSE IDs, to be used
with the C<Acme::CPANAuthors> module.
This module was created as an addition to the British CPANAuthors module, due
to the number of British Companies that have decided to register their own
PAUSE account.
lib/Acme/CPANAuthors/British/Companies.pm view on Meta::CPAN
Bugs, patches and feature requests can be reported at:
=over 4
=item * RT: CPAN's request tracker
L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Acme-CPANAuthors-British>
=item * GitHub
L<http://github.com/barbie/acme-cpanauthors-british>
=back
There are no known bugs at the time of this release. However, if you spot a
bug or are experiencing difficulties that are not explained within the POD
documentation, please send an email to barbie@cpan.org or submit a bug to
the RT queue. However, it would help greatly if you are able to pinpoint
problems or even supply a patch.
Fixes are dependent upon their severity and my availability. Should a fix
t/10british.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 => 10;
my $authors = eval { Acme::CPANAuthors->new("British") };
is( $@, "", "creating a new Acme::CPANAuthors object with British authors" );
isa_ok( $authors, "Acme::CPANAuthors" );
my $number = 299;
is( $authors->count, $number, " .. \$authors->count matches current count" );
my @ids = $authors->id;
cmp_ok( ~~@ids, ">", 0, " .. \$authors->id gives a non-empty list" );
is( ~~@ids, $number, " .. \$authors->id equals \$authors->count" );
SKIP: {
my $file;
eval { $file = Acme::CPANAuthors::Utils::_cpan_authors_file() };
skip "CPAN configuration not available", 5 if($@ || !$file);
$file = undef;
eval { $file = Acme::CPANAuthors::Utils::_cpan_packages_file() };
skip "CPAN configuration not available", 5 if($@ || !$file);
my @distros = $authors->distributions('BARBIE');
cmp_ok( ~~@distros, ">", 0, " .. \$authors->distributions('BARBIE') gives a non-empty list" );
@distros = $authors->distributions('XXXXXX');
cmp_ok( ~~@distros, "==", 0, " .. \$authors->distributions('XXXXXX') gives an empty list" );
my $name = $authors->name('DGL');
cmp_ok( length($name), ">", 0, " .. \$authors->name('DGL') gives a non-empty string" );
$name = $authors->name('BARBIE');
is($name, "Barbie", " .. \$authors->name('BARBIE') returns Barbie" );
# SKIP: {
# skip "en.gravatar.com is not available", 2
# if(pingtest('en.gravatar.com'));
#
# my $url;
# eval { $url = $authors->avatar_url('BARBIE') };
# skip "en.gravatar.com is not available", 1 if($@);
# $url ||= '';
# is($url, 'http://www.gravatar.com/avatar/2459f554c069e44527716e3f35e1d0d1', ".. \$authors->avatar_url('BARBIE') returns a URL" );
#
# eval { $url = $authors->avatar_url('BINGOS') };
# skip "en.gravatar.com is not available", 1 if($@);
# $url ||= '';
# cmp_ok( length($url), ">", 0, " .. \$authors->avatar_url('BINGOS') gives a non-empty string" );
# }
SKIP: {
skip "api.cpanauthors.org is not available", 1
if(pingtest('api.cpanauthors.org'));
my $kwalitee;
eval { $kwalitee = $authors->kwalitee('JONALLEN') };
skip "api.cpanauthors.org is not available", 1 if($@);
isa_ok( $kwalitee, "HASH", " .. \$authors->kwalitee('JONALLEN')" );
}
}
sub pingtest {
my $domain = shift or return 1;
my $cmd = $^O =~ /solaris/i ? "ping -s $domain 56 1" :
$^O =~ /dos|os2|mswin32|netware|cygwin/i ? "ping -n 1 $domain "
: "ping -c 1 $domain >/dev/null 2>&1";
eval { system($cmd) };
t/11companies.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("British::Companies") };
is( $@, "", "creating a new Acme::CPANAuthors object with British Companies" );
isa_ok( $authors, "Acme::CPANAuthors" );
my $number = 12;
is( $authors->count, $number, " .. \$authors->count matches current count" );
my @ids = $authors->id;
cmp_ok( ~~@ids, ">", 0, " .. \$authors->id gives a non-empty list" );
is( ~~@ids, $number, " .. \$authors->id equals \$authors->count" );
SKIP: {
my $file;
eval { $file = Acme::CPANAuthors::Utils::_cpan_authors_file() };
skip "CPAN configuration not available", 4 if($@ || !$file);
$file = undef;
eval { $file = Acme::CPANAuthors::Utils::_cpan_packages_file() };
skip "CPAN configuration not available", 4 if($@ || !$file);
my @distros = $authors->distributions('FOTANGO');
cmp_ok( ~~@distros, ">", 0, " .. \$authors->distributions('FOTANGO') gives a non-empty list" );
@distros = $authors->distributions('XXXXXX');
cmp_ok( ~~@distros, "==", 0, " .. \$authors->distributions('XXXXXX') gives an empty list" );
my $name = $authors->name('GMGRD');
cmp_ok( length($name), ">", 0, " .. \$authors->name('GMGRD') gives a non-empty string" );
# SKIP: {
# skip "en.gravatar.com is not available", 1
# if(pingtest('en.gravatar.com'));
#
# my $url;
# eval { $url = $authors->avatar_url('GMGRD') };
# skip "en.gravatar.com is not available", 1 if($@);
# $url ||= '';
# cmp_ok( length($url), ">", 0, " .. \$authors->avatar_url('GMGRD') gives a non-empty string" );
# }
SKIP: {
skip "api.cpanauthors.org is not available", 1
if(pingtest('api.cpanauthors.org'));
my $kwalitee;
eval { $kwalitee = $authors->kwalitee('BBC') };
skip "api.cpanauthors.org is not available", 1 if($@);
isa_ok( $kwalitee, "HASH", " .. \$authors->kwalitee('BBC')" );
}
}
sub pingtest {
my $domain = shift or return 0;
my $cmd = $^O =~ /solaris/i ? "ping -s $domain 56 1" :
$^O =~ /dos|os2|mswin32|netware|cygwin/i ? "ping -n 1 $domain "
: "ping -c 1 $domain >/dev/null 2>&1";
eval { system($cmd) };
( run in 1.696 second using v1.01-cache-2.11-cpan-5c0b1e786e0 )