Skip to content

Instantly share code, notes, and snippets.

@perlpilot
Created April 28, 2011 22:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save perlpilot/947465 to your computer and use it in GitHub Desktop.
Save perlpilot/947465 to your computer and use it in GitHub Desktop.
Check which modules on modules.perl6.org have META.info and that it contains source-url
#!/usr/bin/perl
use 5.010;
use strict; use warnings;
use LWP::Simple;
use JSON;
use HTML::TreeBuilder::XPath;
my $module_list = get("http://modules.perl.org");
my $tree = HTML::TreeBuilder::XPath->new;
$tree->parse($module_list);
my $p = $tree->findnodes('//dt/a');
my @n = $p->get_nodelist;
my @repos = map { $_->attr('href') } @n;
for my $repo (@repos) {
print "Checking $repo...";
my $meta_url = "$repo/raw/master/META.info";
my $json = get($meta_url);
unless ($json) { say "MISSING META.info"; next; }
my $obj = jsonToObj($json);
unless (exists $obj->{'source-url'}) {
say "MISSING source-url";
next;
}
say "OK";
}
Checking http://github.com/colomon/ABC/...OK
Checking http://github.com/tadzik/perl6-Acme-Meow/...OK
Checking http://github.com/Takadonet/Algorithm--Diff/...MISSING source-url
Checking http://github.com/arnsholt/Algorithm-Viterbi/...OK
Checking http://github.com/perlpilot/benchmark/...OK
Checking http://github.com/colomon/Benchmark-Plot/...OK
Checking http://github.com/ekiru/Bennu/...MISSING META.info
Checking http://github.com/cjfields/bioperl6/...MISSING source-url
Checking http://github.com/cosimo/perl6-cache-memcached/...MISSING source-url
Checking http://github.com/moritz/CGI-Application/...OK
Checking http://github.com/tadzik/perl6-Config-INI/...OK
Checking http://github.com/KodiB/DateTime-Parse/...MISSING META.info
Checking http://github.com/supernovus/temporal-utils/...OK
Checking http://github.com/timbunce/DBDI/...MISSING META.info
Checking http://github.com/xenu/Digest-sum/...MISSING META.info
Checking http://github.com/cosimo/perl6-digest-md5/...MISSING source-url
Checking http://github.com/masak/druid/...MISSING source-url
Checking http://github.com/supernovus/exemel/...OK
Checking http://github.com/cosimo/perl6-facter/...MISSING source-url
Checking http://github.com/ruoso/faz/...MISSING META.info
Checking http://github.com/tadzik/perl6-File-Tools/...MISSING source-url
Checking http://github.com/supernovus/flower/...OK
Checking http://github.com/mathw/form/...MISSING META.info
Checking http://github.com/quietfanatic/gamebase/...MISSING META.info
Checking http://github.com/masak/gge/...MISSING source-url
Checking http://github.com/supernovus/hash-has/...OK
Checking http://github.com/supernovus/HashConfig/...OK
Checking http://github.com/masak/html-template/...MISSING source-url
Checking http://github.com/mberends/http-server-simple/...OK
Checking http://github.com/pnu/io-prompt/...MISSING META.info
Checking http://github.com/colomon/io-prompter/...OK
Checking http://github.com/jasonmay/perl6-ioc/...OK
Checking http://github.com/moritz/json/...OK
Checking http://github.com/quietfanatic/link-c/...MISSING META.info
Checking http://github.com/colomon/List-Utils/...OK
Checking http://github.com/jnthn/lolsql/...MISSING META.info
Checking http://github.com/cosimo/perl6-lwp-simple/...OK
Checking http://github.com/colomon/mandelbrot/...OK
Checking http://github.com/Util/Perl6-Math-Quaternion/...OK
Checking http://github.com/colomon/Math-BigInt/...OK
Checking http://github.com/moritz/Math-Model/...OK
Checking http://github.com/colomon/Math-Polynomial/...OK
Checking http://github.com/colomon/Math-Prime/...OK
Checking http://github.com/moritz/Math-RungeKutta/...OK
Checking http://github.com/colomon/Math-Vector/...OK
Checking http://github.com/uasi/messagepack-pm6/...OK
Checking http://github.com/snarkyboojum/Perl6-MIME-Base64/...OK
Checking http://github.com/mberends/MiniDBI/...MISSING META.info
Checking http://github.com/tadzik/perl6-MPD/...OK
Checking http://github.com/jnthn/zavolaj/...MISSING source-url
Checking http://github.com/TiMBuS/Net--IRC/...OK
Checking http://github.com/moritz/Nonogram/...OK
Checking http://github.com/viklund/november/...MISSING source-url
Checking http://github.com/lue/Numbers--Ordinal/...MISSING source-url
Checking http://github.com/masak/perl6-literate/...MISSING source-url
Checking http://github.com/tadzik/Pies/...OK
Checking http://github.com/dcarrera/ppm/...MISSING META.info
Checking http://github.com/masak/proto/...MISSING source-url
Checking http://github.com/cosimo/perl6-puppet-parser/...MISSING META.info
Checking http://github.com/supernovus/SCGI/...OK
Checking http://github.com/thundergnat/Sort-Naturally/...OK
Checking http://github.com/tene/perl6-sqlite/...MISSING META.info
Checking http://github.com/aff/statistics-lite/...MISSING META.info
Checking http://github.com/cosimo/perl6-string-crc32/...MISSING source-url
Checking http://github.com/moritz/svg/...OK
Checking http://github.com/moritz/svg-plot/...OK
Checking http://github.com/masak/tardis/...MISSING source-url
Checking http://github.com/tadzik/perl6-Term-ANSIColor/...OK
Checking http://github.com/jnthn/test-mock/...MISSING source-url
Checking http://github.com/colomon/perl6-Testing/...OK
Checking http://github.com/ingydotnet/testml-pm6/...MISSING META.info
Checking http://github.com/thundergnat/Text-Levenshtein/...OK
Checking http://github.com/Takadonet/Text-Tabs-Wrap/...OK
Checking http://github.com/masak/csv/...MISSING source-url
Checking http://github.com/Takadonet/Text--Diff/...MISSING source-url
Checking http://github.com/wayland/Tree/...MISSING META.info
Checking http://github.com/Takadonet/Tree--Simple/...MISSING source-url
Checking http://github.com/masak/ufo/...MISSING source-url
Checking http://github.com/ihrd/uri/...MISSING META.info
Checking http://github.com/LastOfTheCarelessMen/Vector/...MISSING META.info
Checking http://github.com/masak/web/...MISSING source-url
Checking http://github.com/supernovus/WebRequest/...OK
Checking http://github.com/supernovus/whitenoise/...OK
Checking http://github.com/supernovus/ww6/...OK
Checking http://github.com/krunen/xml/...MISSING META.info
Checking http://github.com/radus/XML-OPML/...MISSING META.info
Checking http://github.com/masak/xml-writer/...MISSING source-url
Checking http://github.com/ingydotnet/xxx-pm6/...MISSING META.info
Checking http://github.com/ingydotnet/yaml-pm6/...MISSING META.info
Checking http://github.com/masak/yapsi/...OK
Checking http://github.com/masak/yarn/...MISSING source-url
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment