Update (2019): This article was written on 2015. For newer alternatives, consider tools like np.
Releasing packages involves the same repetitive tasks: updating the change log, bumping versions, tagging a release, and so on. Here are a few tools to make this chore easier.
This utility allows you to increment versions of files through the command line. For JavaScript packages, this simply means bumping your .json
files. This works with any file type with semver tags.
There are many change log tools available, but I've found that the sanest solution is to update the log as features get implemented. Maintain an "unreleased" list on top of the change log—on release time, you'll simply need to add a date.
Git Extras comes with the git release
command, which automates creating a release commit, tags it with the right version, and pushes it.
Here's how it would work for a typical npm package. These tools are language-agnostic, though—this process will also work for non-JavaScript packages.