On Fri, Sep 5, 2008 at 6:17 PM, chromatic <[EMAIL PROTECTED]> wrote: > On Friday 05 September 2008 16:52:05 brian d foy wrote: > >> In article <[EMAIL PROTECTED]>, chromatic > >> > If I could see somehow that my distribution implicitly runs on >> > Perl 5.001 (or explicitly runs only on 5.11.0), or that it has no >> > Makefile.PL or Build.PL, or any of the other dozens of packaging quirks >> > that can cause problems, I could fix them before uploading and before >> > triggering a wave of testing. > >> That's what Module::Release does, and since the QA Hackathon in Oslo, >> it even tests under multiple perls. It can check kwalitee (or not), or >> anything else that you like. > > Hm. What's your thought on turning that into something which a Module::Build > or ExtUtils::MakeMaker plugin could run on ./Build distcheck or make > distcheck?
Module::Release already does that, too. You don't run it from make, you just type 'release' at the command line and it checks the `make test` and `make disttest`. There is a Module::Build plugin, but I haven't verified that it works for my latest versions yet (it probably doesn't). If someone wants to integrate it some other way, they can, but I have a different workflow that works a lot better for me. Module::Release tests a bunch of things, and if anything fails, it stops and doesn't release anything. The major bits are the distro tests, prereqs (I'm moving Test::Prereq out of my dists and into Module::Release), kwalitee, and source control status. Although you can look at the 'release' script in search.cpan.org, here's the output of a dry run to show you how it works (even more stuff happens for a real release after all this stuff passes)l: macbookpro_brian[686]$ release -t ============Testing with /usr/local/bin/perl5.10.0 Cleaning directory... no Makefile---skipping Recreating make file... done Running make... done Checking make test... all tests pass Checking prereqs... done Making dist... done Checking make disttest... all tests pass ============Testing with /usr/local/bin/perl Cleaning directory... done Recreating make file... done Running make... done Checking make test... all tests pass Checking prereqs... done Making dist... done Checking make disttest... all tests pass ============Testing for kwalitee Cleaning directory... done Recreating make file... done Running make... done Making dist... done Checking kwalitee... done ============Checking source repository Checking state of Git... Git up-to-date on branch 1 Cleaning directory... done -- brian d foy <[EMAIL PROTECTED]> http://www.pair.com/~comdog/