Whenever starting another Perl project, the very first command you should run better be the following:
$ module-starter --module=My::Module --author="[your-name]" \ --email=[your-email] --builder=Module::Install
This provides the developer with a basic environment for writing solid Perl code, e.g. a new directory called My-Module
with all the good stuff ready for use:
MANIFEST README ignore.txt Makefile.PL Changes lib/My/Module.pm t/pod-coverage.t t/pod.t t/00-load.t t/boilerplate.t t/manifest.t
After that it's the following, and off you go.
$ perl Makefile.PL $ make $ make test $ make install
Life couldn't be easier could it?
Of course life could be easier. You could just type
dzil new Your::Module
After a one-time installation of Dist::Zilla and run dzil setup, that's all you need to get started. Then you just edit your dist.ini file a little bit to have dzil create your MANIFEST, README, LICENSE, etc. All of the boiler-plate stuff that you would normally do.
See Dist::Zilla's website for more info.
Never knew about it, thanks. I'll check it out (and probably end up using it instead).
Well actually it could be easier. Just create a ~/.module-starter/config configuration file and include the options in it which are always repeated:
author: [your-name]
email: [your-email]
license: artistic
builder: Module::Install
Now the command is simpler and looks like this:
$ module-starter --module=My::Module
Thanks for the configuration example. I missed this option, too. But the default location is ~/.module-starter/config, isn't it?
You're right, thanks. I corrected it.
+1 For Dist::Zilla.
Dist::Zilla by default leaves files out of your working dir that you don't need to edit and injects them into the build at build time.
And since DZil 4, you can fully customize the generated project for the things you *do* need to edit ( previously It just threw in a dist.ini and an empty module ):
http://www.dagolden.com/index.php/955/creating-new-distributions-with-distzilla/
xdg++