The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

TODO

Move this documentation to the 'commands' script so that everything is self-documenting.

Overview

This document describes how to build, test and package this module.

After doing a bit of searching, I stumbled across a makefile/script in the Parallel::SubFork CPAN package that looked interesting.

I'm still testing and fine tuning this, so fixes may follow. Using this script, most of the test and dist tasks can be automated:

# Get brief info on current package
./commands info

# Install local version
./commands install
./commands clean

# Test current working tree
./commands test

# Create a new dist tarball and check it
./commands distcheck

# To do the whole release (clean, test, dist, distcheck, tag, push, upload)
# Note: use this when _not_ using gitflow.
./commands release

# To do the release with gitflow (be sure to bump versions in source!)
./commands clean test dist distcheck
git flow release finish <RELNUM>
git push --tags origin master

Troubleshooting

./commands distcheck

If the distcheck fails with "No such file: ...", the file is still in the MANIFEST, but probably has been removed or renamed in the distribution.

Old Notes

These notes are superceded by the above script, as well as the fact that the automated fetching of tarballs from Github by the PAUSE server seems to be broken.

Using "git flow"

git flow release start 0.5
# bump release string in META.yml and lib/Config/Versioned.pm
make veryclean

Pushing CPAN modules from Github to CPAN (from http://blog.usarundbrief.com/?p=36)