Skip to content

meta(changelog): Update changelog for 9.12.0 #16008

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 27 commits into from
Apr 8, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
b10085d
test(remix): Bump Remix version of integration tests to `2.16.3` (#15…
onurtemizkan Apr 3, 2025
0d3b0a0
ci(deps): bump peter-evans/create-pull-request from 7.0.7 to 7.0.8 (#…
dependabot[bot] Apr 3, 2025
bbe0589
Merge pull request #15973 from getsentry/master
github-actions[bot] Apr 3, 2025
35e78c6
feat(node): Add support for `SENTRY_DEBUG` env variable (#15972)
Lms24 Apr 3, 2025
2c1c189
feat(feedback): Implement highlighting and hiding controls for screen…
ryan953 Apr 3, 2025
2b99569
test(nuxt): Improve tests for source map detection (#15968)
s1gr1d Apr 4, 2025
ddf1935
feat(nextjs): Warn when client was initialized more than once (#15971)
lforst Apr 4, 2025
d7fbb17
build(aws-serverless): Include debug logs in lambda layer SDK bundle …
Lms24 Apr 4, 2025
c6261f7
feat(node): Add `ignoreIncomingRequestBody` callback to `httpIntegrat…
Page- Apr 4, 2025
67f4919
chore: Add external contributor to CHANGELOG.md (#15984)
HazAT Apr 4, 2025
26ff159
fix(tss-react): Change `authToken` type to `string` (#15985)
Lms24 Apr 4, 2025
51f04a1
feat(browser): Add `onRequestSpanStart` hook to browser tracing integ…
lforst Apr 7, 2025
186e696
fix(core): Do not abbreviate message parameter attribute (#15987)
AbhiPrasad Apr 7, 2025
4d0c270
feat(nextjs): Mark clientside prefetch request spans with `http.reque…
lforst Apr 7, 2025
c922bcc
feat(nextjs): Un experimentify `clientInstrumentationHook` (#15992)
lforst Apr 7, 2025
9e477cd
feat(nextjs): Add `captureRouterTransitionStart` hook for capturing n…
lforst Apr 7, 2025
7e4a91e
chore(cloudflare): Add jsonc snippet to cloudflare readme (#15994)
AbhiPrasad Apr 7, 2025
3c1a9d9
feat(astro): Add tracking of errors during HTML streaming (#15995)
Fryuni Apr 7, 2025
7f24881
chore: Add external contributor to CHANGELOG.md (#15997)
HazAT Apr 7, 2025
6a8a2c3
fix(node): Make log flushing logic more robust (#15991)
AbhiPrasad Apr 7, 2025
dd2b279
feat(core): Add sentry origin attribute to console logs integration (…
AbhiPrasad Apr 8, 2025
6b73178
feat(deps): Bump @sentry/cli from 2.42.3 to 2.43.0 (#16001)
dependabot[bot] Apr 8, 2025
b4ef25d
fix(core): Prefix release and environment correctly (#15999)
AbhiPrasad Apr 8, 2025
2e3d6e3
feat(core): Add sdk name and version to logs (#16005)
AbhiPrasad Apr 8, 2025
6c40f4b
feat(node): Add server.address to nodejs logs (#16006)
AbhiPrasad Apr 8, 2025
e7530a3
feat(core): Emit debug log when transport execution fails (#16009)
lforst Apr 8, 2025
9d4d6df
meta(changelog): Update changelog for 9.12.0
AbhiPrasad Apr 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/external-contributors.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
author_association: ${{ github.event.pull_request.author_association }}

- name: Create PR with changes
uses: peter-evans/create-pull-request@dd2324fc52d5d43c699a5636bcf19fceaa70c284
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e
with:
# This token is scoped to Daniel Griesser
# If we used the default GITHUB_TOKEN, the resulting PR would not trigger CI :(
Expand Down
2 changes: 1 addition & 1 deletion .size-limit.js
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ module.exports = [
path: 'packages/vue/build/esm/index.js',
import: createImport('init', 'browserTracingIntegration'),
gzip: true,
limit: '39.5 KB',
limit: '40 KB',
},
// Svelte SDK (ESM)
{
Expand Down
55 changes: 54 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,64 @@

- "You miss 100 percent of the chances you don't take. — Wayne Gretzky" — Michael Scott

## 9.12.0

### Important Changes

- **feat(feedback): Implement highlighting and hiding controls for screenshots ([#15951](https://github.com/getsentry/sentry-javascript/pull/15951))**

The Sentry SDK now supports highlighting and hiding controls for screenshots in [user feedback reports](https://docs.sentry.io/platforms/javascript/user-feedback/). This functionality is enabled by default.

- **feat(node): Add `ignoreIncomingRequestBody` callback to `httpIntegration` ([#15959](https://github.com/getsentry/sentry-javascript/pull/15959))**

The `httpIntegration` now supports an optional `ignoreIncomingRequestBody` callback that can be used to skip capturing the body of incoming requests.

```ts
Sentry.init({
integrations: [
Sentry.httpIntegration({
ignoreIncomingRequestBody: (url, request) => {
return request.method === 'GET' && url.includes('/api/large-payload');
},
}),
],
});
```

The `ignoreIncomingRequestBody` callback receives the URL of the request and should return `true` if the body should be ignored.

- **Logging Improvements**

Sentry is adding support for [structured logging](https://github.com/getsentry/sentry-javascript/discussions/15916). In this release we've made a variety of improvements to logging functionality in the Sentry SDKs.

- feat(node): Add server.address to nodejs logs ([#16006](https://github.com/getsentry/sentry-javascript/pull/16006))
- feat(core): Add sdk name and version to logs ([#16005](https://github.com/getsentry/sentry-javascript/pull/16005))
- feat(core): Add sentry origin attribute to console logs integration ([#15998](https://github.com/getsentry/sentry-javascript/pull/15998))
- fix(core): Do not abbreviate message parameter attribute ([#15987](https://github.com/getsentry/sentry-javascript/pull/15987))
- fix(core): Prefix release and environment correctly ([#15999](https://github.com/getsentry/sentry-javascript/pull/15999))
- fix(node): Make log flushing logic more robust ([#15991](https://github.com/getsentry/sentry-javascript/pull/15991))

### Other Changes

- build(aws-serverless): Include debug logs in lambda layer SDK bundle ([#15974](https://github.com/getsentry/sentry-javascript/pull/15974))
- feat(astro): Add tracking of errors during HTML streaming ([#15995](https://github.com/getsentry/sentry-javascript/pull/15995))
- feat(browser): Add `onRequestSpanStart` hook to browser tracing integration ([#15979](https://github.com/getsentry/sentry-javascript/pull/15979))
- feat(deps): Bump @sentry/cli from 2.42.3 to 2.43.0 ([#16001](https://github.com/getsentry/sentry-javascript/pull/16001))
- feat(nextjs): Add `captureRouterTransitionStart` hook for capturing navigations ([#15981](https://github.com/getsentry/sentry-javascript/pull/15981))
- feat(nextjs): Mark clientside prefetch request spans with `http.request.prefetch: true` attribute ([#15980](https://github.com/getsentry/sentry-javascript/pull/15980))
- feat(nextjs): Un experimentify `clientInstrumentationHook` ([#15992](https://github.com/getsentry/sentry-javascript/pull/15992))
- feat(nextjs): Warn when client was initialized more than once ([#15971](https://github.com/getsentry/sentry-javascript/pull/15971))
- feat(node): Add support for `SENTRY_DEBUG` env variable ([#15972](https://github.com/getsentry/sentry-javascript/pull/15972))
- fix(tss-react): Change `authToken` type to `string` ([#15985](https://github.com/getsentry/sentry-javascript/pull/15985))

Work in this release was contributed by @Page- and @Fryuni. Thank you for your contributions!

## 9.11.0

- feat(browser): Add `http.redirect_count` attribute to `browser.redirect` span ([#15943](https://github.com/getsentry/sentry-javascript/pull/15943))
- feat(core): Add `consoleLoggingIntegration` for logs ([#15955](https://github.com/getsentry/sentry-javascript/pull/15955))
- feat(core): Don't truncate error messages ([#15818](https://github.com/getsentry/sentry-javascript/pull/15818))
- feat(core): Emit debug log when transport execution fails ([#16009](https://github.com/getsentry/sentry-javascript/pull/16009))
- feat(nextjs): Add release injection in Turbopack ([#15958](https://github.com/getsentry/sentry-javascript/pull/15958))
- feat(nextjs): Record `turbopack` as tag ([#15928](https://github.com/getsentry/sentry-javascript/pull/15928))
- feat(nuxt): Base decision on source maps upload only on Nuxt source map settings ([#15859](https://github.com/getsentry/sentry-javascript/pull/15859))
Expand Down Expand Up @@ -117,7 +170,7 @@

- **feat(nextjs): Support `instrumentation-client.ts` ([#15705](https://github.com/getsentry/sentry-javascript/pull/15705))**

Next.js recently added a feature to support [client-side (browser) instrumentation via the `experimental.clientInstrumentationHook` flag and the `instrumentation-client.ts` file](https://nextjs.org/docs/app/api-reference/config/next-config-js/clientInstrumentationHook).
Next.js recently added a feature to support [client-side (browser) instrumentation via a `instrumentation-client.ts` file](https://nextjs.org/docs/app/api-reference/file-conventions/instrumentation-client).

To be forwards compatible, the Sentry Next.js SDK will now pick up `instrumentation-client.ts` files even on older Next.js versions and add them to your client bundles.
It is suggested that you either rename your `sentry.client.config.ts` file to `instrumentation-client.ts`, or if you already happen to have a `instrumentation-client.ts` file move the contents of `sentry.client.config.ts` to `instrumentation-client.ts`.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,26 @@ sentryTest('should capture console object calls', async ({ getLocalTestUrl, page
{
severityText: 'trace',
body: { stringValue: 'console.trace 123 false' },
attributes: [],
attributes: [
{
key: 'sentry.origin',
value: {
stringValue: 'auto.console.logging',
},
},
{
key: 'sentry.sdk.name',
value: {
stringValue: 'sentry.javascript.browser',
},
},
{
key: 'sentry.sdk.version',
value: {
stringValue: expect.any(String),
},
},
],
timeUnixNano: expect.any(String),
traceId: expect.any(String),
severityNumber: 1,
Expand All @@ -37,7 +56,26 @@ sentryTest('should capture console object calls', async ({ getLocalTestUrl, page
{
severityText: 'debug',
body: { stringValue: 'console.debug 123 false' },
attributes: [],
attributes: [
{
key: 'sentry.origin',
value: {
stringValue: 'auto.console.logging',
},
},
{
key: 'sentry.sdk.name',
value: {
stringValue: 'sentry.javascript.browser',
},
},
{
key: 'sentry.sdk.version',
value: {
stringValue: expect.any(String),
},
},
],
timeUnixNano: expect.any(String),
traceId: expect.any(String),
severityNumber: 5,
Expand All @@ -51,7 +89,26 @@ sentryTest('should capture console object calls', async ({ getLocalTestUrl, page
{
severityText: 'info',
body: { stringValue: 'console.log 123 false' },
attributes: [],
attributes: [
{
key: 'sentry.origin',
value: {
stringValue: 'auto.console.logging',
},
},
{
key: 'sentry.sdk.name',
value: {
stringValue: 'sentry.javascript.browser',
},
},
{
key: 'sentry.sdk.version',
value: {
stringValue: expect.any(String),
},
},
],
timeUnixNano: expect.any(String),
traceId: expect.any(String),
severityNumber: 10,
Expand All @@ -65,7 +122,26 @@ sentryTest('should capture console object calls', async ({ getLocalTestUrl, page
{
severityText: 'info',
body: { stringValue: 'console.info 123 false' },
attributes: [],
attributes: [
{
key: 'sentry.origin',
value: {
stringValue: 'auto.console.logging',
},
},
{
key: 'sentry.sdk.name',
value: {
stringValue: 'sentry.javascript.browser',
},
},
{
key: 'sentry.sdk.version',
value: {
stringValue: expect.any(String),
},
},
],
timeUnixNano: expect.any(String),
traceId: expect.any(String),
severityNumber: 9,
Expand All @@ -79,7 +155,26 @@ sentryTest('should capture console object calls', async ({ getLocalTestUrl, page
{
severityText: 'warn',
body: { stringValue: 'console.warn 123 false' },
attributes: [],
attributes: [
{
key: 'sentry.origin',
value: {
stringValue: 'auto.console.logging',
},
},
{
key: 'sentry.sdk.name',
value: {
stringValue: 'sentry.javascript.browser',
},
},
{
key: 'sentry.sdk.version',
value: {
stringValue: expect.any(String),
},
},
],
timeUnixNano: expect.any(String),
traceId: expect.any(String),
severityNumber: 13,
Expand All @@ -93,7 +188,26 @@ sentryTest('should capture console object calls', async ({ getLocalTestUrl, page
{
severityText: 'error',
body: { stringValue: 'console.error 123 false' },
attributes: [],
attributes: [
{
key: 'sentry.origin',
value: {
stringValue: 'auto.console.logging',
},
},
{
key: 'sentry.sdk.name',
value: {
stringValue: 'sentry.javascript.browser',
},
},
{
key: 'sentry.sdk.version',
value: {
stringValue: expect.any(String),
},
},
],
timeUnixNano: expect.any(String),
traceId: expect.any(String),
severityNumber: 17,
Expand All @@ -107,7 +221,26 @@ sentryTest('should capture console object calls', async ({ getLocalTestUrl, page
{
severityText: 'error',
body: { stringValue: 'Assertion failed: console.assert 123 false' },
attributes: [],
attributes: [
{
key: 'sentry.origin',
value: {
stringValue: 'auto.console.logging',
},
},
{
key: 'sentry.sdk.name',
value: {
stringValue: 'sentry.javascript.browser',
},
},
{
key: 'sentry.sdk.version',
value: {
stringValue: expect.any(String),
},
},
],
timeUnixNano: expect.any(String),
traceId: expect.any(String),
severityNumber: 17,
Expand Down
Loading
Loading