A simple Node.js library (with math-related utility functions). Serves to demonstrate automated releases using semantic versioning.
- CI workflow runs tests on push to any branch
- Release workflow runs on every push to
main
branch- determines next version from conventional commit messages
- if there aren't any changes impacting library consumers (
feat
,fix
orBREAKING CHANGE
commits), release is skipped - new library version is published to GitHub Packages registry
- a new release commit is tagged with
vX.Y.Z
and pushed tomain
branch- updates
CHANGELOG.md
(generated from commit messages) - updates
version
field inpackage.json
- updates
- a new GitHub release is created with appropriate release notes