The release process is semi-automated. The generated changelog requires editing to keep it visually appealing and clear for everyone.
- All the development goes into
dev
branch. There are only squash merges allowed there so that its not flooded with everyones commits. - Make a PR to
master
fromdev
and if all checks are good then merge with the titlechore: 🔧 releasing x.x.x
. - Generate the changelog
yarn run changelog
- Take a look at the previous changelogs and modify the generated changelog accordingly. Delete and organize the commits and move them under internals section if needed.
- Create the release
yarn run release
- Publish to npm
yarn run publish:npm
- Push the changes to git.
- Create release in github by copy pasting the related section from the CHANGELOG.md
- There is a
release CI workflow
. Wait for it to be succeeded to see if there any problems with the released version.