docs/publishing-a-release.md
These steps are only relevant to Sentry employees when preparing and publishing a new SDK release.
These have also been documented as a skill.
You can run the /release skill in Claude Code or Cursor to automate the steps below.
If you want to release a new SDK for the first time, be sure to follow the New SDK Release Checklist
yarn changelog on the develop branch and determine what version will be released (we use
semver). The semver version should be decided based on what is in included in the release. For example, if the release includes a new feature, we should increment the minor version. If it includes only bug fixes, we should increment the patch version.prepare-release/VERSION, eg. prepare-release/8.1.0, off developCHANGELOG.md to add an entry for
the next release number and a list of changes since the last release. (See details below.)meta(changelog): Update changelog for VERSION against master branch.master should be merged via "Merge Commit"accepted label on the issue to approve the release.
Once the release is completed, a sync from master -> develop will be automatically triggeredyarn changelog on a previous major branch (e.g. v8 or 9.7.0-alpha) and determine what version will be released (we use
semver)changelog-8.45.1, off a previous major branch (e.g. v8)CHANGELOG.md to add an entry for the next release number and a list of changes since the
last release. (See details below.)meta(changelog): Update changelog for VERSION against the previous major branch (e.g. v8).v8 or 9.7.0-alpha8.45.1 9.7.0-alpha.1v8 9.7.0-alphayarn changelog (or yarn generate-changelog for best-effort formatting) and copy everything.Important Changes subheading. If there are no important changes, don't include this section. If the Important Changes subheading is used, put all other user-facing changes under the Other Changes subheading.ref) without user-facing changes, tests, chores, etc) should be put under a <details> block, where the <summary> heading is "Internal Changes" (see example).
ref, chore or similar - these should go in the main changelog body, not in the internal changes section.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 final s. If there are three or more, use an Oxford
comma. (It's in the Sentry styleguide!)
This is an example of a changelog entry for a release.
## 9.28.0
### Important Changes
- **feat(nestjs): Stop creating spans for `TracingInterceptor` ([#16501](https://github.com/getsentry/sentry-javascript/pull/16501))**
With this change we stop creating spans for `TracingInterceptor` as this interceptor only serves as an internal helper and adds noise for the user.
- **feat(node): Update vercel ai spans as per new conventions ([#16497](https://github.com/getsentry/sentry-javascript/pull/16497))**
This feature ships updates to the span names and ops to better match OpenTelemetry. This should make them more easily accessible to the new agents module view we are building.
### Other Changes
- fix(sveltekit): Export `vercelAIIntegration` from `@sentry/node` ([#16496](https://github.com/getsentry/sentry-javascript/pull/16496))
<details>
<summary> <strong>Internal Changes</strong> </summary>
- ref(node): Split up incoming & outgoing http handling ([#17358](https://github.com/getsentry/sentry-javascript/pull/17358))
- test(node): Enable additionalDependencies in integration runner ([#17361](https://github.com/getsentry/sentry-javascript/pull/17361))
</details>
Work in this release was contributed by @agrattan0820. Thank you for your contribution!