Smoking your own modules: What do you use?

Mark Fowler mark at
Mon Jul 18 10:21:10 BST 2011


The last two releases to the CPAN I did (prior to hopefully the last
useful one) released a module with a naff MANIFEST and missing files.
Ooops, I suck.  Let's not do that again, eh?

Now, I've been doing this for long enough that the mantra of "Let's
not do that again" isn't sufficient.  I need to put tools in my way to
ensure that I am protected from my own stupidity.  I could easily roll
my own, but I want to steal from the best, or failing that, you guys.

What I need to do is smoke my own modules before I release them to
CPAN.  Ideally I'd like to smoke against multiple versions of Perl (in
particular, I'd like to smoke against the version of Perl I'm claiming
to support even though my primary Perl is 5.14.)  I'd like to install
all the dependancies from scratch, so I know I haven't missed

I know several people on this list have that kind of setup.  How did
you build this?  Is there some sort of App::SmokeEmIfYouveGotEm that
you use for this or did you hand roll your solution too?

A little background to answer the inevitable questions.

  - I'm currently using Module::Install as my primary toolchain.
  - I'm running on a Mac.  The last module I wrote is actually Mac
dependant, so I need to stay on this platform.


More information about the mailing list