Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re^2: My Perl Module Toolchain

by Tux (Monsignor)
on May 28, 2012 at 09:50 UTC ( #972801=note: print w/ replies, xml ) Need Help??


in reply to Re: My Perl Module Toolchain
in thread My Perl Module Toolchain

Module::Release' release will support wildcards when you have multiple versions of perl to test against. This is very useful when you have threaded and unthreaded perls, 64bitall and/or 64bitint and/or longdouble supported perl releases installed. I have now 111 versions of perl available on my external disk ranging from 5.003_07 to 5.17.0. Picking the versions that ought to be supported by your module could be something like this:

$ cat .releaserc cpan_user HMBRAND automated_testing 1 skip_kwalitee 1 skip_manifest 1 skip_prereqs 1 allow_glob_in_perls 1 perls /pro/bin/perl:/pro/bin/perl5.00504:/usr/bin/perl:/media/Tux/perl +s/bin/perl5.6.2:/media/Tux/perls/bin/perl5.8.*:/media/Tux/perls/bin/p +erl5.1[024567]*:/media/Tux/perls/bin/tperl5.6.2:/media/Tux/perls/bin/ +tperl5.8.*:/media/Tux/perls/bin/tperl5.1[024567]* $

I explicitely disable the quality checks for release as most of the modules that are needed for those are only installed in my "normal" perl and not in the test set so release would fail. I run the quality tests using Module::CPANTS::Kwalitee's cpants_lint.pl after release is done.

My Makefile.PL contains a special target "tgzdist", which checks spelling, dependency versions, minimal (declared) perl version and more:

Text-CSV_XS $ make tgzdist pod-spell-check --aspell --ispell ok 1 - CSV_XS.pm ok 2 - sandbox/genMETA.pm ok 3 - sandbox/i-ttt/lib/i/ttt.pm 1..3 ok 1 - CommonMistakes ok 1 - CSV_XS.pm ok 2 - sandbox/genMETA.pm ok 3 - sandbox/i-ttt/lib/i/ttt.pm 1..3 ok 2 - Spell-check with aspell ok 1 - CSV_XS.pm ok 2 - sandbox/genMETA.pm ok 3 - sandbox/i-ttt/lib/i/ttt.pm 1..3 ok 3 - Spell-check with ispell 1..3 perl sandbox/genPPPort_h.pl ppport.h updated to 3.20 perl sandbox/genMETA.pl -c Checking generated YAML ... Checking for Text::CSV_XS-0.89 Check if ChangeLog and README are still valid UTF8 ... Check required and recommended module versions ... Check distribution module versions ... Checking if 5.006 is still OK as minimal version for examples 1..5 ok 1 - examples/parser-xs.pl ok 2 - examples/speed.pl ok 3 - examples/csv2xls ok 4 - examples/csvdiff ok 5 - examples/csv-check ok 1 - Minimum perl version 5.006 : : gzip --best Text-CSV_XS-0.89.tar /pro/bin/perl "-MExtUtils::Manifest=fullcheck" -e fullcheck Not in MANIFEST: MYMETA.json Checked dist Text-CSV_XS-0.89.tgz Kwalitee rating 133.33% (32/24) Ignoring metrics is_prereq, prereq_matches_use, build_prereq_ma +tches_use

Enjoy, Have FUN! H.Merijn


Comment on Re^2: My Perl Module Toolchain
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://972801]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (10)
As of 2014-12-26 17:10 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (173 votes), past polls