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.
1. Bump versions via bump-cli
.json files. This works with any file type with semver tags.
2. Continuously maintain the change log
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.
## v0.1.0 - unreleased * Added feature Y * Fixed bug Z * ...
3. Tag and release via git-extras
Git Extras comes with the
git release command, which automates creating a release commit, tags it with the right version, and pushes it.
git release "v1.0.0"
All together now
vim HISTORY.md bump *.json && npm test && # Run tests npm publish && # Publish to npm git release "v1.0.0" # Publish to GitHub