We automated some parts of the release process to make things easier. This file lists the necessary steps to release the latest version of the application:
- Check and ensure that
- previous release branch
release/nextwas merged intodevelop - the branch
release/nextwas deleted
- previous release branch
- Check and ensure you are working in the latest
developbranch and that it's up to date with origin - From
developcreate a new branchrelease/next- Every release goes from this branch, it's a limitation of changesets
- This will cause an action to run in GitHub, but you must now also add a changeset
- If you need to change the version displayed in the extension, create a PR merging into
release/nextto update the"version": "x.x.x",inside:packages/extension/manifest/v2.jsonpackages/extension/manifest/v3.json
- Need to have an 'intent to release'
- In your local
release/nextbranch runpnpm changeset - Use SPACE to select and ENTER to confirm in the wizard;
- Select the extension package and packages that may show as "changed"
- This can be the case, if an npm package was marked for release before
- Choose a minor version bump
- When prompted Please enter a summary for this change, enter
Release - When finished the wizard will create a file in the
.changesetfolder - Commit and push the changes
- This will cause another action to run in GitHub
- Check the bootstrap release action
- On completion this opens a PR called 'Version Packages'
- Select the extension package and packages that may show as "changed"
- All PR's for the next release should merge into
release/nextuntil the release is done
- All QA testing should happen on Release Candidate
release/nextbranch - Merge after QA is happy and RC is ready to be published
- Merge 'Version Packages' PR
- This will cause the package version(s) in
release/nextbranch to be updated according to the changeset - This will create a tag
- That will cause the release to be built
- This will cause the package version(s) in
- Back-merge
release/nextinto develop - Delete
release/nextbranch
- Create a new
release/nextbranch from the last release tag, then follow steps above
- Submit to Chrome Web Store (ask Ismael or Thomas)