Right, I've got something working that can starting doing automated
reports to cpan-testers.  Problem is, the cpantest script isn't really
conducive to automation.  I'm going to be away at a conference this
week, so while I'm away I'd like someone to pick up these little
coding jobs that are yet to be done:


- Take the existing cpantest program  http://testers.cpan.org/cpantest
  and turn it into a module.  CPAN::Test::Reporter or something.  It
  should do something like:

    my $report = CPAN::Test::Reporter->new;
    $report->which_perl(path to the perl binary we tested with);
    $report->grade(pass|fail|na|unknown);
    $report->package(module name);
    $report->test_results(our build and/or make test results);
    $report->comments(other commentary on the module);
    $report->send(to whom);

  document it, test it, stick it on CPAN.  Doesn't have to be anything
  fabulous for now.

- Write a module that can scan @INC to see if a given module (or
  modules) is installed and check what $VERSION it is WITHOUT loading
  the module.  Most likely this will simply involve using
  MakeMaker->parse_version.  Document it, test it, stick it on CPAN.
  Again, nothing fabulous.

- Write gzip, tar and unzip binary subclasses for Archive::Any


PS I'm at the point that I can produce this.  All I need is something
to turn this into sensible reports.

$ cpan_smoke_module Class::DBI
Smoking Class-DBI-0.29.tar.gz against perl5.005_03
needs Class::Data::Inheritable 0.02
        Smoking Class-Data-Inheritable-0.02.tar.gz against perl5.005_03
        ok
needs Class::Fields::Fuxor 0.06
        Smoking Class-Fields-0.14.tar.gz against perl5.005_03
        needs Carp::Assert 0
                Smoking Carp-Assert-0.16.tar.gz against perl5.005_03
                needs Test::More 0.18
                        Smoking Test-Simple-0.18.tar.gz against perl5.005_03
                        needs Test::Harness 1.23
                                Smoking Test-SDK-0.02.tar.gz against perl5.005_03
                                ok
                        ok
                ok
        ok
needs File::Temp 0.12
        Smoking File-Temp-0.12.tar.gz against perl5.005_03
        needs File::Spec 0.8
                Smoking File-Spec-0.82.tar.gz against perl5.005_03
                ok
        ok
needs Ima::DBI 0.25
        Smoking Ima-DBI-0.25.tar.gz against perl5.005_03
        needs DBI 1.09
                Smoking DBI-1.20.tar.gz against perl5.005_03
                Tests in test.pl
                
                ok, but with some non-fatal mistakes
        needs Class::WhiteHole 0.03
                Smoking Class-WhiteHole-0.03.tar.gz against perl5.005_03
                ok
        ok
needs Class::Accessor 0.10
        Smoking Class-Accessor-0.17.tar.gz against perl5.005_03
        ok
needs DBD::CSV 0.1022
        Smoking DBD-CSV-0.1027.tar.gz against perl5.005_03
        needs Text::CSV_XS 0.16
                Smoking Text-CSV_XS-0.22.tar.gz against perl5.005_03
                Tests in test.pl
                
                ok, but with some non-fatal mistakes
        needs SQL::Statement 0.1011
                Smoking SQL-Statement-0.1020.tar.gz against perl5.005_03
                Tests in test.pl
                
                ok, but with some non-fatal mistakes
        Tests in test.pl
        
        ok, but with some non-fatal mistakes
Fatal mistake!
Failed Tests
Warning: prerequisite Carp::Assert 0.06 not found at (eval 2) line 220.
Warning: prerequisite Class::Accessor 0.10 not found at (eval 2) line 220.
Warning: prerequisite Class::Data::Inheritable 0.02 not found at (eval 2) line 220.
Warning: prerequisite Class::Fields 0.14 not found at (eval 2) line 220.
Warning: prerequisite Class::Fields::Fuxor 0.06 not found at (eval 2) line 220.
Warning: prerequisite DBD::CSV 0.1022 not found at (eval 2) line 220.
Warning: prerequisite File::Temp 0.12 not found at (eval 2) line 220.
Warning: prerequisite Ima::DBI 0.25 not found at (eval 2) line 220.
Warning: prerequisite Test::More 0.11 not found at (eval 2) line 220.
Warning: prerequisite base 1.96 not found at (eval 2) line 220.
Warning: prerequisite protected 0.01 not found at (eval 2) line 220.
Checking if your kit is complete...
Looks good
Writing Makefile for Class::DBI

