--- /dev/null
+blib*
+pm_to_blib*
+
+Makefile
+Makefile.old
+Build
+_build*
+
+*.tar.gz
+Acme-CPANAuthors-You-re_using-*
+
+core.*
+*.[co]
+*.so
+*.bs
+*.out
+*.def
+*.exp
+
+cover_db
+*.gcda
+*.gcov
+*.gcno
+
+Debian_CPANTS.txt
--- /dev/null
+0.01 2009-02-16 18:10 UTC
+ First version, released on an unsuspecting world.
+
--- /dev/null
+Changes
+MANIFEST
+META.yml
+Makefile.PL
+README
+lib/Acme/CPANAuthors/You/re_using.pm
+samples/list_authors
+t/00-load.t
+t/10-base.t
+t/90-boilerplate.t
+t/91-pod.t
+t/92-pod-coverage.t
+t/95-portability-files.t
+t/99-kwalitee.t
--- /dev/null
+--- #YAML:1.0
+name: Acme-CPANAuthors-You-re_using
+version: 0.01
+abstract: We are the CPAN authors that have written the modules installed for this perl.
+author:
+ - Vincent Pit <perl@profvince.com>
+license: perl
+distribution_type: module
+configure_requires:
+ ExtUtils::MakeMaker: 0
+build_requires:
+ Acme::CPANAuthors: 0
+ ExtUtils::MakeMaker: 0
+ Test::More: 0
+requires:
+ Acme::CPANAuthors: 0
+ Carp: 0
+ ExtUtils::Installed: 0
+ perl: 5.006
+resources:
+ bugtracker: http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Acme-CPANAuthors-You-re_using
+ homepage: http://search.cpan.org/dist/Acme-CPANAuthors-You-re_using/
+ license: http://dev.perl.org/licenses/
+ repository: http://git.profvince.com/perl/modules/Acme-CPANAuthors-You-re_using.git
+no_index:
+ directory:
+ - t
+ - inc
+generated_by: ExtUtils::MakeMaker version 6.48
+meta-spec:
+ url: http://module-build.sourceforge.net/META-spec-v1.4.html
+ version: 1.4
--- /dev/null
+use strict;
+use warnings;
+use ExtUtils::MakeMaker;
+
+my $dist = 'Acme-CPANAuthors-You-re_using';
+
+my %META = (
+ configure_requires => {
+ 'ExtUtils::MakeMaker' => 0,
+ },
+ build_requires => {
+ 'Acme::CPANAuthors' => 0,
+ 'ExtUtils::MakeMaker' => 0,
+ 'Test::More' => 0,
+ },
+ resources => {
+ bugtracker => "http://rt.cpan.org/NoAuth/ReportBug.html?Queue=$dist",
+ homepage => "http://search.cpan.org/dist/$dist/",
+ license => 'http://dev.perl.org/licenses/',
+ repository => "http://git.profvince.com/perl/modules/$dist.git",
+ },
+);
+
+WriteMakefile(
+ NAME => 'Acme::CPANAuthors::You::re_using',
+ AUTHOR => 'Vincent Pit <perl@profvince.com>',
+ LICENSE => 'perl',
+ VERSION_FROM => 'lib/Acme/CPANAuthors/You/re_using.pm',
+ ABSTRACT_FROM => 'lib/Acme/CPANAuthors/You/re_using.pm',
+ PL_FILES => {},
+ PREREQ_PM => {
+ 'Acme::CPANAuthors' => 0,
+ 'Carp' => 0,
+ 'ExtUtils::Installed' => 0,
+ },
+ MIN_PERL_VERSION => 5.006,
+ META_MERGE => \%META,
+ dist => {
+ PREOP => 'pod2text lib/Acme/CPANAuthors/You/re_using.pm > $(DISTVNAME)/README',
+ COMPRESS => 'gzip -9f', SUFFIX => 'gz'
+ },
+ clean => {
+ FILES => "$dist-* *.gcov *.gcda *.gcno cover_db Debian_CPANTS.txt"
+ },
+);
--- /dev/null
+NAME
+ Acme::CPANAuthors::You::re_using - We are the CPAN authors that have
+ written the modules installed for this perl.
+
+VERSION
+ Version 0.01
+
+SYNOPSIS
+ use Acme::CPANAuthors;
+
+ my $authors = Acme::CPANAuthors->new("You're_using");
+ print $authors->name($_) . " ($_)\n" for $authors->id;
+
+DESCRIPTION
+ This module builds an Acme::CPANAuthors class by looking for all
+ installed modules for the current "perl" and then retrieving theirs
+ authors' name and PAUSE id.
+
+ It may take some time to load since it has to get CPAN indexes at
+ "BEGIN" time.
+
+DEPENDENCIES
+ Carp, ExtUtils::Installed, Acme::CPANAuthors.
+
+SEE ALSO
+ All others "Acme::CPANAuthors::*" modules.
+
+AUTHOR
+ Vincent Pit, "<perl at profvince.com>", <http://www.profvince.com>.
+
+ You can contact me by mail or on "irc.perl.org" (vincent).
+
+BUGS
+ Please report any bugs or feature requests to
+ "bug-acme-cpanauthors-you-re_using at rt.cpan.org", or through the web
+ interface at
+ <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Acme-CPANAuthors-You-re_
+ using>. I will be notified, and then you'll automatically be notified of
+ progress on your bug as I make changes.
+
+SUPPORT
+ You can find documentation for this module with the perldoc command.
+
+ perldoc Acme::CPANAuthors::You::re_using
+
+COPYRIGHT & LICENSE
+ Copyright 2009 Vincent Pit, all rights reserved.
+
+ This program is free software; you can redistribute it and/or modify it
+ under the same terms as Perl itself.
+
--- /dev/null
+package Acme::CPANAuthors::You::re_using;
+
+use strict;
+use warnings;
+
+use Carp qw/croak/;
+
+use ExtUtils::Installed;
+
+use Acme::CPANAuthors::Utils;
+
+=head1 NAME
+
+Acme::CPANAuthors::You::re_using - We are the CPAN authors that have written the modules installed for this perl.
+
+=head1 VERSION
+
+Version 0.01
+
+=cut
+
+our $VERSION;
+BEGIN {
+ $VERSION = '0.01';
+}
+
+=head1 SYNOPSIS
+
+ use Acme::CPANAuthors;
+
+ my $authors = Acme::CPANAuthors->new("You're_using");
+ print $authors->name($_) . " ($_)\n" for $authors->id;
+
+=head1 DESCRIPTION
+
+This module builds an L<Acme::CPANAuthors> class by looking for all installed modules for the current C<perl> and then retrieving theirs authors' name and PAUSE id.
+
+It may take some time to load since it has to get CPAN indexes at C<BEGIN> time.
+
+=cut
+
+BEGIN {
+ my %authors;
+
+ my $pkgs = Acme::CPANAuthors::Utils::cpan_packages();
+ croak 'Couldn\'t retrieve a valid Parse::CPAN::Packages object' unless $pkgs;
+
+ my $auths = Acme::CPANAuthors::Utils::cpan_authors();
+ croak 'Couldn\'t retrieve a valid Parse::CPAN::Authors object' unless $auths;
+
+ my $installed = ExtUtils::Installed->new;
+ croak 'Couldn\'t create a valid ExtUtils::Installed object' unless $installed;
+
+ for ($installed->modules()) {
+ my $mod = $pkgs->package($_);
+ next unless $mod;
+
+ my $dist = $mod->distribution;
+ next unless $dist;
+
+ my $cpanid = $dist->cpanid;
+ next if not $cpanid or exists $authors{$cpanid};
+
+ my $auth = $auths->author($cpanid);
+
+ my $name;
+ $name = $auth->name if defined $auth;
+
+ $authors{$cpanid} = defined $name ? $name : $cpanid;
+ }
+
+ require Acme::CPANAuthors::Register;
+ Acme::CPANAuthors::Register->import(%authors);
+}
+
+=head1 DEPENDENCIES
+
+L<Carp>, L<ExtUtils::Installed>, L<Acme::CPANAuthors>.
+
+=head1 SEE ALSO
+
+All others C<Acme::CPANAuthors::*> modules.
+
+=head1 AUTHOR
+
+Vincent Pit, C<< <perl at profvince.com> >>, L<http://www.profvince.com>.
+
+You can contact me by mail or on C<irc.perl.org> (vincent).
+
+=head1 BUGS
+
+Please report any bugs or feature requests to C<bug-acme-cpanauthors-you-re_using at rt.cpan.org>, or through the web interface at L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Acme-CPANAuthors-You-re_using>. 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::You::re_using
+
+=head1 COPYRIGHT & LICENSE
+
+Copyright 2009 Vincent Pit, all rights reserved.
+
+This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
+
+=cut
+
+1;
--- /dev/null
+#!perl
+
+use strict;
+use warnings;
+
+use Acme::CPANAuthors;
+
+my $authors = Acme::CPANAuthors->new("You're_using");
+print $authors->name($_) . " ($_)\n" for $authors->id;
--- /dev/null
+#!perl
+
+use strict;
+use warnings;
+
+use Test::More tests => 1;
+
+BEGIN {
+ local $^W = 0;
+ use_ok( "Acme::CPANAuthors::You're_using" );
+}
+
+diag( "Testing Acme::CPANAuthors::You're_using $Acme::CPANAuthors::You're_using::VERSION, Perl $], $^X" );
--- /dev/null
+#!perl
+
+use strict;
+use warnings;
+
+use Test::More tests => 1;
+
+use Acme::CPANAuthors;
+
+my $authors = eval { Acme::CPANAuthors->new("You're_using") };
+
+SKIP: {
+ skip $@ => 1 unless defined $authors;
+
+ my $count = $authors->count;
+ diag "$count authors found";
+ cmp_ok $count, '>', 0, 'there are some authors';
+}
--- /dev/null
+#!perl -T
+
+use strict;
+use warnings;
+use Test::More tests => 3;
+
+sub not_in_file_ok {
+ my ($filename, %regex) = @_;
+ open( my $fh, '<', $filename )
+ or die "couldn't open $filename for reading: $!";
+
+ my %violated;
+
+ while (my $line = <$fh>) {
+ while (my ($desc, $regex) = each %regex) {
+ if ($line =~ $regex) {
+ push @{$violated{$desc}||=[]}, $.;
+ }
+ }
+ }
+
+ if (%violated) {
+ fail("$filename contains boilerplate text");
+ diag "$_ appears on lines @{$violated{$_}}" for keys %violated;
+ } else {
+ pass("$filename contains no boilerplate text");
+ }
+}
+
+sub module_boilerplate_ok {
+ my ($module) = @_;
+ not_in_file_ok($module =>
+ 'the great new $MODULENAME' => qr/ - The great new /,
+ 'boilerplate description' => qr/Quick summary of what the module/,
+ 'stub function definition' => qr/function[12]/,
+ );
+}
+
+not_in_file_ok(README =>
+ "The README is used..." => qr/The README is used/,
+ "'version information here'" => qr/to provide version information/,
+);
+
+not_in_file_ok(Changes =>
+ "placeholder date/time" => qr(Date/time)
+);
+
+module_boilerplate_ok('lib/Acme/CPANAuthors/You/re_using.pm');
+
--- /dev/null
+#!perl -T
+
+use strict;
+use warnings;
+use Test::More;
+
+# Ensure a recent version of Test::Pod
+my $min_tp = 1.22;
+eval "use Test::Pod $min_tp";
+plan skip_all => "Test::Pod $min_tp required for testing POD" if $@;
+
+all_pod_files_ok();
--- /dev/null
+use strict;
+use warnings;
+use Test::More;
+
+# Ensure a recent version of Test::Pod::Coverage
+my $min_tpc = 1.08;
+eval "use Test::Pod::Coverage $min_tpc";
+plan skip_all => "Test::Pod::Coverage $min_tpc required for testing POD coverage" if $@;
+
+# Test::Pod::Coverage doesn't require a minimum Pod::Coverage version,
+# but older versions don't recognize some common documentation styles
+my $min_pc = 0.18;
+eval "use Pod::Coverage $min_pc";
+plan skip_all => "Pod::Coverage $min_pc required for testing POD coverage" if $@;
+
+all_pod_coverage_ok( { also_private => [ qw/format_available init prepare create install uninstall/ ] });
--- /dev/null
+#!perl -T
+
+use strict;
+use warnings;
+
+use Test::More;
+
+eval "use Test::Portability::Files";
+plan skip_all => "Test::Portability::Files required for testing filenames portability" if $@;
+run_tests();
--- /dev/null
+#!perl
+
+use strict;
+use warnings;
+
+use Test::More;
+
+eval { require Test::Kwalitee; Test::Kwalitee->import() };
+plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;