App-sync_cpantesters
view release on metacpan or search on metacpan
NAME
App::sync_cpantesters - Sync CPAN testers failure reports to local
directories
VERSION
version 1.111470
SYNOPSIS
$ sync_cpantesters -a MARCEL -d ~/dev/cpan-testers
DESCRIPTION
CPAN testers provide a valuable service. The reports are available on
the Web - for example, for CPAN ID "MARCEL", the reports are at
<http://cpantesters.perl.org/author/MARCEL.html>. I don't like to read
them in the browser and click on each individual failure report. I also
don't look at the success reports. I'd rather download the failure
reports and read them in my favorite editor, vim. I want to be able to
run this program repeatedly and only download new failure reports, as
well as delete old ones that no longer appear in the master list -
probably because a new version of the distribution in question was
uploaded.
If you are in the same position, then this program might be for you.
You need to pass a base directory using the "--dir" options. For each
distribution for which there are failure reports, a directory is
created. Each failure report is stored in a file within that
subdirectory. The HTML is converted to plain text. For example, at one
point in time, I ran the program using:
sync_cpantesters -a MARCEL -d reports
and the directory structure created looked like this:
reports/Aspect-0.12/449224
reports/Attribute-Memoize-0.01/39824
reports/Attribute-Memoize-0.01/71010
reports/Attribute-Overload-0.04/700557
reports/Attribute-TieClasses-0.03/700575
reports/Attribute-Util-1.02/455076
reports/Attribute-Util-1.02/475237
reports/Attribute-Util-1.02/477578
reports/Attribute-Util-1.02/485231
reports/Attribute-Util-1.02/489218
...
METHODS
author
The CPAN ID for which you want to download CPAN testers results. In my
case, this id is "MARCEL".
You have to use exactly one of "author()" or "uri()".
uri
The URI from which to download the CPAN testers results. It needs to be
in the same format as, say,
<http://cpantesters.perl.org/author/MARCEL.html>. You might want to use
this option if you've already downloaded the relevant file; in this
case, use a "file://" URI.
You have to use exactly one of "author()" or "uri()".
dir
The directory you want to download the reports to. Mandatory argument;
does tilde expansion during "run()".
ignore
If this argument is given, then, during "run()", every distribution
whose name matches this regular expression is ignored. You might use
this when you have deprecated distributions that you don't care about
anymore, but the reports are still there.
verbose
Be more verbose.
run
The main method, which is called by the "sync_cpantesters" program. Call
this after you've set the relevant accessors described above.
You can add a trigger to this class to filter distributions after they
have been scraped from the web page and before the individual reports
( run in 1.350 second using v1.01-cache-2.11-cpan-b16cb0d3907 )