mkdir blib
mkdir blib/lib
mkdir blib/lib/Class
mkdir blib/arch
mkdir blib/arch/auto
mkdir blib/arch/auto/Class
mkdir blib/arch/auto/Class/DBI
mkdir blib/lib/auto
mkdir blib/lib/auto/Class
mkdir blib/lib/auto/Class/DBI
mkdir blib/man3
cp lib/Class/DBI/Tutorial.pm blib/lib/Class/DBI/Tutorial.pm
cp lib/Class/DBI.pm blib/lib/Class/DBI.pm
/usr/local/perl5.005_03/bin/pod2man: lib/Class/DBI.pm is missing required sections: 
SYNOPSIS DESCRIPTION
Manifying blib/man3/Class::DBI::Tutorial.3
Manifying blib/man3/Class::DBI.3

PERL_DL_NONLAZY=1 /usr/local/bin/perl5.005_03 -Iblib/arch -Iblib/lib 
-I/usr/local/perl5.005_03/lib/5.00503/ppc-linux -I/usr/local/perl5.005_03/lib/5.00503 
-e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/01-columns........ok
t/02-Film...........ok
t/03-subclassing....ok
t/04-lazy...........ok
t/05-pseudohashes...ok
t/06-hasa...........ok
t/07-Move...........ok
t/08-inheritcols....ok
t/09-hasa-list......Name "Actor::VERSION" used only once: possible typo at 
blib/lib/Class/DBI.pm line 869.
Use of uninitialized value at 
/home/schwern/src/devel/CPAN-Smoke/t/lib//Class/Accessor.pm line 443.
ok
t/10-mysql..........install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC 
(@INC contains: blib/arch blib/lib /home/schwern/src/devel/CPAN-Smoke/t/lib/ 
/home/schwern/src/devel/CPAN-Smoke/t/lib//ppc-linux 
/home/schwern/src/devel/CPAN-Smoke/t/lib/ 
/usr/local/perl5.005_03/lib/5.00503/ppc-linux 
/usr/local/perl5.005_03/lib/5.00503/ppc-linux 
/usr/local/perl5.005_03/lib/5.00503/ppc-linux /usr/local/perl5.005_03/lib/5.00503 
/home/schwern/src/devel/CPAN-Smoke/t/lib/ppc-linux 
/home/schwern/src/devel/CPAN-Smoke/t/lib/ppc-linux 
/home/schwern/src/devel/CPAN-Smoke/t/lib /usr/local/perl5.005_03/lib/5.00503/ppc-linux 
/usr/local/perl5.005_03/lib/5.00503/ppc-linux /usr/local/perl5.005_03/lib/5.00503 
/usr/local/perl5.005_03/lib/site_perl/5.005/ppc-linux 
/usr/local/perl5.005_03/lib/site_perl/5.005 . 
/usr/local/perl5.005_03/lib/5.00503/ppc-linux /usr/local/perl5.005_03/lib/5.00503 
/usr/local/perl5.005_03/lib/site_perl/5.005/ppc-linux 
/usr/local/perl5.005_03/lib/site_perl/5.005 .) at (eval 10) line 3.
Perhaps the DBD::mysql perl module hasn't been fully installed,
or perhaps the capitalisation of 'mysql' isn't right.
Available drivers: CSV, ExampleP, File, Proxy.
 at t/10-mysql.t line 8
# No tests run!
dubious
        Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-7
        Failed 7/7 tests, 0.00% okay
Failed 1/10 test scripts, 90.00% okay. 7/122 subtests failed, 94.26% okay.
Failed Test  Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/10-mysql.t  255 65280     7    7 100.00%  1-7
make: *** [test_dynamic] Error 2

512
Smoking Class-DBI-0.29.tar.gz against perl5.004_05
This perl is too old.

Smoking Class-DBI-0.29.tar.gz against perl5.004_04
This perl is too old.

Smoking Class-DBI-0.29.tar.gz against perl5.004
This perl is too old.



-- 

Michael G. Schwern   <[EMAIL PROTECTED]>    http://www.pobox.com/~schwern/
Perl6 Quality Assurance     <[EMAIL PROTECTED]>       Kwalitee Is Job One
I represent GOD you fuck!
        http://www.unamerican.com/

Reply via email to