I released Module::Build 0.33_01 this weekend. I had co-maintainer rights so I could help manage the RT queue, but had never before released a dev version of Module::Build, so I didn’t exactly know what was involved before I started. Here’s how it went:
- I read the release documentation in the devtools/ directory of the repository
- I updated the documentation slightly based on an email conversation I had with Eric Wilhelm, who wrote the release tool
- I installed the release tool from Eric’s repository
- I ran the release tool to build the tarball
- I uploaded the tarball to PAUSE
- I updated the documentation again to reflect a trivial error and workaround
- I ran the “bump version” tool to prepare the repo for new commits
The elapsed time was maybe an hour. This far exceeded my expectations. It was downright easy.
To be clear in case anyone missed it: I became the release manager for a CPAN distribution I co-maintain for the first time, without hassle, in about an hour.
Making a CPAN project ready for team maintenance is not hard. It’s just takes applying the three great virtues of a programmer (laziness, impatience and hubris) to the project.
- Document your release process in the repository
- Automate your release process with easily available tools
- When things change, document the change