8000 meta(changelog): Update changelog for 9.20.0 by andreiborza · Pull Request #16312 · getsentry/sentry-javascript · GitHub
[go: up one dir, main page]

Skip to content

meta(changelog): Update changelog for 9.20.0 #16312

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

Open
wants to merge 12 commits into
base: master
Choose a base branch
from

Conversation

andreiborza
Copy link
Member

No description provided.

mydea and others added 11 commits May 14, 2025 14:10
…16279)

This PR fixes two things about our idle spans emitted from
`browserTracingIntegration`:

1. The navigation name was sometimes incorrect. This is because we look
at `window.location.pathname` at the time when the `popstate` event is
emitted - but at this point, this may not be updated yet. So a
`navigation` transaction would possibly have the pathname of the
previous page as transaction name.
2. The request data is also possibly incorrect - this is set by
`HttpContext` integration at event processing time. However, at this
time the `window.location` data is also usually already of the following
navigation, so the pageload would often have wrong request data
associated to it. Now, we store this on the current scope at span
creation time to ensure it is actually correct.
[Gitflow] Merge master into develop
- Adds a regex for `GET /__manifest` requests to to the low quality tx
filter
- Moves the integration into the integration folder
resolves #16237

The SDK automatically instruments the `performance.measure` API, but
doesn't support `detail`, which is the way you can attach arbitrary data
to `performance.measure`. Given you can see `details` in browser
dev-tools, we should probably support it in the same way in Sentry.

https://developer.mozilla.org/en-US/docs/Web/API/Performance/measure

detail docs:
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceMeasure/detail

Detail is completely arbitrary, so we have to take care before parsing
it. I have added tests accordingly.
fixes #16247

By adjusting the generic, we'll make sure that we don't erase static
fields with the `instrumentDurableObjectWithSentry` function. See an
example below:

```js
class MyDurableObjectBase extends DurableObject {
  public static readonly VERSION = '1.0.0';
}

const MyDurableObject = instrumentDurableObjectWithSentry(
  () => ({
    dsn: 'https://example.com/sentry',
    tracesSampleRate: 1.0,
  }),
  MyDurableObjectBase,
);

console.log(MyDurableObject.VERSION); // This will now work correctly
```

By moving the `DurableObjectClass` into it's own generic (`new (state:
DurableObjectState, env: E) => T`), which we named `C`, it helps
preserve the exact constructor type of the input class, including all
its static properties and methods.

This was previously being lost by not aligning the `DurableObjectClass`
with the function return value.
Adds `maxIncomingRequestBodySize` to the Node `httpIntegration`.
The setting controls the maximum size of HTTP request bodies attached to
events.

There is the option `maxRequestBodySize`
([docs](https://develop.sentry.dev/sdk/expected-features/#attaching-request-body-in-server-sdks))
in other SDKs, but to be more specific, this is named with `incoming`.

Available options:
- 'none': No request bodies will be attached
- 'small': Request bodies up to 1,000 bytes will be attached
- 'medium': Request bodies up to 10,000 bytes will be attached (default)
- 'always': Request bodies will always be attached (up to 1 MB)

closes #16179