The following guide details the release process and infrastructure.
Determining the next version number
TODO description
Bumping The Version
The script automatically bumps the version of the project in the following locations to the new version.
- package.json
- lerna.json
- [addons|apps|engines|tools]/*/package.json
Generating and Moving Static Assets
TODO description
Generating Release Notes
During a release, our automated script uses lerna changelog to generate release notes and add them to ./CHANGELOG.md by aggregating the commit messages and PR titles that have occurred since the prior minor or patch release. These messages are organized and presented utilizing CI the enforced labeling system.
:memo: security
| 🔒 Security Improvement:memo: feat
| 🚀 Enhancement:memo: bugfix
| 🐛 Bug Fix:memo: perf
| ⚡ Performance:memo: cleanup
| 🚿 Deprecation Removal:memo: deprecation
| 🌲 New Deprecation:memo: doc
| 📝 Documentation:memo: test
| 🥅 Test:memo: chore
| 🏠 Internal
Tagging The Commit
Once the version has been bumped, static assets generated, and changelog updated a commit is generated to preserve these changes. That commit is then tagged with the same version number. The commit and the tag are then pushed to github to preserve the history of what we've published and when.
Generating A Release
Once the commit has been tagged, our script publishes the tag as a new Github Release with the associated release notes.
TODO add tooling