These steps are only relevant to Sentry employees when preparing and publishing a new SDK release.
If you want to release a new SDK for the first time, be sure to follow the New SDK Release Checklist
- Run
yarn changelogon thedevelopbranch and determine what version will be released (we use semver) - Create a branch
prepare-release/VERSION, eg.prepare-release/8.1.0, off develop - Update
CHANGELOG.mdto add an entry for the next release number and a list of changes since the last release. (See details below.) - Open a PR with the title
meta(changelog): Update changelog for VERSIONagainstmasterbranch. - Be cautious! The PR against
mastershould be merged via "Merge Commit" - When the PR is merged, it will automatically trigger the Auto Prepare Release on master.
- A new issue should appear in https://github.com/getsentry/publish/issues.
- Wait until the CI check runs have finished successfully (there is a link to them in the issue).
- Once CI passes successfully, ask a member of the
@getsentry/releases-approvers to approve the release. a.
Once the release is completed, a sync from
master->developwill be automatically triggered
- Run
yarn changelogon a previous major branch (e.g.v8or9.7.0-alpha) and determine what version will be released (we use semver) - Create a branch, e.g.
changelog-8.45.1, off a previous major branch (e.g.v8) - Update
CHANGELOG.mdto add an entry for the next release number and a list of changes since the last release. (See details below.) - Open a PR with the title
meta(changelog): Update changelog for VERSIONagainst the previous major branch (e.g.v8). - Be cautious! The PR against the previous major branch should be merged via "Squash and Merge" (as the commits already exist on this branch).
- Once the PR is merged, open the Prepare Release workflow and
fill in
- The major branch you want to release for, e.g.
v8or9.7.0-alpha - The version you want to release, e.g.
8.45.19.7.0-alpha.1 - The major branch to merge into, e.g.
v89.7.0-alpha
- The major branch you want to release for, e.g.
- Run the release workflow
- Run
yarn changelogand copy everything. - Create a new section in the changelog with the previously determined version number.
- Paste in the logs you copied earlier.
- Delete any which aren't user-facing changes (such as docs or tests).
- Highlight any important changes with subheadings.
- If any of the PRs are from external contributors, include underneath the commits
Work in this release contributed by <list of external contributors' GitHub usernames>. Thank you for your contributions!. If there's only one external PR, don't forget to remove the finals. If there are three or more, use an Oxford comma. (It's in the Sentry styleguide!)- We have a GitHub Action "External Contributors" which collects all external contributors in the changelog section "Unreleased". The GitHub Action creates a PR with this change every time a PR of an external contributor is merged. You can safely cut and paste this line to the new release section of the changelog (but a sanity check is never wrong).
- Commit, push, and continue with step 4 from the previous section with the general instructions (above).