Skip to content

meta(changelog): Update changelog for 9.18.0 #16265

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 31 commits into from
May 13, 2025
Merged

Conversation

andreiborza
Copy link
Member

No description provided.

RulaKhaled and others added 28 commits May 7, 2025 13:32
[Gitflow] Merge master into develop
)

Cloudflare workers have a variety of handlers you can define for
different functionality:
https://developers.cloudflare.com/workers/runtime-apis/handlers/

Right now our instrumentation wraps the `fetch` and `scheduled`
handlers. This PR extends our instrumentation to also wrap the `queue`,
`email`, and `tail` handler.

We only create spans for queue and email, but not for tail because its
meant as a debugging/analytics endpoint. We can introduce spans in
`tail` handler if there is demand in the future.

We need to add this wrapping, otherwise users cannot use the SDK in
these handlers because of how the cloudflare isolation model works
(fetch handler is completed isolated from email and queue handlers, so
we need to wrap every handler individually).
Removed the vendored types and started importing them from Remix v2
packages. Also added `@remix-run/server-runtime` as `devDependency` and
`peerDependency`
Resolves: #16239 

Looks like importing types without `type` fails on Node 24.
resolves #16238

The error with the google cloud serverless tests in Node 24 was only
happening in Node `24.0.0`, which was fixed in
[`24.0.1`](https://github.com/nodejs/node/releases/tag/v24.0.1), so we
can safely re-enable everything.
Node [`24.0.1`](https://github.com/nodejs/node/releases/tag/v24.0.1)
fixed a bug with our google cloud serverless tests that we were running
into in #16238

For some reason CI doesn't want to use it? So pinning to `^24.0.1`.
…sFilter-for-react-router

feat(react-router): Create low quality transactions filter for react router
I noticed that my bun version locally was old, leading to weird test
issues.
Now, our install script will ensure this is the latest version. On CI,
we already test against the latest version.

(Noticed this because bun 1.0.2 which I had installed reports itself as
Node 18.5.0 which lead to ESM warnings)
…tel v1 deps (#16256)

The `@fastify/otel` instrumentation uses OpenTelemetry v2, but for the
time being Sentry only supports OpenTelemetry v1. We forked the library
at https://github.com/getsentry/fastify-otel/tree/otel-v1 and downgraded
its dependencies to OpenTelemetry v1.

For the downgrade work in the fork see:
getsentry/fastify-otel@7893f70

**Note**: This also bumps the instrumentation from `0.6.0` to `0.8.0`.

Resolves: #16245

---------

Co-authored-by: Francesco Gringl-Novy <[email protected]>
See
https://github.com/nodejs/import-in-the-middle/releases/tag/import-in-the-middle-v1.13.1

### Bug Fixes

* handling of circular dependencies
([#181](nodejs/import-in-the-middle#181))
([b58092e](nodejs/import-in-the-middle@b58092e))
* importing JSON files
([#182](nodejs/import-in-the-middle#182))
([8c52014](nodejs/import-in-the-middle@8c52014))
* warning from use of context.importAssertions
([#179](nodejs/import-in-the-middle#179))
([8e56cf1](nodejs/import-in-the-middle@8e56cf1))

This version is already allowed by our range, but in order to ensure
everybody gets this, bumping it here.
…6221)

Today, if the `httpIntegration` is used without spans (e.g. in a custom
OTEL setup or when setting `httpIntegration({ spans: false })`
manually), outgoing requests will not have traces propagated.

This PR fixes this by using the `http.client.request.created`
diagnostics channel to add the trace headers in this scenario.

However, sadly this channel was only added in Node 22, so it does not
work on versions before that.
I suppose this is still worth adding because it is better than what we
have today (which is that it does not work at all). We may think about
making this work for Node <22, but this would require us monkey patching
http again, which we really do not want to do... Also note that as of
now this should not really affect the vast majority of cases, as unless
you specifically opt out of spans today this will always work as we
always add the otel http instrumentation by default. And in custom otel
setups, users will usually have this set up anyhow. (Also, fetch works
in all environments as expected).

If we want to, in a follow up, avoid adding the otel spans
instrumentation if performance is disabled, we need to think about
this... an option could be to always adding the instrumentation on node
<22, and only skip it on Node 22+. But this can be looked at separately,
this PR at least makes things better than before on Node 22+...

This supersedes
#15735

---------

Co-authored-by: Abhijeet Prasad <[email protected]>
Co-authored-by: Andrei <[email protected]>
In preparation for supporting OpenTelemetry v2 we widened the peer
dependency range of `@sentry/opentelemetry` to allow v2 dependencies.

**Note**: `@sentry/node` still requires the v1 packages of
OpenTelemetry, this is just preparatory work to allow us to bump this
down the road.

Parts of `@sentry/opentelemetry` (and `@sentry/core`) have been reworked
to be compatible with both OpenTelemetry v1 and v2.

Unit tests in `@sentry/opentelemetry` are running with v1 dependencies
while a new package was added to `dev-packages/` with a copy of all unit
tests from `@sentry/opentelemetry` to run with v2 dependencies, adjusted
to breaking changes introduced with OpenTelemetry v2.

---------

Co-authored-by: Onur Temizkan <[email protected]>
While helping debug work in https://github.com/getsentry/sentry-mcp, I
noticed that we didn't attach `url.path` to the http fetch spans, which
made using the trace explorer harder to use.

This PR updates the cloudflare http instrumentation (fetch handlers for
regular workers and durable objects) to use a new
`getHttpSpanDetailsFromUrlObject` abstraction I built.

`getHttpSpanDetailsFromUrlObject` returns the http span name and it's
associated attributes, taking care to handle source, route names, and
handling both relative and full URLs.

This is related to all the
#15767 work I've
been doing.
Forgot to update the lockfile after updating the minimatch dep on our
fastiy/otel fork.
)

While doing this, I also fixed a problem with our test runner when using
both `expectNoErrorOutput()` and `expect` - the former leads to the test
finishing before we check the `expect` content, so now we make sure both
of these are not used together.

No test content should have changed, just moved around.
@andreiborza andreiborza requested a review from a team as a code owner May 12, 2025 13:49
@andreiborza andreiborza requested a review from mydea May 12, 2025 13:49
Copy link
Contributor

github-actions bot commented May 12, 2025

size-limit report 📦

Path Size % Change Change
@sentry/browser 23.4 KB added added
@sentry/browser - with treeshaking flags 23.22 KB added added
@sentry/browser (incl. Tracing) 37.3 KB added added
@sentry/browser (incl. Tracing, Replay) 74.53 KB added added
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.37 KB added added
@sentry/browser (incl. Tracing, Replay with Canvas) 79.18 KB added added
@sentry/browser (incl. Tracing, Replay, Feedback) 90.99 KB added added
@sentry/browser (incl. Feedback) 39.8 KB added added
@sentry/browser (incl. sendFeedback) 28.03 KB added added
@sentry/browser (incl. FeedbackAsync) 32.79 KB added added
@sentry/react 25.17 KB added added
@sentry/react (incl. Tracing) 39.26 KB added added
@sentry/vue 27.67 KB added added
@sentry/vue (incl. Tracing) 39.06 KB added added
@sentry/svelte 23.43 KB added added
CDN Bundle 24.58 KB added added
CDN Bundle (incl. Tracing) 37.33 KB added added
CDN Bundle (incl. Tracing, Replay) 72.37 KB added added
CDN Bundle (incl. Tracing, Replay, Feedback) 77.67 KB added added
CDN Bundle - uncompressed 71.72 KB added added
CDN Bundle (incl. Tracing) - uncompressed 110.46 KB added added
CDN Bundle (incl. Tracing, Replay) - uncompressed 221.75 KB added added
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 234.27 KB added added
@sentry/nextjs (client) 40.88 KB added added
@sentry/sveltekit (client) 37.76 KB added added
@sentry/node 155.42 KB added added
@sentry/node - without tracing 96 KB added added
@sentry/aws-serverless 121.5 KB added added

mydea and others added 2 commits May 12, 2025 14:03
Noticed we still have this twice from the utils-hoist folder.

---------

Co-authored-by: Andrei <[email protected]>
@andreiborza andreiborza force-pushed the prepare-release/9.18.0 branch from 629fb9f to f2894c8 Compare May 12, 2025 14:21
CHANGELOG.md Outdated

- deps(node): Bump `import-in-the-middle` to `1.13.1` ([#16260](https://github.com/getsentry/sentry-javascript/pull/16260))
- feat: Export `consoleLoggingIntegration` from vercel edge sdk ([#16228](https://github.com/getsentry/sentry-javascript/pull/16228))
- feat: Support Node 24 ([#16236](https://github.com/getsentry/sentry-javascript/pull/16236))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we push this up to important changes?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lifted up.

@andreiborza andreiborza force-pushed the prepare-release/9.18.0 branch from f2894c8 to 8dc4161 Compare May 12, 2025 14:52
@andreiborza andreiborza merged commit 2e97a27 into master May 13, 2025
304 of 306 checks passed
@andreiborza andreiborza deleted the prepare-release/9.18.0 branch May 13, 2025 07:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants