PackageTrack

npm ยท #3729

@sentry/vercel-edge

10.71.0getsentry/sentry-javascript โ†—

Official Sentry SDK for the Vercel Edge Runtime

Release timeline

324 releases since 2023
202420252026

Releases

  1. 11.0.0-alpha.112 Aug 2026pre-release
    Release notes

    This is an alpha release of the upcoming major release of version 11.
    This release does not yet entail a comprehensive changelog as version 11 is not yet stable.

    For this release's iteration of the migration guide, see the Migration Guide as per 11.0.0-alpha.1.

    Please note that the migration guide is work in progress and subject to change.

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 29.59 KB
    @sentry/browser - with treeshaking flags 27.81 KB
    @sentry/browser - with treeshaking flags tracing without tracing 26.19 KB
    @sentry/browser (incl. Tracing) 47.4 KB
    @sentry/browser (incl. Tracing + Span Streaming) 47.41 KB
    @sentry/browser (incl. Tracing, Profiling) 50.23 KB
    @sentry/browser (incl. Tracing, Replay) 85.87 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 75.54 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 90.47 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 102.88 KB
    @sentry/browser (incl. Feedback) 46.51 KB
    @sentry/browser (incl. sendFeedback) 34.3 KB
    @sentry/browser (incl. FeedbackAsync) 39.33 KB
    @sentry/browser (incl. Metrics) 30.56 KB
    @sentry/browser (incl. Logs) 30.81 KB
    @sentry/browser (incl. Metrics & Logs) 31.46 KB
    @sentry/react 31.34 KB
    @sentry/react (incl. Tracing) 49.54 KB
    @sentry/vue 34.48 KB
    @sentry/vue (incl. Tracing) 49.3 KB
    @sentry/svelte 29.6 KB
    CDN Bundle 30.87 KB
    CDN Bundle (incl. Tracing) 47.71 KB
    CDN Bundle (incl. Logs, Metrics) 33.03 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 49.63 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 72.61 KB
    CDN Bundle (incl. Tracing, Replay) 84.42 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 86.25 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.99 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 91.93 KB
    CDN Bundle - uncompressed 91.64 KB
    CDN Bundle (incl. Tracing) - uncompressed 143.23 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 97.89 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 148.89 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 223.81 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 259.69 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 265.34 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 273.07 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 278.7 KB
    @sentry/nextjs (client) 52.03 KB
    @sentry/sveltekit (client) 47.8 KB
    @sentry/core/server 63.88 KB
    @sentry/core/browser 50.56 KB
    @sentry/node 115.22 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 0 B
    @sentry/node - without tracing 80.17 KB
    @sentry/aws-serverless 89.35 KB
    @sentry/cloudflare (withSentry) - minified 208.87 KB
    @sentry/cloudflare (withSentry) 515.92 KB
    Open source โ†’
  2. 11.0.0-alpha.07 Aug 2026pre-release
    Release notes

    This is an alpha release of the upcoming major release of version 11.
    This release does not yet entail a comprehensive changelog as version 11 is not yet stable.

    For this release's iteration of the migration guide, see the Migration Guide as per 11.0.0-alpha.0.

    Please note that the migration guide is work in progress and subject to change.

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 29.64 KB
    @sentry/browser - with treeshaking flags 27.89 KB
    @sentry/browser - with treeshaking flags tracing without tracing 26.24 KB
    @sentry/browser (incl. Tracing) 46.69 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.71 KB
    @sentry/browser (incl. Tracing, Profiling) 51.33 KB
    @sentry/browser (incl. Tracing, Replay) 85.15 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 74.83 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 89.76 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 102.11 KB
    @sentry/browser (incl. Feedback) 46.57 KB
    @sentry/browser (incl. sendFeedback) 34.35 KB
    @sentry/browser (incl. FeedbackAsync) 39.4 KB
    @sentry/browser (incl. Metrics) 30.68 KB
    @sentry/browser (incl. Logs) 30.92 KB
    @sentry/browser (incl. Metrics & Logs) 31.57 KB
    @sentry/react 31.4 KB
    @sentry/react (incl. Tracing) 48.9 KB
    @sentry/vue 34.63 KB
    @sentry/vue (incl. Tracing) 48.66 KB
    @sentry/svelte 29.66 KB
    CDN Bundle 31.59 KB
    CDN Bundle (incl. Tracing) 47.01 KB
    CDN Bundle (incl. Logs, Metrics) 33.1 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.3 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 71.52 KB
    CDN Bundle (incl. Tracing, Replay) 83.73 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.99 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.42 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.69 KB
    CDN Bundle - uncompressed 93.64 KB
    CDN Bundle (incl. Tracing) - uncompressed 140.22 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 98.15 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 144.11 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 219.93 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 256.69 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 260.56 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 270.07 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 273.93 KB
    @sentry/nextjs (client) 51.39 KB
    @sentry/sveltekit (client) 47.14 KB
    @sentry/core/server 64.24 KB
    @sentry/core/browser 50.79 KB
    @sentry/node 116.67 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 0 B
    @sentry/node - without tracing 81.49 KB
    @sentry/aws-serverless 90.61 KB
    @sentry/cloudflare (withSentry) - minified 209.86 KB
    @sentry/cloudflare (withSentry) 518.34 KB
    Open source โ†’
  3. 10.71.024 Aug 2026
    Release notes

    Important Changes

    • feat(v10/core)!: Enable logs by default (#23311)

    The enableLogs client option now defaults to true, so Sentry Logs work without any manual opt-in. Nothing is captured unless you call the Sentry.logger.* APIs or add a log-forwarding integration (such as consoleLoggingIntegration, pinoIntegration, or the winston transport), and you can set enableLogs: false to opt out. Although a default change like this would normally land in a major release, we are shipping it in a minor after careful consideration, since it sends no data on its own and only takes effect once you actively use the logging APIs or a logging integration.

    Other Changes

    • feat(v10/core): Deprecate scope.clear() method (#23231)
    • fix(v10/core): Bound child span tracking on long-lived spans (#23406)
    • fix(v10/core): Read Supabase PostgREST headers from Headers instances (#23241)
    • fix(v10/hono): Use captureException from scope, not from Client (#23280)
    • fix(v10/nuxt): Delete source maps after Nitro finishes building (#23508)
    • fix(v10/react-router): Carry multi-byte UTF-8 across SSR stream chunk boundaries (#23421)
    • fix(v10/react): Match TanStack Router pageload against the router location (#23494)
    Internal Changes
    • test(v10/nextjs): Add e2e app for a user-owned OpenTelemetry setup (#23278)

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 27.1 KB
    @sentry/browser - with treeshaking flags 25.58 KB
    @sentry/browser (incl. Tracing) 45.51 KB
    @sentry/browser (incl. Tracing + Span Streaming) 47.25 KB
    @sentry/browser (incl. Tracing, Profiling) 50.15 KB
    @sentry/browser (incl. Tracing, Replay) 83.83 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.71 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 88.45 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.79 KB
    @sentry/browser (incl. Feedback) 43.87 KB
    @sentry/browser (incl. sendFeedback) 31.78 KB
    @sentry/browser (incl. FeedbackAsync) 36.79 KB
    @sentry/browser (incl. Metrics) 28.16 KB
    @sentry/browser (incl. Logs) 28.38 KB
    @sentry/browser (incl. Metrics & Logs) 29.06 KB
    @sentry/react 28.86 KB
    @sentry/react (incl. Tracing) 47.72 KB
    @sentry/vue 32.4 KB
    @sentry/vue (incl. Tracing) 47.43 KB
    @sentry/svelte 27.12 KB
    CDN Bundle 29.43 KB
    CDN Bundle (incl. Tracing) 47.43 KB
    CDN Bundle (incl. Logs, Metrics) 30.98 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.7 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.32 KB
    CDN Bundle (incl. Tracing, Replay) 84.05 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 85.33 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.72 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.96 KB
    CDN Bundle - uncompressed 87.76 KB
    CDN Bundle (incl. Tracing) - uncompressed 143.35 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 92.36 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 147.24 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 214.2 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 259.79 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 263.67 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 273.17 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 277.04 KB
    @sentry/nextjs (client) 50.2 KB
    @sentry/sveltekit (client) 45.92 KB
    @sentry/core/server 78.73 KB
    @sentry/core/browser 65.27 KB
    @sentry/node-core 61.77 KB
    @sentry/node 122.94 KB
    @sentry/node (incl. diagnostics channel injection) 147.78 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.39 KB
    @sentry/node/light 50.21 KB
    @sentry/node - without tracing 73.19 KB
    @sentry/aws-serverless 82.24 KB
    @sentry/cloudflare (withSentry) - minified 197.31 KB
    @sentry/cloudflare (withSentry) 485.11 KB
    Open source โ†’
  4. 10.70.010 Aug 2026
    Release notes
    • feat(v10/core): Support stable MCP SDK v2 (#22986)
    • feat(v10/deps): Bump @sentry/node-cpu-profiler to 2.4.3 (#22992)
    • feat(v10/solid,solidstart): Support @solidjs/router v1 (#23163)
    • fix(v10/cloudflare): Fork the isolation scope for Durable Object methods (#23189)
    • fix(v10/cloudflare): Get original waituntil in workflows (#23192)
    • fix(v10/cloudflare): Instrument DO RPC methods on the prototype, not a Proxy (#23190)
    • fix(v10/cloudflare): Set agent conversation id on the onRequest path (#22985)
    • fix(v10/cloudflare): Set conversation id independent of session name (#23193)
    • fix(v10/cloudflare): Try/catch on non-configurable prototypes (#23191)
    • fix(v10/cloudflare): Use gen_ai.agent.name for class names (#22987)
    • fix(v10/core,browser): Handle errors from other realms (#23201)
    • fix(v10/core): Sample errors after beforeSend while preserving session updates (#22819)
    • fix(v10/hono): Include originalException in captured exception hint (#22990)
    • fix(v10/nextjs): meriyah issue for standalone build (#23055)
    • fix(v10/nextjs): Remove tracing from middleware wrappers (#22904)
    • fix(v10/profiling-node): Respect profileSessionSampleRate in trace profile lifecycle (#22940)
    • fix(v10/react-router): Preserve sourcemaps.disable when unstable_sentryVitePluginOptions is set (#22966)
    • fix(v10/react): Remove routes from shared set on <Routes> unmount (#22948)
    • fix(v10/sveltekit): Export metrics from worker entry point (#23027)
    Internal Changes
    • test(v10/e2e): Add missing @sentry/core dep to nextjs-16-userfeedback (#23009)
    • test(v10/e2e): Fix failing sveltekit-3 test (#23016)
    • test(v10/e2e): Fix type error in nextjs ai-error tests (#23011)
    • test(v10/e2e): Pin tanstackstart-react e2e deps to unblock tunnel tests (#23048)

    Work in this release was contributed by @davidmurdoch, @Jxxunnn, and @kamilogorek. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 27.09 KB
    @sentry/browser - with treeshaking flags 25.58 KB
    @sentry/browser (incl. Tracing) 45.5 KB
    @sentry/browser (incl. Tracing + Span Streaming) 47.24 KB
    @sentry/browser (incl. Tracing, Profiling) 50.13 KB
    @sentry/browser (incl. Tracing, Replay) 83.82 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.7 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 88.42 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.78 KB
    @sentry/browser (incl. Feedback) 43.87 KB
    @sentry/browser (incl. sendFeedback) 31.78 KB
    @sentry/browser (incl. FeedbackAsync) 36.79 KB
    @sentry/browser (incl. Metrics) 28.16 KB
    @sentry/browser (incl. Logs) 28.38 KB
    @sentry/browser (incl. Metrics & Logs) 29.06 KB
    @sentry/react 28.86 KB
    @sentry/react (incl. Tracing) 47.7 KB
    @sentry/vue 32.39 KB
    @sentry/vue (incl. Tracing) 47.41 KB
    @sentry/svelte 27.12 KB
    CDN Bundle 29.43 KB
    CDN Bundle (incl. Tracing) 47.41 KB
    CDN Bundle (incl. Logs, Metrics) 30.97 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.69 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.32 KB
    CDN Bundle (incl. Tracing, Replay) 84.03 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 85.31 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.71 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.94 KB
    CDN Bundle - uncompressed 87.76 KB
    CDN Bundle (incl. Tracing) - uncompressed 143.3 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 92.36 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 147.19 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 214.2 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 259.75 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 263.62 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 273.13 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 276.99 KB
    @sentry/nextjs (client) 50.19 KB
    @sentry/sveltekit (client) 45.91 KB
    @sentry/core/server 78.66 KB
    @sentry/core/browser 65.21 KB
    @sentry/node-core 61.76 KB
    @sentry/node 122.92 KB
    @sentry/node (incl. diagnostics channel injection) 147.77 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.39 KB
    @sentry/node/light 50.2 KB
    @sentry/node - without tracing 73.18 KB
    @sentry/aws-serverless 82.22 KB
    @sentry/cloudflare (withSentry) - minified 197.26 KB
    @sentry/cloudflare (withSentry) 484.82 KB
    Open source โ†’
  5. 10.69.029 Jul 2026
    Release notes

    Important Changes

    • feat(v10/cloudflare): Add instrumentAgentWithSentry for Cloudflare Agents (#22786)

    The Cloudflare SDK adds a new instrumentAgentWithSentry API for Cloudflare Agents. It works like instrumentDurableObjectWithSentry for Agent classes from the agents SDK and additionally creates spans for @callable RPC methods and automatically sets the conversationId based on the agent's name. When building with the Sentry Vite plugin, Agents are instrumented automatically (#22788).

    Other Changes

    • feat(v10/cloudflare): Add Spotlight integration for local dev event forwarding (#22796)
    • feat(v10/cloudflare): Add wranglerConfigPath to Vite options (#22803)
    • feat(v10/cloudflare): Filter framework-internal Durable Object storage spans (#22770)
    • feat(v10/cloudflare): Instrument Agents automatically (#22788)
    • feat(v10/cloudflare): Rotate agent conversation id on chat clear (#22787)
    • fix(v10/cloudflare): Also skip cf: prefixed DOs (#22802)
    • fix(v10/cloudflare): Filter CREATE INDEX spans on cf_-prefixed tables (#22767)
    • fix(v10/cloudflare): Prevent AI provider skips (#22771)
    • fix(v10/core): Summarize SQLite upserts so Durable Object cf_ spans stay filtered (#22766)
    • fix(v10/effect): Set sentry.origin on logs from SentryEffectLogger (#22806)
    • fix(v10/gatsby): Add React 19 to peer dependency range (#22675)
    • fix(v10/node): Unpin @apm-js-collab/code-transformer-bundler-plugins (#22678)
    • fix(v10/server-utils): Do not inject dc into client bundle (#22765)
    Internal Changes
    • test(v10/cloudflare): Pin mcp as agent depends on it (#22769)

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 27.11 KB
    @sentry/browser - with treeshaking flags 25.59 KB
    @sentry/browser (incl. Tracing) 45.51 KB
    @sentry/browser (incl. Tracing + Span Streaming) 47.25 KB
    @sentry/browser (incl. Tracing, Profiling) 50.15 KB
    @sentry/browser (incl. Tracing, Replay) 83.84 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.71 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 88.44 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.79 KB
    @sentry/browser (incl. Feedback) 43.88 KB
    @sentry/browser (incl. sendFeedback) 31.79 KB
    @sentry/browser (incl. FeedbackAsync) 36.8 KB
    @sentry/browser (incl. Metrics) 28.17 KB
    @sentry/browser (incl. Logs) 28.39 KB
    @sentry/browser (incl. Metrics & Logs) 29.07 KB
    @sentry/react 28.87 KB
    @sentry/react (incl. Tracing) 47.72 KB
    @sentry/vue 32.41 KB
    @sentry/vue (incl. Tracing) 47.43 KB
    @sentry/svelte 27.13 KB
    CDN Bundle 29.45 KB
    CDN Bundle (incl. Tracing) 47.42 KB
    CDN Bundle (incl. Logs, Metrics) 30.99 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.7 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.34 KB
    CDN Bundle (incl. Tracing, Replay) 84.04 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 85.32 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.71 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.94 KB
    CDN Bundle - uncompressed 87.8 KB
    CDN Bundle (incl. Tracing) - uncompressed 143.35 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 92.4 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 147.23 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 214.24 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 259.79 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 263.66 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 273.17 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 277.03 KB
    @sentry/nextjs (client) 50.2 KB
    @sentry/sveltekit (client) 45.92 KB
    @sentry/core/server 78.56 KB
    @sentry/core/browser 65.22 KB
    @sentry/node-core 61.78 KB
    @sentry/node 122.95 KB
    @sentry/node (incl. diagnostics channel injection) 147.79 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.39 KB
    @sentry/node/light 50.21 KB
    @sentry/node - without tracing 73.19 KB
    @sentry/aws-serverless 82.24 KB
    @sentry/cloudflare (withSentry) - minified 195.81 KB
    @sentry/cloudflare (withSentry) 481.16 KB
    Open source โ†’
  6. 10.68.024 Jul 2026
    Release notes
    • feat(cloudflare): Add @sentry/cloudflare/vite orchestrion plugin (#21967)
    • feat(nestjs): Support WebSocket errors in SentryGlobalFilter (#22224)
    • feat(node,server-utils): Set cache.key on dataloader spans and capture redis delete operations as cache.remove (#22389)
    • feat(server-utils): Allow integrations to be part of marker (#22094)
    • feat(server-utils): Migrate FirebaseInstrumentation to orchestrion (#22141)
    • feat(server-utils): Warn when bundler config has instrumented module in external (#22379)
    • feat(v10): Add http.route attribute to http.server spans with parameterized routes (#22564)
    • feat(v10): Add url.full and url.path to http.server spans (#22533)
    • feat(v10/cloudflare): Auto-instrument Durable Object classes (#22541)
    • feat(v10/cloudflare): Auto-instrument the worker entry with withSentry (#22540)
    • feat(v10/cloudflare): Auto-instrument WorkerEntrypoint classes (#22543)
    • feat(v10/cloudflare): Auto-instrument Workflow classes (#22542)
    • feat(v10/cloudflare): Read wrangler config and resolve the Sentry options module (#22538)
    • feat(v10/core): Add instrumentStateGraph API (#22491)
    • feat(v10/core): Add url.full attribute to core fetch instrumentation (#22436)
    • feat(v10/core): Support filtering stackFrameVariables by variable name (#22526)
    • feat(v10/react-router): Make instrumentation API the default (#22525)
    • fix(cloudflare,deno,node): Align types of vercelai (#22343)
    • fix(core): Instrument Anthropic client in place instead of via a deep proxy (#22305)
    • fix(replay): Set text/javascript MIME type on compression worker Blob (#22377)
    • fix(sveltekit): Adapt frame rewriting for kit 3 (#22407)
    • fix(v10): Pin @apm-js-collab/code-transformer-bundler-plugins to 0.7.1 (#22497)
    • fix(v10/cloudflare): Import prismaIntegration from server-utils (#22535)
    • fix(v10/core): Avoid functionToStringIntegration causing infinite recursions (#22527)
    • fix(v10/core): Avoid propagating baggage: "undefined" when DSC is missing (#22440)
    Internal Changes
    • chore: Add external contributor to CHANGELOG.md (#22342)
    • chore: Add external contributor to CHANGELOG.md (#22405)
    • chore(deps): Bump axios from 1.16.0 to 1.18.0 in /dev-packages/e2e-tests/test-applications/nestjs-basic (#22395)
    • chore(deps): Bump morgan from 1.10.0 to 1.11.0 (#22187)
    • chore(size-limit): weekly auto-bump (#22182)
    • ci(v10): Add v10 to build and license-compliance branch filters (#22499)
    • feat(deps): Bump axios from 1.16.0 to 1.18.0 (#22396)
    • ref(server-utils): Remove unneeded orchestrion config (#22384)
    • ref(server-utils): Small fastify cleanup (#22385)
    • test: Remove unnecessary test waits (#22383)
    • test(sveltekit-3): Fix import defineEnvVars from @sveltejs/kit/env (#22390)
    • test(v10/cloudflare): Add Vite-build support to the integration-test runner (#22539)

    Work in this release was contributed by @psh4607 and @trinitiwowka. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 27.11 KB
    @sentry/browser - with treeshaking flags 25.59 KB
    @sentry/browser (incl. Tracing) 45.51 KB
    @sentry/browser (incl. Tracing + Span Streaming) 47.25 KB
    @sentry/browser (incl. Tracing, Profiling) 50.15 KB
    @sentry/browser (incl. Tracing, Replay) 83.84 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.71 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 88.44 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.79 KB
    @sentry/browser (incl. Feedback) 43.88 KB
    @sentry/browser (incl. sendFeedback) 31.79 KB
    @sentry/browser (incl. FeedbackAsync) 36.8 KB
    @sentry/browser (incl. Metrics) 28.17 KB
    @sentry/browser (incl. Logs) 28.39 KB
    @sentry/browser (incl. Metrics & Logs) 29.07 KB
    @sentry/react 28.87 KB
    @sentry/react (incl. Tracing) 47.72 KB
    @sentry/vue 32.41 KB
    @sentry/vue (incl. Tracing) 47.43 KB
    @sentry/svelte 27.13 KB
    CDN Bundle 29.45 KB
    CDN Bundle (incl. Tracing) 47.42 KB
    CDN Bundle (incl. Logs, Metrics) 30.99 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.69 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.34 KB
    CDN Bundle (incl. Tracing, Replay) 84.04 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 85.32 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.71 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.94 KB
    CDN Bundle - uncompressed 87.8 KB
    CDN Bundle (incl. Tracing) - uncompressed 143.35 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 92.4 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 147.23 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 214.24 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 259.79 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 263.66 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 273.17 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 277.03 KB
    @sentry/nextjs (client) 50.2 KB
    @sentry/sveltekit (client) 45.92 KB
    @sentry/core/server 78.45 KB
    @sentry/core/browser 65.16 KB
    @sentry/node-core 61.77 KB
    @sentry/node 122.9 KB
    @sentry/node (incl. diagnostics channel injection) 147.76 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.39 KB
    @sentry/node/light 50.21 KB
    @sentry/node - without tracing 73.19 KB
    @sentry/aws-serverless 82.24 KB
    @sentry/cloudflare (withSentry) - minified 193.11 KB
    @sentry/cloudflare (withSentry) 475.28 KB
    Open source โ†’
  7. 10.67.020 Jul 2026
    Release notes

    Important Changes

    • feat(sveltekit): Add support for SvelteKit 3 (#22264)

      The SvelteKit SDK now supports the pre-release of SvelteKit 3, including client-side pageload and navigation tracing and server-side native tracing, alongside continued SvelteKit 2 support. No Sentry-specific setup changes are required. The SDK detects your SvelteKit version and picks the right implementation automatically.

    Other Changes

    • feat(aws-serverless): Use orchestrion aws-sdk integration under diagnostics-channel opt-in (#22143)
    • feat(cloudflare): Auto-instrument Workers AI binding via env instrumentation (#22126)
    • feat(cloudflare): Instrument Cloudflare rate limiter bindings (#22035)
    • feat(core): Instrument workers-ai-provider (#22119)
    • feat(core): Rename queryParams to urlQueryParams (#22217)
    • feat(mongodb): implement orchestrion mongodb integration (#22308)
    • feat(mongoose): implement orchestrion mongoose integration (#22202)
    • feat(node): Rewrite tedious instrumentation to orchestrion tracing channels (#22238)
    • feat(nuxt): Add _experimental.useDiagnosticsChannelInjection (#22323)
    • feat(remix): Add orchestrion-based remix instrumentation (#22244)
    • feat(replay): Allow skipping the final flush on stop() via { flush: false } (#22300)
    • feat(server-utils): Add @opentelemetry/instrumentation-koa orchestrion integration (#22146)
    • feat(server-utils): Add orchestrion aws-sdk channel integration core (#22142)
    • feat(server-utils): Allow passing custom transforms to orchestrion (#22319)
    • feat(server-utils): Port Bedrock aws-sdk extension and add integration tests (#22166)
    • feat(server-utils): Port S3, Kinesis, DynamoDB, SecretsManager and StepFunctions aws-sdk extensions (#22164)
    • feat(server-utils): Port SQS, SNS and Lambda aws-sdk extensions with trace propagation (#22165)
    • feat(server-utils): Rewrite SentryLangChainInstrumentation to orchestrion (#22266)
    • feat(server-utils): Rewrite SentryLangGraphInstrumentation to orchestrion (#22268)
    • feat(vue): Set navigation.route.id from the route name (#22372)
    • fix(bundler): do not import type from optional peer dep (#22304)
    • fix(cloudflare): Bind Durable Object built-in handlers (#22340)
    • fix(cloudflare): Instrument custom WorkerEntrypoint RPC methods (#22310)
    • fix(cloudflare): Route DO teardown through original waitUntil (#22339)
    • fix(cloudflare): Skip spans for Cloudflare-internal Durable Object SQL queries (#22376)
    • fix(core): Prevent functionToStringIntegration from throwing on cross-origin realms (#22273)
    • fix(core): Prevent infinite recursion when console is instrumented twice (#21959)
    • fix(nextjs): Mark internal chunk frames as not in_app (#22354)
    • fix(node): Register tracer provider when OTel API global pre-exists with a different version (#22374)
    • fix(node-native): Don't drop breadcrumbs from event loop block events (#22322)
    • fix(serve-rutils): Orchestrion diagnostics for async and require (#22327)
    • fix(server-utils): Only skip loader thread (#22336)
    • fix(sveltekit): Detect SvelteKit server build via Vite Environment API (#21629)
    • fix(vercelai): Avoid double-capturing v4 tool errors in orchestrion mode (#22293)
    • fix(vue): Support pinia 4 in peer dependency range (#22324)
    Internal Changes
    • chore: Add external contributor to CHANGELOG.md (#22357)
    • chore: Add external contributor to CHANGELOG.md (#22359)
    • chore: Remove @apm-js-collab/code-transformer as a dependency (#22317)
    • chore(changelog): Add callout for SvelteKit 3 support (#22371)
    • chore(ci): Use openrouter keys for claude in ci (#22381)
    • chore(skills): Add libraries to framework update watcher (#22326)
    • docs(agents): Prefer reusing existing utils before adding new ones (#22370)
    • feat(deps): Bump @opentelemetry/semantic-conventions from 1.42.0 to 1.43.0 in the opentelemetry group (#22333)
    • fix(skills): Make sure digest file is written/read correctly (#22330)
    • ref: Omit redundant captureError: false from tracing-channel callsites (#22368)
    • ref: Use base keys from conventions for dynamic suffix attribute keys (#22356)
    • ref(core): Replace sentry.span.source attribute with sentry.segment.name.source (#22358)
    • ref(server-utils): Collapse express route/use into one orchestrion channel (#22331)
    • ref(server-utils): Share one orchestrion channel across OpenAI chat/responses/conversations (#22332)
    • refactor(nextjs): Change ESM interop. to remove lazy loading (#22193)
    • test(cloudflare): Add tests for ignoreSpans with continued traces (#22316)
    • test(cloudflare): Proof that AI providers work OOTB on Cloudflare (#22313)

    Work in this release was contributed by @PeterWadie and @akshitsinha. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 27.09 KB
    @sentry/browser - with treeshaking flags 25.57 KB
    @sentry/browser (incl. Tracing) 45.47 KB
    @sentry/browser (incl. Tracing + Span Streaming) 47.24 KB
    @sentry/browser (incl. Tracing, Profiling) 50.16 KB
    @sentry/browser (incl. Tracing, Replay) 83.81 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.7 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 88.43 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.78 KB
    @sentry/browser (incl. Feedback) 43.88 KB
    @sentry/browser (incl. sendFeedback) 31.79 KB
    @sentry/browser (incl. FeedbackAsync) 36.81 KB
    @sentry/browser (incl. Metrics) 28.16 KB
    @sentry/browser (incl. Logs) 28.37 KB
    @sentry/browser (incl. Metrics & Logs) 29.06 KB
    @sentry/react 28.85 KB
    @sentry/react (incl. Tracing) 47.69 KB
    @sentry/vue 32.4 KB
    @sentry/vue (incl. Tracing) 47.39 KB
    @sentry/svelte 27.13 KB
    CDN Bundle 29.44 KB
    CDN Bundle (incl. Tracing) 47.39 KB
    CDN Bundle (incl. Logs, Metrics) 30.99 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.67 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.31 KB
    CDN Bundle (incl. Tracing, Replay) 84.02 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 85.3 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.69 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.93 KB
    CDN Bundle - uncompressed 87.77 KB
    CDN Bundle (incl. Tracing) - uncompressed 143.29 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 92.37 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 147.17 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 214.18 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 259.71 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 263.58 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 273.09 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 276.95 KB
    @sentry/nextjs (client) 50.16 KB
    @sentry/sveltekit (client) 45.88 KB
    @sentry/core/server 78.25 KB
    @sentry/core/browser 65 KB
    @sentry/node-core 61.73 KB
    @sentry/node 122.72 KB
    @sentry/node (incl. diagnostics channel injection) 145.93 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.39 KB
    @sentry/node/light 50.12 KB
    @sentry/node - without tracing 73.16 KB
    @sentry/aws-serverless 82.18 KB
    @sentry/cloudflare (withSentry) - minified 192.88 KB
    @sentry/cloudflare (withSentry) 474.48 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(sveltekit): Add support for SvelteKit 3 (#22264)

      The SvelteKit SDK now supports the pre-release of SvelteKit 3, including client-side pageload and navigation tracing and server-side native tracing, alongside continued SvelteKit 2 support. No Sentry-specific setup changes are required. The SDK detects your SvelteKit version and picks the right implementation automatically.

    Other Changes

    • feat(aws-serverless): Use orchestrion aws-sdk integration under diagnostics-channel opt-in (#22143)
    • feat(cloudflare): Auto-instrument Workers AI binding via env instrumentation (#22126)
    • feat(cloudflare): Instrument Cloudflare rate limiter bindings (#22035)
    • feat(core): Instrument workers-ai-provider (#22119)
    • feat(core): Rename queryParams to urlQueryParams (#22217)
    • feat(mongodb): implement orchestrion mongodb integration (#22308)
    • feat(mongoose): implement orchestrion mongoose integration (#22202)
    • feat(node): Rewrite tedious instrumentation to orchestrion tracing channels (#22238)
    • feat(nuxt): Add _experimental.useDiagnosticsChannelInjection (#22323)
    • feat(remix): Add orchestrion-based remix instrumentation (#22244)
    • feat(replay): Allow skipping the final flush on stop() via { flush: false } (#22300)
    • feat(server-utils): Add @opentelemetry/instrumentation-koa orchestrion integration (#22146)
    • feat(server-utils): Add orchestrion aws-sdk channel integration core (#22142)
    • feat(server-utils): Allow passing custom transforms to orchestrion (#22319)
    • feat(server-utils): Port Bedrock aws-sdk extension and add integration tests (#22166)
    • feat(server-utils): Port S3, Kinesis, DynamoDB, SecretsManager and StepFunctions aws-sdk extensions (#22164)
    • feat(server-utils): Port SQS, SNS and Lambda aws-sdk extensions with trace propagation (#22165)
    • feat(server-utils): Rewrite SentryLangChainInstrumentation to orchestrion (#22266)
    • feat(server-utils): Rewrite SentryLangGraphInstrumentation to orchestrion (#22268)
    • feat(vue): Set navigation.route.id from the route name (#22372)
    • fix(bundler): do not import type from optional peer dep (#22304)
    • fix(cloudflare): Bind Durable Object built-in handlers (#22340)
    • fix(cloudflare): Instrument custom WorkerEntrypoint RPC methods (#22310)
    • fix(cloudflare): Route DO teardown through original waitUntil (#22339)
    • fix(cloudflare): Skip spans for Cloudflare-internal Durable Object SQL queries (#22376)
    • fix(core): Prevent functionToStringIntegration from throwing on cross-origin realms (#22273)
    • fix(core): Prevent infinite recursion when console is instrumented twice (#21959)
    • fix(nextjs): Mark internal chunk frames as not in_app (#22354)
    • fix(node): Register tracer provider when OTel API global pre-exists with a different version (#22374)
    • fix(node-native): Don't drop breadcrumbs from event loop block events (#22322)
    • fix(serve-rutils): Orchestrion diagnostics for async and require (#22327)
    • fix(server-utils): Only skip loader thread (#22336)
    • fix(sveltekit): Detect SvelteKit server build via Vite Environment API (#21629)
    • fix(vercelai): Avoid double-capturing v4 tool errors in orchestrion mode (#22293)
    • fix(vue): Support pinia 4 in peer dependency range (#22324)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add external contributor to CHANGELOG.md (#22357)
    • chore: Add external contributor to CHANGELOG.md (#22359)
    • chore: Remove @apm-js-collab/code-transformer as a dependency (#22317)
    • chore(changelog): Add callout for SvelteKit 3 support (#22371)
    • chore(ci): Use openrouter keys for claude in ci (#22381)
    • chore(skills): Add libraries to framework update watcher (#22326)
    • docs(agents): Prefer reusing existing utils before adding new ones (#22370)
    • feat(deps): Bump @opentelemetry/semantic-conventions from 1.42.0 to 1.43.0 in the opentelemetry group (#22333)
    • fix(skills): Make sure digest file is written/read correctly (#22330)
    • ref: Omit redundant captureError: false from tracing-channel callsites (#22368)
    • ref: Use base keys from conventions for dynamic suffix attribute keys (#22356)
    • ref(core): Replace sentry.span.source attribute with sentry.segment.name.source (#22358)
    • ref(server-utils): Collapse express route/use into one orchestrion channel (#22331)
    • ref(server-utils): Share one orchestrion channel across OpenAI chat/responses/conversations (#22332)
    • refactor(nextjs): Change ESM interop. to remove lazy loading (#22193)
    • test(cloudflare): Add tests for ignoreSpans with continued traces (#22316)
    • test(cloudflare): Proof that AI providers work OOTB on Cloudflare (#22313)

    </details>

    Work in this release was contributed by @PeterWadie and @akshitsinha. Thank you for your contributions!

    Other Changes

    • fix(replay): Set text/javascript MIME type on the compression worker Blob (#22377)
    Open source โ†’
  8. 10.66.016 Jul 2026
    Release notes
    • chore(node-core): Deprecate @sentry/node-core package (#22285)
    • chore(tanstackstart): Deprecate @sentry/tanstackstart package (#22284)
    • deps(server-utils): bump @apm-js-collab/code-transformer and tracing-hooks (#22172)
    • feat(bun): Add initWithoutDefaultIntegrations and getDefaultIntegrationsWithoutPerformance (#22036)
    • feat(bundlers): Add orchestrion bundler plugins (#22124)
    • feat(cloudflare): Support Cloudflare types v5 & newer wrangler versions (#22180)
    • feat(core): Add and use dataCollection.databaseQueryData (for e.g. Supabase filter values and mutation bodies) (#22219)
    • feat(core): Add and use dataCollection.graphQL (#22221)
    • feat(core): Add stringify helper and make AI-tracing serializers safe (#22163)
    • feat(nestjs): Add orchestrion diagnostics-channel instrumentation (#22176)
    • feat(nextjs): Add opt-in for orchestrion instrumentation (#22043)
    • feat(node): Rewrite knex instrumentation to orchestrion tracing channels (#22237)
    • feat(server-utils): Capture and log orchestrion stats (#22269)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-kafkajs to orchestrion (#21923)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-mysql2 to orchestrion (#22229)
    • feat(server-utils): Rewrite @opentelemetry/instrumentation-dataloader to orchestrion (#22236)
    • feat(server-utils): Rewrite @opentelemetry/instrumentation-generic-pool to orchestrion (#22240)
    • feat(sveltekit): Detect SvelteKit 3 native tracing from the Vite plugin (#21580)
    • fix: Include bundler CJS exports to fix Node warning (#22286)
    • fix(browser-utils): Remove readystatechange listener to prevent memory leaks (#22216)
    • fix(browser): Propagate trace data from active span if http.client span is non-recording (#22246)
    • fix(core): Preserve propagation across ignored spans (#22277)
    • fix(node): move dc integration swap to _init (#22173)
    • fix(react-router): Correct url attributes for history and relative navigations (#22131)
    • fix(react): Preserve parent path prefix for descendant route names in react-router (#22225)
    • fix(server-utils): Dedupe ioredis orchestrion span for offline-queued commands (#22279)
    • fix(vue): Refresh pageload URL attrs on TanStack onResolved (#22140)
    Internal Changes
    • chore: Add external contributor to CHANGELOG.md (#22295)
    • chore: Do not treat flaky test issues as bug (#22272)
    • chore: stub modules for orchestrion configs, channels (#22195)
    • chore: Update claude PR instructions (#22241)
    • chore(changelog): Add external contributor to next changelog (#22234)
    • chore(ci): Temporarily assign node/node-core reviews to whole JS SDK team (#22226)
    • chore(ci): Temporarily assign orchestrion reviews to whole JS SDK team (#22215)
    • chore(deps): Bump orchestrion dependencies to latest (#22287)
    • chore(deps): Bump @sentry/conventions to 0.16.0 (#22270)
    • chore(gitignore): Add .pnpm-store to gitignore (#22223)
    • chore(skills): Add bump-conventions skill (#22271)
    • fix(ci): Improve flaky test issue deduplication (#22042)
    • fix(ci): Unblock external-contributors checkout on fork PR merges (#22235)
    • ref(build): Replace ts-node with tsx for build and CI scripts (#22186)
    • ref(core): Remove redundant log buffer flush (#22278)
    • ref(nestjs): extract shared span helpers (#22175)
    • ref(node): Refactor some otel internals in http integrations (#22292)
    • ref(nuxt): Build the Nuxt module in-house instead of @nuxt/module-builder (#22190)
    • ref(server-utils): Move prisma instrumentation to server-utils (#22222)
    • test(anr): Use pure-JS busy work so ANR stack samples capture longWork (#22133)
    • test(browser-integration): Fix local runs referencing renamed type-check command (#22243)
    • test(e2e): Add E2E test app for orchestrion instrumentations on Remix (#22218)
    • test(nextjs): Add orchestrion e2e test app (#22080)
    • test(node-integration-tests): Free up CI disk space to prevent ENOSPC failures (#22132)
    • test(node-integration-tests): Reuse Docker Compose containers across tests (#22128)
    • test(react-router): Add orchestrion based e2e test app (#22185)
    • test(sveltekit): Add SvelteKit 3 e2e app (#21540)
    • test(tanstackstart): Deterministically match the server-side error event (#22137)

    Work in this release was contributed by @dobladov and @PeterWadie. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 27.07 KB
    @sentry/browser - with treeshaking flags 25.55 KB
    @sentry/browser (incl. Tracing) 45.46 KB
    @sentry/browser (incl. Tracing + Span Streaming) 47.2 KB
    @sentry/browser (incl. Tracing, Profiling) 50.12 KB
    @sentry/browser (incl. Tracing, Replay) 83.77 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.65 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 88.37 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.74 KB
    @sentry/browser (incl. Feedback) 43.85 KB
    @sentry/browser (incl. sendFeedback) 31.76 KB
    @sentry/browser (incl. FeedbackAsync) 36.77 KB
    @sentry/browser (incl. Metrics) 28.14 KB
    @sentry/browser (incl. Logs) 28.37 KB
    @sentry/browser (incl. Metrics & Logs) 29.04 KB
    @sentry/react 28.84 KB
    @sentry/react (incl. Tracing) 47.65 KB
    @sentry/vue 32.37 KB
    @sentry/vue (incl. Tracing) 47.38 KB
    @sentry/svelte 27.1 KB
    CDN Bundle 29.42 KB
    CDN Bundle (incl. Tracing) 47.37 KB
    CDN Bundle (incl. Logs, Metrics) 30.96 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.64 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.28 KB
    CDN Bundle (incl. Tracing, Replay) 83.99 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 85.26 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.65 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.88 KB
    CDN Bundle - uncompressed 87.67 KB
    CDN Bundle (incl. Tracing) - uncompressed 143.15 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 92.27 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 147.03 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 214.07 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 259.56 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 263.43 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 272.94 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 276.8 KB
    @sentry/nextjs (client) 50.15 KB
    @sentry/sveltekit (client) 45.87 KB
    @sentry/core/server 76.76 KB
    @sentry/core/browser 63.43 KB
    @sentry/node-core 61.69 KB
    @sentry/node 122.47 KB
    @sentry/node (incl. diagnostics channel injection) 137.35 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.39 KB
    @sentry/node/light 50.1 KB
    @sentry/node - without tracing 72.93 KB
    @sentry/aws-serverless 81.93 KB
    @sentry/cloudflare (withSentry) - minified 177.76 KB
    @sentry/cloudflare (withSentry) 440.12 KB
    Open source โ†’
    Release notes
    • chore(node-core): Deprecate @sentry/node-core package (#22285)
    • chore(tanstackstart): Deprecate @sentry/tanstackstart package (#22284)
    • deps(server-utils): bump @apm-js-collab/code-transformer and tracing-hooks (#22172)
    • feat(bun): Add initWithoutDefaultIntegrations and getDefaultIntegrationsWithoutPerformance (#22036)
    • feat(bundlers): Add orchestrion bundler plugins (#22124)
    • feat(cloudflare): Support Cloudflare types v5 & newer wrangler versions (#22180)
    • feat(core): Add and use dataCollection.databaseQueryData (for e.g. Supabase filter values and mutation bodies) (#22219)
    • feat(core): Add and use dataCollection.graphQL (#22221)
    • feat(core): Add stringify helper and make AI-tracing serializers safe (#22163)
    • feat(nestjs): Add orchestrion diagnostics-channel instrumentation (#22176)
    • feat(nextjs): Add opt-in for orchestrion instrumentation (#22043)
    • feat(node): Rewrite knex instrumentation to orchestrion tracing channels (#22237)
    • feat(server-utils): Capture and log orchestrion stats (#22269)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-kafkajs to orchestrion (#21923)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-mysql2 to orchestrion (#22229)
    • feat(server-utils): Rewrite @opentelemetry/instrumentation-dataloader to orchestrion (#22236)
    • feat(server-utils): Rewrite @opentelemetry/instrumentation-generic-pool to orchestrion (#22240)
    • feat(sveltekit): Detect SvelteKit 3 native tracing from the Vite plugin (#21580)
    • fix: Include bundler CJS exports to fix Node warning (#22286)
    • fix(browser-utils): Remove readystatechange listener to prevent memory leaks (#22216)
    • fix(browser): Propagate trace data from active span if http.client span is non-recording (#22246)
    • fix(core): Preserve propagation across ignored spans (#22277)
    • fix(node): move dc integration swap to _init (#22173)
    • fix(react-router): Correct url attributes for history and relative navigations (#22131)
    • fix(react): Preserve parent path prefix for descendant route names in react-router (#22225)
    • fix(server-utils): Dedupe ioredis orchestrion span for offline-queued commands (#22279)
    • fix(vue): Refresh pageload URL attrs on TanStack onResolved (#22140)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add external contributor to CHANGELOG.md (#22295)
    • chore: Do not treat flaky test issues as bug (#22272)
    • chore: stub modules for orchestrion configs, channels (#22195)
    • chore: Update claude PR instructions (#22241)
    • chore(changelog): Add external contributor to next changelog (#22234)
    • chore(ci): Temporarily assign node/node-core reviews to whole JS SDK team (#22226)
    • chore(ci): Temporarily assign orchestrion reviews to whole JS SDK team (#22215)
    • chore(deps): Bump orchestrion dependencies to latest (#22287)
    • chore(deps): Bump @sentry/conventions to 0.16.0 (#22270)
    • chore(gitignore): Add .pnpm-store to gitignore (#22223)
    • chore(skills): Add bump-conventions skill (#22271)
    • fix(ci): Improve flaky test issue deduplication (#22042)
    • fix(ci): Unblock external-contributors checkout on fork PR merges (#22235)
    • ref(build): Replace ts-node with tsx for build and CI scripts (#22186)
    • ref(core): Remove redundant log buffer flush (#22278)
    • ref(nestjs): extract shared span helpers (#22175)
    • ref(node): Refactor some otel internals in http integrations (#22292)
    • ref(nuxt): Build the Nuxt module in-house instead of @nuxt/module-builder (#22190)
    • ref(server-utils): Move prisma instrumentation to server-utils (#22222)
    • test(anr): Use pure-JS busy work so ANR stack samples capture longWork (#22133)
    • test(browser-integration): Fix local runs referencing renamed type-check command (#22243)
    • test(e2e): Add E2E test app for orchestrion instrumentations on Remix (#22218)
    • test(nextjs): Add orchestrion e2e test app (#22080)
    • test(node-integration-tests): Free up CI disk space to prevent ENOSPC failures (#22132)
    • test(node-integration-tests): Reuse Docker Compose containers across tests (#22128)
    • test(react-router): Add orchestrion based e2e test app (#22185)
    • test(sveltekit): Add SvelteKit 3 e2e app (#21540)
    • test(tanstackstart): Deterministically match the server-side error event (#22137)

    </details>

    Work in this release was contributed by @dobladov and @PeterWadie. Thank you for your contributions!

    Open source โ†’
  9. 10.65.010 Jul 2026
    Release notes
    • feat(angular): Set url attributes on pageload and navigation spans (#21985)
    • feat(astro): Set url.template on pageload spans (#22011)
    • feat(aws-serverless): Replace OTel Lambda instrumentation with handler redirection (#22079)
    • feat(browser): Set url.path and url.full on pageload and navigation spans (#21952)
    • feat(bun): warn when externalizing instrumented deps (#21999)
    • feat(core): Require attributes on SerializedStreamedSpan (#22052)
    • feat(ember): Set url.template, url.path and url.full on router spans (#22095)
    • feat(mysql2): Instrument mysql2 >= 3.20.0 via native tracing channels (#21824)
    • feat(nextjs): Set url attributes on pageload and navigation spans (#22006)
    • feat(react): Set url.template, url.path and url.full on routing spans (#22087)
    • feat(react-router): Set url.template, url.path and url.full on pageload and navigation spans (#22018)
    • feat(remix): Set url.template on pageload and navigation spans (#22025)
    • feat(server-utils): Add orchestrion support for Vercel AI v4 (#22139)
    • feat(server-utils): Add requiresParentSpan option to bindTracingChannelToSpan (#22113)
    • feat(server-utils): Capture usage and output on streamed Vercel AI v7 spans (#22000)
    • feat(server-utils): Implement orchestrion-based express integration (#21889)
    • feat(server-utils): Instrument graphql v17 via native tracing channels (#21804)
    • feat(solid): Set url attributes on solid router and tanstack router spans (#22090)
    • feat(sveltekit): Set url.template, url.path and url.full on pageload and navigation spans (#22027)
    • feat(vue, nuxt): Set url.template and URL attributes on router spans (#22063)
    • fix(browser): Send web vital span sentry.segment.name attribute (#22024)
    • fix(cloudflare): Honor newTarget in instrumentDurableObjectWithSentry construct trap (#22104)
    • fix(opentelemetry): Fall back to 'sentry.origin': manual when backfilling OTel data (#22102)
    • fix(replay): Prevent rrweb recording from dying when the emit callback throws (#21409)
    • fix(replay): Skip client reports for replay failures after stop (#22177)
    • perf(vite): add fast component annotation transform (#22089)
    • ref(server-utils): Add orchestrion support for Vercel AI v5 (#21979)
    Internal Changes
    • chore: Add external contributor to CHANGELOG.md (#22111)
    • chore: Reinstate changelog anchor (#22022)
    • chore(cloudflare): Ignore import patterns (#22008)
    • chore(deps-dev): bump vite from 7.3.2 to 7.3.5 in /dev-packages/e2e-tests/test-applications/tanstackstart-react-orchestrion (#22041)
    • chore(deps): bump vite from 8.0.1 to 8.0.16 in /dev-packages/bundler-plugin-integration-tests/fixtures/vite8 (#21664)
    • chore(opentelemetry): Add worker as export | sort exports (#21859)
    • chore(size-limit): weekly auto-bump (#21812)
    • ci: Only run cloudflare & bundler plugin tests when necessary (#22130)
    • ci(deps): bump actions/checkout from 6 to 7 (#21898)
    • ci(deps): Bump anthropics/claude-code-action from 1.0.124 to 1.0.161 (#21896)
    • ci(deps): Bump getsentry/craft from 2.26.9 to 2.26.14 (#21900)
    • ci(deps): Bump getsentry/github-workflows/validate-pr from 71588ddf95134f804e82c5970a8098588e2eaecd to 4013fc6e1aeb1be1f9d3b4d232624f0ec1afa613 (#21897)
    • ci(deps): bump pnpm/action-setup from 5.0.0 to 6.0.9 (#21899)
    • feat(core): add isObjectLike guard and consolidate non-null-object checks (#22155)
    • feat(core): add uniq array util and consolidate call sites (#22152)
    • feat(deps): Bump @growthbook/growthbook from 1.6.1 to 1.6.5 (#21940)
    • feat(deps): Bump @opentelemetry/semantic-conventions from 1.41.1 to 1.42.0 in the opentelemetry group (#22147)
    • feat(deps): Bump dotenv from 16.0.3 to 17.4.2 (#22150)
    • feat(deps): Bump js-yaml from 3.14.2 to 3.15.0 (#21864)
    • feat(deps): Bump nock from 13.5.5 to 14.0.16 (#22149)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-amqplib to orchestrion (#21981)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-graphql to orchestrion (#21885)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-redis to orchestrion (#21925)
    • feat(server-utils): Migrate Google GenAI integration to orchestrion (#21970)
    • feat(server-utils): Migrate postgres.js instrumentation to orchestrion (#21983)
    • ref: remove unused addOriginToSpan copies (#22153)
    • ref(angular): Streamline url attribute creation (#22091)
    • ref(core): Use common span attribute keys from Sentry conventions (#22081)
    • ref(nitro, nuxt): inline == null checks for nullish detection (#22154)
    • ref(node): Refactor http instrumentation away from OTEL (#21974)
    • ref(redis): expose diagnostics-channel subscription as an integration (#21963)
    • test: Avoid unnecessary definedness checks for attributes on SerializedStreamedSpan objects (#22060)
    • test: Remove fixed container_name from node integration test docker-compose files (#22134)
    • test(browser): Give profiling envelope tests headroom against CI timeouts (#22067)
    • test(browser): Stabilize flaky manual-mode profile_chunk test (#22040)
    • test(bun-integration-tests): Type-check test suites in CI (#22059)
    • test(bundler-plugins): Test bundler plugins on more node versions (#22105)
    • test(cloudflare-integration-tests): Type-check test suites in CI (#22068)
    • test(cloudflare): Add headroom for wrangler cold-start in integration tests (#22083)
    • test(e2e): Add Astro 7 with Orchestrion test (#22005)
    • test(e2e): Add E2E test app for orchestrion instrumentations on TanStack Start (#22020)
    • test(e2e): Add test for SvelteKit with orchestrion (#22014)
    • test(e2e): De-flake remix-hydrogen client tests (#22051)
    • test(e2e): Gate hydrogen-react-router-7 client clicks on hydration (#22061)
    • test(e2e): Pin @cloudflare/vite-plugin to 1.43.1 in Cloudflare E2E test apps (#22115)
    • test(e2e): Use official @module-federation/vite (#21605)
    • test(nitro): Guard throwing-route request in nitro-3 errors test (#22039)
    • test(node-core): Fix flaky withMonitor span order assertion (#22129)
    • test(node-integration-tests): Enable Node compile cache for scenario child processes (#22084)
    • test(node-integration-tests): Make runner completion event-driven instead of polling (#22085)
    • test(node-integration-tests): Surface early scenario exit instead of hanging (#22136)
    • test(node-integration-tests): Type-check test suites in CI (#22054)
    • test(node): Consolidate flaky DB readiness handling into a shared waitForConnection helper (#22058)
    • test(node): Fix flaky negative sampling (static) envelope ordering (#22038)
    • test(node): Retry initial tedious connection until the DB is ready (#22050)
    • test(node): Update vercel AI v7 version in tests & skip on Node 18 (#21984)
    • test(node): Wait for Postgres readiness in pg integration test scenarios (#22045)
    • test(server-utils): Remove graphql unit tests that replicated SDK async-context logic (#22103)
    • test(server-utils): Remove hapi unit test that replicated SDK async-context logic (#22100)
    • test(server-utils): Remove ioredis unit test that replicated SDK async-context logic (#22099)
    • test(server-utils): Remove mongoose unit test that replicated SDK async-context logic (#22101)
    • test(server-utils): Remove postgres.js unit test that replicated SDK async-context logic (#22097)
    • test(server-utils): Remove redis unit tests that replicated SDK async-context logic (#22098)

    Work in this release was contributed by @martijnwalraven. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.96 KB
    @sentry/browser - with treeshaking flags 25.43 KB
    @sentry/browser (incl. Tracing) 45.26 KB
    @sentry/browser (incl. Tracing + Span Streaming) 47.01 KB
    @sentry/browser (incl. Tracing, Profiling) 49.94 KB
    @sentry/browser (incl. Tracing, Replay) 83.62 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.49 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 88.22 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.58 KB
    @sentry/browser (incl. Feedback) 43.73 KB
    @sentry/browser (incl. sendFeedback) 31.64 KB
    @sentry/browser (incl. FeedbackAsync) 36.65 KB
    @sentry/browser (incl. Metrics) 28.01 KB
    @sentry/browser (incl. Logs) 28.25 KB
    @sentry/browser (incl. Metrics & Logs) 28.92 KB
    @sentry/react 28.71 KB
    @sentry/react (incl. Tracing) 47.48 KB
    @sentry/vue 32.26 KB
    @sentry/vue (incl. Tracing) 47.2 KB
    @sentry/svelte 26.98 KB
    CDN Bundle 29.3 KB
    CDN Bundle (incl. Tracing) 47.2 KB
    CDN Bundle (incl. Logs, Metrics) 30.84 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.48 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.16 KB
    CDN Bundle (incl. Tracing, Replay) 83.82 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 85.11 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.49 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.74 KB
    CDN Bundle - uncompressed 87.23 KB
    CDN Bundle (incl. Tracing) - uncompressed 142.65 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 91.83 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 146.53 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 213.63 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 259.06 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 262.92 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 272.44 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 276.29 KB
    @sentry/nextjs (client) 49.97 KB
    @sentry/sveltekit (client) 45.7 KB
    @sentry/core/server 76.58 KB
    @sentry/core/browser 63.25 KB
    @sentry/node-core 61.25 KB
    @sentry/node 122.41 KB
    @sentry/node (incl. diagnostics channel injection) 135.36 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.31 KB
    @sentry/node/light 49.54 KB
    @sentry/node - without tracing 72.31 KB
    @sentry/aws-serverless 81.31 KB
    @sentry/cloudflare (withSentry) - minified 177.22 KB
    @sentry/cloudflare (withSentry) 438.45 KB
    Open source โ†’
    Release notes
    • feat(angular): Set url attributes on pageload and navigation spans (#21985)
    • feat(astro): Set url.template on pageload spans (#22011)
    • feat(aws-serverless): Replace OTel Lambda instrumentation with handler redirection (#22079)
    • feat(browser): Set url.path and url.full on pageload and navigation spans (#21952)
    • feat(bun): warn when externalizing instrumented deps (#21999)
    • feat(core): Require attributes on SerializedStreamedSpan (#22052)
    • feat(ember): Set url.template, url.path and url.full on router spans (#22095)
    • feat(mysql2): Instrument mysql2 >= 3.20.0 via native tracing channels (#21824)
    • feat(nextjs): Set url attributes on pageload and navigation spans (#22006)
    • feat(react): Set url.template, url.path and url.full on routing spans (#22087)
    • feat(react-router): Set url.template, url.path and url.full on pageload and navigation spans (#22018)
    • feat(remix): Set url.template on pageload and navigation spans (#22025)
    • feat(server-utils): Add orchestrion support for Vercel AI v4 (#22139)
    • feat(server-utils): Add requiresParentSpan option to bindTracingChannelToSpan (#22113)
    • feat(server-utils): Capture usage and output on streamed Vercel AI v7 spans (#22000)
    • feat(server-utils): Implement orchestrion-based express integration (#21889)
    • feat(server-utils): Instrument graphql v17 via native tracing channels (#21804)
    • feat(solid): Set url attributes on solid router and tanstack router spans (#22090)
    • feat(sveltekit): Set url.template, url.path and url.full on pageload and navigation spans (#22027)
    • feat(vue, nuxt): Set url.template and URL attributes on router spans (#22063)
    • fix(browser): Send web vital span sentry.segment.name attribute (#22024)
    • fix(cloudflare): Honor newTarget in instrumentDurableObjectWithSentry construct trap (#22104)
    • fix(opentelemetry): Fall back to 'sentry.origin': manual when backfilling OTel data (#22102)
    • fix(replay): Prevent rrweb recording from dying when the emit callback throws (#21409)
    • fix(replay): Skip client reports for replay failures after stop (#22177)
    • perf(vite): add fast component annotation transform (#22089)
    • ref(server-utils): Add orchestrion support for Vercel AI v5 (#21979)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add external contributor to CHANGELOG.md (#22111)
    • chore: Reinstate changelog anchor (#22022)
    • chore(cloudflare): Ignore import patterns (#22008)
    • chore(deps-dev): bump vite from 7.3.2 to 7.3.5 in /dev-packages/e2e-tests/test-applications/tanstackstart-react-orchestrion (#22041)
    • chore(deps): bump vite from 8.0.1 to 8.0.16 in /dev-packages/bundler-plugin-integration-tests/fixtures/vite8 (#21664)
    • chore(opentelemetry): Add worker as export | sort exports (#21859)
    • chore(size-limit): weekly auto-bump (#21812)
    • ci: Only run cloudflare & bundler plugin tests when necessary (#22130)
    • ci(deps): bump actions/checkout from 6 to 7 (#21898)
    • ci(deps): Bump anthropics/claude-code-action from 1.0.124 to 1.0.161 (#21896)
    • ci(deps): Bump getsentry/craft from 2.26.9 to 2.26.14 (#21900)
    • ci(deps): Bump getsentry/github-workflows/validate-pr from 71588ddf95134f804e82c5970a8098588e2eaecd to 4013fc6e1aeb1be1f9d3b4d232624f0ec1afa613 (#21897)
    • ci(deps): bump pnpm/action-setup from 5.0.0 to 6.0.9 (#21899)
    • feat(core): add isObjectLike guard and consolidate non-null-object checks (#22155)
    • feat(core): add uniq array util and consolidate call sites (#22152)
    • feat(deps): Bump @growthbook/growthbook from 1.6.1 to 1.6.5 (#21940)
    • feat(deps): Bump @opentelemetry/semantic-conventions from 1.41.1 to 1.42.0 in the opentelemetry group (#22147)
    • feat(deps): Bump dotenv from 16.0.3 to 17.4.2 (#22150)
    • feat(deps): Bump js-yaml from 3.14.2 to 3.15.0 (#21864)
    • feat(deps): Bump nock from 13.5.5 to 14.0.16 (#22149)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-amqplib to orchestrion (#21981)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-graphql to orchestrion (#21885)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-redis to orchestrion (#21925)
    • feat(server-utils): Migrate Google GenAI integration to orchestrion (#21970)
    • feat(server-utils): Migrate postgres.js instrumentation to orchestrion (#21983)
    • ref: remove unused addOriginToSpan copies (#22153)
    • ref(angular): Streamline url attribute creation (#22091)
    • ref(core): Use common span attribute keys from Sentry conventions (#22081)
    • ref(nitro, nuxt): inline == null checks for nullish detection (#22154)
    • ref(node): Refactor http instrumentation away from OTEL (#21974)
    • ref(redis): expose diagnostics-channel subscription as an integration (#21963)
    • test: Avoid unnecessary definedness checks for attributes on SerializedStreamedSpan objects (#22060)
    • test: Remove fixed container_name from node integration test docker-compose files (#22134)
    • test(browser): Give profiling envelope tests headroom against CI timeouts (#22067)
    • test(browser): Stabilize flaky manual-mode profile_chunk test (#22040)
    • test(bun-integration-tests): Type-check test suites in CI (#22059)
    • test(bundler-plugins): Test bundler plugins on more node versions (#22105)
    • test(cloudflare-integration-tests): Type-check test suites in CI (#22068)
    • test(cloudflare): Add headroom for wrangler cold-start in integration tests (#22083)
    • test(e2e): Add Astro 7 with Orchestrion test (#22005)
    • test(e2e): Add E2E test app for orchestrion instrumentations on TanStack Start (#22020)
    • test(e2e): Add test for SvelteKit with orchestrion (#22014)
    • test(e2e): De-flake remix-hydrogen client tests (#22051)
    • test(e2e): Gate hydrogen-react-router-7 client clicks on hydration (#22061)
    • test(e2e): Pin @cloudflare/vite-plugin to 1.43.1 in Cloudflare E2E test apps (#22115)
    • test(e2e): Use official @module-federation/vite (#21605)
    • test(nitro): Guard throwing-route request in nitro-3 errors test (#22039)
    • test(node-core): Fix flaky withMonitor span order assertion (#22129)
    • test(node-integration-tests): Enable Node compile cache for scenario child processes (#22084)
    • test(node-integration-tests): Make runner completion event-driven instead of polling (#22085)
    • test(node-integration-tests): Surface early scenario exit instead of hanging (#22136)
    • test(node-integration-tests): Type-check test suites in CI (#22054)
    • test(node): Consolidate flaky DB readiness handling into a shared waitForConnection helper (#22058)
    • test(node): Fix flaky negative sampling (static) envelope ordering (#22038)
    • test(node): Retry initial tedious connection until the DB is ready (#22050)
    • test(node): Update vercel AI v7 version in tests & skip on Node 18 (#21984)
    • test(node): Wait for Postgres readiness in pg integration test scenarios (#22045)
    • test(server-utils): Remove graphql unit tests that replicated SDK async-context logic (#22103)
    • test(server-utils): Remove hapi unit test that replicated SDK async-context logic (#22100)
    • test(server-utils): Remove ioredis unit test that replicated SDK async-context logic (#22099)
    • test(server-utils): Remove mongoose unit test that replicated SDK async-context logic (#22101)
    • test(server-utils): Remove postgres.js unit test that replicated SDK async-context logic (#22097)
    • test(server-utils): Remove redis unit tests that replicated SDK async-context logic (#22098)

    </details>

    Work in this release was contributed by @martijnwalraven. Thank you for your contribution!

    Open source โ†’
  10. 10.64.07 Jul 2026
    Release notes

    Important Changes

    • feat(cloudflare): Add nodejs_compat entrypoint (#21881)

      The Cloudflare SDK now ships a dedicated @sentry/cloudflare/nodejs_compat entrypoint for Workers running with the nodejs_compat flag. This entrypoint unlocks Node SDK features on Cloudflare, including the prismaIntegration (#21882) and AI v7 support for the vercelAiIntegration (#21917).

      This entrypoint is a drop-in replacement, so you can switch your imports from @sentry/cloudflare directly to @sentry/cloudflare/nodejs_compat. To use it, your Worker must set the nodejs_compat compatibility flag in wrangler.toml/wrangler.jsonc. This will become the default entrypoint in v11.

    • feat: Use Sentry's minimal OpenTelemetry tracer provider by default (#21666, #21680, #21842)

      The Node SDK now registers Sentry's own minimal SentryTracerProvider by default, which creates native Sentry spans directly instead of routing them through the full OpenTelemetry SDK span pipeline. This reduces overhead for the common case where you don't need the full OpenTelemetry tracing stack.

      If you rely on OpenTelemetry SDK features that the minimal provider doesn't support, you can opt out and fall back to the full OpenTelemetry BasicTracerProvider by setting openTelemetryBasicTracerProvider: true in your Sentry.init() options. Providing custom openTelemetrySpanProcessors also forces the full provider automatically.

    Other Changes

    • feat(bun,deno,node): pg orchestrion instrumentation (#21826)
    • feat(bun): enable new mysql, pg integrations in 'bun build' (#21828)
    • feat(cloudflare): Enable AI v7 support for Cloudflare in the /nodejs_compat entrypoint (#21917)
    • feat(cloudflare): Expose prismaIntegration in nodejs_compat export (#21882)
    • feat(core): Add sentry.trace_lifecycle attribute (#21850)
    • feat(core): Add deferred segment-span transaction capture (#21839)
    • feat(deps): Bump OpenTelemetry dependencies to latest (#21988)
    • feat(mongoose): Instrument mongoose >= 9.7 via native tracing channels (#21803)
    • feat(replays): Record segment names that occur during replay (#21851)
    • fix(browser): Accept precisely-typed GrowthBook class in growthbookIntegration (#21825)
    • fix(browser): Flush telemetry when page is hidden (#21862)
    • fix(cloudflare): Catch potential errors during flush and dispose (#21976)
    • fix(core): Capture Anthropic stream stop_reason from message_delta (#21907)
    • fix(core): Print getTraceMetaTags in 1 line to prevent hydration errors (#22004)
    • fix(nextjs): Add immutable browser chunks to upload assets (#21978)
    • fix(nextjs): Handle Middleware.execute root spans on Node.js runtime (#22013)
    • fix(react/solid/vue): Instrument TanStack Router navigations via onBeforeLoad/onResolved (#21975)
    Internal Changes
    • chore: Add experimentalUseDiagnosticsChannelInjection in node size-limit (#21992)
    • chore: Add external contributor to CHANGELOG.md (#21945)
    • chore: Clarify usage of hoistTransitiveImports option (#21888)
    • chore: Make @sentry/conventions sideEffect free during bundling (#22015)
    • chore: Remove runtime ESM/CJS switching (#21761)
    • chore(ci): Replace app-id with client-id in GH workflows (#21914)
    • chore(cloudflare): Disallow Node SDK usage outside of nodejs_compat (#21884)
    • chore(cloudflare): Disallow server-utils usage outside of nodejs_compat (#21918)
    • chore(node-core): Move isCjs to its own file to prevent sideEffects (#21856)
    • ci: Increase Node integration test timeout to 20 minutes (#21903)
    • deps(server-utils): Bump @apm-js-collab/tracing-hooks to 0.10.1 (#21892)
    • feat(server-utils): Implement orchestrion-based instrumentation for vercel-ai v6 (#21658)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-ioredis to orchestrion (#21849)
    • feat(server-utils): Migrate Anthropic integration to orchestrion (#21902)
    • feat(server-utils): Migrate OpenAI integration to orchestrion (#21877)
    • feat(server-utils): Rewrite @opentelemetry/instrumentation-hapi to orchestrion (#21866)
    • ref(core): Add @sentry/conventions to @sentry/core and align versions (#21855)
    • ref(deno): add deno-integration-tests dev-package (#21827)
    • ref(node-core): Move node fetch instrumentation into node-core (#21873)
    • ref(node): Fold breadcrumb & trace propagation into node fetch instrumentation (#21872)
    • ref(node): Refactor orchestrion config into separate files (#21957)
    • ref(node): Streamline Prisma v5 instrumentation (#21980)
    • ref(node): Use @sentry/conventions and vendor remaining semantic conventions (#21893)
    • test(browser): Fix web worker route-registration race in debug ID test (#21920)
    • test(e2e): Fix failing nitro-3 e2e test due to broken dependency (#21895)
    • test(e2e): Revert nf3 dependency override in nitro-3 e2e test (#21951)
    • test(e2e): Use injectDiagnostics for orchestrion marker (#21987)
    • test(google-genai): Move google-genai integration tests to use a real client (#21909)
    • test(nextjs): Tolerate aborted navigation in streaming RSC error E2E test (#21847)
    • test(node): Attempt to unflake docker-based node integration tests (#21905)
    • test(node): Automatically run all node-integration tests with orchestrion (#21911)
    • test(node): Collapse mysql span streaming tests into same suite (#21890)
    • test(node): Ensure logs are auto-printed when a test fails (#21887)
    • test(node): Improve tests for Prisma v5 (#21876)
    • test(node): Migrate fs & contextLines-filename integration tests to helpers (#21958)
    • test(node): Migrate http client span tests to createCjsTests (#21956)
    • test(node): Migrate logging integration tests to create*Tests helpers (#21955)
    • test(node): Refactor remaining express integrations tests to new runner (#21949)
    • test(node): Update pg-native tests to use additionalDependencies (#21878)
    • tests(core): Move anthropic node integration tests to use a real client (#21906)

    Work in this release was contributed by @codr and @zenato. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.94 KB
    @sentry/browser - with treeshaking flags 25.42 KB
    @sentry/browser (incl. Tracing) 45.16 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.89 KB
    @sentry/browser (incl. Tracing, Profiling) 49.82 KB
    @sentry/browser (incl. Tracing, Replay) 83.53 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.38 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 88.12 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.48 KB
    @sentry/browser (incl. Feedback) 43.71 KB
    @sentry/browser (incl. sendFeedback) 31.62 KB
    @sentry/browser (incl. FeedbackAsync) 36.63 KB
    @sentry/browser (incl. Metrics) 28 KB
    @sentry/browser (incl. Logs) 28.23 KB
    @sentry/browser (incl. Metrics & Logs) 28.9 KB
    @sentry/react 28.7 KB
    @sentry/react (incl. Tracing) 47.38 KB
    @sentry/vue 32.25 KB
    @sentry/vue (incl. Tracing) 46.98 KB
    @sentry/svelte 26.97 KB
    CDN Bundle 29.3 KB
    CDN Bundle (incl. Tracing) 47.11 KB
    CDN Bundle (incl. Logs, Metrics) 30.83 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.38 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.15 KB
    CDN Bundle (incl. Tracing, Replay) 83.73 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.99 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.38 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.64 KB
    CDN Bundle - uncompressed 87.26 KB
    CDN Bundle (incl. Tracing) - uncompressed 142.54 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 91.85 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 146.42 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 213.62 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 258.91 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 262.78 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 272.29 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 276.15 KB
    @sentry/nextjs (client) 49.75 KB
    @sentry/sveltekit (client) 45.56 KB
    @sentry/core/server 76.54 KB
    @sentry/core/browser 63.21 KB
    @sentry/node-core 61.73 KB
    @sentry/node 120.85 KB
    @sentry/node (incl. diagnostics channel injection) 126.65 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.31 KB
    @sentry/node/light 49.53 KB
    @sentry/node - without tracing 73.06 KB
    @sentry/aws-serverless 83.59 KB
    @sentry/cloudflare (withSentry) - minified 177.42 KB
    @sentry/cloudflare (withSentry) 438.86 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(cloudflare): Add nodejs_compat entrypoint (#21881)

      The Cloudflare SDK now ships a dedicated @sentry/cloudflare/nodejs_compat entrypoint for Workers running with the nodejs_compat flag. This entrypoint unlocks Node SDK features on Cloudflare, including the prismaIntegration (#21882) and AI v7 support for the vercelAiIntegration (#21917).

      This entrypoint is a drop-in replacement, so you can switch your imports from @sentry/cloudflare directly to @sentry/cloudflare/nodejs_compat. To use it, your Worker must set the nodejs_compat compatibility flag in wrangler.toml/wrangler.jsonc. This will become the default entrypoint in v11.

    • feat: Use Sentry's minimal OpenTelemetry tracer provider by default (#21666, #21680, #21842)

      The Node SDK now registers Sentry's own minimal SentryTracerProvider by default, which creates native Sentry spans directly instead of routing them through the full OpenTelemetry SDK span pipeline. This reduces overhead for the common case where you don't need the full OpenTelemetry tracing stack.

      If you rely on OpenTelemetry SDK features that the minimal provider doesn't support, you can opt out and fall back to the full OpenTelemetry BasicTracerProvider by setting openTelemetryBasicTracerProvider: true in your Sentry.init() options. Providing custom openTelemetrySpanProcessors also forces the full provider automatically.

    Other Changes

    • feat(bun,deno,node): pg orchestrion instrumentation (#21826)
    • feat(bun): enable new mysql, pg integrations in 'bun build' (#21828)
    • feat(cloudflare): Enable AI v7 support for Cloudflare in the /nodejs_compat entrypoint (#21917)
    • feat(cloudflare): Expose prismaIntegration in nodejs_compat export (#21882)
    • feat(core): Add sentry.trace_lifecycle attribute (#21850)
    • feat(core): Add deferred segment-span transaction capture (#21839)
    • feat(deps): Bump OpenTelemetry dependencies to latest (#21988)
    • feat(mongoose): Instrument mongoose >= 9.7 via native tracing channels (#21803)
    • feat(replays): Record segment names that occur during replay (#21851)
    • fix(browser): Accept precisely-typed GrowthBook class in growthbookIntegration (#21825)
    • fix(browser): Flush telemetry when page is hidden (#21862)
    • fix(cloudflare): Catch potential errors during flush and dispose (#21976)
    • fix(core): Capture Anthropic stream stop_reason from message_delta (#21907)
    • fix(core): Print getTraceMetaTags in 1 line to prevent hydration errors (#22004)
    • fix(nextjs): Add immutable browser chunks to upload assets (#21978)
    • fix(nextjs): Handle Middleware.execute root spans on Node.js runtime (#22013)
    • fix(react/solid/vue): Instrument TanStack Router navigations via onBeforeLoad/onResolved (#21975)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add experimentalUseDiagnosticsChannelInjection in node size-limit (#21992)
    • chore: Add external contributor to CHANGELOG.md (#21945)
    • chore: Clarify usage of hoistTransitiveImports option (#21888)
    • chore: Make @sentry/conventions sideEffect free during bundling (#22015)
    • chore: Remove runtime ESM/CJS switching (#21761)
    • chore(ci): Replace app-id with client-id in GH workflows (#21914)
    • chore(cloudflare): Disallow Node SDK usage outside of nodejs_compat (#21884)
    • chore(cloudflare): Disallow server-utils usage outside of nodejs_compat (#21918)
    • chore(node-core): Move isCjs to its own file to prevent sideEffects (#21856)
    • ci: Increase Node integration test timeout to 20 minutes (#21903)
    • deps(server-utils): Bump @apm-js-collab/tracing-hooks to 0.10.1 (#21892)
    • feat(server-utils): Implement orchestrion-based instrumentation for vercel-ai v6 (#21658)
    • feat(server-utils): Migrate @opentelemetry/instrumentation-ioredis to orchestrion (#21849)
    • feat(server-utils): Migrate Anthropic integration to orchestrion (#21902)
    • feat(server-utils): Migrate OpenAI integration to orchestrion (#21877)
    • feat(server-utils): Rewrite @opentelemetry/instrumentation-hapi to orchestrion (#21866)
    • ref(core): Add @sentry/conventions to @sentry/core and align versions (#21855)
    • ref(deno): add deno-integration-tests dev-package (#21827)
    • ref(node-core): Move node fetch instrumentation into node-core (#21873)
    • ref(node): Fold breadcrumb & trace propagation into node fetch instrumentation (#21872)
    • ref(node): Refactor orchestrion config into separate files (#21957)
    • ref(node): Streamline Prisma v5 instrumentation (#21980)
    • ref(node): Use @sentry/conventions and vendor remaining semantic conventions (#21893)
    • test(browser): Fix web worker route-registration race in debug ID test (#21920)
    • test(e2e): Fix failing nitro-3 e2e test due to broken dependency (#21895)
    • test(e2e): Revert nf3 dependency override in nitro-3 e2e test (#21951)
    • test(e2e): Use injectDiagnostics for orchestrion marker (#21987)
    • test(google-genai): Move google-genai integration tests to use a real client (#21909)
    • test(nextjs): Tolerate aborted navigation in streaming RSC error E2E test (#21847)
    • test(node): Attempt to unflake docker-based node integration tests (#21905)
    • test(node): Automatically run all node-integration tests with orchestrion (#21911)
    • test(node): Collapse mysql span streaming tests into same suite (#21890)
    • test(node): Ensure logs are auto-printed when a test fails (#21887)
    • test(node): Improve tests for Prisma v5 (#21876)
    • test(node): Migrate fs & contextLines-filename integration tests to helpers (#21958)
    • test(node): Migrate http client span tests to createCjsTests (#21956)
    • test(node): Migrate logging integration tests to create*Tests helpers (#21955)
    • test(node): Refactor remaining express integrations tests to new runner (#21949)
    • test(node): Update pg-native tests to use additionalDependencies (#21878)
    • tests(core): Move anthropic node integration tests to use a real client (#21906)

    </details>

    Work in this release was contributed by @codr and @zenato. Thank you for your contribution!

    Open source โ†’
  11. 10.63.01 Jul 2026
    Release notes
    • feat(browser): Add url.full attribute to resource spans (#21846)
    • feat(core): Add extendIntegration method (#21759)
    • feat(core): Add isTracingSuppressed to the async context strategy (#21785)
    • feat(core): Pass normalizedRequest to the sampling context for root spans (#21833)
    • feat(node): Add lru-memoizer diagnostics-channel integration to experimentalUseDiagnosticsChannelInjection (#21786)
    • feat(node): Expose channel-based, streamlined fastifyIntegration (#21706)
    • fix(browser): Defer sending session envelope until browser is idle (#21844)
    • fix(core): Improve waiting for tracing channel bindings (#21815)
    • fix(core): Serialize streamed span status message to sentry.status.message attribute (#21811)
    • fix(nextjs): Don't inject trace meta tags when Cache Components is enabled (#21141)
    • fix(opentelemetry): Strip leading ? and # from inferred http.query and http.fragment (#21848)
    • fix(tanstackstart-react): Drop server transactions for tunnel route requests (#21769)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add external contributor to CHANGELOG.md (#21832)
    • chore: Hoist transitive imports for bundles (#21858)
    • chore: Mark http.query/http.fragment stripping for v11 url.query migration (#21852)
    • docs: Use Cloudflare nodejs_compat flag (#21659)
    • feat(server-utils): Add lru-memoizer diagnostics-channel integration (#21786)
    • feat(server-utils): Expose channel-based, streamlined fastifyIntegration (#21706)
    • feat(server-utils): Restore caller context for callback tracing channels (#21863)
    • ref(core): Move spanStreamingIntegration setup into ServerRuntimeClient (#21814)
    • ref(node): Infer orchestrion integration names (#21834)
    • ref(node): Move node-fetch instrumentation away from InstrumentBase (#21778)
    • ref(node): Streamline Prisma instrumentation (v6 and v7) (#21819)
    • ref(node): Streamline vendored mysql instrumentation (#21568)
    • ref(server-utils): Ensure ts3.8 has diagnostics channel shim (#21845)
    • ref(server-utils): Move mysql orchestrion integration onto bindTracingChannelToSpan (#21865)
    • ref(server-utils): Set error attributes on span and simplify error info extraction (#21822)
    • test: Introduce .unordered in node-integration-tests (#21697)
    • test(cloudflare): Align CF types and compat flags (#21835)
    • test(e2e/hono): Isolate request-data extraction tests onto a dedicated route (#21869)
    • test(node-integration): Harden knex mysql2 healthcheck to fix flaky test (#21868)
    • test(node-integration-tests): Fix flaky postgresjs basic transaction/error ordering (#21870)
    • test(node-integration-tests): Retry transient docker compose up failures (#21860)
    • test(nuxt): Test mysql instrumentation with orchestrion bundler plugin (#21782)

    </details>

    Work in this release was contributed by @suzunn. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.97 KB
    @sentry/browser - with treeshaking flags 25.44 KB
    @sentry/browser (incl. Tracing) 44.99 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.7 KB
    @sentry/browser (incl. Tracing, Profiling) 49.65 KB
    @sentry/browser (incl. Tracing, Replay) 83.31 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.16 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.88 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.26 KB
    @sentry/browser (incl. Feedback) 43.75 KB
    @sentry/browser (incl. sendFeedback) 31.66 KB
    @sentry/browser (incl. FeedbackAsync) 36.67 KB
    @sentry/browser (incl. Metrics) 28.01 KB
    @sentry/browser (incl. Logs) 28.25 KB
    @sentry/browser (incl. Metrics & Logs) 28.92 KB
    @sentry/react 28.72 KB
    @sentry/react (incl. Tracing) 47.24 KB
    @sentry/vue 32.08 KB
    @sentry/vue (incl. Tracing) 46.81 KB
    @sentry/svelte 27 KB
    CDN Bundle 29.32 KB
    CDN Bundle (incl. Tracing) 46.89 KB
    CDN Bundle (incl. Logs, Metrics) 30.84 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.19 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.13 KB
    CDN Bundle (incl. Tracing, Replay) 83.51 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.75 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.18 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.39 KB
    CDN Bundle - uncompressed 87.32 KB
    CDN Bundle (incl. Tracing) - uncompressed 141.94 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 91.92 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 145.82 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 213.54 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 258.17 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 262.03 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 271.54 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 275.4 KB
    @sentry/nextjs (client) 49.57 KB
    @sentry/sveltekit (client) 45.37 KB
    @sentry/core/server 75.93 KB
    @sentry/core/browser 62.56 KB
    @sentry/node-core 60.03 KB
    @sentry/node 119.21 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.31 KB
    @sentry/node/light 49.27 KB
    @sentry/node - without tracing 71.49 KB
    @sentry/aws-serverless 82.12 KB
    @sentry/cloudflare (withSentry) - minified 176.39 KB
    @sentry/cloudflare (withSentry) 436.46 KB
    Open source โ†’
    Release notes
    • feat(browser): Add url.full attribute to resource spans (#21846)
    • feat(core): Add extendIntegration method (#21759)
    • feat(core): Add isTracingSuppressed to the async context strategy (#21785)
    • feat(core): Pass normalizedRequest to the sampling context for root spans (#21833)
    • feat(node): Add lru-memoizer diagnostics-channel integration to experimentalUseDiagnosticsChannelInjection (#21786)
    • feat(node): Expose channel-based, streamlined fastifyIntegration (#21706)
    • fix(browser): Defer sending session envelope until browser is idle (#21844)
    • fix(core): Improve waiting for tracing channel bindings (#21815)
    • fix(core): Serialize streamed span status message to sentry.status.message attribute (#21811)
    • fix(nextjs): Don't inject trace meta tags when Cache Components is enabled (#21141)
    • fix(opentelemetry): Strip leading ? and # from inferred http.query and http.fragment (#21848)
    • fix(tanstackstart-react): Drop server transactions for tunnel route requests (#21769)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add external contributor to CHANGELOG.md (#21832)
    • chore: Hoist transitive imports for bundles (#21858)
    • chore: Mark http.query/http.fragment stripping for v11 url.query migration (#21852)
    • docs: Use Cloudflare nodejs_compat flag (#21659)
    • feat(server-utils): Add lru-memoizer diagnostics-channel integration (#21786)
    • feat(server-utils): Expose channel-based, streamlined fastifyIntegration (#21706)
    • feat(server-utils): Restore caller context for callback tracing channels (#21863)
    • ref(core): Move spanStreamingIntegration setup into ServerRuntimeClient (#21814)
    • ref(node): Infer orchestrion integration names (#21834)
    • ref(node): Move node-fetch instrumentation away from InstrumentBase (#21778)
    • ref(node): Streamline Prisma instrumentation (v6 and v7) (#21819)
    • ref(node): Streamline vendored mysql instrumentation (#21568)
    • ref(server-utils): Ensure ts3.8 has diagnostics channel shim (#21845)
    • ref(server-utils): Move mysql orchestrion integration onto bindTracingChannelToSpan (#21865)
    • ref(server-utils): Set error attributes on span and simplify error info extraction (#21822)
    • test: Introduce .unordered in node-integration-tests (#21697)
    • test(cloudflare): Align CF types and compat flags (#21835)
    • test(e2e/hono): Isolate request-data extraction tests onto a dedicated route (#21869)
    • test(node-integration): Harden knex mysql2 healthcheck to fix flaky test (#21868)
    • test(node-integration-tests): Fix flaky postgresjs basic transaction/error ordering (#21870)
    • test(node-integration-tests): Retry transient docker compose up failures (#21860)
    • test(nuxt): Test mysql instrumentation with orchestrion bundler plugin (#21782)

    </details>

    Work in this release was contributed by @suzunn. Thank you for your contribution!

    Open source โ†’
  12. 10.62.026 Jun 2026
    Release notes

    Important Changes

    • feat(server-runtimes): Add v7 support for vercelAiIntegration (#21613)

      The vercelAiIntegration now supports v7 of the ai package. Note that v7 is not yet supported on Cloudflare.

    Other Changes

    • fix(node): Avoid failing at runtime if tracingChannel is not available (#21783)
    • fix(sveltekit): Avoid capturing preloaded 400 errors on client (#21784)

    Work in this release was contributed by @hyunbinseo. Thank you for your contribution!

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore(github): Update tracked packages (#21789)
    • feat(core): Add spanKindToName helper for reverse span-kind lookup (#21780)
    • ref(aws-serverless): Streamline AwsLambda instrumentation (#21758)
    • ref(node): Fix server-utils name for VercelAI integration (#21809)
    • ref(node): Streamline amqplib instrumentation (#21753)
    • ref(node): Streamline Firebase instrumentation (#21748)
    • test: Pin webpack to 5.107.0 (#21781)
    • test(e2e): Add no-browser-session lighthouse e2e test mode (#21787)
    • test(e2e): Add more test modes, pre-init and element timing (#21760)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.83 KB
    @sentry/browser - with treeshaking flags 25.3 KB
    @sentry/browser (incl. Tracing) 44.89 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.6 KB
    @sentry/browser (incl. Tracing, Profiling) 49.57 KB
    @sentry/browser (incl. Tracing, Replay) 83.22 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.06 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.8 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.17 KB
    @sentry/browser (incl. Feedback) 43.61 KB
    @sentry/browser (incl. sendFeedback) 31.5 KB
    @sentry/browser (incl. FeedbackAsync) 36.52 KB
    @sentry/browser (incl. Metrics) 27.87 KB
    @sentry/browser (incl. Logs) 28.11 KB
    @sentry/browser (incl. Metrics & Logs) 28.78 KB
    @sentry/react 28.59 KB
    @sentry/react (incl. Tracing) 47.15 KB
    @sentry/vue 31.86 KB
    @sentry/vue (incl. Tracing) 46.71 KB
    @sentry/svelte 26.85 KB
    CDN Bundle 29.18 KB
    CDN Bundle (incl. Tracing) 46.77 KB
    CDN Bundle (incl. Logs, Metrics) 30.7 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.08 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.12 KB
    CDN Bundle (incl. Tracing, Replay) 83.4 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.65 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.05 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.28 KB
    CDN Bundle - uncompressed 86.86 KB
    CDN Bundle (incl. Tracing) - uncompressed 141.63 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 91.45 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 145.51 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 213.5 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 257.86 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 261.72 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 271.24 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 275.09 KB
    @sentry/nextjs (client) 49.48 KB
    @sentry/sveltekit (client) 45.28 KB
    @sentry/core/server 75.64 KB
    @sentry/core/browser 62.31 KB
    @sentry/node-core 60.07 KB
    @sentry/node 120.54 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.31 KB
    @sentry/node/light 49.22 KB
    @sentry/node - without tracing 71.88 KB
    @sentry/aws-serverless 82.42 KB
    @sentry/cloudflare (withSentry) - minified 176.08 KB
    @sentry/cloudflare (withSentry) 435.78 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(server-runtimes): Add v7 support for vercelAiIntegration (#21613)

      The vercelAiIntegration now supports v7 of the ai package. Note that v7 is not yet supported on Cloudflare.

    Other Changes

    • fix(node): Avoid failing at runtime if tracingChannel is not available (#21783)
    • fix(sveltekit): Avoid capturing preloaded 400 errors on client (#21784)

    Work in this release was contributed by @hyunbinseo. Thank you for your contribution!

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore(github): Update tracked packages (#21789)
    • feat(core): Add spanKindToName helper for reverse span-kind lookup (#21780)
    • ref(aws-serverless): Streamline AwsLambda instrumentation (#21758)
    • ref(node): Fix server-utils name for VercelAI integration (#21809)
    • ref(node): Streamline amqplib instrumentation (#21753)
    • ref(node): Streamline Firebase instrumentation (#21748)
    • test: Pin webpack to 5.107.0 (#21781)
    • test(e2e): Add no-browser-session lighthouse e2e test mode (#21787)
    • test(e2e): Add more test modes, pre-init and element timing (#21760)

    </details>

    Open source โ†’
  13. 10.61.025 Jun 2026
    Release notes

    Important Changes

    • feat(core): Enable streamGenAiSpans by default (#21732)

      The SDK now extracts all gen_ai spans out of a transaction and sends them as v2 envelope items by default. This prevents gen_ai spans from being dropped when the transaction payload exceeds size limits. Because they are no longer constrained by transaction size limits, AI message data is also no longer truncated by default. Set enableTruncation: true on the respective AI integration to re-enable truncation. To keep the previous behavior, set streamGenAiSpans: false.

      Self-hosted Sentry users should opt out with streamGenAiSpans: false, since streamed gen_ai spans may not be ingested by their Sentry instance.

    Other Changes

    • feat(cloudflare): Add batch, exec, and withSession D1 instrumentation (#21292)
    • feat(cloudflare): Instrument SQL API in sqlite durable objects (#21656)
    • feat(core): Add db.query.summary functionality (#21670)
    • feat(core): Add top-level Sentry.setAttribute(s) APIs (#21705)
    • fix(hono): Name transactions after the matched route handler (#21700)
    • fix(react-router): Bump peerDependencies for react-router 8 (#21762)
    • fix(replays): Record replay trace_ids with span streaming (#21714)

    <details> <summary><strong>Internal Changes</strong></summary>

    • build: add rollup plugin for compile-time ESM/CJS code branching (#21715)
    • chore: Fix version bump for bundler plugin fixtures (#21707)
    • chore(node-integration-tests): Improve node test runner naming (#21685)
    • docs: Update contributing guide for E2E tests (#21763)
    • feat: Adopt bindTracingChannelToSpan across runtimes (#21642)
    • feat: Remove Otel from fsIntegration (#21654)
    • feat(deps): Bump http-proxy-middleware from 2.0.9 to 2.0.10 (#21709)
    • feat(server-utils): Add tracingChannel-to-span binding (#21641)
    • fix(tests): Add dedicated route for Hono query_string tests (#21731)
    • ref: Export SPAN_KIND from core and drop OTel SpanKind imports (#21668)
    • test: Make bundler plugins tests work after release
    • test: Remove duplicated test (#21699)
    • test: retry npm install on network hiccups (#21689)
    • test(cloudflare): Increase node count for memory tests (#21719)
    • test(e2e): Add sentry-sdk-init measure and marks (#21687)
    • test(e2e): Add more lighthouse react e2e test SDK init modes (#21711)
    • test(node): Add esm/cjs specific test runner utils (#21729)
    • test(node): Increase cron integration test timeout to 60s (#21704)
    • test(node): Streamline amqplib tests (#21723)
    • test(node): Update mysql tests for better coverage and correctness (#21684)
    • test(node): Use different ports for redis tests (#21727)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.83 KB
    @sentry/browser - with treeshaking flags 25.3 KB
    @sentry/browser (incl. Tracing) 44.89 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.6 KB
    @sentry/browser (incl. Tracing, Profiling) 49.57 KB
    @sentry/browser (incl. Tracing, Replay) 83.22 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.06 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.8 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.17 KB
    @sentry/browser (incl. Feedback) 43.61 KB
    @sentry/browser (incl. sendFeedback) 31.5 KB
    @sentry/browser (incl. FeedbackAsync) 36.52 KB
    @sentry/browser (incl. Metrics) 27.87 KB
    @sentry/browser (incl. Logs) 28.11 KB
    @sentry/browser (incl. Metrics & Logs) 28.78 KB
    @sentry/react 28.59 KB
    @sentry/react (incl. Tracing) 47.15 KB
    @sentry/vue 31.86 KB
    @sentry/vue (incl. Tracing) 46.71 KB
    @sentry/svelte 26.85 KB
    CDN Bundle 29.18 KB
    CDN Bundle (incl. Tracing) 46.77 KB
    CDN Bundle (incl. Logs, Metrics) 30.7 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.08 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.12 KB
    CDN Bundle (incl. Tracing, Replay) 83.4 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.65 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.05 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.28 KB
    CDN Bundle - uncompressed 86.86 KB
    CDN Bundle (incl. Tracing) - uncompressed 141.63 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 91.45 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 145.51 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 213.5 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 257.86 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 261.72 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 271.24 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 275.09 KB
    @sentry/nextjs (client) 49.48 KB
    @sentry/sveltekit (client) 45.28 KB
    @sentry/core/server 75.47 KB
    @sentry/core/browser 62.14 KB
    @sentry/node-core 60.07 KB
    @sentry/node 119.78 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.31 KB
    @sentry/node/light 49.22 KB
    @sentry/node - without tracing 71.83 KB
    @sentry/aws-serverless 82.75 KB
    @sentry/cloudflare (withSentry) - minified 176.08 KB
    @sentry/cloudflare (withSentry) 435.78 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core): Enable streamGenAiSpans by default (#21732)

      The SDK now extracts all gen_ai spans out of a transaction and sends them as v2 envelope items by default. This prevents gen_ai spans from being dropped when the transaction payload exceeds size limits. Because they are no longer constrained by transaction size limits, AI message data is also no longer truncated by default. Set enableTruncation: true on the respective AI integration to re-enable truncation. To keep the previous behavior, set streamGenAiSpans: false.

      Self-hosted Sentry users should opt out with streamGenAiSpans: false, since streamed gen_ai spans may not be ingested by their Sentry instance.

    Other Changes

    • feat(cloudflare): Add batch, exec, and withSession D1 instrumentation (#21292)
    • feat(cloudflare): Instrument SQL API in sqlite durable objects (#21656)
    • feat(core): Add db.query.summary functionality (#21670)
    • feat(core): Add top-level Sentry.setAttribute(s) APIs (#21705)
    • fix(hono): Name transactions after the matched route handler (#21700)
    • fix(react-router): Bump peerDependencies for react-router 8 (#21762)
    • fix(replays): Record replay trace_ids with span streaming (#21714)

    <details> <summary><strong>Internal Changes</strong></summary>

    • build: add rollup plugin for compile-time ESM/CJS code branching (#21715)
    • chore: Fix version bump for bundler plugin fixtures (#21707)
    • chore(node-integration-tests): Improve node test runner naming (#21685)
    • docs: Update contributing guide for E2E tests (#21763)
    • feat: Adopt bindTracingChannelToSpan across runtimes (#21642)
    • feat: Remove Otel from fsIntegration (#21654)
    • feat(deps): Bump http-proxy-middleware from 2.0.9 to 2.0.10 (#21709)
    • feat(server-utils): Add tracingChannel-to-span binding (#21641)
    • fix(tests): Add dedicated route for Hono query_string tests (#21731)
    • ref: Export SPAN_KIND from core and drop OTel SpanKind imports (#21668)
    • test: Make bundler plugins tests work after release
    • test: Remove duplicated test (#21699)
    • test: retry npm install on network hiccups (#21689)
    • test(cloudflare): Increase node count for memory tests (#21719)
    • test(e2e): Add sentry-sdk-init measure and marks (#21687)
    • test(e2e): Add more lighthouse react e2e test SDK init modes (#21711)
    • test(node): Add esm/cjs specific test runner utils (#21729)
    • test(node): Increase cron integration test timeout to 60s (#21704)
    • test(node): Streamline amqplib tests (#21723)
    • test(node): Update mysql tests for better coverage and correctness (#21684)
    • test(node): Use different ports for redis tests (#21727)

    </details>

    Open source โ†’
  14. 10.60.023 Jun 2026
    Release notes

    Other Changes

    • feat(cloudflare): Add R2 bucket auto-instrumentation (#21327)
    • feat(core): Add bindScopeToEmitter to bind a scope to an event emitter (#21594)
    • feat(deps): Bump @hapi/wreck from 18.1.0 to 18.1.2 (#21178)
    • fix(browser): Ensure url.full and http.url attributes have the same values on http.client spans (#21660)
    • fix(server-utils): Avoid directly importing tracingChannel for Node v18 compatibility (#21662)
    • fix(server-utils): Remove optional vite peer dependency (#21677)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add bundler-plugins to craft (#21701)
    • chore: Cleanup unused imports of @opentelemetry/core (#21679)
    • fix(bundler-plugins): Integration with monorepo build (#21479)
    • ref(core): Gate updateName() custom source on an OTel inference brand (#21649)
    • ref(core/opentelemetry): Move OTel span data inference from captureSpan to SentrySpanProcessor (#21648)
    • ref(node): Remove unused sql-common helper and @opentelemetry/core dep (#21688)
    • ref(node): Streamline kafkajs instrumentation (#21647)
    • ref(node): Streamline undici (node-fetch) instrumentation (#21650)
    • ref(vercel-edge): Drop unused @opentelemetry/semantic-conventions dependency (#21691)
    • ref(vercel-edge): Remove @opentelemetry/resources dependency (#21690)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.83 KB
    @sentry/browser - with treeshaking flags 25.3 KB
    @sentry/browser (incl. Tracing) 44.89 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.6 KB
    @sentry/browser (incl. Tracing, Profiling) 49.56 KB
    @sentry/browser (incl. Tracing, Replay) 83.18 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 73.02 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.76 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.12 KB
    @sentry/browser (incl. Feedback) 43.61 KB
    @sentry/browser (incl. sendFeedback) 31.5 KB
    @sentry/browser (incl. FeedbackAsync) 36.52 KB
    @sentry/browser (incl. Metrics) 27.87 KB
    @sentry/browser (incl. Logs) 28.11 KB
    @sentry/browser (incl. Metrics & Logs) 28.78 KB
    @sentry/react 28.59 KB
    @sentry/react (incl. Tracing) 47.14 KB
    @sentry/vue 31.86 KB
    @sentry/vue (incl. Tracing) 46.71 KB
    @sentry/svelte 26.85 KB
    CDN Bundle 29.16 KB
    CDN Bundle (incl. Tracing) 46.76 KB
    CDN Bundle (incl. Logs, Metrics) 30.68 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.06 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.07 KB
    CDN Bundle (incl. Tracing, Replay) 83.24 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.48 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 88.94 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.17 KB
    CDN Bundle - uncompressed 86.76 KB
    CDN Bundle (incl. Tracing) - uncompressed 141.52 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 91.35 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 145.4 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 213.25 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 257.6 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 261.47 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 270.98 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 274.83 KB
    @sentry/nextjs (client) 49.48 KB
    @sentry/sveltekit (client) 45.28 KB
    @sentry/core/server 74.51 KB
    @sentry/core/browser 61.96 KB
    @sentry/node-core 60.18 KB
    @sentry/node 120.71 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.31 KB
    @sentry/node/light 49.37 KB
    @sentry/node - without tracing 71.97 KB
    @sentry/aws-serverless 82.9 KB
    @sentry/cloudflare (withSentry) - minified 171.59 KB
    @sentry/cloudflare (withSentry) 427.58 KB
    Open source โ†’
    Release notes

    Other Changes

    • feat(cloudflare): Add R2 bucket auto-instrumentation (#21327)
    • feat(core): Add bindScopeToEmitter to bind a scope to an event emitter (#21594)
    • feat(deps): Bump @hapi/wreck from 18.1.0 to 18.1.2 (#21178)
    • fix(browser): Ensure url.full and http.url attributes have the same values on http.client spans (#21660)
    • fix(server-utils): Avoid directly importing tracingChannel for Node v18 compatibility (#21662)
    • fix(server-utils): Remove optional vite peer dependency (#21677)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add bundler-plugins to craft (#21701)
    • chore: Cleanup unused imports of @opentelemetry/core (#21679)
    • fix(bundler-plugins): Integration with monorepo build (#21479)
    • ref(core): Gate updateName() custom source on an OTel inference brand (#21649)
    • ref(core/opentelemetry): Move OTel span data inference from captureSpan to SentrySpanProcessor (#21648)
    • ref(node): Remove unused sql-common helper and @opentelemetry/core dep (#21688)
    • ref(node): Streamline kafkajs instrumentation (#21647)
    • ref(node): Streamline undici (node-fetch) instrumentation (#21650)
    • ref(vercel-edge): Drop unused @opentelemetry/semantic-conventions dependency (#21691)
    • ref(vercel-edge): Remove @opentelemetry/resources dependency (#21690)

    </details>

    Open source โ†’
  15. 10.59.019 Jun 2026
    Release notes

    Important Changes

    • feat(react-router): Add support for React Router v8 (#21633)

      The SDK now supports React Router v8, in both the framework and SPA (@sentry/react) modes.

    • feat(react): Add version-agnostic React Router SPA exports (#21633)

      @sentry/react now exports version-agnostic wrappers for React Router v6+ SPA instrumentation. The new exports replace the version-specific V6/V7 variants, which are now deprecated:

      Deprecated New
      reactRouterV6BrowserTracingIntegration / V7 reactRouterBrowserTracingIntegration
      withSentryReactRouterV6Routing / V7 wrapReactRouterRouting
      wrapCreateBrowserRouterV6 / V7 wrapCreateBrowserRouter
      wrapCreateMemoryRouterV6 / V7 wrapCreateMemoryRouter
      wrapUseRoutesV6 / V7 wrapUseRoutes

      The deprecated exports continue to work and will be removed in the next major version.

    Other Changes

    • feat(aws-serverless): Instrument aws-sdk clients >= 3.1046.0 (#21548)
    • feat(bun): Add orchestrion bun build plugin (#21410)
    • feat(cloudflare): Instrument sync KV (#21316)
    • feat(core): Disable gen_ai message truncation by default when streamGenAiSpans is enabled (#21603)
    • feat(deno): Add orchestrion deno runtime hook (#21451)
    • feat(hono): Extend peer dependency range (#21550)
    • feat(node): Collapse orchestrion opt-in to a single option (#20900)
    • fix: Diagnostics channel Node v18 (#21631)
    • fix(browser): Clean up pageload readystatechange listener (#21632)
    • fix(core): Capture scopes on span before emitting spanStart event (#21644)
    • fix(core): Defer TwP sampling by reading trace state from the scope (#21549)
    • fix(core): Prevent outgoing HTTP instrumentation from crashing on // request paths (#21645)
    • fix(core): Set production as default sentry.environment attribute value on streamed spans (#21637)
    • fix(nextjs): Register safe random ID context at module load (#21573)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Change deprecation/deprecation to oxlint equivalent (#21604)
    • chore: Switch license headers to SPDX format (#21357)
    • chore(deps-dev): Bump esbuild from 0.20.0 to 0.28.1 (#21511)
    • chore(deps): Bump esbuild from 0.25.0 to 0.28.1 in /dev-packages/e2e-tests/test-applications/node-profiling-esm (#21514)
    • chore(deps): Bump react-router-6 to 6.30.4 (#21566)
    • ci: Assign server team as codeowner for server-utils package (#21601)
    • ci: Dedup flaky test issues across esm/cjs variants (#21595)
    • ci: Do not apply Bug label to flaky test issues (#21593)
    • ci: Pin react-router latest and add eslint disable for deprecated attribute (#21624)
    • ci(deps): Bump actions/download-artifact from 7 to 8 (#21303)
    • ci(security-fixes): Enable cron trigger (#21547)
    • docs: Clarify comment and PR-body guidelines for agents (#21596)
    • feat(deps-dev): Bump @sveltejs/kit from 2.53.3 to 2.60.1 in /dev-packages/e2e-tests/test-applications/sveltekit-2-svelte-5 (#21212)
    • feat(deps-dev): Bump esbuild from 0.19.12 to 0.28.1 in /dev-packages/e2e-tests/test-applications/create-remix-app-express-vite-dev (#21512)
    • feat(deps): Bump @babel/core from 7.29.0 to 7.29.6 (#21574)
    • feat(deps): Bump @prisma/adapter-pg from 7.2.0 to 7.8.0 (#21106)
    • feat(deps): Bump hono from 4.12.21 to 4.12.25 (#21610)
    • feat(deps): Bump launch-editor from 2.12.0 to 2.14.1 (#21577)
    • feat(deps): Bump protobufjs from 7.5.9 to 7.6.4 (#21578)
    • feat(deps): Bump vite from 5.4.21 to 6.4.3 (#21576)
    • fix(node): Restore eslint-disable in vendored tedious instrumentation (#21616)
    • ref(aws-serverless): Remove unused parts of vendored aws-sdk instrumentation (#21563)
    • ref(aws-serverless): Streamline aws-sdk instrumentation (#21564)
    • ref(aws-serverless): Use @sentry/conventions (#21597)
    • ref(build): Switch TypeScript moduleResolution to bundler (#21559)
    • ref(ci): Dedupe matrix test failures in CI failure reporter (#21538)
    • ref(ci): Skip PR review reminders for changes-requested PRs (#21526)
    • ref(nestjs): Set nest span op/origin at span creation (#21531)
    • ref(nestjs): Use @sentry/conventions (#21492)
    • ref(nextjs): Use @sentry/conventions (#21493)
    • ref(node-core): Use @sentry/conventions (#21494)
    • ref(node): Set generic-pool span origin at span creation (#21533)
    • ref(node): Streamline connect (#21404)
    • ref(node): Streamline graphql instrumentation (#21556)
    • ref(node): Streamline hapi instrumentation (#21602)
    • ref(node): Streamline ioredis instrumentation (#21560)
    • ref(node): Streamline knex instrumentation (#21561)
    • ref(node): Streamline koa (#21554)
    • ref(node): Streamline mongodb instrumentation (#21619)
    • ref(node): Streamline mongoose instrumentation (#21481)
    • ref(node): Streamline mysql2 instrumentation (#21509)
    • ref(node): Streamline pg instrumentation (#21583)
    • ref(node): Streamline redis instrumentation (#21582)
    • ref(node): Streamline tedious instrumentation (#21598)
    • ref(node): Streamline vendored fs instrumentation (#21532)
    • ref(opentelemetry): Use @sentry/conventions (#21495)
    • ref(protocol): Strictly type profile chunk platform item header (#21562)
    • ref(react-router): Use @sentry/conventions (#21496)
    • ref(remix): Use @sentry/conventions (#21497)
    • ref(server-utils): Move orchestrion into server-utils
    • ref(server-utils): Use @sentry/conventions (#21490)
    • ref(tanstackstart-react): Use @sentry/conventions (#21498)
    • test(cloudflare): Add mTLS instrumentation test (#21569)
    • test(cloudflare): Increasing timeout and exit with reason (#21571)
    • test(cloudflare): Prevent spurious unhandled rejection in integration test runner (#21545)
    • test(cloudflare): Remove mock in DO tests (#21634)
    • test(cloudflare): Skip flaky DO RPC private-fields integration test (#21544)
    • test(hono): Fix flaky query_string transaction matcher (#21542)
    • test(node-core): Fix flaky cron instrumentation test (#21553)
    • test(node): Make amqplib integration test order-independent (#21541)
    • test(node): Make amqplib v1 integration test order-independent (#21534)
    • test(node): Use random port in hono tracing scenario to avoid CI flakes (#21536)
    • test(remix-hydrogen): Fix flaky navigation transaction test (#21535)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.8 KB
    @sentry/browser - with treeshaking flags 25.27 KB
    @sentry/browser (incl. Tracing) 44.83 KB
    @sentry/browser (incl. Tracing + Span Streaming) 47.03 KB
    @sentry/browser (incl. Tracing, Profiling) 49.5 KB
    @sentry/browser (incl. Tracing, Replay) 83.11 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 72.96 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.7 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 100.07 KB
    @sentry/browser (incl. Feedback) 43.58 KB
    @sentry/browser (incl. sendFeedback) 31.49 KB
    @sentry/browser (incl. FeedbackAsync) 36.51 KB
    @sentry/browser (incl. Metrics) 27.86 KB
    @sentry/browser (incl. Logs) 28.09 KB
    @sentry/browser (incl. Metrics & Logs) 28.76 KB
    @sentry/react 28.56 KB
    @sentry/react (incl. Tracing) 47.08 KB
    @sentry/vue 31.82 KB
    @sentry/vue (incl. Tracing) 46.66 KB
    @sentry/svelte 26.83 KB
    CDN Bundle 29.16 KB
    CDN Bundle (incl. Tracing) 47.19 KB
    CDN Bundle (incl. Logs, Metrics) 30.67 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.45 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 69.05 KB
    CDN Bundle (incl. Tracing, Replay) 83.63 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.86 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.34 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.56 KB
    CDN Bundle - uncompressed 86.72 KB
    CDN Bundle (incl. Tracing) - uncompressed 142.7 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 91.31 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 146.58 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 213.21 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 258.78 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 262.65 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 272.16 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 276.02 KB
    @sentry/nextjs (client) 49.42 KB
    @sentry/sveltekit (client) 45.21 KB
    @sentry/core/server 74.43 KB
    @sentry/core/browser 61.85 KB
    @sentry/node-core 60.45 KB
    @sentry/node 121.76 KB
    @sentry/node/import (ESM hook with diagnostics-channel injection) 68.4 KB
    @sentry/node/light 49.78 KB
    @sentry/node - without tracing 72.53 KB
    @sentry/aws-serverless 83.37 KB
    @sentry/cloudflare (withSentry) - minified 170.46 KB
    @sentry/cloudflare (withSentry) 426.62 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(react-router): Add support for React Router v8 (#21633)

      The SDK now supports React Router v8, in both the framework and SPA (@sentry/react) modes.

    • feat(react): Add version-agnostic React Router SPA exports (#21633)

      @sentry/react now exports version-agnostic wrappers for React Router v6+ SPA instrumentation. The new exports replace the version-specific V6/V7 variants, which are now deprecated:

      Deprecated New
      reactRouterV6BrowserTracingIntegration / V7 reactRouterBrowserTracingIntegration
      withSentryReactRouterV6Routing / V7 wrapReactRouterRouting
      wrapCreateBrowserRouterV6 / V7 wrapCreateBrowserRouter
      wrapCreateMemoryRouterV6 / V7 wrapCreateMemoryRouter
      wrapUseRoutesV6 / V7 wrapUseRoutes

      The deprecated exports continue to work and will be removed in the next major version.

    Other Changes

    • feat(aws-serverless): Instrument aws-sdk clients >= 3.1046.0 (#21548)
    • feat(bun): Add orchestrion bun build plugin (#21410)
    • feat(cloudflare): Instrument sync KV (#21316)
    • feat(core): Disable gen_ai message truncation by default when streamGenAiSpans is enabled (#21603)
    • feat(deno): Add orchestrion deno runtime hook (#21451)
    • feat(hono): Extend peer dependency range (#21550)
    • feat(node): Collapse orchestrion opt-in to a single option (#20900)
    • fix: Diagnostics channel Node v18 (#21631)
    • fix(browser): Clean up pageload readystatechange listener (#21632)
    • fix(core): Capture scopes on span before emitting spanStart event (#21644)
    • fix(core): Defer TwP sampling by reading trace state from the scope (#21549)
    • fix(core): Prevent outgoing HTTP instrumentation from crashing on // request paths (#21645)
    • fix(core): Set production as default sentry.environment attribute value on streamed spans (#21637)
    • fix(nextjs): Register safe random ID context at module load (#21573)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Change deprecation/deprecation to oxlint equivalent (#21604)
    • chore: Switch license headers to SPDX format (#21357)
    • chore(deps-dev): Bump esbuild from 0.20.0 to 0.28.1 (#21511)
    • chore(deps): Bump esbuild from 0.25.0 to 0.28.1 in /dev-packages/e2e-tests/test-applications/node-profiling-esm (#21514)
    • chore(deps): Bump react-router-6 to 6.30.4 (#21566)
    • ci: Assign server team as codeowner for server-utils package (#21601)
    • ci: Dedup flaky test issues across esm/cjs variants (#21595)
    • ci: Do not apply Bug label to flaky test issues (#21593)
    • ci: Pin react-router latest and add eslint disable for deprecated attribute (#21624)
    • ci(deps): Bump actions/download-artifact from 7 to 8 (#21303)
    • ci(security-fixes): Enable cron trigger (#21547)
    • docs: Clarify comment and PR-body guidelines for agents (#21596)
    • feat(deps-dev): Bump @sveltejs/kit from 2.53.3 to 2.60.1 in /dev-packages/e2e-tests/test-applications/sveltekit-2-svelte-5 (#21212)
    • feat(deps-dev): Bump esbuild from 0.19.12 to 0.28.1 in /dev-packages/e2e-tests/test-applications/create-remix-app-express-vite-dev (#21512)
    • feat(deps): Bump @babel/core from 7.29.0 to 7.29.6 (#21574)
    • feat(deps): Bump @prisma/adapter-pg from 7.2.0 to 7.8.0 (#21106)
    • feat(deps): Bump hono from 4.12.21 to 4.12.25 (#21610)
    • feat(deps): Bump launch-editor from 2.12.0 to 2.14.1 (#21577)
    • feat(deps): Bump protobufjs from 7.5.9 to 7.6.4 (#21578)
    • feat(deps): Bump vite from 5.4.21 to 6.4.3 (#21576)
    • fix(node): Restore eslint-disable in vendored tedious instrumentation (#21616)
    • ref(aws-serverless): Remove unused parts of vendored aws-sdk instrumentation (#21563)
    • ref(aws-serverless): Streamline aws-sdk instrumentation (#21564)
    • ref(aws-serverless): Use @sentry/conventions (#21597)
    • ref(build): Switch TypeScript moduleResolution to bundler (#21559)
    • ref(ci): Dedupe matrix test failures in CI failure reporter (#21538)
    • ref(ci): Skip PR review reminders for changes-requested PRs (#21526)
    • ref(nestjs): Set nest span op/origin at span creation (#21531)
    • ref(nestjs): Use @sentry/conventions (#21492)
    • ref(nextjs): Use @sentry/conventions (#21493)
    • ref(node-core): Use @sentry/conventions (#21494)
    • ref(node): Set generic-pool span origin at span creation (#21533)
    • ref(node): Streamline connect (#21404)
    • ref(node): Streamline graphql instrumentation (#21556)
    • ref(node): Streamline hapi instrumentation (#21602)
    • ref(node): Streamline ioredis instrumentation (#21560)
    • ref(node): Streamline knex instrumentation (#21561)
    • ref(node): Streamline koa (#21554)
    • ref(node): Streamline mongodb instrumentation (#21619)
    • ref(node): Streamline mongoose instrumentation (#21481)
    • ref(node): Streamline mysql2 instrumentation (#21509)
    • ref(node): Streamline pg instrumentation (#21583)
    • ref(node): Streamline redis instrumentation (#21582)
    • ref(node): Streamline tedious instrumentation (#21598)
    • ref(node): Streamline vendored fs instrumentation (#21532)
    • ref(opentelemetry): Use @sentry/conventions (#21495)
    • ref(protocol): Strictly type profile chunk platform item header (#21562)
    • ref(react-router): Use @sentry/conventions (#21496)
    • ref(remix): Use @sentry/conventions (#21497)
    • ref(server-utils): Move orchestrion into server-utils
    • ref(server-utils): Use @sentry/conventions (#21490)
    • ref(tanstackstart-react): Use @sentry/conventions (#21498)
    • test(cloudflare): Add mTLS instrumentation test (#21569)
    • test(cloudflare): Increasing timeout and exit with reason (#21571)
    • test(cloudflare): Prevent spurious unhandled rejection in integration test runner (#21545)
    • test(cloudflare): Remove mock in DO tests (#21634)
    • test(cloudflare): Skip flaky DO RPC private-fields integration test (#21544)
    • test(hono): Fix flaky query_string transaction matcher (#21542)
    • test(node-core): Fix flaky cron instrumentation test (#21553)
    • test(node): Make amqplib integration test order-independent (#21541)
    • test(node): Make amqplib v1 integration test order-independent (#21534)
    • test(node): Use random port in hono tracing scenario to avoid CI flakes (#21536)
    • test(remix-hydrogen): Fix flaky navigation transaction test (#21535)

    </details>

    Open source โ†’
  16. 10.58.015 Jun 2026
    Release notes

    Important Changes

    • feat(hono): Add support for the Deno runtime (#21450)

      @sentry/hono now supports the Deno runtime via a new @sentry/hono/deno entry point. Install @sentry/deno as a peer dependency and initialize Sentry through the sentry() middleware:

      import { Hono } from 'hono';
      import { sentry } from '@sentry/hono/deno';
      
      const app = new Hono();
      
      app.use(
        sentry(app, {
          dsn: '__DSN__', // or Deno.env.get('SENTRY_DSN')
          tracesSampleRate: 1.0,
        }),
      );
      
      Deno.serve(app.fetch);
      
    • feat(core): Extract objects as structured logs in consoleLoggingIntegration (#21385)

      The consoleLoggingIntegration now extracts structured log attributes when the first argument is a plain object.

      // Object keys become log attributes
      console.log({ userId: 123, action: 'login' }, 'User logged in');
      // โ†’ attributes: { userId: 123, action: "login" }
      
      // Non-object first args use template + parameters (unchanged)
      console.log('Hello', 'world', 123);
      // โ†’ sentry.message.template: "Hello {} {}"
      
    • feat(react-router): Stabilize the instrumentation API (#21470)

      React Router's instrumentation API is now stable โ€” the @experimental markers have been removed from createSentryServerInstrumentation, createSentryClientInstrumentation, and the related helpers and types. The manual server wrappers wrapServerLoader and wrapServerAction are now deprecated in favor of it. Export instrumentations = [Sentry.createSentryServerInstrumentation()] from your entry.server.tsx to instrument all loaders and actions without wrapping them individually.

    Other Changes

    • feat(hono): Add HTTP connection info to server spans (#21408)
    • feat(node-core): Attach log message and fields to pino error events (#21422)
    • feat(react-router): Always build client instrumentation and deprecate useInstrumentationAPI (#21432)
    • feat(react-router): Rename client navigation roots from the route pattern (#21463)
    • fix(astro): Resolve middleware export types (#21414)
    • fix(browser): Ignore __sentry_wrapped__ inherited from Function.prototype (#21506)
    • fix(core): Avoid double counting cached input tokens for Vercel AI SDK v6 (#21488)
    • fix(core): Keep safeJoin side-effect-free for DOM elements (#21356)
    • fix(deno): Use correct paths for module and types fields in package.json (#21449)
    • fix(nextjs): Mark redirect server actions as ok instead of internal_error (#21521)
    • fix(react-router): Mark instrumentation API active on invocation (#21420)
    • fix(redis): Bring span attributes into alignment with conventions
    • fix(sveltekit): Add default exports condition (#21472)
    • fix(tanstackstart-react): Preserve middleware context types (#21441)
    • perf(core): Reuse unchanged Vercel AI messages JSON

    Work in this release was contributed by @archievi, @AyaanFaisal21, @itosa-kazu, and @bkchr. Thank you for your contributions!

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Pin OTel to <2.8.0 in ts 3.8 test app (#21474)
    • chore(ci): Add dependabot auto-triage pipeline (#21318)
    • chore(dependabot): Group react-router packages to bump in unison (#21442)
    • chore(deps-dev): Bump the react-router group across 1 directory with 3 updates (#21448)
    • chore(deps): Bump @hapi/content from 6.0.1 to 6.0.2 (#21180)
    • chore(deps): Bump getsentry/craft from 2.26.2 to 2.26.9 (#21444)
    • chore(deps): Bump hono from 4.12.18 to 4.12.21 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#21340)
    • chore(deps): Bump nx to 22.7.5 (#21527)
    • chore(deps): Bump peter-evans/create-pull-request from 8.1.0 to 8.1.1 (#21302)
    • chore(size-limit): weekly auto-bump (#21501)
    • ci(dependabot-triage): Add outcome step (#21507)
    • ci(deps): Bump actions/github-script from 7 to 9 (#21300)
    • ci(deps): Bump anthropics/claude-code-action from 1.0.124 to 1.0.142 (#21445)
    • feat(deps): Bump shell-quote from 1.8.3 to 1.8.4 (#21412)
    • feat(deps): Bump the remix group with 4 updates (#21447)
    • feat(nestjs): Migrate vendored nest instrumentation to Sentry APIs (#21516)
    • ref: Remove unused SENTRY_BUILD_PRESERVE_MODULES env check from rollup configs (#21487)
    • ref: Rename published internal packages (#21371)
    • ref(nestjs): Streamline nestjs-core (#21434)
    • ref(node): Drop eslint-ignores and oxlint exemption in generic-pool instrumentation (#21435)
    • ref(node): Migrate vendored generic-pool instrumentation to Sentry APIs (#21523)
    • ref(node): Streamline dataloader instrumentation (#21475)
    • ref(node): Streamline generic-pool (#21363)
    • test: Skip nuxt-5 E2E test (#21524)
    • test(astro): Add Astro 7 e2e app (#21471)
    • test(node): Remove generic-pool fake unit test (#21439)
    • test(node): Replace lru-memoizer fake unit test with integration coverage (#21437)
    • test(react-router): Add Redis-backed DB-span coverage to rr7 (#21398)
    • test(react-router): Finalize instrumentation api e2e coverage (#21468)
    • test(react-router): Fix e2e tests (#21485)
    • test(react-router): Verify client fetch instrumentation hook fires (#21402)
    • test(tanstackstart-react): Initialize Sentry from a dedicated client init file (#21397)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.76 KB
    @sentry/browser - with treeshaking flags 25.23 KB
    @sentry/browser (incl. Tracing) 44.63 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.82 KB
    @sentry/browser (incl. Tracing, Profiling) 49.32 KB
    @sentry/browser (incl. Tracing, Replay) 82.93 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 72.78 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.51 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 99.9 KB
    @sentry/browser (incl. Feedback) 43.52 KB
    @sentry/browser (incl. sendFeedback) 31.45 KB
    @sentry/browser (incl. FeedbackAsync) 36.44 KB
    @sentry/browser (incl. Metrics) 27.8 KB
    @sentry/browser (incl. Logs) 28.03 KB
    @sentry/browser (incl. Metrics & Logs) 28.71 KB
    @sentry/react 28.51 KB
    @sentry/react (incl. Tracing) 46.88 KB
    @sentry/vue 31.66 KB
    @sentry/vue (incl. Tracing) 46.48 KB
    @sentry/svelte 26.78 KB
    CDN Bundle 29.09 KB
    CDN Bundle (incl. Tracing) 47.07 KB
    CDN Bundle (incl. Logs, Metrics) 30.6 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.33 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 68.97 KB
    CDN Bundle (incl. Tracing, Replay) 83.52 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.74 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.23 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.45 KB
    CDN Bundle - uncompressed 86.51 KB
    CDN Bundle (incl. Tracing) - uncompressed 142.38 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 91.11 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 146.26 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 213 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 258.46 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 262.33 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 271.84 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 275.7 KB
    @sentry/nextjs (client) 49.27 KB
    @sentry/sveltekit (client) 45.04 KB
    @sentry/core/server 74.29 KB
    @sentry/core/browser 61.74 KB
    @sentry/node-core 60.28 KB
    @sentry/node 127.39 KB
    @sentry/node - without tracing 72.37 KB
    @sentry/aws-serverless 84.26 KB
    @sentry/cloudflare (withSentry) - minified 169.62 KB
    @sentry/cloudflare (withSentry) 423.68 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(hono): Add support for the Deno runtime (#21450)

      @sentry/hono now supports the Deno runtime via a new @sentry/hono/deno entry point. Install @sentry/deno as a peer dependency and initialize Sentry through the sentry() middleware:

      import { Hono } from 'hono';
      import { sentry } from '@sentry/hono/deno';
      
      const app = new Hono();
      
      app.use(
        sentry(app, {
          dsn: '__DSN__', // or Deno.env.get('SENTRY_DSN')
          tracesSampleRate: 1.0,
        }),
      );
      
      Deno.serve(app.fetch);
      
    • feat(core): Extract objects as structured logs in consoleLoggingIntegration (#21385)

      The consoleLoggingIntegration now extracts structured log attributes when the first argument is a plain object.

      // Object keys become log attributes
      console.log({ userId: 123, action: 'login' }, 'User logged in');
      // โ†’ attributes: { userId: 123, action: "login" }
      
      // Non-object first args use template + parameters (unchanged)
      console.log('Hello', 'world', 123);
      // โ†’ sentry.message.template: "Hello {} {}"
      
    • feat(react-router): Stabilize the instrumentation API (#21470)

      React Router's instrumentation API is now stable โ€” the @experimental markers have been removed from createSentryServerInstrumentation, createSentryClientInstrumentation, and the related helpers and types. The manual server wrappers wrapServerLoader and wrapServerAction are now deprecated in favor of it. Export instrumentations = [Sentry.createSentryServerInstrumentation()] from your entry.server.tsx to instrument all loaders and actions without wrapping them individually.

    Other Changes

    • feat(hono): Add HTTP connection info to server spans (#21408)
    • feat(node-core): Attach log message and fields to pino error events (#21422)
    • feat(react-router): Always build client instrumentation and deprecate useInstrumentationAPI (#21432)
    • feat(react-router): Rename client navigation roots from the route pattern (#21463)
    • fix(astro): Resolve middleware export types (#21414)
    • fix(browser): Ignore __sentry_wrapped__ inherited from Function.prototype (#21506)
    • fix(core): Avoid double counting cached input tokens for Vercel AI SDK v6 (#21488)
    • fix(core): Keep safeJoin side-effect-free for DOM elements (#21356)
    • fix(deno): Use correct paths for module and types fields in package.json (#21449)
    • fix(nextjs): Mark redirect server actions as ok instead of internal_error (#21521)
    • fix(react-router): Mark instrumentation API active on invocation (#21420)
    • fix(redis): Bring span attributes into alignment with conventions
    • fix(sveltekit): Add default exports condition (#21472)
    • fix(tanstackstart-react): Preserve middleware context types (#21441)
    • perf(core): Reuse unchanged Vercel AI messages JSON

    Work in this release was contributed by @archievi, @AyaanFaisal21, @itosa-kazu, and @bkchr. Thank you for your contributions!

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Pin OTel to <2.8.0 in ts 3.8 test app (#21474)
    • chore(ci): Add dependabot auto-triage pipeline (#21318)
    • chore(dependabot): Group react-router packages to bump in unison (#21442)
    • chore(deps-dev): Bump the react-router group across 1 directory with 3 updates (#21448)
    • chore(deps): Bump @hapi/content from 6.0.1 to 6.0.2 (#21180)
    • chore(deps): Bump getsentry/craft from 2.26.2 to 2.26.9 (#21444)
    • chore(deps): Bump hono from 4.12.18 to 4.12.21 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#21340)
    • chore(deps): Bump nx to 22.7.5 (#21527)
    • chore(deps): Bump peter-evans/create-pull-request from 8.1.0 to 8.1.1 (#21302)
    • chore(size-limit): weekly auto-bump (#21501)
    • ci(dependabot-triage): Add outcome step (#21507)
    • ci(deps): Bump actions/github-script from 7 to 9 (#21300)
    • ci(deps): Bump anthropics/claude-code-action from 1.0.124 to 1.0.142 (#21445)
    • feat(deps): Bump shell-quote from 1.8.3 to 1.8.4 (#21412)
    • feat(deps): Bump the remix group with 4 updates (#21447)
    • feat(nestjs): Migrate vendored nest instrumentation to Sentry APIs (#21516)
    • ref: Remove unused SENTRY_BUILD_PRESERVE_MODULES env check from rollup configs (#21487)
    • ref: Rename published internal packages (#21371)
    • ref(nestjs): Streamline nestjs-core (#21434)
    • ref(node): Drop eslint-ignores and oxlint exemption in generic-pool instrumentation (#21435)
    • ref(node): Migrate vendored generic-pool instrumentation to Sentry APIs (#21523)
    • ref(node): Streamline dataloader instrumentation (#21475)
    • ref(node): Streamline generic-pool (#21363)
    • test: Skip nuxt-5 E2E test (#21524)
    • test(astro): Add Astro 7 e2e app (#21471)
    • test(node): Remove generic-pool fake unit test (#21439)
    • test(node): Replace lru-memoizer fake unit test with integration coverage (#21437)
    • test(react-router): Add Redis-backed DB-span coverage to rr7 (#21398)
    • test(react-router): Finalize instrumentation api e2e coverage (#21468)
    • test(react-router): Fix e2e tests (#21485)
    • test(react-router): Verify client fetch instrumentation hook fires (#21402)
    • test(tanstackstart-react): Initialize Sentry from a dedicated client init file (#21397)

    </details>

    Open source โ†’
  17. 10.57.09 Jun 2026
    Release notes

    Important Changes

    • feat(angular): Add support for Angular 22 (#21330)

      @sentry/angular now officially supports Angular 22.

    • ref(core): Deprecate sendDefaultPii in favor of dataCollection (#21277)

      sendDefaultPii is deprecated and will be removed in v11. The new dataCollection option lets you control each category of collected data. sendDefaultPii: true still works and maps to enabling all dataCollection categories. dataCollection.userInfo defaults to true when dataCollection is provided, meaning auto-populated user.* fields (e.g. IP address from a request) are collected by default. Data you set explicitly (like via Sentry.setUser()) is always sent regardless. When dataCollection is not set at all, the legacy sendDefaultPii behavior applies (userInfo: false by default) to preserve backward compatibility.

      Note that an empty dataCollection: {} falls back to more permissive defaults than sendDefaultPii: false, so replicate the old behavior by opting out explicitly:

      Sentry.init({
        dataCollection: {
          userInfo: false,
          genAI: { inputs: false, outputs: false },
          httpBodies: [],
          httpHeaders: { deny: ['forwarded', '-ip', 'remote-', 'via', '-user'] },
          cookies: { deny: ['forwarded', '-ip', 'remote-', 'via', '-user'] },
          queryParams: { deny: ['forwarded', '-ip', 'remote-', 'via', '-user'] },
        },
      });
      

    Other Changes

    • feat: Use dataCollection.frameContextLines for ContextLines integration (#21323)
    • feat(cloudflare): Auto instrument D1 based on env (#21276)
    • feat(core): Change default of dataCollection.userInfo to true (#21348)
    • feat(core): Default dataCollection.httpBodies to all valid body types (#21352)
    • feat(hono): Filter noisy transactions (favicon etc) (#21365)
    • fix(cloudflare): Don't track negatively sampled spans (#21367)
    • fix(core): Use safeDateNow calls for new Date() reads (#21351)
    • fix(nextjs): Shim pinoIntegration on edge runtime (#21347)
    • fix(node): Prevent PostgresJs integration from emitting duplicate spans per query (#21364)
    • fix(node-core): Read __SENTRY_SERVER_MODULES__ lazily so Turbopack injection is honored (#21339)
    • fix(react): Detect React Router v6/v7 navigations in a layout effect to propagate the correct trace (#21326)
    • fix(react): Remove unused react.componentStack event context (#21183)
    • fix(replays): Record sentry._internal.replay_is_buffering for spans (#21297)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Bump volta node version from 20.19.2 to 20.19.5 (#21359)
    • chore: Remove git:* allowed permissions (#21328)
    • chore(deps-dev): Bump eslint-plugin-regexp from 1.15.0 to 3.1.0 (#21104)
    • chore(deps-dev): Bump react-router from 7.13.0 to 7.15.0 (#21337)
    • chore(size-limit): weekly auto-bump (#21344)
    • docs(remix): Add notice about capturing http bodies for form data keys (#21296)
    • feat(deps): Bump @types/aws-lambda from 8.10.150 to 8.10.161 (#21105)
    • feat(deps): Bump axios from 1.15.2 to 1.16.0 (#21251)
    • feat(deps): Bump hono from 4.12.18 to 4.12.21 (#21341)
    • ref(browser): Split web vitals integration (#21210)
    • ref(node): Streamline lru-memoizer instrumentation (#21350)
    • ref(node): Streamline sql-common (#21360)
    • test(e2e): Migrate sendDefaultPii to dataCollection option (#21288)
    • test(nextjs): Remove assertion on conditional span (#21329)
    • test(node): Move node integration tests to data collection (#21283)

    </details>

    Work in this release was contributed by @zhongrenfei1-hub. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.57 KB
    @sentry/browser - with treeshaking flags 25.05 KB
    @sentry/browser (incl. Tracing) 44.44 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.62 KB
    @sentry/browser (incl. Tracing, Profiling) 49.11 KB
    @sentry/browser (incl. Tracing, Replay) 82.73 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 72.6 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.31 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 99.71 KB
    @sentry/browser (incl. Feedback) 43.33 KB
    @sentry/browser (incl. sendFeedback) 31.28 KB
    @sentry/browser (incl. FeedbackAsync) 36.25 KB
    @sentry/browser (incl. Metrics) 27.62 KB
    @sentry/browser (incl. Logs) 27.86 KB
    @sentry/browser (incl. Metrics & Logs) 28.54 KB
    @sentry/react 28.34 KB
    @sentry/react (incl. Tracing) 46.66 KB
    @sentry/vue 31.47 KB
    @sentry/vue (incl. Tracing) 46.29 KB
    @sentry/svelte 26.6 KB
    CDN Bundle 28.89 KB
    CDN Bundle (incl. Tracing) 46.83 KB
    CDN Bundle (incl. Logs, Metrics) 30.36 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 48.05 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 68.72 KB
    CDN Bundle (incl. Tracing, Replay) 83.34 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.49 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.02 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.18 KB
    CDN Bundle - uncompressed 85.72 KB
    CDN Bundle (incl. Tracing) - uncompressed 141.58 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 90.1 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 145.25 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 211.99 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 257.67 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 261.32 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 271.04 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 274.69 KB
    @sentry/nextjs (client) 49.08 KB
    @sentry/sveltekit (client) 44.85 KB
    @sentry/core/server 74.18 KB
    @sentry/core/browser 61.62 KB
    @sentry/node-core 60.28 KB
    @sentry/node 127.37 KB
    @sentry/node - without tracing 72.37 KB
    @sentry/aws-serverless 84.26 KB
    @sentry/cloudflare (withSentry) - minified 169.62 KB
    @sentry/cloudflare (withSentry) 423.68 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(angular): Add support for Angular 22 (#21330)

      @sentry/angular now officially supports Angular 22.

    • ref(core): Deprecate sendDefaultPii in favor of dataCollection (#21277)

      sendDefaultPii is deprecated and will be removed in v11. The new dataCollection option lets you control each category of collected data. sendDefaultPii: true still works and maps to enabling all dataCollection categories. dataCollection.userInfo defaults to true when dataCollection is provided, meaning auto-populated user.* fields (e.g. IP address from a request) are collected by default. Data you set explicitly (like via Sentry.setUser()) is always sent regardless. When dataCollection is not set at all, the legacy sendDefaultPii behavior applies (userInfo: false by default) to preserve backward compatibility.

      Note that an empty dataCollection: {} falls back to more permissive defaults than sendDefaultPii: false, so replicate the old behavior by opting out explicitly:

      Sentry.init({
        dataCollection: {
          userInfo: false,
          genAI: { inputs: false, outputs: false },
          httpBodies: [],
          httpHeaders: { deny: ['forwarded', '-ip', 'remote-', 'via', '-user'] },
          cookies: { deny: ['forwarded', '-ip', 'remote-', 'via', '-user'] },
          queryParams: { deny: ['forwarded', '-ip', 'remote-', 'via', '-user'] },
        },
      });
      

    Other Changes

    • feat: Use dataCollection.frameContextLines for ContextLines integration (#21323)
    • feat(cloudflare): Auto instrument D1 based on env (#21276)
    • feat(core): Change default of dataCollection.userInfo to true (#21348)
    • feat(core): Default dataCollection.httpBodies to all valid body types (#21352)
    • feat(hono): Filter noisy transactions (favicon etc) (#21365)
    • fix(cloudflare): Don't track negatively sampled spans (#21367)
    • fix(core): Use safeDateNow calls for new Date() reads (#21351)
    • fix(nextjs): Shim pinoIntegration on edge runtime (#21347)
    • fix(node): Prevent PostgresJs integration from emitting duplicate spans per query (#21364)
    • fix(node-core): Read __SENTRY_SERVER_MODULES__ lazily so Turbopack injection is honored (#21339)
    • fix(react): Detect React Router v6/v7 navigations in a layout effect to propagate the correct trace (#21326)
    • fix(react): Remove unused react.componentStack event context (#21183)
    • fix(replays): Record sentry._internal.replay_is_buffering for spans (#21297)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Bump volta node version from 20.19.2 to 20.19.5 (#21359)
    • chore: Remove git:* allowed permissions (#21328)
    • chore(deps-dev): Bump eslint-plugin-regexp from 1.15.0 to 3.1.0 (#21104)
    • chore(deps-dev): Bump react-router from 7.13.0 to 7.15.0 (#21337)
    • chore(size-limit): weekly auto-bump (#21344)
    • docs(remix): Add notice about capturing http bodies for form data keys (#21296)
    • feat(deps): Bump @types/aws-lambda from 8.10.150 to 8.10.161 (#21105)
    • feat(deps): Bump axios from 1.15.2 to 1.16.0 (#21251)
    • feat(deps): Bump hono from 4.12.18 to 4.12.21 (#21341)
    • ref(browser): Split web vitals integration (#21210)
    • ref(node): Streamline lru-memoizer instrumentation (#21350)
    • ref(node): Streamline sql-common (#21360)
    • test(e2e): Migrate sendDefaultPii to dataCollection option (#21288)
    • test(nextjs): Remove assertion on conditional span (#21329)
    • test(node): Move node integration tests to data collection (#21283)

    </details>

    Work in this release was contributed by @zhongrenfei1-hub. Thank you for your contribution!

    Open source โ†’
  18. 10.56.02 Jun 2026
    Release notes

    Important Changes

    • feat(deno): Redis diagnostics channel based integration for Deno (#21087)

      Adds Redis integration support for Deno, covering both redis and ioredis clients.

    Other Changes

    • feat(cloudflare): Only capture workflow step error on final retry attempt (#21025)
    • feat(hono): Emit warning if @sentry/node was imported instead of @sentry/hono/node (#21240)
    • feat(node): Use ioredis tracing channels (#21187)
    • fix(browser): Correctly parse sampleRate when consistentTraceSampling is enabled (#21281)
    • fix(cloudflare): Fix instrumentDurableObjectWithSentry breaking Cloudflare Agents (#21101)
    • fix(cloudflare): Wait for span links to be set (#21167)
    • fix(core): Use WeakRef for Span-Scope circular references (#21242)
    • fix(node): Vendor InstrumentationNodeModuleFile to fix Bun --bytecode crash (#21262)
    • fix(profiling-node): Ensure node version support warning includes latest 26 (#21229)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Ignore scheduled_tasks.lock (#21252)
    • chore: Promote lint warnings to errors (#21213)
    • chore(docs): Document how to support a new node version (#21228)
    • chore(size-limit): Weekly auto-bump (#21243)
    • chore(skills): Add linear-project-status skill (#21214)
    • chore(skills): Add linear-project-update skill (#21233)
    • chore(skills): Improve triage-issue skill (#21257)
    • chore(skills): Update linear-project-status skill with more details & context (#21234)
    • feat(deps): Bump axios from 1.15.0 to 1.16.0 in /dev-packages/e2e-tests/test-applications/nestjs-basic (#21263)
    • feat(server-utils): Initial scaffolding (#21200)
    • ref(cloudflare): Move D1 instrumentation (#21266)
    • ref(node): Refactor usage of hrTime utilities from @opentelemetry/core (#21191)
    • ref(node): Stop mutating OTel RPC metadata to set http.route (#21193)
    • ref(opentelemetry): Vendor minimal TraceState implementation (#21192)
    • test(browser): Add unit test for http client header collection behavior (#21273)
    • test(browser): Move browser integration tests to dataCollection (#21282)
    • test(cloudflare): Remove vitest in CF e2e tests (#21259)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.57 KB
    @sentry/browser - with treeshaking flags 25.05 KB
    @sentry/browser (incl. Tracing) 44.19 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.37 KB
    @sentry/browser (incl. Tracing, Profiling) 49.06 KB
    @sentry/browser (incl. Tracing, Replay) 82.86 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 72.67 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.45 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 99.78 KB
    @sentry/browser (incl. Feedback) 43.32 KB
    @sentry/browser (incl. sendFeedback) 31.27 KB
    @sentry/browser (incl. FeedbackAsync) 36.24 KB
    @sentry/browser (incl. Metrics) 27.61 KB
    @sentry/browser (incl. Logs) 27.85 KB
    @sentry/browser (incl. Metrics & Logs) 28.53 KB
    @sentry/react 28.35 KB
    @sentry/react (incl. Tracing) 46.41 KB
    @sentry/vue 31.46 KB
    @sentry/vue (incl. Tracing) 46.06 KB
    @sentry/svelte 26.59 KB
    CDN Bundle 28.88 KB
    CDN Bundle (incl. Tracing) 46.7 KB
    CDN Bundle (incl. Logs, Metrics) 30.35 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 47.91 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 68.69 KB
    CDN Bundle (incl. Tracing, Replay) 83.19 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.33 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 88.92 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.04 KB
    CDN Bundle - uncompressed 85.64 KB
    CDN Bundle (incl. Tracing) - uncompressed 140.75 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 90.03 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 144.42 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 211.83 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 256.74 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 260.4 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 270.12 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 273.77 KB
    @sentry/nextjs (client) 48.88 KB
    @sentry/sveltekit (client) 44.64 KB
    @sentry/core/server 74.16 KB
    @sentry/core/browser 61.61 KB
    @sentry/node-core 60.25 KB
    @sentry/node 127.35 KB
    @sentry/node - without tracing 72.33 KB
    @sentry/aws-serverless 84.24 KB
    @sentry/cloudflare (withSentry) - minified 167.82 KB
    @sentry/cloudflare (withSentry) 419.43 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(deno): Redis diagnostics channel based integration for Deno (#21087)

      Adds Redis integration support for Deno, covering both redis and ioredis clients.

    Other Changes

    • feat(cloudflare): Only capture workflow step error on final retry attempt (#21025)
    • feat(hono): Emit warning if @sentry/node was imported instead of @sentry/hono/node (#21240)
    • feat(node): Use ioredis tracing channels (#21187)
    • fix(browser): Correctly parse sampleRate when consistentTraceSampling is enabled (#21281)
    • fix(cloudflare): Fix instrumentDurableObjectWithSentry breaking Cloudflare Agents (#21101)
    • fix(cloudflare): Wait for span links to be set (#21167)
    • fix(core): Use WeakRef for Span-Scope circular references (#21242)
    • fix(node): Vendor InstrumentationNodeModuleFile to fix Bun --bytecode crash (#21262)
    • fix(profiling-node): Ensure node version support warning includes latest 26 (#21229)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Ignore scheduled_tasks.lock (#21252)
    • chore: Promote lint warnings to errors (#21213)
    • chore(docs): Document how to support a new node version (#21228)
    • chore(size-limit): Weekly auto-bump (#21243)
    • chore(skills): Add linear-project-status skill (#21214)
    • chore(skills): Add linear-project-update skill (#21233)
    • chore(skills): Improve triage-issue skill (#21257)
    • chore(skills): Update linear-project-status skill with more details & context (#21234)
    • feat(deps): Bump axios from 1.15.0 to 1.16.0 in /dev-packages/e2e-tests/test-applications/nestjs-basic (#21263)
    • feat(server-utils): Initial scaffolding (#21200)
    • ref(cloudflare): Move D1 instrumentation (#21266)
    • ref(node): Refactor usage of hrTime utilities from @opentelemetry/core (#21191)
    • ref(node): Stop mutating OTel RPC metadata to set http.route (#21193)
    • ref(opentelemetry): Vendor minimal TraceState implementation (#21192)
    • test(browser): Add unit test for http client header collection behavior (#21273)
    • test(browser): Move browser integration tests to dataCollection (#21282)
    • test(cloudflare): Remove vitest in CF e2e tests (#21259)

    </details>

    Open source โ†’
  19. 10.55.028 May 2026
    Release notes

    Important Changes

    • feat(hono): Promote @sentry/hono to stable and deprecate honoIntegration (#21208)

      The @sentry/hono SDK is now stable. See the Sentry Hono SDK docs to get started.

    • docs(tanstackstart-react): Promote SDK status to beta (#21175)

      This release promotes the @sentry/tanstackstart-react SDK to beta. For details on how to use it, check out the Sentry TanStack Start SDK docs. Please reach out on GitHub if you have any feedback or concerns.

    • feat(hono): Add shouldHandleError option to sentry() middleware (#21205)

      The sentry() middleware now accepts a shouldHandleError callback to control which errors are captured and sent to Sentry. By default, 3xx/4xx HTTP errors are ignored and 5xx errors and plain Error objects are captured. Return true from the callback to capture an error, false to suppress it.

      app.use(
        sentry(app, {
          dsn: '__DSN__',
          shouldHandleError(error) {
            const status = (error as { status?: number })?.status;
            // Capture 401/403 in addition to the default 5xx errors
            return status === 401 || status === 403 || typeof status !== 'number' || status >= 500;
          },
        }),
      );
      
    • test(tanstackstart-react): Move initialization to client entry point (#21161)

      Change the recommended setup for the SDK to do Sentry.init() in the client entry file to capture telemetry that is emitted ahead of page hydration.

    • feat(tanstackstart-react): Add distributed tracing (#21144)

      Server and client traces are now automatically connected, allowing you to see the full request lifecycle from server-side rendering through client-side hydration in a single trace.

    • feat(tanstackstart-react): Add server-side route parametrization (#21147)

      Server transaction names are now parametrized automatically (e.g., GET /users/123 becomes GET /users/$userId), improving transaction grouping in Sentry.

    • feat(tanstackstart-react): Show readable server function names in traces (#21190)

      Server function spans now show human-readable names (e.g., GET /_serverFn/greet instead of GET /_serverFn/a10e70b3...). The tanstackstart.function.hash.sha256 span attribute has been renamed to tanstackstart.function.id.

    Other Changes

    • feat(core): Migrate request data to dataCollection (#21071)
    • feat(hono): Add warning in Bun for double init (#21195)
    • feat(hono): Instrument main-app inline middleware spans (#20999)
    • feat(metrics): Migrate metrics to use dataCollection instead of sendDefaultPii (#21078)
    • feat(tanstackstart-react): Enable component tracking (#21149)
    • feat(tanstackstart-react): Filter noisy dev transactions (#21145)
    • fix(cloudflare): Use original waitUntil to not create a deadlock (#21197)
    • fix(elysia): Widen accepted Elysia app type to support Elysia options (#21164)
    • fix(tanstackstart-react): Add server-side replayIntegration no-op stub (#21148)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(changelog): clarify array attributes impact on beforeSend* callbacks (#21186)
    • chore(ci): Update bugbot instructions (#21168)
    • chore(sentry-cli): Upgrade to 2.58.6 (#21165)
    • chore(size-limit): weekly auto-bump (#21123)
    • feat(deps-dev): Bump @sveltejs/kit from 2.52.2 to 2.60.1 in /dev-packages/e2e-tests/test-applications/sveltekit-cloudflare-pages (#21162)
    • fix(e2e): Fix astro-6 e2e test build by relaxing astro version range (#21211)
    • meta(agents): Update AI commit attribution guidance (#21166)
    • ref(browser): Extract browser-specific normalize code out of core (#21172)
    • ref(node): Stop custom-handling normalization of Domain/DomainEmitter (#21182)
    • ref(node): Stop using registerSpanErrorInstrumentation() on server (#21169)
    • test(nitro-3): Update e2e tests for h3 route handler tracing (#21152)
    • test(nuxt): Fix flaky test and add note about hydration timing to skill (#21054)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.52 KB
    @sentry/browser - with treeshaking flags 25.01 KB
    @sentry/browser (incl. Tracing) 44.18 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.35 KB
    @sentry/browser (incl. Tracing, Profiling) 49.04 KB
    @sentry/browser (incl. Tracing, Replay) 82.83 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 72.65 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.42 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 99.76 KB
    @sentry/browser (incl. Feedback) 43.29 KB
    @sentry/browser (incl. sendFeedback) 31.23 KB
    @sentry/browser (incl. FeedbackAsync) 36.2 KB
    @sentry/browser (incl. Metrics) 27.58 KB
    @sentry/browser (incl. Logs) 27.81 KB
    @sentry/browser (incl. Metrics & Logs) 28.49 KB
    @sentry/react 28.3 KB
    @sentry/react (incl. Tracing) 46.39 KB
    @sentry/vue 31.45 KB
    @sentry/vue (incl. Tracing) 46.05 KB
    @sentry/svelte 26.55 KB
    CDN Bundle 28.85 KB
    CDN Bundle (incl. Tracing) 46.68 KB
    CDN Bundle (incl. Logs, Metrics) 30.31 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 47.89 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 68.65 KB
    CDN Bundle (incl. Tracing, Replay) 83.18 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.32 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 88.92 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.05 KB
    CDN Bundle - uncompressed 85.52 KB
    CDN Bundle (incl. Tracing) - uncompressed 140.7 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 89.91 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 144.37 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 211.71 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 256.69 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 260.34 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 270.07 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 273.71 KB
    @sentry/nextjs (client) 48.85 KB
    @sentry/sveltekit (client) 44.6 KB
    @sentry/core/server 74.15 KB
    @sentry/core/browser 61.61 KB
    @sentry/node-core 60.5 KB
    @sentry/node 127.33 KB
    @sentry/node - without tracing 72.62 KB
    @sentry/aws-serverless 84.54 KB
    @sentry/cloudflare (withSentry) - minified 167.48 KB
    @sentry/cloudflare (withSentry) 419.23 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(hono): Promote @sentry/hono to stable and deprecate honoIntegration (#21208)

      The @sentry/hono SDK is now stable. See the Sentry Hono SDK docs to get started.

    • docs(tanstackstart-react): Promote SDK status to beta (#21175)

      This release promotes the @sentry/tanstackstart-react SDK to beta. For details on how to use it, check out the Sentry TanStack Start SDK docs. Please reach out on GitHub if you have any feedback or concerns.

    • feat(hono): Add shouldHandleError option to sentry() middleware (#21205)

      The sentry() middleware now accepts a shouldHandleError callback to control which errors are captured and sent to Sentry. By default, 3xx/4xx HTTP errors are ignored and 5xx errors and plain Error objects are captured. Return true from the callback to capture an error, false to suppress it.

      app.use(
        sentry(app, {
          dsn: '__DSN__',
          shouldHandleError(error) {
            const status = (error as { status?: number })?.status;
            // Capture 401/403 in addition to the default 5xx errors
            return status === 401 || status === 403 || typeof status !== 'number' || status >= 500;
          },
        }),
      );
      
    • test(tanstackstart-react): Move initialization to client entry point (#21161)

      Change the recommended setup for the SDK to do Sentry.init() in the client entry file to capture telemetry that is emitted ahead of page hydration.

    • feat(tanstackstart-react): Add distributed tracing (#21144)

      Server and client traces are now automatically connected, allowing you to see the full request lifecycle from server-side rendering through client-side hydration in a single trace.

    • feat(tanstackstart-react): Add server-side route parametrization (#21147)

      Server transaction names are now parametrized automatically (e.g., GET /users/123 becomes GET /users/$userId), improving transaction grouping in Sentry.

    • feat(tanstackstart-react): Show readable server function names in traces (#21190)

      Server function spans now show human-readable names (e.g., GET /_serverFn/greet instead of GET /_serverFn/a10e70b3...). The tanstackstart.function.hash.sha256 span attribute has been renamed to tanstackstart.function.id.

    Other Changes

    • feat(core): Migrate request data to dataCollection (#21071)
    • feat(hono): Add warning in Bun for double init (#21195)
    • feat(hono): Instrument main-app inline middleware spans (#20999)
    • feat(metrics): Migrate metrics to use dataCollection instead of sendDefaultPii (#21078)
    • feat(tanstackstart-react): Enable component tracking (#21149)
    • feat(tanstackstart-react): Filter noisy dev transactions (#21145)
    • fix(cloudflare): Use original waitUntil to not create a deadlock (#21197)
    • fix(elysia): Widen accepted Elysia app type to support Elysia options (#21164)
    • fix(tanstackstart-react): Add server-side replayIntegration no-op stub (#21148)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(changelog): clarify array attributes impact on beforeSend* callbacks (#21186)
    • chore(ci): Update bugbot instructions (#21168)
    • chore(sentry-cli): Upgrade to 2.58.6 (#21165)
    • chore(size-limit): weekly auto-bump (#21123)
    • feat(deps-dev): Bump @sveltejs/kit from 2.52.2 to 2.60.1 in /dev-packages/e2e-tests/test-applications/sveltekit-cloudflare-pages (#21162)
    • fix(e2e): Fix astro-6 e2e test build by relaxing astro version range (#21211)
    • meta(agents): Update AI commit attribution guidance (#21166)
    • ref(browser): Extract browser-specific normalize code out of core (#21172)
    • ref(node): Stop custom-handling normalization of Domain/DomainEmitter (#21182)
    • ref(node): Stop using registerSpanErrorInstrumentation() on server (#21169)
    • test(nitro-3): Update e2e tests for h3 route handler tracing (#21152)
    • test(nuxt): Fix flaky test and add note about hydration timing to skill (#21054)

    </details>

    Open source โ†’
  20. 10.54.026 May 2026
    Release notes

    Important Changes

    • feat(core): Support array attributes for spans, logs, and metrics (#20427)

      Arrays of primitive values (string, number, boolean) are now accepted as attribute values. Arrays containing non-primitive elements will be dropped and won't show up in Sentry. Array attributes on logs and metrics were previously stringified and will now be sent as actual arrays instead. If you have custom rules that process attribute values in any beforeSend* callbacks (e.g., data scrubbing), you may need to update them to correctly handle array values.

      For instance, here's how you can update a beforeSendLog callback to handle arrays:

      beforeSendLog: log => {
        const attributes = log.attributes;
        Object.keys(attributes).forEach(key => {
          const value = attributes[key];
          if (typeof value === 'string') {
            attributes[key] = scrubData(value);
          }
          if (Array.isArray(value)) {
            attributes[key] = value.map(v => (typeof v === 'string' ? scrubData(v) : v));
          }
        });
        return log;
      };
      
    • feat(browser): Add fetchStreamPerformanceIntegration for streamed response tracking (#20778)

      A new integration that tracks the performance of streamed fetch responses. Use this to measure time-to-first-byte and streaming duration for APIs that return chunked/streamed data. This replaces the now deprecated trackFetchStreamPerformance option.

    • feat(core): Add dataCollection client option (#20965)

      Adds a new dataCollection client option for controlling what data the SDK collects and sends to Sentry. This provides a centralized way to configure data collection behavior across different SDK features. In the future, this option will be used for fine-granular data filtering, while the simple sendDefaultPii boolean option will be deprecated and removed in a future release.

    • feat(hono): Add hono.request spans for internal .request() calls (#20843)

      The Hono SDK now creates spans for internal .request() calls, providing better visibility into request handling within Hono applications.

    Other Changes

    • feat(core): Add data collection filtering utilities (#20989)
    • feat(core): Convert scope contexts to segment span attributes in span streaming (#20828)
    • feat(core): Emit sentry.sdk.integrations on streamed segment spans (#20428)
    • feat(core): HTTP server diagnostics channel utility (#20779)
    • feat(core): Migrate span streaming envelope to dataCollection (#21080)
    • feat(core): Migrate Supabase integration to dataCollection (#21085)
    • feat(core): Migrate trpc to dataCollection (#21072)
    • feat(deno): Instrument node:http on versions that support it (#21009)
    • feat(ember): Extract ember-specific logic into custom browserTracingIntegration (#20702)
    • feat(logs): Migrate log envelope user inference to dataCollection (#21073)
    • feat(nuxt): Allow custom configuration files paths in Nuxt module (#20650)
    • feat(replay): Update example worker script (#20899)
    • feat(serverless): Add server-only context span attributes via processSegmentSpan hooks (#20842)
    • fix(astro): Avoid injecting meta tags into <head> inside attribute values (#21089)
    • fix(astro): Use explicit ResponseInit when injecting meta tags in response (#21021)
    • fix(browser): Add a synthetic stack trace to DOMException with empty stack traces if attachStacktrace is true (#19988)
    • fix(browser): Fix internal frame detection in minified bundles (#20802)
    • fix(cloudflare): Avoid repeated flush lock wrapping (#21156)
    • fix(cloudflare): Skip SDK initialization for OPTIONS/HEAD requests (#21090)
    • fix(cloudflare, vercel-edge): Disable timer-based flush for serverless runtimes (#20889)
    • fix(core): Sanitize lone surrogates in log body and attributes (#20245)
    • fix(deno): Support Deno.serve instrumentation on Deno 2.8 (#21155)
    • fix(hono): Preserve middleware handler metadata (#20954)
    • fix(hono): Use generic Hono type in Bun/Node (#21060)
    • fix(nextjs): Widen project option type to string | string[] (#21067)
    • fix(node): Improve http.client double-wrap message (#20705)
    • fix(node): Preserve CallbackManager handlers in LangChain instrumentation (#20849)
    • fix(react-router): Do not re-write origin on router state changes (#21056)
    • fix(replay): Set sentry.replay_id attribute on streamed spans (#20897)
    • fix(replay): Set replay_id on DSC after buffer-to-session conversion (#20686)
    • fix(solidstart): Use nitro module for build hooks to preserve preset hooks (#20861)
    • ref(core): Rename types-hoist to types (#20979)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add compatibility function for sendDefaultPii (#20967)
    • chore: Add size-limit for core/server, core/browser (#20990)
    • chore: Bump rrweb deps to v2.43.0 (#20844)
    • chore(build): Replace sucrase with esbuild (#20865)
    • chore(deps): Bump nitropack from 2.13.1 to 2.13.4 (#20713)
    • chore(deps): Bump ws from 8.20.0 to 8.20.1 (#20998)
    • chore(deps): Remove redundant yarn resolutions (#20877)
    • feat(deps): Bump @tootallnate/once from 1.1.2 to 2.0.1 (#21108)
    • feat(deps): Bump devalue from 4.3.3 to 5.8.1 (#20893)
    • feat(deps): Bump protobufjs from 7.5.5 to 7.5.9 (#20846)
    • ref(aws-serverless): Vendor aws-sdk instrumentation (#20988)
    • ref(http): Use shared snippets for filtering headers and cookies (#20970)
    • ref(nestjs): Vendor nestjs-core instrumentation (#20996)
    • ref(node): Remove unused @opentelemetry/instrumentation-http dependency (#21113)
    • ref(node): Vendor @fastify/otel (#21099)
    • ref(node): Vendor @opentelemetry/instrumentation-pg (#21102)
    • ref(node): Vendor @opentelemetry/sql-common (#21140)
    • ref(node): Vendor @prisma/instrumentation (#21098)
    • ref(node): Vendor amqplib instrumentation (#21003)
    • ref(node): Vendor connect instrumentation (#20955)
    • ref(node): Vendor dataloader instrumentation (#20950)
    • ref(node): Vendor fs instrumentation (#20964)
    • ref(node): Vendor generic-pool instrumentation (#20949)
    • ref(node): Vendor graphql instrumentation (#21096)
    • ref(node): Vendor hapi instrumentation (#21057)
    • ref(node): Vendor kafkajs instrumentation (#21005)
    • ref(node): Vendor knex instrumentation (#20963)
    • ref(node): Vendor koa instrumentation (#20956)
    • ref(node): Vendor lru-memoizer instrumentation (#20948)
    • ref(node): Vendor minimal types for dataloader and generic-pool instrumentations (#21013)
    • ref(node): Vendor mongodb instrumentation (#20966)
    • ref(node): Vendor mongoose instrumentation (#21058)
    • ref(node): Vendor mysql instrumentation (#21016)
    • ref(node): Vendor mysql2 instrumentation (#21031)
    • ref(node): Vendor tedious instrumentation (#21010)

    </details>

    Work in this release was contributed by @abcang, @ahmadio, @delorge, @mdnanocom, and @victorgarciaesgi. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.68 KB
    @sentry/browser - with treeshaking flags 25.13 KB
    @sentry/browser (incl. Tracing) 44.25 KB
    @sentry/browser (incl. Tracing + Span Streaming) 46.44 KB
    @sentry/browser (incl. Tracing, Profiling) 49.12 KB
    @sentry/browser (incl. Tracing, Replay) 82.93 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 72.68 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 87.53 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 99.85 KB
    @sentry/browser (incl. Feedback) 43.46 KB
    @sentry/browser (incl. sendFeedback) 31.38 KB
    @sentry/browser (incl. FeedbackAsync) 36.38 KB
    @sentry/browser (incl. Metrics) 27.74 KB
    @sentry/browser (incl. Logs) 27.97 KB
    @sentry/browser (incl. Metrics & Logs) 28.65 KB
    @sentry/react 28.37 KB
    @sentry/react (incl. Tracing) 46.43 KB
    @sentry/vue 31.49 KB
    @sentry/vue (incl. Tracing) 46.07 KB
    @sentry/svelte 26.71 KB
    CDN Bundle 29.03 KB
    CDN Bundle (incl. Tracing) 46.72 KB
    CDN Bundle (incl. Logs, Metrics) 30.48 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 47.94 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 68.88 KB
    CDN Bundle (incl. Tracing, Replay) 83.34 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 84.47 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 89.07 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 90.21 KB
    CDN Bundle - uncompressed 85.75 KB
    CDN Bundle (incl. Tracing) - uncompressed 140.91 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 90.13 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 144.58 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 211.93 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 256.91 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 260.56 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 270.28 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 273.93 KB
    @sentry/nextjs (client) 48.86 KB
    @sentry/sveltekit (client) 44.73 KB
    @sentry/core/server 74.69 KB
    @sentry/core/browser 61.75 KB
    @sentry/node-core 61.12 KB
    @sentry/node 128.03 KB
    @sentry/node - without tracing 73.26 KB
    @sentry/aws-serverless 85.2 KB
    @sentry/cloudflare (withSentry) - minified 169.45 KB
    @sentry/cloudflare (withSentry) 423.36 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core): Support array attributes for spans, logs, and metrics (#20427)

      Arrays of primitive values (string, number, boolean) are now accepted as attribute values. Arrays containing non-primitive elements will be dropped and won't show up in Sentry. Array attributes on logs and metrics were previously stringified and will now be sent as actual arrays instead. If you have custom rules that process attribute values in any beforeSend* callbacks (e.g., data scrubbing), you may need to update them to correctly handle array values.

      For instance, here's how you can update a beforeSendLog callback to handle arrays:

      beforeSendLog: log => {
        const attributes = log.attributes;
        Object.keys(attributes).forEach(key => {
          const value = attributes[key];
          if (typeof value === 'string') {
            attributes[key] = scrubData(value);
          }
          if (Array.isArray(value)) {
            attributes[key] = value.map(v => (typeof v === 'string' ? scrubData(v) : v));
          }
        });
        return log;
      };
      
    • feat(browser): Add fetchStreamPerformanceIntegration for streamed response tracking (#20778)

      A new integration that tracks the performance of streamed fetch responses. Use this to measure time-to-first-byte and streaming duration for APIs that return chunked/streamed data. This replaces the now deprecated trackFetchStreamPerformance option.

    • feat(core): Add dataCollection client option (#20965)

      Adds a new dataCollection client option for controlling what data the SDK collects and sends to Sentry. This provides a centralized way to configure data collection behavior across different SDK features. In the future, this option will be used for fine-granular data filtering, while the simple sendDefaultPii boolean option will be deprecated and removed in a future release.

    • feat(hono): Add hono.request spans for internal .request() calls (#20843)

      The Hono SDK now creates spans for internal .request() calls, providing better visibility into request handling within Hono applications.

    Other Changes

    • feat(core): Add data collection filtering utilities (#20989)
    • feat(core): Convert scope contexts to segment span attributes in span streaming (#20828)
    • feat(core): Emit sentry.sdk.integrations on streamed segment spans (#20428)
    • feat(core): HTTP server diagnostics channel utility (#20779)
    • feat(core): Migrate span streaming envelope to dataCollection (#21080)
    • feat(core): Migrate Supabase integration to dataCollection (#21085)
    • feat(core): Migrate trpc to dataCollection (#21072)
    • feat(deno): Instrument node:http on versions that support it (#21009)
    • feat(ember): Extract ember-specific logic into custom browserTracingIntegration (#20702)
    • feat(logs): Migrate log envelope user inference to dataCollection (#21073)
    • feat(nuxt): Allow custom configuration files paths in Nuxt module (#20650)
    • feat(replay): Update example worker script (#20899)
    • feat(serverless): Add server-only context span attributes via processSegmentSpan hooks (#20842)
    • fix(astro): Avoid injecting meta tags into <head> inside attribute values (#21089)
    • fix(astro): Use explicit ResponseInit when injecting meta tags in response (#21021)
    • fix(browser): Add a synthetic stack trace to DOMException with empty stack traces if attachStacktrace is true (#19988)
    • fix(browser): Fix internal frame detection in minified bundles (#20802)
    • fix(cloudflare): Avoid repeated flush lock wrapping (#21156)
    • fix(cloudflare): Skip SDK initialization for OPTIONS/HEAD requests (#21090)
    • fix(cloudflare, vercel-edge): Disable timer-based flush for serverless runtimes (#20889)
    • fix(core): Sanitize lone surrogates in log body and attributes (#20245)
    • fix(deno): Support Deno.serve instrumentation on Deno 2.8 (#21155)
    • fix(hono): Preserve middleware handler metadata (#20954)
    • fix(hono): Use generic Hono type in Bun/Node (#21060)
    • fix(nextjs): Widen project option type to string | string[] (#21067)
    • fix(node): Improve http.client double-wrap message (#20705)
    • fix(node): Preserve CallbackManager handlers in LangChain instrumentation (#20849)
    • fix(react-router): Do not re-write origin on router state changes (#21056)
    • fix(replay): Set sentry.replay_id attribute on streamed spans (#20897)
    • fix(replay): Set replay_id on DSC after buffer-to-session conversion (#20686)
    • fix(solidstart): Use nitro module for build hooks to preserve preset hooks (#20861)
    • ref(core): Rename types-hoist to types (#20979)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add compatibility function for sendDefaultPii (#20967)
    • chore: Add size-limit for core/server, core/browser (#20990)
    • chore: Bump rrweb deps to v2.43.0 (#20844)
    • chore(build): Replace sucrase with esbuild (#20865)
    • chore(deps): Bump nitropack from 2.13.1 to 2.13.4 (#20713)
    • chore(deps): Bump ws from 8.20.0 to 8.20.1 (#20998)
    • chore(deps): Remove redundant yarn resolutions (#20877)
    • feat(deps): Bump @tootallnate/once from 1.1.2 to 2.0.1 (#21108)
    • feat(deps): Bump devalue from 4.3.3 to 5.8.1 (#20893)
    • feat(deps): Bump protobufjs from 7.5.5 to 7.5.9 (#20846)
    • ref(aws-serverless): Vendor aws-sdk instrumentation (#20988)
    • ref(http): Use shared snippets for filtering headers and cookies (#20970)
    • ref(nestjs): Vendor nestjs-core instrumentation (#20996)
    • ref(node): Remove unused @opentelemetry/instrumentation-http dependency (#21113)
    • ref(node): Vendor @fastify/otel (#21099)
    • ref(node): Vendor @opentelemetry/instrumentation-pg (#21102)
    • ref(node): Vendor @opentelemetry/sql-common (#21140)
    • ref(node): Vendor @prisma/instrumentation (#21098)
    • ref(node): Vendor amqplib instrumentation (#21003)
    • ref(node): Vendor connect instrumentation (#20955)
    • ref(node): Vendor dataloader instrumentation (#20950)
    • ref(node): Vendor fs instrumentation (#20964)
    • ref(node): Vendor generic-pool instrumentation (#20949)
    • ref(node): Vendor graphql instrumentation (#21096)
    • ref(node): Vendor hapi instrumentation (#21057)
    • ref(node): Vendor kafkajs instrumentation (#21005)
    • ref(node): Vendor knex instrumentation (#20963)
    • ref(node): Vendor koa instrumentation (#20956)
    • ref(node): Vendor lru-memoizer instrumentation (#20948)
    • ref(node): Vendor minimal types for dataloader and generic-pool instrumentations (#21013)
    • ref(node): Vendor mongodb instrumentation (#20966)
    • ref(node): Vendor mongoose instrumentation (#21058)
    • ref(node): Vendor mysql instrumentation (#21016)
    • ref(node): Vendor mysql2 instrumentation (#21031)
    • ref(node): Vendor tedious instrumentation (#21010)

    </details>

    Work in this release was contributed by @abcang, @ahmadio, @delorge, @mdnanocom, and @victorgarciaesgi. Thank you for your contributions!

    Open source โ†’
  21. 10.53.112 May 2026
    Release notes
    • fix(core): Don't gate user data for streamed spans at scope read time (#20827)
    • fix(core): Include subpath type shims in published package (#20835)
    • ref(hono): Consolidate route patching and add clarification comments (#20829)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (#20821)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.22 KB
    @sentry/browser - with treeshaking flags 24.69 KB
    @sentry/browser (incl. Tracing) 43.69 KB
    @sentry/browser (incl. Tracing + Span Streaming) 45.62 KB
    @sentry/browser (incl. Tracing, Profiling) 48.56 KB
    @sentry/browser (incl. Tracing, Replay) 82.4 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 72.08 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 86.99 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 99.33 KB
    @sentry/browser (incl. Feedback) 43 KB
    @sentry/browser (incl. sendFeedback) 30.92 KB
    @sentry/browser (incl. FeedbackAsync) 35.91 KB
    @sentry/browser (incl. Metrics) 27.27 KB
    @sentry/browser (incl. Logs) 27.42 KB
    @sentry/browser (incl. Metrics & Logs) 28.08 KB
    @sentry/react 27.92 KB
    @sentry/react (incl. Tracing) 45.9 KB
    @sentry/vue 31.01 KB
    @sentry/vue (incl. Tracing) 45.5 KB
    @sentry/svelte 26.24 KB
    CDN Bundle 28.55 KB
    CDN Bundle (incl. Tracing) 46.04 KB
    CDN Bundle (incl. Logs, Metrics) 29.89 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 47.14 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 68.3 KB
    CDN Bundle (incl. Tracing, Replay) 82.55 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 83.6 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 88.23 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 89.3 KB
    CDN Bundle - uncompressed 83.97 KB
    CDN Bundle (incl. Tracing) - uncompressed 138.12 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 88.07 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 141.5 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 209.97 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 254.05 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 257.42 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 267.43 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 270.79 KB
    @sentry/nextjs (client) 48.36 KB
    @sentry/sveltekit (client) 44.17 KB
    @sentry/node-core 59.39 KB
    @sentry/node 162.07 KB
    @sentry/node - without tracing 72.21 KB
    @sentry/aws-serverless 105.52 KB
    @sentry/cloudflare (withSentry) - minified 166.63 KB
    @sentry/cloudflare (withSentry) 420.32 KB
    Open source โ†’
    Release notes
    • fix(core): Don't gate user data for streamed spans at scope read time (#20827)
    • fix(core): Include subpath type shims in published package (#20835)
    • ref(hono): Consolidate route patching and add clarification comments (#20829)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (#20821)

    </details>

    Open source โ†’
  22. 10.53.012 May 2026
    Release notes

    Important Changes

    • feat(core): Add streamGenAiSpans options to stream gen_ai spans (#20785)

      Adds a new streamGenAiSpans option that controls how gen_ai spans are sent to Sentry. When set, the SDK extracts all gen_ai spans out of a transaction and sends them as v2 envelope items.

      Enable this option if gen_ai spans are being dropped because the transaction payload exceeds size limits.

      Sentry.init({
        dsn: 'https://[email protected]/0',
        streamGenAiSpans: true,
      });
      

    Other Changes

    • feat(browser): Migrate browser profiling thread data to span attributes (#20800)
    • feat(core): Add addConsoleInstrumentationFilter utility (#20790)
    • feat(core): Add applicationKey to BuildTimeOptionsBase (#20789)
    • feat(core): split exports by browser/server for bundle size (#20435)
    • feat(nextjs): Add top-level applicationKey option (#20794)
    • feat(node): Support Node 26 (#20710)
    • feat(profiling-node): Bump @sentry-internal/node-cpu-profiler to 2.4.0 (#20720)
    • fix(cloudflare): avoid flush lock self-wait (#20719)
    • fix(hono): Capture transaction name on request for correct culprit (#20801)
    • fix(mcp): retroactively wrap handlers registered before wrapMcpServerWithSentry (#20699)
    • fix(node-core): Guard against undefined util.getSystemErrorMap (#20660)
    • fix(replay): Capture aborted/errored fetch requests in replay network tab (#20722)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: bump replay dependencies (#20746)
    • chore: Typo intergation -> integration (#20799)
    • chore(deps): Bump @babel/plugin-transform-modules-systemjs from 7.24.1 to 7.29.4 (#20773)
    • chore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/test-applications/nextjs-15 (#20818)
    • chore(deps): Bump next from 16.2.4 to 16.2.6 in /dev-packages/e2e-tests/test-applications/nextjs-16-streaming (#20811)
    • chore(deps): Bump rollup from 4.59.0 to 4.60.3 (#20716)
    • ci: Ensure PR reminder workflow considers new sub teams (#20814)
    • ci: Remove codecov reporting (#20803)
    • feat(deps): Bump bundler plugins to 5.3.0 (#20820)
    • feat(deps): Bump fast-uri from 3.0.6 to 3.1.2 (#20774)
    • feat(deps): Bump hono from 4.12.16 to 4.12.18 (#20777)
    • test(cloudflare-hono): fix 'occured' -> 'occurred' typo in error log (#20783)
    • test(deps): Bump hono from 4.12.14 to 4.12.16 (#20712)
    • test(deps): Bump hono from 4.12.14 to 4.12.18 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#20776)
    • test(e2e): Pin astro version in astro-6 test app (#20709)

    </details>

    Work in this release was contributed by @dmmulroy and @SAY-5. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 26.22 KB
    @sentry/browser - with treeshaking flags 24.69 KB
    @sentry/browser (incl. Tracing) 43.69 KB
    @sentry/browser (incl. Tracing + Span Streaming) 45.63 KB
    @sentry/browser (incl. Tracing, Profiling) 48.56 KB
    @sentry/browser (incl. Tracing, Replay) 82.4 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 72.08 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 86.99 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 99.33 KB
    @sentry/browser (incl. Feedback) 43 KB
    @sentry/browser (incl. sendFeedback) 30.92 KB
    @sentry/browser (incl. FeedbackAsync) 35.91 KB
    @sentry/browser (incl. Metrics) 27.27 KB
    @sentry/browser (incl. Logs) 27.42 KB
    @sentry/browser (incl. Metrics & Logs) 28.08 KB
    @sentry/react 27.92 KB
    @sentry/react (incl. Tracing) 45.91 KB
    @sentry/vue 31.01 KB
    @sentry/vue (incl. Tracing) 45.5 KB
    @sentry/svelte 26.24 KB
    CDN Bundle 28.55 KB
    CDN Bundle (incl. Tracing) 46.05 KB
    CDN Bundle (incl. Logs, Metrics) 29.89 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 47.15 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 68.3 KB
    CDN Bundle (incl. Tracing, Replay) 82.57 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 83.62 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 88.24 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 89.32 KB
    CDN Bundle - uncompressed 83.97 KB
    CDN Bundle (incl. Tracing) - uncompressed 138.15 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 88.07 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 141.53 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 209.97 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 254.08 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 257.44 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 267.46 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 270.81 KB
    @sentry/nextjs (client) 48.36 KB
    @sentry/sveltekit (client) 44.17 KB
    @sentry/node-core 59.4 KB
    @sentry/node 162.08 KB
    @sentry/node - without tracing 72.22 KB
    @sentry/aws-serverless 105.53 KB
    @sentry/cloudflare (withSentry) - minified 166.66 KB
    @sentry/cloudflare (withSentry) 420.38 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core): Add streamGenAiSpans options to stream gen_ai spans (#20785)

      Adds a new streamGenAiSpans option that controls how gen_ai spans are sent to Sentry. When set, the SDK extracts all gen_ai spans out of a transaction and sends them as v2 envelope items.

      Enable this option if gen_ai spans are being dropped because the transaction payload exceeds size limits.

      Sentry.init({
        dsn: 'https://[email protected]/0',
        streamGenAiSpans: true,
      });
      

    Other Changes

    • feat(browser): Migrate browser profiling thread data to span attributes (#20800)
    • feat(core): Add addConsoleInstrumentationFilter utility (#20790)
    • feat(core): Add applicationKey to BuildTimeOptionsBase (#20789)
    • feat(core): split exports by browser/server for bundle size (#20435)
    • feat(nextjs): Add top-level applicationKey option (#20794)
    • feat(node): Support Node 26 (#20710)
    • feat(profiling-node): Bump @sentry-internal/node-cpu-profiler to 2.4.0 (#20720)
    • fix(cloudflare): avoid flush lock self-wait (#20719)
    • fix(hono): Capture transaction name on request for correct culprit (#20801)
    • fix(mcp): retroactively wrap handlers registered before wrapMcpServerWithSentry (#20699)
    • fix(node-core): Guard against undefined util.getSystemErrorMap (#20660)
    • fix(replay): Capture aborted/errored fetch requests in replay network tab (#20722)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: bump replay dependencies (#20746)
    • chore: Typo intergation -> integration (#20799)
    • chore(deps): Bump @babel/plugin-transform-modules-systemjs from 7.24.1 to 7.29.4 (#20773)
    • chore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/test-applications/nextjs-15 (#20818)
    • chore(deps): Bump next from 16.2.4 to 16.2.6 in /dev-packages/e2e-tests/test-applications/nextjs-16-streaming (#20811)
    • chore(deps): Bump rollup from 4.59.0 to 4.60.3 (#20716)
    • ci: Ensure PR reminder workflow considers new sub teams (#20814)
    • ci: Remove codecov reporting (#20803)
    • feat(deps): Bump bundler plugins to 5.3.0 (#20820)
    • feat(deps): Bump fast-uri from 3.0.6 to 3.1.2 (#20774)
    • feat(deps): Bump hono from 4.12.16 to 4.12.18 (#20777)
    • test(cloudflare-hono): fix 'occured' -> 'occurred' typo in error log (#20783)
    • test(deps): Bump hono from 4.12.14 to 4.12.16 (#20712)
    • test(deps): Bump hono from 4.12.14 to 4.12.18 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#20776)
    • test(e2e): Pin astro version in astro-6 test app (#20709)

    </details>

    Work in this release was contributed by @dmmulroy and @SAY-5. Thank you for your contributions!

    Open source โ†’
  23. 10.52.07 May 2026
    Release notes

    Important Changes

    • Beta release of the official Hono Sentry SDK

      This release marks the beta release of the @sentry/hono Sentry SDK. For details on how to use it, check out the Sentry Hono SDK docs. Please reach out on GitHub if you have any feedback or concerns.

    • feat(browser): Add ingest_settings to v2 log envelope payload (#20453)

      Inference of user data (e.g. IP address, browser name/version) on log events is now gated behind the sendDefaultPii option. Previously, this data was always inferred by default.

    Other Changes

    • docs(hono): Add new docs link and move to BETA release (#20666)
    • feat(browser): Add ingest_settings to v2 metrics envelope payload (#20454)
    • feat(browser): Migrate spotlight event processor to ignoreSpans (#20595)
    • feat(cloudflare): Capture request body via httpServerIntegration (#20614)
    • feat(cloudflare): Support rpc trace propagation for WorkerEntrypoint (#20523)
    • feat(cloudflare): Support tracing for queue producer (#20529)
    • feat(core): Apply request data to segment spans in span streaming (#20654)
    • feat(core): Migrate Vercel AI event processor to span streaming (#20608)
    • feat(deno): Add processSegmentSpan to Deno context integration (#20613)
    • feat(http): Portable node:http client instrumentation (#20393)
    • feat(nitro): Add unstorage tracing channel instrumentation (#20615)
    • feat(node-core): Add processSegmentSpan to node context integration (#20678)
    • feat(node): Use diagnostics_channel for redis >= 5.12.0 (#20573)
    • feat(node): Vendor ioredis, redis instrumentations (#20510)
    • feat(replay): Reset replay id from DSC on session expiry/refresh (#20129)
    • fix: Bump fast-xml-parser to fix vulnerability (#20644)
    • fix: Bump vite versions to fix vulnerability (#20646)
    • fix(core): Drain buffers in flush() when there is no transport (#20207)
    • fix(core): Guard against undefined chained in copyProps (#20637)
    • fix(deps): Bump rollup-plugin-license to fix lodash vulnerabilities (#20636)
    • fix(deps): Bump transitive deps for medium security fixes (#20683)
    • fix(hono): Do not capture 3xx and 4xx errors and add tests (#20640)
    • fix(nextjs): Skip build modification when SRI is enabled (#20694)
    • fix(opentelemetry): Respect OTEL_SERVICE_NAME, OTEL_RESOURCE_ATTRIBUTES (#20509)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Remove bundle-analyzer-scenarios dev packages (#20680)
    • chore(deps): Bump @hono/node-server from 1.19.10 to 1.19.13 (#20117)
    • chore(deps): Bump @nestjs packages to fix path-to-regexp ReDoS (#20642)
    • chore(deps): Bump axios from 1.15.0 to 1.15.2 (#20665)
    • chore(deps): Bump ip-address from 10.1.0 to 10.2.0 (#20695)
    • chore(deps): Bump simple-git from 3.33.0 to 3.36.0 (#20696)
    • chore(deps): Bump vulnerable testem version (#20634)
    • ci(deps): Bump actions/checkout from 4 to 6 (#20620)
    • ci(deps): Bump actions/create-github-app-token from 2 to 3 (#20079)
    • ci(deps): Bump denoland/setup-deno from 2.0.3 to 2.0.4 (#20080)
    • ci(deps): Bump getsentry/craft from 2.24.1 to 2.26.2 (#20621)
    • feat(deps): Bump @xmldom/xmldom from 0.8.12 to 0.8.13 (#20457)
    • feat(deps): Bump follow-redirects from 1.15.11 to 1.16.0 (#20267)
    • feat(deps): Bump hono from 4.12.12 to 4.12.14 (#20340)
    • fix(tests): Use stable instrumentations api in rr tests (#20690)
    • ref(tests): Rename streamed http.client span test folders (#20602)
    • test(browser): Fix browserTracingIntegration unit test (#20604)
    • test(browser): Fix flaky browser integration test for profiles (#20587)
    • test(browser): Fix flaky loader test (#20596)
    • test(browser): Fix flaky loader test (#20655)
    • test(browser): Make browser profiling test less flaky (#20664)
    • test(cloudflare): Add e2e test for MCPAgent with DurableObject instrumentation (#20601)
    • test(cloudflare): Add integration tests for scheduled, D1, and workflow (#20609)
    • test(cloudflare): Reduce flakiness for cloudflare with sub workers (#20632)
    • test(cloudflare): Use Node v24 for Cloudflare e2e tests (#20628)
    • test(deps): Bump Next.js in E2E test apps to fix Server Components DoS (#20633)
    • test(e2e): Add node-express-streaming E2E test app (#20684)
    • test(e2e): Add span streaming test app for Cloudflare Workers (#20681)
    • test(e2e): Add span streaming test app for next 16 (#20648)
    • test(e2e): Add span streaming test app for React Router 7 SPA (#20677)
    • test(e2e): Remove remaining npmrc pointing to Verdaccio (#20611)
    • test(nextjs): Fix flaky node runtime metrics E2E tests (#20624)
    • test(node): Fix ANR test for flakiness (#20656)
    • test(node): Fix flaky node cron test (#20661)
    • test(node): Unflake mongodb test (#20662)
    • test(react-router): Fix flaky E2E tests (#20630)
    • test(test-utils): Add MemoryProfiler for heap snapshot testing via CDP (#20555)

    </details>

    Work in this release was contributed by @sbs44. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.68 KB
    @sentry/browser - with treeshaking flags 24.2 KB
    @sentry/browser (incl. Tracing) 43.13 KB
    @sentry/browser (incl. Tracing + Span Streaming) 45.3 KB
    @sentry/browser (incl. Tracing, Profiling) 47.99 KB
    @sentry/browser (incl. Tracing, Replay) 81.67 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 71.37 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 86.25 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 98.57 KB
    @sentry/browser (incl. Feedback) 42.42 KB
    @sentry/browser (incl. sendFeedback) 30.38 KB
    @sentry/browser (incl. FeedbackAsync) 35.35 KB
    @sentry/browser (incl. Metrics) 26.95 KB
    @sentry/browser (incl. Logs) 27.08 KB
    @sentry/browser (incl. Metrics & Logs) 27.76 KB
    @sentry/react 27.38 KB
    @sentry/react (incl. Tracing) 45.31 KB
    @sentry/vue 30.45 KB
    @sentry/vue (incl. Tracing) 44.94 KB
    @sentry/svelte 25.7 KB
    CDN Bundle 28.23 KB
    CDN Bundle (incl. Tracing) 45.83 KB
    CDN Bundle (incl. Logs, Metrics) 29.62 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 46.91 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 67.84 KB
    CDN Bundle (incl. Tracing, Replay) 82.15 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 83.2 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 87.84 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 88.89 KB
    CDN Bundle - uncompressed 82.89 KB
    CDN Bundle (incl. Tracing) - uncompressed 137.15 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 86.99 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 140.53 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 208.3 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 252.48 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 255.85 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 265.86 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 269.22 KB
    @sentry/nextjs (client) 47.75 KB
    @sentry/sveltekit (client) 43.6 KB
    @sentry/node-core 59.05 KB
    @sentry/node 161.63 KB
    @sentry/node - without tracing 71.76 KB
    @sentry/aws-serverless 105.11 KB
    @sentry/cloudflare (withSentry) - minified 165.38 KB
    @sentry/cloudflare (withSentry) 417.48 KB
    Open source โ†’
    Release notes

    Important Changes

    • Beta release of the official Hono Sentry SDK

      This release marks the beta release of the @sentry/hono Sentry SDK. For details on how to use it, check out the Sentry Hono SDK docs. Please reach out on GitHub if you have any feedback or concerns.

    • feat(browser): Add ingest_settings to v2 log envelope payload (#20453)

      Inference of user data (e.g. IP address, browser name/version) on log events is now gated behind the sendDefaultPii option. Previously, this data was always inferred by default.

    Other Changes

    • docs(hono): Add new docs link and move to BETA release (#20666)
    • feat(browser): Add ingest_settings to v2 metrics envelope payload (#20454)
    • feat(browser): Migrate spotlight event processor to ignoreSpans (#20595)
    • feat(cloudflare): Capture request body via httpServerIntegration (#20614)
    • feat(cloudflare): Support rpc trace propagation for WorkerEntrypoint (#20523)
    • feat(cloudflare): Support tracing for queue producer (#20529)
    • feat(core): Apply request data to segment spans in span streaming (#20654)
    • feat(core): Migrate Vercel AI event processor to span streaming (#20608)
    • feat(deno): Add processSegmentSpan to Deno context integration (#20613)
    • feat(http): Portable node:http client instrumentation (#20393)
    • feat(nitro): Add unstorage tracing channel instrumentation (#20615)
    • feat(node-core): Add processSegmentSpan to node context integration (#20678)
    • feat(node): Use diagnostics_channel for redis >= 5.12.0 (#20573)
    • feat(node): Vendor ioredis, redis instrumentations (#20510)
    • feat(replay): Reset replay id from DSC on session expiry/refresh (#20129)
    • fix: Bump fast-xml-parser to fix vulnerability (#20644)
    • fix: Bump vite versions to fix vulnerability (#20646)
    • fix(core): Drain buffers in flush() when there is no transport (#20207)
    • fix(core): Guard against undefined chained in copyProps (#20637)
    • fix(deps): Bump rollup-plugin-license to fix lodash vulnerabilities (#20636)
    • fix(deps): Bump transitive deps for medium security fixes (#20683)
    • fix(hono): Do not capture 3xx and 4xx errors and add tests (#20640)
    • fix(nextjs): Skip build modification when SRI is enabled (#20694)
    • fix(opentelemetry): Respect OTEL_SERVICE_NAME, OTEL_RESOURCE_ATTRIBUTES (#20509)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Remove bundle-analyzer-scenarios dev packages (#20680)
    • chore(deps): Bump @hono/node-server from 1.19.10 to 1.19.13 (#20117)
    • chore(deps): Bump @nestjs packages to fix path-to-regexp ReDoS (#20642)
    • chore(deps): Bump axios from 1.15.0 to 1.15.2 (#20665)
    • chore(deps): Bump ip-address from 10.1.0 to 10.2.0 (#20695)
    • chore(deps): Bump simple-git from 3.33.0 to 3.36.0 (#20696)
    • chore(deps): Bump vulnerable testem version (#20634)
    • ci(deps): Bump actions/checkout from 4 to 6 (#20620)
    • ci(deps): Bump actions/create-github-app-token from 2 to 3 (#20079)
    • ci(deps): Bump denoland/setup-deno from 2.0.3 to 2.0.4 (#20080)
    • ci(deps): Bump getsentry/craft from 2.24.1 to 2.26.2 (#20621)
    • feat(deps): Bump @xmldom/xmldom from 0.8.12 to 0.8.13 (#20457)
    • feat(deps): Bump follow-redirects from 1.15.11 to 1.16.0 (#20267)
    • feat(deps): Bump hono from 4.12.12 to 4.12.14 (#20340)
    • fix(tests): Use stable instrumentations api in rr tests (#20690)
    • ref(tests): Rename streamed http.client span test folders (#20602)
    • test(browser): Fix browserTracingIntegration unit test (#20604)
    • test(browser): Fix flaky browser integration test for profiles (#20587)
    • test(browser): Fix flaky loader test (#20596)
    • test(browser): Fix flaky loader test (#20655)
    • test(browser): Make browser profiling test less flaky (#20664)
    • test(cloudflare): Add e2e test for MCPAgent with DurableObject instrumentation (#20601)
    • test(cloudflare): Add integration tests for scheduled, D1, and workflow (#20609)
    • test(cloudflare): Reduce flakiness for cloudflare with sub workers (#20632)
    • test(cloudflare): Use Node v24 for Cloudflare e2e tests (#20628)
    • test(deps): Bump Next.js in E2E test apps to fix Server Components DoS (#20633)
    • test(e2e): Add node-express-streaming E2E test app (#20684)
    • test(e2e): Add span streaming test app for Cloudflare Workers (#20681)
    • test(e2e): Add span streaming test app for next 16 (#20648)
    • test(e2e): Add span streaming test app for React Router 7 SPA (#20677)
    • test(e2e): Remove remaining npmrc pointing to Verdaccio (#20611)
    • test(nextjs): Fix flaky node runtime metrics E2E tests (#20624)
    • test(node): Fix ANR test for flakiness (#20656)
    • test(node): Fix flaky node cron test (#20661)
    • test(node): Unflake mongodb test (#20662)
    • test(react-router): Fix flaky E2E tests (#20630)
    • test(test-utils): Add MemoryProfiler for heap snapshot testing via CDP (#20555)

    </details>

    Work in this release was contributed by @sbs44. Thank you for your contribution!

    Open source โ†’
  24. 10.51.029 Apr 2026
    Release notes

    Important Changes

    • feat(cloudflare): Add trace propagation for RPC method calls (#20343)

      Trace context is now propagated across Cloudflare Workers RPC calls, connecting traces between Workers and Durable Objects. This feature is opt-in and requires setting enableRpcTracePropagation: true in your SDK configuration:

      // Worker
      export default Sentry.withSentry(
        env => ({
          dsn: env.SENTRY_DSN,
          enableRpcTracePropagation: true,
        }),
        handler,
      );
      
      // Durable Object
      export const MyDurableObject = Sentry.instrumentDurableObjectWithSentry(
        env => ({
          dsn: env.SENTRY_DSN,
          enableRpcTracePropagation: true,
        }),
        MyDurableObjectBase,
      );
      
    • feat(hono)!: Change setup for @sentry/hono/node (init in external file) (#20497)

      To improve Node.js instrumentation, the sentry() middleware exported from @sentry/hono/node no longer accepts configuration options. Instead, you must configure the SDK by calling Sentry.init() in a dedicated instrumentation file that runs before your application code (read more in the Hono SDK readme:

      // instrument.mjs (or instrument.ts)
      import * as Sentry from '@sentry/hono/node';
      
      Sentry.init({
        dsn: '__DSN__',
        tracesSampleRate: 1.0,
      });
      
    • feat(nitro): Add @sentry/nitro SDK (#19224)

      A new @sentry/nitro package provides first-class Sentry support for Nitro applications, with HTTP handler and error instrumentation, middleware tracing, request isolation, and build-time source map uploading via withSentryConfig. Read more in the Nitro SDK docs and the Nitro SDK readme.

    Other Changes

    • deps(minimatch): Upgrade patch version to use new brace-expansion peer-dep (#20198)
    • docs: Add deprecation notices to bin scripts (#20570)
    • feat(astro): Drop prerendered http.server filter via ignoreSpans (#20513)
    • feat(aws-serverless): Validate extension tunnel DSN against SENTRY_DSN (#20528)
    • feat(browser): Add ingest_settings to span v2 envelope payload (#20411)
    • feat(browser): Add support for streamed spans in httpContextIntegration (#20464)
    • feat(core): Backfill otel attributes on streamed spans (#20439)
    • feat(core): clear up integrations on dispose (#20407)
    • feat(core): Instrument langgraph createReactAgent (#20344)
    • feat(core): Support attribute matching in ignoreSpans (#20512)
    • feat(feedback): allow error messages to be customized (#20474)
    • feat(hono): Support middleware spans defined in app groups (#20465)
    • feat(nextjs): Filter unwanted segments when span streaming is enabled (#20384)
    • feat(nextjs): Migrate edge event processors to span-first APIs (#20551)
    • feat(nextjs): Migrate server event processors to span-first APIs (#20527)
    • feat(nextjs): Set global attribute for turbopack usage (#20558)
    • feat(nitro): Nitro SDK (#19224)
    • feat(react-router): Clean up bogus * http.route attribute on segment spans (#20471)
    • feat(react-router): Drop low-quality transactions via ignoreSpans (#20514)
    • feat(sveltekit): Support span streaming in svelteKitSpansEnhancement integration (#20496)
    • feat(tanstackstart-react): Add dynamic tunnel route helper and generator (#20264)
    • fix: update prisma v7 spans descriptions (#20456)
    • fix(core): Avoid parse-time SyntaxError on Safari <16.4 in postgresjs (#20498)
    • fix(core): Ensure isSentryRequest handles subdomains properly (#20530)
    • fix(core): Ensure ip address headers are stripped when lower case (#20484)
    • fix(core): Filter more cookie names for PII (#20485)
    • fix(core): Use symbol for normalization checks (#20486)
    • fix(hono): Distinguish .use() middleware in sub-apps from .all() handlers (#20554)
    • fix(nextjs): Ensure we do not match tunnel endpoints too broadly (#20488)
    • fix(opentelemetry): Add conditional browser export to avoid node deps (#20556)
    • fix(replay): Avoid main-thread blocking in WorkerHandler under event bursts (#20548)
    • fix(replay): Ensure maskAttributes works with maskAllText=false (#20491)
    • fix(supabase): Consider sendDefaultPii for supabase integration (#20490)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add size limit reports on PRs for Cloudflare (#20055)
    • chore: Update CODEOWNERS (#20559)
    • chore(build): Opt-out of nx analytics (#20487)
    • chore(ci): Automatically bump size limit every week (#20531)
    • chore(ci): Bump pnpm/action-setup to v5 and pin to commit SHA (#20462)
    • chore(ci): Do not report flaky test issues if we cannot find a test name (#20589)
    • chore(ci): Streamline CI setup to split bundle, layer, tarball generation (#20396)
    • chore(ci): Vendor nx-affected-list action, drop dkhunt27 dependency (#20463)
    • chore(e2e): Add vue and vue-router to nuxt-4 canary build step to fix rollup resolution (#20519)
    • chore(e2e): Remove @tanstack/start-plugin-core override (#20518)
    • chore(size-limit): weekly auto-bump (#20572)
    • chore(skill): Add skill for writing unit and E2E tests (#20561)
    • chore(test): Reduce unneeded idleTimeout test config (#20467)
    • ci(size-bump): Fix path in size-limit auto-bump workflow (#20566)
    • fix(e2e/tanstackstart-react): pin @tanstack/start-plugin-core to unblock CI (#20482)
    • fix(tests): Remove nitro canary test job (#20473)
    • ref(browser): Use safeSetSpanJSONAttributes in cultureContext integration (#20481)
    • test(browser): Unflake some more tests (#20591)
    • test(nextjs): Pin eslint-config-next package to major (#20552)
    • test(node): Fix flaky ANR test (#20592)
    • test(node): Fix flaky worker thread integration test (#20588)
    • test(node): Unflake postgres tests (#20593)
    • test(node): Update timeout for cron integration tests (#20586)
    • test(supabase): Stop supabase before initializing (#20563)
    • test(tanstack): Prefix test labels (#20569)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.54 KB
    @sentry/browser - with treeshaking flags 24.06 KB
    @sentry/browser (incl. Tracing) 43.08 KB
    @sentry/browser (incl. Tracing + Span Streaming) 45.07 KB
    @sentry/browser (incl. Tracing, Profiling) 47.91 KB
    @sentry/browser (incl. Tracing, Replay) 81.5 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 71.23 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 86.07 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 98.42 KB
    @sentry/browser (incl. Feedback) 42.38 KB
    @sentry/browser (incl. sendFeedback) 30.24 KB
    @sentry/browser (incl. FeedbackAsync) 35.3 KB
    @sentry/browser (incl. Metrics) 26.8 KB
    @sentry/browser (incl. Logs) 26.95 KB
    @sentry/browser (incl. Metrics & Logs) 27.62 KB
    @sentry/react 27.25 KB
    @sentry/react (incl. Tracing) 45.26 KB
    @sentry/vue 30.3 KB
    @sentry/vue (incl. Tracing) 44.87 KB
    @sentry/svelte 25.57 KB
    CDN Bundle 28.16 KB
    CDN Bundle (incl. Tracing) 45.61 KB
    CDN Bundle (incl. Logs, Metrics) 29.54 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 46.68 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 67.71 KB
    CDN Bundle (incl. Tracing, Replay) 81.91 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 82.95 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 87.59 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 88.66 KB
    CDN Bundle - uncompressed 82.57 KB
    CDN Bundle (incl. Tracing) - uncompressed 136.41 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 86.67 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 139.79 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 207.73 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 251.45 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 254.82 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 264.83 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 268.18 KB
    @sentry/nextjs (client) 47.7 KB
    @sentry/sveltekit (client) 43.52 KB
    @sentry/node-core 57.57 KB
    @sentry/node 166.25 KB
    @sentry/node - without tracing 94.54 KB
    @sentry/aws-serverless 111 KB
    @sentry/cloudflare (withSentry) - minified 160.29 KB
    @sentry/cloudflare (withSentry) 405.47 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(cloudflare): Add trace propagation for RPC method calls (#20343)

      Trace context is now propagated across Cloudflare Workers RPC calls, connecting traces between Workers and Durable Objects. This feature is opt-in and requires setting enableRpcTracePropagation: true in your SDK configuration:

      // Worker
      export default Sentry.withSentry(
        env => ({
          dsn: env.SENTRY_DSN,
          enableRpcTracePropagation: true,
        }),
        handler,
      );
      
      // Durable Object
      export const MyDurableObject = Sentry.instrumentDurableObjectWithSentry(
        env => ({
          dsn: env.SENTRY_DSN,
          enableRpcTracePropagation: true,
        }),
        MyDurableObjectBase,
      );
      
    • feat(hono)!: Change setup for @sentry/hono/node (init in external file) (#20497)

      To improve Node.js instrumentation, the sentry() middleware exported from @sentry/hono/node no longer accepts configuration options. Instead, you must configure the SDK by calling Sentry.init() in a dedicated instrumentation file that runs before your application code (read more in the Hono SDK readme:

      // instrument.mjs (or instrument.ts)
      import * as Sentry from '@sentry/hono/node';
      
      Sentry.init({
        dsn: '__DSN__',
        tracesSampleRate: 1.0,
      });
      
    • feat(nitro): Add @sentry/nitro SDK (#19224)

      A new @sentry/nitro package provides first-class Sentry support for Nitro applications, with HTTP handler and error instrumentation, middleware tracing, request isolation, and build-time source map uploading via withSentryConfig. Read more in the Nitro SDK docs and the Nitro SDK readme.

    Other Changes

    • deps(minimatch): Upgrade patch version to use new brace-expansion peer-dep (#20198)
    • docs: Add deprecation notices to bin scripts (#20570)
    • feat(astro): Drop prerendered http.server filter via ignoreSpans (#20513)
    • feat(aws-serverless): Validate extension tunnel DSN against SENTRY_DSN (#20528)
    • feat(browser): Add ingest_settings to span v2 envelope payload (#20411)
    • feat(browser): Add support for streamed spans in httpContextIntegration (#20464)
    • feat(core): Backfill otel attributes on streamed spans (#20439)
    • feat(core): clear up integrations on dispose (#20407)
    • feat(core): Instrument langgraph createReactAgent (#20344)
    • feat(core): Support attribute matching in ignoreSpans (#20512)
    • feat(feedback): allow error messages to be customized (#20474)
    • feat(hono): Support middleware spans defined in app groups (#20465)
    • feat(nextjs): Filter unwanted segments when span streaming is enabled (#20384)
    • feat(nextjs): Migrate edge event processors to span-first APIs (#20551)
    • feat(nextjs): Migrate server event processors to span-first APIs (#20527)
    • feat(nextjs): Set global attribute for turbopack usage (#20558)
    • feat(nitro): Nitro SDK (#19224)
    • feat(react-router): Clean up bogus * http.route attribute on segment spans (#20471)
    • feat(react-router): Drop low-quality transactions via ignoreSpans (#20514)
    • feat(sveltekit): Support span streaming in svelteKitSpansEnhancement integration (#20496)
    • feat(tanstackstart-react): Add dynamic tunnel route helper and generator (#20264)
    • fix: update prisma v7 spans descriptions (#20456)
    • fix(core): Avoid parse-time SyntaxError on Safari <16.4 in postgresjs (#20498)
    • fix(core): Ensure isSentryRequest handles subdomains properly (#20530)
    • fix(core): Ensure ip address headers are stripped when lower case (#20484)
    • fix(core): Filter more cookie names for PII (#20485)
    • fix(core): Use symbol for normalization checks (#20486)
    • fix(hono): Distinguish .use() middleware in sub-apps from .all() handlers (#20554)
    • fix(nextjs): Ensure we do not match tunnel endpoints too broadly (#20488)
    • fix(opentelemetry): Add conditional browser export to avoid node deps (#20556)
    • fix(replay): Avoid main-thread blocking in WorkerHandler under event bursts (#20548)
    • fix(replay): Ensure maskAttributes works with maskAllText=false (#20491)
    • fix(supabase): Consider sendDefaultPii for supabase integration (#20490)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add size limit reports on PRs for Cloudflare (#20055)
    • chore: Update CODEOWNERS (#20559)
    • chore(build): Opt-out of nx analytics (#20487)
    • chore(ci): Automatically bump size limit every week (#20531)
    • chore(ci): Bump pnpm/action-setup to v5 and pin to commit SHA (#20462)
    • chore(ci): Do not report flaky test issues if we cannot find a test name (#20589)
    • chore(ci): Streamline CI setup to split bundle, layer, tarball generation (#20396)
    • chore(ci): Vendor nx-affected-list action, drop dkhunt27 dependency (#20463)
    • chore(e2e): Add vue and vue-router to nuxt-4 canary build step to fix rollup resolution (#20519)
    • chore(e2e): Remove @tanstack/start-plugin-core override (#20518)
    • chore(size-limit): weekly auto-bump (#20572)
    • chore(skill): Add skill for writing unit and E2E tests (#20561)
    • chore(test): Reduce unneeded idleTimeout test config (#20467)
    • ci(size-bump): Fix path in size-limit auto-bump workflow (#20566)
    • fix(e2e/tanstackstart-react): pin @tanstack/start-plugin-core to unblock CI (#20482)
    • fix(tests): Remove nitro canary test job (#20473)
    • ref(browser): Use safeSetSpanJSONAttributes in cultureContext integration (#20481)
    • test(browser): Unflake some more tests (#20591)
    • test(nextjs): Pin eslint-config-next package to major (#20552)
    • test(node): Fix flaky ANR test (#20592)
    • test(node): Fix flaky worker thread integration test (#20588)
    • test(node): Unflake postgres tests (#20593)
    • test(node): Update timeout for cron integration tests (#20586)
    • test(supabase): Stop supabase before initializing (#20563)
    • test(tanstack): Prefix test labels (#20569)

    </details>

    Open source โ†’
  25. 10.50.023 Apr 2026
    Release notes

    Important Changes

    • feat(effect): Support v4 beta (#20394)

      The @sentry/effect integration now supports Effect v4 beta, enabling Sentry instrumentation for the latest Effect framework version. Read more in the Effect SDK readme.

    • feat(hono): Add @sentry/hono/bun for Bun runtime (#20355)

      A new @sentry/hono/bun entry point adds first-class support for running Hono applications instrumented with Sentry on the Bun runtime. Read more in the Hono SDK readme.

    • feat(replay): Add replayStart/replayEnd client lifecycle hooks (#20369)

      New replayStart and replayEnd client lifecycle hooks let you react to replay session start and end events in your application.

    Other Changes

    • feat(core): Emit no_parent_span client outcomes for discarded spans requiring a parent (#20350)
    • feat(deps): Bump protobufjs from 7.5.4 to 7.5.5 (#20372)
    • feat(hono): Add runtime packages as optional peer dependencies (#20423)
    • feat(opentelemetry): Add tracingChannel utility for context propagation (#20358)
    • fix(browser): Enrich graphqlClient spans for relative URLs (#20370)
    • fix(browser): Filter implausible LCP values (#20338)
    • fix(cloudflare): Use TransformStream to keep track of streams (#20452)
    • fix(console): Re-patch console in AWS Lambda runtimes (#20337)
    • fix(core): Correct GoogleGenAIIstrumentedMethod typo in type name
    • fix(core): Handle stateless MCP wrapper transport correlation (#20293)
    • fix(hono): Remove undefined from options type (#20419)
    • fix(node): Guard against null httpVersion in outgoing request span attributes (#20430)
    • fix(node-core): Pass rejection reason instead of Promise as originalException (#20366)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Ignore claude worktrees (#20440)
    • chore: Prevent test from creating zombie process (#20392)
    • chore: Update size-limit (#20412)
    • chore(dev-deps): Bump nx from 22.5.0 to 22.6.5 (#20458)
    • chore(e2e-tests): Use tarball symlinks for E2E tests instead of verdaccio (#20386)
    • chore(lint): Remove lint warnings (#20413)
    • chore(test): Remove empty variant tests (#20443)
    • chore(tests): Use verdaccio as node process instead of docker image (#20336)
    • docs(readme): Update usage instructions for binary scripts (#20426)
    • ref(node): Vendor undici instrumentation (#20190)
    • test(aws-serverless): Ensure aws-serverless E2E tests run locally (#20441)
    • test(aws-serverless): Split npm & layer tests (#20442)
    • test(browser): Fix flaky sessions route-lifecycle test + upgrade axios (#20197)
    • test(cloudflare): Use .makeRequestAndWaitForEnvelope to wait for envelopes (#20208)
    • test(effect): Rename effect e2e tests to a versioned folder (#20390)
    • test(hono): Add E2E test for Hono on Cloudflare, Node and Bun (#20406)
    • test(hono): Add E2E tests for middleware spans (#20451)
    • test(nextjs): Unskip blocked cf tests (#20356)
    • test(node): Refactor integration tests for honoIntegration (#20397)
    • test(node): Use docker-compose healthchecks for service readiness (#20429)
    • test(node-core): Fix minute-boundary race in session-aggregate tests (#20437)
    • test(nuxt): Fix flaky database error test (#20447)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.27 KB
    @sentry/browser - with treeshaking flags 23.78 KB
    @sentry/browser (incl. Tracing) 42.78 KB
    @sentry/browser (incl. Tracing + Span Streaming) 44.44 KB
    @sentry/browser (incl. Tracing, Profiling) 47.59 KB
    @sentry/browser (incl. Tracing, Replay) 81.04 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 70.8 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 85.62 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 97.58 KB
    @sentry/browser (incl. Feedback) 41.7 KB
    @sentry/browser (incl. sendFeedback) 29.83 KB
    @sentry/browser (incl. FeedbackAsync) 34.72 KB
    @sentry/browser (incl. Metrics) 26.53 KB
    @sentry/browser (incl. Logs) 26.65 KB
    @sentry/browser (incl. Metrics & Logs) 27.33 KB
    @sentry/react 26.97 KB
    @sentry/react (incl. Tracing) 44.97 KB
    @sentry/vue 29.99 KB
    @sentry/vue (incl. Tracing) 44.55 KB
    @sentry/svelte 25.29 KB
    CDN Bundle 27.9 KB
    CDN Bundle (incl. Tracing) 45 KB
    CDN Bundle (incl. Logs, Metrics) 29.25 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 46.01 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 67.31 KB
    CDN Bundle (incl. Tracing, Replay) 81.19 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 82.19 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 86.53 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 87.59 KB
    CDN Bundle - uncompressed 81.63 KB
    CDN Bundle (incl. Tracing) - uncompressed 134.39 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 85.67 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 137.72 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 206.35 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 249.08 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 252.4 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 261.69 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 265 KB
    @sentry/nextjs (client) 47.44 KB
    @sentry/sveltekit (client) 43.18 KB
    @sentry/node-core 56.98 KB
    @sentry/node 171.53 KB
    @sentry/node - without tracing 95.99 KB
    @sentry/aws-serverless 112.62 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(effect): Support v4 beta (#20394)

      The @sentry/effect integration now supports Effect v4 beta, enabling Sentry instrumentation for the latest Effect framework version. Read more in the Effect SDK readme.

    • feat(hono): Add @sentry/hono/bun for Bun runtime (#20355)

      A new @sentry/hono/bun entry point adds first-class support for running Hono applications instrumented with Sentry on the Bun runtime. Read more in the Hono SDK readme.

    • feat(replay): Add replayStart/replayEnd client lifecycle hooks (#20369)

      New replayStart and replayEnd client lifecycle hooks let you react to replay session start and end events in your application.

    Other Changes

    • feat(core): Emit no_parent_span client outcomes for discarded spans requiring a parent (#20350)
    • feat(deps): Bump protobufjs from 7.5.4 to 7.5.5 (#20372)
    • feat(hono): Add runtime packages as optional peer dependencies (#20423)
    • feat(opentelemetry): Add tracingChannel utility for context propagation (#20358)
    • fix(browser): Enrich graphqlClient spans for relative URLs (#20370)
    • fix(browser): Filter implausible LCP values (#20338)
    • fix(cloudflare): Use TransformStream to keep track of streams (#20452)
    • fix(console): Re-patch console in AWS Lambda runtimes (#20337)
    • fix(core): Correct GoogleGenAIIstrumentedMethod typo in type name
    • fix(core): Handle stateless MCP wrapper transport correlation (#20293)
    • fix(hono): Remove undefined from options type (#20419)
    • fix(node): Guard against null httpVersion in outgoing request span attributes (#20430)
    • fix(node-core): Pass rejection reason instead of Promise as originalException (#20366)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Ignore claude worktrees (#20440)
    • chore: Prevent test from creating zombie process (#20392)
    • chore: Update size-limit (#20412)
    • chore(dev-deps): Bump nx from 22.5.0 to 22.6.5 (#20458)
    • chore(e2e-tests): Use tarball symlinks for E2E tests instead of verdaccio (#20386)
    • chore(lint): Remove lint warnings (#20413)
    • chore(test): Remove empty variant tests (#20443)
    • chore(tests): Use verdaccio as node process instead of docker image (#20336)
    • docs(readme): Update usage instructions for binary scripts (#20426)
    • ref(node): Vendor undici instrumentation (#20190)
    • test(aws-serverless): Ensure aws-serverless E2E tests run locally (#20441)
    • test(aws-serverless): Split npm & layer tests (#20442)
    • test(browser): Fix flaky sessions route-lifecycle test + upgrade axios (#20197)
    • test(cloudflare): Use .makeRequestAndWaitForEnvelope to wait for envelopes (#20208)
    • test(effect): Rename effect e2e tests to a versioned folder (#20390)
    • test(hono): Add E2E test for Hono on Cloudflare, Node and Bun (#20406)
    • test(hono): Add E2E tests for middleware spans (#20451)
    • test(nextjs): Unskip blocked cf tests (#20356)
    • test(node): Refactor integration tests for honoIntegration (#20397)
    • test(node): Use docker-compose healthchecks for service readiness (#20429)
    • test(node-core): Fix minute-boundary race in session-aggregate tests (#20437)
    • test(nuxt): Fix flaky database error test (#20447)

    </details>

    Open source โ†’
  26. 10.50.0-alpha.021 Apr 2026pre-release
    Release notes

    This is an internal alpha release to test sending gen_ai.* spans as span v2 envelope items alongside legacy transactions: #20342

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.73 KB
    @sentry/browser - with treeshaking flags 24.22 KB
    @sentry/browser (incl. Tracing) 43.23 KB
    @sentry/browser (incl. Tracing + Span Streaming) 44.68 KB
    @sentry/browser (incl. Tracing, Profiling) 48.09 KB
    @sentry/browser (incl. Tracing, Replay) 81.5 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 71.26 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 86.08 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 98.08 KB
    @sentry/browser (incl. Feedback) 42.14 KB
    @sentry/browser (incl. sendFeedback) 30.29 KB
    @sentry/browser (incl. FeedbackAsync) 35.17 KB
    @sentry/browser (incl. Metrics) 26.78 KB
    @sentry/browser (incl. Logs) 26.91 KB
    @sentry/browser (incl. Metrics & Logs) 27.57 KB
    @sentry/react 27.44 KB
    @sentry/react (incl. Tracing) 45.45 KB
    @sentry/vue 30.48 KB
    @sentry/vue (incl. Tracing) 45.01 KB
    @sentry/svelte 25.75 KB
    CDN Bundle 28.14 KB
    CDN Bundle (incl. Tracing) 44.11 KB
    CDN Bundle (incl. Logs, Metrics) 29.48 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 45.17 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 67.51 KB
    CDN Bundle (incl. Tracing, Replay) 80.25 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 81.33 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 85.64 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 86.7 KB
    CDN Bundle - uncompressed 82.29 KB
    CDN Bundle (incl. Tracing) - uncompressed 132 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 86.34 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 135.33 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 207.02 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 246.69 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 250.01 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 259.3 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 262.61 KB
    @sentry/nextjs (client) 47.89 KB
    @sentry/sveltekit (client) 43.63 KB
    @sentry/node-core 56.91 KB
    @sentry/node 171.1 KB
    @sentry/node - without tracing 95.98 KB
    @sentry/aws-serverless 112.84 KB
    Open source โ†’
  27. 10.49.016 Apr 2026
    Release notes

    Important Changes

    • feat(browser): Add View Hierarchy integration (#14981)

      A new viewHierarchyIntegration captures the DOM structure when an error occurs, providing a snapshot of the page state for debugging. Enable it in your Sentry configuration:

      import * as Sentry from '@sentry/browser';
      
      Sentry.init({
        dsn: '__DSN__',
        integrations: [Sentry.viewHierarchyIntegration()],
      });
      
    • feat(cloudflare): Split alarms into multiple traces and link them (#19373)

      Durable Object alarms now create separate traces for each alarm invocation, with proper linking between related alarms for better observability.

    • feat(cloudflare): Enable RPC trace propagation with enableRpcTracePropagation (#19991, #20345)

      A new enableRpcTracePropagation option enables automatic trace propagation for Cloudflare RPC calls via .fetch(), ensuring distributed traces flow correctly across service bindings.

    • feat(core): Add enableTruncation option to AI integrations (#20167, #20181, #20182, #20183, #20184)

      All AI integrations (OpenAI, Anthropic, Google GenAI, LangChain, LangGraph) now support an enableTruncation option to control whether large AI inputs/outputs are truncated.

    • feat(opentelemetry): Vendor AsyncLocalStorageContextManager (#20243)

      The OpenTelemetry context manager is now vendored internally, reducing external dependencies and ensuring consistent behavior across environments.

    Other Changes

    • feat(core): Export a reusable function to add tracing headers (#20076)
    • feat(core): Expose rewriteSources top level option (#20142)
    • feat(deps): bump defu from 6.1.4 to 6.1.6 (#20104)
    • feat(node-native): Add support for V8 v14 (Node v25+) (#20125)
    • feat(node): Include global scope for eventLoopBlockIntegration (#20108)
    • fix(core, node): Support loading Express options lazily (#20211)
    • fix(core): Set conversation_id only on gen_ai spans (#20274)
    • fix(core): Use ai.operationId for Vercel AI V6 operation name mapping (#20285)
    • fix(deno): Avoid inferring invalid span op from Deno tracer (#20128)
    • fix(deno): Handle reader.closed rejection from releaseLock() in streaming (#20187)
    • fix(nextjs): Preserve directive prologues in turbopack loaders (#20103)
    • fix(nextjs): Skip custom browser tracing setup for bot user agents (#20263)
    • fix(opentelemetry): Use WeakRef for context stored on scope to prevent memory leak (#20328)
    • fix(replay): Use live click attributes in breadcrumbs (#20262)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add PR review reminder workflow (#20175)
    • chore: Fix lint warnings (#20250)
    • chore(bugbot): Add rules to flag test-flake-provoking patterns (#20192)
    • chore(ci): Bump actions/cache to v5 and actions/download-artifact to v7 (#20249)
    • chore(ci): Bump dorny/paths-filter from v3.0.1 to v4.0.1 (#20251)
    • chore(ci): Remove codecov steps from jobs that produce no coverage/JUnit data (#20244)
    • chore(ci): Remove craft changelog preview (#20271)
    • chore(ci): Remove node-overhead GitHub Action (#20246)
    • chore(ci): Replace pr-labels-action with native GitHub expressions (#20252)
    • chore(ci): Skip flaky issue creation for optional tests (#20288)
    • chore(deps-dev): Bump @sveltejs/kit from 2.53.3 to 2.57.1 (#20216)
    • chore(deps-dev): Bump vite from 7.2.0 to 7.3.2 in /dev-packages/e2e-tests/test-applications/tanstackstart-react (#20107)
    • chore(deps): Bump axios from 1.13.5 to 1.15.0 (#20180)
    • chore(deps): Bump axios from 1.13.5 to 1.15.0 in /dev-packages/e2e-tests/test-applications/nestjs-basic (#20179)
    • chore(deps): Bump hono from 4.12.7 to 4.12.12 (#20118)
    • chore(deps): Bump hono from 4.12.7 to 4.12.12 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#20119)
    • chore(deps): Bump next from 16.1.7 to 16.2.3 in nextjs-16-cf-workers (#20289)
    • chore(size-limit): Bump failing size limit scenario (#20186)
    • ci: Add automatic flaky test detector (#18684)
    • ci: Extract test names for flaky test issues (#20298)
    • ci: Remove Docker container for Verdaccio package publishing (#20329)
    • fix(ci): Prevent command injection in ci-metadata workflow (#19899)
    • fix(e2e-tests): Remove flaky navigation breadcrumb assertions from parameterized-routes tests (#20202)
    • fix(e2e): Add op check to waitForTransaction in React Router e2e tests (#20193)
    • fix(node-integration-tests): Fix flaky kafkajs test race condition (#20189)
    • ref(core): Add registry in Vercel ai integration (#20098)
    • ref(core): Automatically disable truncation when span streaming is enabled in Anthropic AI integration (#20228)
    • ref(core): Automatically disable truncation when span streaming is enabled in Google GenAI integration (#20229)
    • ref(core): Automatically disable truncation when span streaming is enabled in LangChain integration (#20230)
    • ref(core): Automatically disable truncation when span streaming is enabled in LangGraph integration (#20231)
    • ref(core): Automatically disable truncation when span streaming is enabled in OpenAI integration (#20227)
    • ref(core): Automatically disable truncation when span streaming is enabled in Vercel AI integration (#20232)
    • ref(core): Merge embeddings operations constants (#20095)
    • ref(core): Remove unused constants from vercel-ai-attributes.ts (#20096)
    • ref(nextjs): Refactor findInjectionIndexAfterDirectives for better readability (#20310)
    • ref(opentelemetry): Replace @opentelemetry/resources with inline getSentryResource() (#20327)
    • test: Fix flaky ANR test by increasing blocking duration (#20239)
    • test(bun): Add bun integration test folder (#20286)
    • test(cloudflare): Skip flaky durableobject-spans test (#20282)
    • test(openai): Use multi-message scenario in no-truncation test (#20194)
    • test(react): Remove duplicated test mock (#20200)
    • tests(ai): Fix streaming+truncation integration tests across AI integrations (#20326)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.18 KB
    @sentry/browser - with treeshaking flags 23.71 KB
    @sentry/browser (incl. Tracing) 42.59 KB
    @sentry/browser (incl. Tracing + Span Streaming) 44.26 KB
    @sentry/browser (incl. Tracing, Profiling) 47.37 KB
    @sentry/browser (incl. Tracing, Replay) 80.8 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 70.55 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 85.38 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 97.34 KB
    @sentry/browser (incl. Feedback) 41.59 KB
    @sentry/browser (incl. sendFeedback) 29.74 KB
    @sentry/browser (incl. FeedbackAsync) 34.62 KB
    @sentry/browser (incl. Metrics) 26.44 KB
    @sentry/browser (incl. Logs) 26.57 KB
    @sentry/browser (incl. Metrics & Logs) 27.24 KB
    @sentry/react 26.89 KB
    @sentry/react (incl. Tracing) 44.81 KB
    @sentry/vue 29.89 KB
    @sentry/vue (incl. Tracing) 44.38 KB
    @sentry/svelte 25.2 KB
    CDN Bundle 27.79 KB
    CDN Bundle (incl. Tracing) 43.64 KB
    CDN Bundle (incl. Logs, Metrics) 29.13 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 44.7 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 67.12 KB
    CDN Bundle (incl. Tracing, Replay) 79.74 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 80.79 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 85.13 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 86.17 KB
    CDN Bundle - uncompressed 81.17 KB
    CDN Bundle (incl. Tracing) - uncompressed 130.51 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 85.22 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 133.84 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 205.7 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 244.99 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 248.31 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 257.6 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 260.91 KB
    @sentry/nextjs (client) 47.28 KB
    @sentry/sveltekit (client) 43.02 KB
    @sentry/node-core 56.58 KB
    @sentry/node 170.68 KB
    @sentry/node - without tracing 95.57 KB
    @sentry/aws-serverless 112.42 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(browser): Add View Hierarchy integration (#14981)

      A new viewHierarchyIntegration captures the DOM structure when an error occurs, providing a snapshot of the page state for debugging. Enable it in your Sentry configuration:

      import * as Sentry from '@sentry/browser';
      
      Sentry.init({
        dsn: '__DSN__',
        integrations: [Sentry.viewHierarchyIntegration()],
      });
      
    • feat(cloudflare): Split alarms into multiple traces and link them (#19373)

      Durable Object alarms now create separate traces for each alarm invocation, with proper linking between related alarms for better observability.

    • feat(cloudflare): Enable RPC trace propagation with enableRpcTracePropagation (#19991, #20345)

      A new enableRpcTracePropagation option enables automatic trace propagation for Cloudflare RPC calls via .fetch(), ensuring distributed traces flow correctly across service bindings.

    • feat(core): Add enableTruncation option to AI integrations (#20167, #20181, #20182, #20183, #20184)

      All AI integrations (OpenAI, Anthropic, Google GenAI, LangChain, LangGraph) now support an enableTruncation option to control whether large AI inputs/outputs are truncated.

    • feat(opentelemetry): Vendor AsyncLocalStorageContextManager (#20243)

      The OpenTelemetry context manager is now vendored internally, reducing external dependencies and ensuring consistent behavior across environments.

    Other Changes

    • feat(core): Export a reusable function to add tracing headers (#20076)
    • feat(core): Expose rewriteSources top level option (#20142)
    • feat(deps): bump defu from 6.1.4 to 6.1.6 (#20104)
    • feat(node-native): Add support for V8 v14 (Node v25+) (#20125)
    • feat(node): Include global scope for eventLoopBlockIntegration (#20108)
    • fix(core, node): Support loading Express options lazily (#20211)
    • fix(core): Set conversation_id only on gen_ai spans (#20274)
    • fix(core): Use ai.operationId for Vercel AI V6 operation name mapping (#20285)
    • fix(deno): Avoid inferring invalid span op from Deno tracer (#20128)
    • fix(deno): Handle reader.closed rejection from releaseLock() in streaming (#20187)
    • fix(nextjs): Preserve directive prologues in turbopack loaders (#20103)
    • fix(nextjs): Skip custom browser tracing setup for bot user agents (#20263)
    • fix(opentelemetry): Use WeakRef for context stored on scope to prevent memory leak (#20328)
    • fix(replay): Use live click attributes in breadcrumbs (#20262)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add PR review reminder workflow (#20175)
    • chore: Fix lint warnings (#20250)
    • chore(bugbot): Add rules to flag test-flake-provoking patterns (#20192)
    • chore(ci): Bump actions/cache to v5 and actions/download-artifact to v7 (#20249)
    • chore(ci): Bump dorny/paths-filter from v3.0.1 to v4.0.1 (#20251)
    • chore(ci): Remove codecov steps from jobs that produce no coverage/JUnit data (#20244)
    • chore(ci): Remove craft changelog preview (#20271)
    • chore(ci): Remove node-overhead GitHub Action (#20246)
    • chore(ci): Replace pr-labels-action with native GitHub expressions (#20252)
    • chore(ci): Skip flaky issue creation for optional tests (#20288)
    • chore(deps-dev): Bump @sveltejs/kit from 2.53.3 to 2.57.1 (#20216)
    • chore(deps-dev): Bump vite from 7.2.0 to 7.3.2 in /dev-packages/e2e-tests/test-applications/tanstackstart-react (#20107)
    • chore(deps): Bump axios from 1.13.5 to 1.15.0 (#20180)
    • chore(deps): Bump axios from 1.13.5 to 1.15.0 in /dev-packages/e2e-tests/test-applications/nestjs-basic (#20179)
    • chore(deps): Bump hono from 4.12.7 to 4.12.12 (#20118)
    • chore(deps): Bump hono from 4.12.7 to 4.12.12 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#20119)
    • chore(deps): Bump next from 16.1.7 to 16.2.3 in nextjs-16-cf-workers (#20289)
    • chore(size-limit): Bump failing size limit scenario (#20186)
    • ci: Add automatic flaky test detector (#18684)
    • ci: Extract test names for flaky test issues (#20298)
    • ci: Remove Docker container for Verdaccio package publishing (#20329)
    • fix(ci): Prevent command injection in ci-metadata workflow (#19899)
    • fix(e2e-tests): Remove flaky navigation breadcrumb assertions from parameterized-routes tests (#20202)
    • fix(e2e): Add op check to waitForTransaction in React Router e2e tests (#20193)
    • fix(node-integration-tests): Fix flaky kafkajs test race condition (#20189)
    • ref(core): Add registry in Vercel ai integration (#20098)
    • ref(core): Automatically disable truncation when span streaming is enabled in Anthropic AI integration (#20228)
    • ref(core): Automatically disable truncation when span streaming is enabled in Google GenAI integration (#20229)
    • ref(core): Automatically disable truncation when span streaming is enabled in LangChain integration (#20230)
    • ref(core): Automatically disable truncation when span streaming is enabled in LangGraph integration (#20231)
    • ref(core): Automatically disable truncation when span streaming is enabled in OpenAI integration (#20227)
    • ref(core): Automatically disable truncation when span streaming is enabled in Vercel AI integration (#20232)
    • ref(core): Merge embeddings operations constants (#20095)
    • ref(core): Remove unused constants from vercel-ai-attributes.ts (#20096)
    • ref(nextjs): Refactor findInjectionIndexAfterDirectives for better readability (#20310)
    • ref(opentelemetry): Replace @opentelemetry/resources with inline getSentryResource() (#20327)
    • test: Fix flaky ANR test by increasing blocking duration (#20239)
    • test(bun): Add bun integration test folder (#20286)
    • test(cloudflare): Skip flaky durableobject-spans test (#20282)
    • test(openai): Use multi-message scenario in no-truncation test (#20194)
    • test(react): Remove duplicated test mock (#20200)
    • tests(ai): Fix streaming+truncation integration tests across AI integrations (#20326)

    </details>

    Open source โ†’
  28. 10.48.09 Apr 2026
    Release notes

    Important Changes

    • feat(aws-serverless): Ship Lambda extension in npm package for container image Lambdas (#20133)

      The Sentry Lambda extension is now included in the npm package, enabling container image-based Lambda functions to use it. Copy the extension files into your Docker image and set the tunnel option:

      RUN mkdir -p /opt/sentry-extension
      COPY node_modules/@sentry/aws-serverless/build/lambda-extension/sentry-extension /opt/extensions/sentry-extension
      COPY node_modules/@sentry/aws-serverless/build/lambda-extension/index.mjs /opt/sentry-extension/index.mjs
      RUN chmod +x /opt/extensions/sentry-extension /opt/sentry-extension/index.mjs
      
      Sentry.init({
        dsn: '__DSN__',
        tunnel: 'http://localhost:9000/envelope',
      });
      

      This works with any Sentry SDK (@sentry/aws-serverless, @sentry/sveltekit, @sentry/node, etc.).

    • feat(cloudflare): Support basic WorkerEntrypoint (#19884)

      withSentry now supports instrumenting classes extending Cloudflare's WorkerEntrypoint. This instruments fetch, scheduled, queue, and tail handlers.

      import * as Sentry from '@sentry/cloudflare';
      import { WorkerEntrypoint } from 'cloudflare:workers';
      
      class MyWorker extends WorkerEntrypoint {
        async fetch(request: Request): Promise<Response> {
          return new Response('Hello World!');
        }
      }
      
      export default Sentry.withSentry(env => ({ dsn: env.SENTRY_DSN, tracesSampleRate: 1.0 }), MyWorker);
      
    • ref(core): Unify .do* span ops to gen_ai.generate_content (#20074)

      All Vercel AI do* spans (ai.generateText.doGenerate, ai.streamText.doStream, ai.generateObject.doGenerate, ai.streamObject.doStream) now use a single unified span op gen_ai.generate_content instead of separate ops like gen_ai.generate_text, gen_ai.stream_text, gen_ai.generate_object, and gen_ai.stream_object.

    • ref(core): Remove provider-specific AI span attributes in favor of gen_ai attributes in sentry conventions (#20011)

      The following provider-specific span attributes have been removed from the OpenAI and Anthropic AI integrations. Use the standardized gen_ai.* equivalents instead:

      Removed attribute Replacement
      openai.response.id gen_ai.response.id
      openai.response.model gen_ai.response.model
      openai.usage.prompt_tokens gen_ai.usage.input_tokens
      openai.usage.completion_tokens gen_ai.usage.output_tokens
      openai.response.timestamp (removed, no replacement)
      anthropic.response.timestamp (removed, no replacement)

      If you reference these attributes in hooks (e.g. beforeSendTransaction), update them to the gen_ai.* equivalents.

    • feat(core): Support embeddings in LangChain (#20017)

      Adds instrumentation for LangChain embeddings (embedQuery, embedDocuments), creating gen_ai.embeddings spans. In Node.js, embedding classes from @langchain/openai, @langchain/google-genai, @langchain/mistralai, and @langchain/google-vertexai are auto-instrumented. For other runtimes, use the new instrumentLangChainEmbeddings API:

      import * as Sentry from '@sentry/cloudflare';
      import { OpenAIEmbeddings } from '@langchain/openai';
      
      const embeddings = Sentry.instrumentLangChainEmbeddings(new OpenAIEmbeddings({ model: 'text-embedding-3-small' }));
      
      await embeddings.embedQuery('Hello world');
      

    Other Changes

    • feat(core): Support registerTool/registerResource/registerPrompt in MCP integration (#20071)
    • feat(core, node): Portable Express integration (#19928)
    • feat(deno): Add denoRuntimeMetricsIntegration (#20023)
    • feat(deps): Bump bundler plugins to 5.2.0 (#20122)
    • feat(deps): bump @hapi/content from 6.0.0 to 6.0.1 (#20102)
    • feat(node, bun): Enforce minimum collection interval in runtime metrics integrations (#20068)
    • feat(nuxt): Exclude tracing meta tags on cached pages in Nuxt 5 (#20168)
    • feat(react-router): Export sentryOnError (#20120)
    • fix(aws-serverless): Add timeout to _endSpan forceFlush to prevent Lambda hanging (#20064)
    • fix(cloudflare): Ensure every request instruments functions (#20044)
    • fix(core): Only attach flags context to error events (#20116)
    • fix(core): Replace regex with string check in stack parser to prevent main thread blocking (#20089)
    • fix(core): set span.status to error when MCP tool returns JSON-RPC error response (#20082)
    • fix(gatsby): Fix errorHandler signature to match bundler-plugin-core API (#20048)
    • ref(core): Do not emit spans for chats.create in google-genai (#19990)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Remove unused tsconfig-template folder (#20067)
    • chore: Update validate-pr workflow (#20072)
    • chore(deps-dev): Bump effect from 3.20.0 to 3.21.0 (#19999)
    • chore(deps): Bump @xmldom/xmldom from 0.8.3 to 0.8.12 (#20066)
    • chore(deps): Bump lodash.template from 4.5.0 to 4.18.1 (#20085)
    • chore(oxlint): Add typeawareness into oxlintrc (#20075)
    • ci(deps): Bump getsentry/craft/.github/workflows/changelog-preview.yml from 2.24.1 to 2.25.2 (#20081)
    • ci(deps): Bump mshick/add-pr-comment (#20078)
    • ref(core): Extract shared endStreamSpan for AI integrations (#20021)
    • ref(core): Simplify addResponseAttributes in openai integration (#20013)
    • test(angular): Bump TypeScript to ~6.0.0 in angular-21 E2E test app (#20134)
    • test(nuxt): Make Nuxt 5 (nightly) E2E optional (#20113)
    • tests(node): Add node integration tests for Vercel ToolLoopAgent (#20087)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.12 KB
    @sentry/browser - with treeshaking flags 23.65 KB
    @sentry/browser (incl. Tracing) 41.7 KB
    @sentry/browser (incl. Tracing, Profiling) 46.21 KB
    @sentry/browser (incl. Tracing, Replay) 79.6 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.42 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 84.2 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 96.12 KB
    @sentry/browser (incl. Feedback) 41.51 KB
    @sentry/browser (incl. sendFeedback) 29.67 KB
    @sentry/browser (incl. FeedbackAsync) 34.55 KB
    @sentry/browser (incl. Metrics) 26.4 KB
    @sentry/browser (incl. Logs) 26.55 KB
    @sentry/browser (incl. Metrics & Logs) 27.2 KB
    @sentry/react 26.84 KB
    @sentry/react (incl. Tracing) 43.96 KB
    @sentry/vue 29.84 KB
    @sentry/vue (incl. Tracing) 43.51 KB
    @sentry/svelte 25.14 KB
    CDN Bundle 27.74 KB
    CDN Bundle (incl. Tracing) 42.69 KB
    CDN Bundle (incl. Logs, Metrics) 29.09 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.75 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.99 KB
    CDN Bundle (incl. Tracing, Replay) 78.71 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.71 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 84.12 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 85.13 KB
    CDN Bundle - uncompressed 81.05 KB
    CDN Bundle (incl. Tracing) - uncompressed 126.6 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 85.1 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 129.93 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 205.2 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 240.74 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 244.06 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 253.35 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 256.66 KB
    @sentry/nextjs (client) 46.33 KB
    @sentry/sveltekit (client) 42.15 KB
    @sentry/node-core 56.5 KB
    @sentry/node 170.69 KB
    @sentry/node - without tracing 95.65 KB
    @sentry/aws-serverless 112.5 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(aws-serverless): Ship Lambda extension in npm package for container image Lambdas (#20133)

      The Sentry Lambda extension is now included in the npm package, enabling container image-based Lambda functions to use it. Copy the extension files into your Docker image and set the tunnel option:

      RUN mkdir -p /opt/sentry-extension
      COPY node_modules/@sentry/aws-serverless/build/lambda-extension/sentry-extension /opt/extensions/sentry-extension
      COPY node_modules/@sentry/aws-serverless/build/lambda-extension/index.mjs /opt/sentry-extension/index.mjs
      RUN chmod +x /opt/extensions/sentry-extension /opt/sentry-extension/index.mjs
      
      Sentry.init({
        dsn: '__DSN__',
        tunnel: 'http://localhost:9000/envelope',
      });
      

      This works with any Sentry SDK (@sentry/aws-serverless, @sentry/sveltekit, @sentry/node, etc.).

    • feat(cloudflare): Support basic WorkerEntrypoint (#19884)

      withSentry now supports instrumenting classes extending Cloudflare's WorkerEntrypoint. This instruments fetch, scheduled, queue, and tail handlers.

      import * as Sentry from '@sentry/cloudflare';
      import { WorkerEntrypoint } from 'cloudflare:workers';
      
      class MyWorker extends WorkerEntrypoint {
        async fetch(request: Request): Promise<Response> {
          return new Response('Hello World!');
        }
      }
      
      export default Sentry.withSentry(env => ({ dsn: env.SENTRY_DSN, tracesSampleRate: 1.0 }), MyWorker);
      
    • ref(core): Unify .do* span ops to gen_ai.generate_content (#20074)

      All Vercel AI do* spans (ai.generateText.doGenerate, ai.streamText.doStream, ai.generateObject.doGenerate, ai.streamObject.doStream) now use a single unified span op gen_ai.generate_content instead of separate ops like gen_ai.generate_text, gen_ai.stream_text, gen_ai.generate_object, and gen_ai.stream_object.

    • ref(core): Remove provider-specific AI span attributes in favor of gen_ai attributes in sentry conventions (#20011)

      The following provider-specific span attributes have been removed from the OpenAI and Anthropic AI integrations. Use the standardized gen_ai.* equivalents instead:

      Removed attribute Replacement
      openai.response.id gen_ai.response.id
      openai.response.model gen_ai.response.model
      openai.usage.prompt_tokens gen_ai.usage.input_tokens
      openai.usage.completion_tokens gen_ai.usage.output_tokens
      openai.response.timestamp (removed, no replacement)
      anthropic.response.timestamp (removed, no replacement)

      If you reference these attributes in hooks (e.g. beforeSendTransaction), update them to the gen_ai.* equivalents.

    • feat(core): Support embeddings in LangChain (#20017)

      Adds instrumentation for LangChain embeddings (embedQuery, embedDocuments), creating gen_ai.embeddings spans. In Node.js, embedding classes from @langchain/openai, @langchain/google-genai, @langchain/mistralai, and @langchain/google-vertexai are auto-instrumented. For other runtimes, use the new instrumentLangChainEmbeddings API:

      import * as Sentry from '@sentry/cloudflare';
      import { OpenAIEmbeddings } from '@langchain/openai';
      
      const embeddings = Sentry.instrumentLangChainEmbeddings(new OpenAIEmbeddings({ model: 'text-embedding-3-small' }));
      
      await embeddings.embedQuery('Hello world');
      

    Other Changes

    • feat(core): Support registerTool/registerResource/registerPrompt in MCP integration (#20071)
    • feat(core, node): Portable Express integration (#19928)
    • feat(deno): Add denoRuntimeMetricsIntegration (#20023)
    • feat(deps): Bump bundler plugins to 5.2.0 (#20122)
    • feat(deps): bump @hapi/content from 6.0.0 to 6.0.1 (#20102)
    • feat(node, bun): Enforce minimum collection interval in runtime metrics integrations (#20068)
    • feat(nuxt): Exclude tracing meta tags on cached pages in Nuxt 5 (#20168)
    • feat(react-router): Export sentryOnError (#20120)
    • fix(aws-serverless): Add timeout to _endSpan forceFlush to prevent Lambda hanging (#20064)
    • fix(cloudflare): Ensure every request instruments functions (#20044)
    • fix(core): Only attach flags context to error events (#20116)
    • fix(core): Replace regex with string check in stack parser to prevent main thread blocking (#20089)
    • fix(core): set span.status to error when MCP tool returns JSON-RPC error response (#20082)
    • fix(gatsby): Fix errorHandler signature to match bundler-plugin-core API (#20048)
    • ref(core): Do not emit spans for chats.create in google-genai (#19990)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Remove unused tsconfig-template folder (#20067)
    • chore: Update validate-pr workflow (#20072)
    • chore(deps-dev): Bump effect from 3.20.0 to 3.21.0 (#19999)
    • chore(deps): Bump @xmldom/xmldom from 0.8.3 to 0.8.12 (#20066)
    • chore(deps): Bump lodash.template from 4.5.0 to 4.18.1 (#20085)
    • chore(oxlint): Add typeawareness into oxlintrc (#20075)
    • ci(deps): Bump getsentry/craft/.github/workflows/changelog-preview.yml from 2.24.1 to 2.25.2 (#20081)
    • ci(deps): Bump mshick/add-pr-comment (#20078)
    • ref(core): Extract shared endStreamSpan for AI integrations (#20021)
    • ref(core): Simplify addResponseAttributes in openai integration (#20013)
    • test(angular): Bump TypeScript to ~6.0.0 in angular-21 E2E test app (#20134)
    • test(nuxt): Make Nuxt 5 (nightly) E2E optional (#20113)
    • tests(node): Add node integration tests for Vercel ToolLoopAgent (#20087)

    </details>

    Open source โ†’
  29. 10.47.031 Mar 2026
    Release notes

    Important Changes

    • feat(node-core): Add OTLP integration for node-core/light (#19729)

      Added otlpIntegration at @sentry/node-core/light/otlp for users who manage their own OpenTelemetry setup and want to send trace data to Sentry without adopting the full @sentry/node SDK.

      import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
      import * as Sentry from '@sentry/node-core/light';
      import { otlpIntegration } from '@sentry/node-core/light/otlp';
      
      const provider = new NodeTracerProvider();
      provider.register();
      
      Sentry.init({
        dsn: '__DSN__',
        integrations: [
          otlpIntegration({
            // Export OTel spans to Sentry via OTLP (default: true)
            setupOtlpTracesExporter: true,
          }),
        ],
      });
      

      The integration links Sentry errors to OTel traces and exports spans to Sentry via OTLP.

    • feat(node, bun): Add runtime metrics integrations for Node.js and Bun (#19923, #19979)

      New nodeRuntimeMetricsIntegration and bunRuntimeMetricsIntegration automatically collect runtime health metrics and send them to Sentry on a configurable interval (default: 30s). Collected metrics include memory (RSS, heap used/total), CPU utilization, event loop utilization, and process uptime. Node additionally collects event loop delay percentiles (p50, p99). Extra metrics like CPU time and external memory are available as opt-in.

      // Node.js
      import * as Sentry from '@sentry/node';
      
      Sentry.init({
        dsn: '...',
        integrations: [Sentry.nodeRuntimeMetricsIntegration()],
      });
      
      // Bun
      import * as Sentry from '@sentry/bun';
      
      Sentry.init({
        dsn: '...',
        integrations: [Sentry.bunRuntimeMetricsIntegration()],
      });
      
    • feat(core): Support embedding APIs in google-genai (#19797)

      Adds instrumentation for the Google GenAI embedContent API, creating gen_ai.embeddings spans.

    • feat(browser): Add elementTimingIntegration for tracking element render and load times (#19869)

      The new elementTimingIntegration captures Element Timing API data as Sentry metrics. It emits element_timing.render_time and element_timing.load_time distribution metrics for elements annotated with the elementtiming HTML attribute.

      import * as Sentry from '@sentry/browser';
      
      Sentry.init({
        dsn: '__DSN__',
        integrations: [Sentry.browserTracingIntegration(), Sentry.elementTimingIntegration()],
      });
      
      <img src="hero.jpg" elementtiming="hero-image" />
      

    Other Changes

    • feat(nuxt): Add middleware instrumentation compatibility for Nuxt 5 (#19968)
    • feat(nuxt): Support parametrized SSR routes in Nuxt 5 (#19977)
    • feat(solid): Add route parametrization for Solid Router (#20031)
    • fix(core): Guard nullish response in supabase PostgREST handler (#20033)
    • fix(node): Deduplicate sentry-trace and baggage headers on outgoing requests (#19960)
    • fix(node): Ensure startNewTrace propagates traceId in OTel environments (#19963)
    • fix(nuxt): Use virtual module for Nuxt pages data (SSR route parametrization) (#20020)
    • fix(opentelemetry): Convert seconds timestamps in span.end() to milliseconds (#19958)
    • fix(profiling): Disable profiling in worker threads (#20040)
    • fix(react-router): Disable debug ID injection in Vite plugin to prevent double injection (#19890)
    • refactor(browser): Reduce browser package bundle size (#19856)
    • feat(deps): Bump OpenTelemetry dependencies (#20046)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add shared validate-pr composite action (#20025)
    • chore: Update validate-pr action to latest version (#20027)
    • chore(deps): Bump @apollo/server from 5.4.0 to 5.5.0 (#20007)
    • chore(deps): Bump amqplib from 0.10.7 to 0.10.9 (#20000)
    • chore(deps): Bump srvx from 0.11.12 to 0.11.13 (#20001)
    • chore(deps-dev): Bump node-forge from 1.3.2 to 1.4.0 (#20012)
    • chore(deps-dev): Bump yaml from 2.8.2 to 2.8.3 (#19985)
    • ci(deps): Bump actions/upload-artifact from 6 to 7 (#19569)
    • docs(release): Update publishing-a-release.md (#19982)
    • feat(deps): Bump babel-loader from 10.0.0 to 10.1.1 (#19997)
    • feat(deps): Bump handlebars from 4.7.7 to 4.7.9 (#20008)
    • fix(browser-tests): Pin axios to 1.13.5 to avoid compromised 1.14.1 (#20047)
    • fix(ci): Update validate-pr action to remove draft enforcement (#20035)
    • fix(ci): Update validate-pr action to remove draft enforcement (#20037)
    • fix(e2e): Pin @opentelemetry/api to 1.9.0 in ts3.8 test app (#19992)
    • ref(browser-tests): Add waitForMetricRequest helper (#20002)
    • ref(core): Consolidate getOperationName into one shared utility (#19971)
    • ref(core): Introduce instrumented method registry for AI integrations (#19981)
    • test(deno): Expand Deno E2E test coverage (#19957)
    • test(e2e): Add e2e tests for nodeRuntimeMetricsIntegration (#19989)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.04 KB
    @sentry/browser - with treeshaking flags 23.57 KB
    @sentry/browser (incl. Tracing) 41.16 KB
    @sentry/browser (incl. Tracing, Profiling) 45.67 KB
    @sentry/browser (incl. Tracing, Replay) 79.04 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.91 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.64 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.62 KB
    @sentry/browser (incl. Feedback) 41.42 KB
    @sentry/browser (incl. sendFeedback) 29.59 KB
    @sentry/browser (incl. FeedbackAsync) 34.46 KB
    @sentry/browser (incl. Metrics) 26.32 KB
    @sentry/browser (incl. Logs) 26.46 KB
    @sentry/browser (incl. Metrics & Logs) 27.12 KB
    @sentry/react 26.76 KB
    @sentry/react (incl. Tracing) 43.44 KB
    @sentry/vue 29.37 KB
    @sentry/vue (incl. Tracing) 43.02 KB
    @sentry/svelte 25.06 KB
    CDN Bundle 27.65 KB
    CDN Bundle (incl. Tracing) 42.09 KB
    CDN Bundle (incl. Logs, Metrics) 28.99 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.12 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.87 KB
    CDN Bundle (incl. Tracing, Replay) 78.13 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.14 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.54 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.55 KB
    CDN Bundle - uncompressed 80.72 KB
    CDN Bundle (incl. Tracing) - uncompressed 124.81 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 84.77 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 128.14 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 204.87 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 238.95 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 242.26 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 251.56 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 254.86 KB
    @sentry/nextjs (client) 45.79 KB
    @sentry/sveltekit (client) 41.62 KB
    @sentry/node-core 54.45 KB
    @sentry/node 168.93 KB
    @sentry/node - without tracing 93.76 KB
    @sentry/aws-serverless 110.13 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(node-core): Add OTLP integration for node-core/light (#19729)

      Added otlpIntegration at @sentry/node-core/light/otlp for users who manage their own OpenTelemetry setup and want to send trace data to Sentry without adopting the full @sentry/node SDK.

      import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
      import * as Sentry from '@sentry/node-core/light';
      import { otlpIntegration } from '@sentry/node-core/light/otlp';
      
      const provider = new NodeTracerProvider();
      provider.register();
      
      Sentry.init({
        dsn: '__DSN__',
        integrations: [
          otlpIntegration({
            // Export OTel spans to Sentry via OTLP (default: true)
            setupOtlpTracesExporter: true,
          }),
        ],
      });
      

      The integration links Sentry errors to OTel traces and exports spans to Sentry via OTLP.

    • feat(node, bun): Add runtime metrics integrations for Node.js and Bun (#19923, #19979)

      New nodeRuntimeMetricsIntegration and bunRuntimeMetricsIntegration automatically collect runtime health metrics and send them to Sentry on a configurable interval (default: 30s). Collected metrics include memory (RSS, heap used/total), CPU utilization, event loop utilization, and process uptime. Node additionally collects event loop delay percentiles (p50, p99). Extra metrics like CPU time and external memory are available as opt-in.

      // Node.js
      import * as Sentry from '@sentry/node';
      
      Sentry.init({
        dsn: '...',
        integrations: [Sentry.nodeRuntimeMetricsIntegration()],
      });
      
      // Bun
      import * as Sentry from '@sentry/bun';
      
      Sentry.init({
        dsn: '...',
        integrations: [Sentry.bunRuntimeMetricsIntegration()],
      });
      
    • feat(core): Support embedding APIs in google-genai (#19797)

      Adds instrumentation for the Google GenAI embedContent API, creating gen_ai.embeddings spans.

    • feat(browser): Add elementTimingIntegration for tracking element render and load times (#19869)

      The new elementTimingIntegration captures Element Timing API data as Sentry metrics. It emits element_timing.render_time and element_timing.load_time distribution metrics for elements annotated with the elementtiming HTML attribute.

      import * as Sentry from '@sentry/browser';
      
      Sentry.init({
        dsn: '__DSN__',
        integrations: [Sentry.browserTracingIntegration(), Sentry.elementTimingIntegration()],
      });
      
      <img src="hero.jpg" elementtiming="hero-image" />
      

    Other Changes

    • feat(nuxt): Add middleware instrumentation compatibility for Nuxt 5 (#19968)
    • feat(nuxt): Support parametrized SSR routes in Nuxt 5 (#19977)
    • feat(solid): Add route parametrization for Solid Router (#20031)
    • fix(core): Guard nullish response in supabase PostgREST handler (#20033)
    • fix(node): Deduplicate sentry-trace and baggage headers on outgoing requests (#19960)
    • fix(node): Ensure startNewTrace propagates traceId in OTel environments (#19963)
    • fix(nuxt): Use virtual module for Nuxt pages data (SSR route parametrization) (#20020)
    • fix(opentelemetry): Convert seconds timestamps in span.end() to milliseconds (#19958)
    • fix(profiling): Disable profiling in worker threads (#20040)
    • fix(react-router): Disable debug ID injection in Vite plugin to prevent double injection (#19890)
    • refactor(browser): Reduce browser package bundle size (#19856)
    • feat(deps): Bump OpenTelemetry dependencies (#20046)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add shared validate-pr composite action (#20025)
    • chore: Update validate-pr action to latest version (#20027)
    • chore(deps): Bump @apollo/server from 5.4.0 to 5.5.0 (#20007)
    • chore(deps): Bump amqplib from 0.10.7 to 0.10.9 (#20000)
    • chore(deps): Bump srvx from 0.11.12 to 0.11.13 (#20001)
    • chore(deps-dev): Bump node-forge from 1.3.2 to 1.4.0 (#20012)
    • chore(deps-dev): Bump yaml from 2.8.2 to 2.8.3 (#19985)
    • ci(deps): Bump actions/upload-artifact from 6 to 7 (#19569)
    • docs(release): Update publishing-a-release.md (#19982)
    • feat(deps): Bump babel-loader from 10.0.0 to 10.1.1 (#19997)
    • feat(deps): Bump handlebars from 4.7.7 to 4.7.9 (#20008)
    • fix(browser-tests): Pin axios to 1.13.5 to avoid compromised 1.14.1 (#20047)
    • fix(ci): Update validate-pr action to remove draft enforcement (#20035)
    • fix(ci): Update validate-pr action to remove draft enforcement (#20037)
    • fix(e2e): Pin @opentelemetry/api to 1.9.0 in ts3.8 test app (#19992)
    • ref(browser-tests): Add waitForMetricRequest helper (#20002)
    • ref(core): Consolidate getOperationName into one shared utility (#19971)
    • ref(core): Introduce instrumented method registry for AI integrations (#19981)
    • test(deno): Expand Deno E2E test coverage (#19957)
    • test(e2e): Add e2e tests for nodeRuntimeMetricsIntegration (#19989)

    </details>

    Open source โ†’
  30. 10.46.025 Mar 2026
    Release notes

    Important Changes

    • feat(elysia): @sentry/elysia - Alpha Release (#19509)

      New Sentry SDK for the Elysia web framework, supporting both Bun and Node.js runtimes.

      Note: This is an alpha release. Please report any issues or feedback on GitHub.

      Features

      • Automatic error capturing โ€” 5xx errors captured via global onError hook; 3xx/4xx ignored by default. Customizable with shouldHandleError.
      • Automatic tracing โ€” Lifecycle spans for every Elysia phase (Request, Parse, Transform, BeforeHandle, Handle, AfterHandle, MapResponse, AfterResponse, Error) with parameterized route names (e.g. GET /users/:id).
      • Distributed tracing โ€” sentry-trace and baggage headers propagated automatically on incoming/outgoing requests.

      Usage

      import * as Sentry from '@sentry/elysia';
      import { Elysia } from 'elysia';
      
      Sentry.init({ dsn: '__DSN__', tracesSampleRate: 1.0 });
      
      const app = Sentry.withElysia(new Elysia());
      app.get('/', () => 'Hello World');
      app.listen(3000);
      

    Other Changes

    • feat(nuxt): Conditionally use plugins based on Nitro version (v2/v3) (#19955)
    • fix(cloudflare): Forward ctx argument to Workflow.do user callback (#19891)
    • fix(cloudflare): Send correct events in local development (#19900)
    • fix(core): Do not overwrite user provided conversation id in Vercel (#19903)
    • fix(core): Preserve .withResponse() on Anthropic instrumentation (#19935)
    • fix(core): Send internal_error as span status for Vercel error spans (#19921)
    • fix(core): Truncate content array format in Vercel (#19911)
    • fix(deps): bump fast-xml-parser to 5.5.8 in @azure/core-xml chain (#19918)
    • fix(deps): bump socket.io-parser to 4.2.6 to fix CVE-2026-33151 (#19880)
    • fix(nestjs): Add node to nest metadata (#19875)
    • fix(serverless): Add node to metadata (#19878)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(ci): Fix "Gatbsy" typo in issue package label workflow (#19905)
    • chore(claude): Enable Claude Code Intelligence (LSP) (#19930)
    • chore(deps): bump mongodb-memory-server-global from 10.1.4 to 11.0.1 (#19888)
    • chore(deps-dev): bump @react-router/node from 7.13.0 to 7.13.1 (#19544)
    • chore(deps-dev): bump effect from 3.19.19 to 3.20.0 (#19926)
    • chore(deps-dev): bump qunit-dom from 3.2.1 to 3.5.0 (#19546)
    • chore(node-integration-tests): Remove unnecessary file-type dependency (#19824)
    • chore(remix): Replace glob with native recursive fs walk (#19531)
    • feat(deps): bump stacktrace-parser from 0.1.10 to 0.1.11 (#19887)
    • fix(craft): Add missing mainDocsUrl for @sentry/effect SDK (#19860)
    • fix(deps): bump next to 15.5.14 in nextjs-15 and nextjs-15-intl E2E test apps (#19917)
    • fix(deps): update lockfile to resolve [email protected] (#19933)
    • ref(core): Remove duplicate buildMethodPath utility from openai (#19969)
    • ref(elysia): Drop @elysiajs/opentelemetry dependency (#19947)
    • ref(nuxt): Extract core logic for storage/database to prepare for Nuxt v5 (#19920)
    • ref(nuxt): Extract handler patching to extra plugin for Nitro v2/v3 (#19915)
    • ref(sveltekit): Replace recast + @babel/parser with acorn (#19533)
    • test(astro): Re-enable server island tracing e2e test in Astro 6 (#19872)
    • test(cloudflare): Enable multi-worker tests for CF integration tests (#19938)

    </details>

    Work in this release was contributed by @roli-lpci. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.08 KB
    @sentry/browser - with treeshaking flags 23.6 KB
    @sentry/browser (incl. Tracing) 41.67 KB
    @sentry/browser (incl. Tracing, Profiling) 46.22 KB
    @sentry/browser (incl. Tracing, Replay) 79.57 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.4 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 84.15 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 96.1 KB
    @sentry/browser (incl. Feedback) 41.48 KB
    @sentry/browser (incl. sendFeedback) 29.64 KB
    @sentry/browser (incl. FeedbackAsync) 34.57 KB
    @sentry/browser (incl. Metrics) 26.33 KB
    @sentry/browser (incl. Logs) 26.46 KB
    @sentry/browser (incl. Metrics & Logs) 27.13 KB
    @sentry/react 26.8 KB
    @sentry/react (incl. Tracing) 43.96 KB
    @sentry/vue 29.42 KB
    @sentry/vue (incl. Tracing) 43.48 KB
    @sentry/svelte 25.1 KB
    CDN Bundle 27.69 KB
    CDN Bundle (incl. Tracing) 42.55 KB
    CDN Bundle (incl. Logs, Metrics) 28.54 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.39 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.69 KB
    CDN Bundle (incl. Tracing, Replay) 78.52 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.4 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.96 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.82 KB
    CDN Bundle - uncompressed 80.76 KB
    CDN Bundle (incl. Tracing) - uncompressed 125.61 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 83.56 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 128.41 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 204.32 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.75 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 242.53 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 252.36 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 255.13 KB
    @sentry/nextjs (client) 46.29 KB
    @sentry/sveltekit (client) 42.11 KB
    @sentry/node-core 55.08 KB
    @sentry/node 169.44 KB
    @sentry/node - without tracing 94.16 KB
    @sentry/aws-serverless 110.78 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(elysia): @sentry/elysia - Alpha Release (#19509)

      New Sentry SDK for the Elysia web framework, supporting both Bun and Node.js runtimes.

      Note: This is an alpha release. Please report any issues or feedback on GitHub.

      Features

      • Automatic error capturing โ€” 5xx errors captured via global onError hook; 3xx/4xx ignored by default. Customizable with shouldHandleError.
      • Automatic tracing โ€” Lifecycle spans for every Elysia phase (Request, Parse, Transform, BeforeHandle, Handle, AfterHandle, MapResponse, AfterResponse, Error) with parameterized route names (e.g. GET /users/:id).
      • Distributed tracing โ€” sentry-trace and baggage headers propagated automatically on incoming/outgoing requests.

      Usage

      import * as Sentry from '@sentry/elysia';
      import { Elysia } from 'elysia';
      
      Sentry.init({ dsn: '__DSN__', tracesSampleRate: 1.0 });
      
      const app = Sentry.withElysia(new Elysia());
      app.get('/', () => 'Hello World');
      app.listen(3000);
      

    Other Changes

    • feat(nuxt): Conditionally use plugins based on Nitro version (v2/v3) (#19955)
    • fix(cloudflare): Forward ctx argument to Workflow.do user callback (#19891)
    • fix(cloudflare): Send correct events in local development (#19900)
    • fix(core): Do not overwrite user provided conversation id in Vercel (#19903)
    • fix(core): Preserve .withResponse() on Anthropic instrumentation (#19935)
    • fix(core): Send internal_error as span status for Vercel error spans (#19921)
    • fix(core): Truncate content array format in Vercel (#19911)
    • fix(deps): bump fast-xml-parser to 5.5.8 in @azure/core-xml chain (#19918)
    • fix(deps): bump socket.io-parser to 4.2.6 to fix CVE-2026-33151 (#19880)
    • fix(nestjs): Add node to nest metadata (#19875)
    • fix(serverless): Add node to metadata (#19878)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(ci): Fix "Gatbsy" typo in issue package label workflow (#19905)
    • chore(claude): Enable Claude Code Intelligence (LSP) (#19930)
    • chore(deps): bump mongodb-memory-server-global from 10.1.4 to 11.0.1 (#19888)
    • chore(deps-dev): bump @react-router/node from 7.13.0 to 7.13.1 (#19544)
    • chore(deps-dev): bump effect from 3.19.19 to 3.20.0 (#19926)
    • chore(deps-dev): bump qunit-dom from 3.2.1 to 3.5.0 (#19546)
    • chore(node-integration-tests): Remove unnecessary file-type dependency (#19824)
    • chore(remix): Replace glob with native recursive fs walk (#19531)
    • feat(deps): bump stacktrace-parser from 0.1.10 to 0.1.11 (#19887)
    • fix(craft): Add missing mainDocsUrl for @sentry/effect SDK (#19860)
    • fix(deps): bump next to 15.5.14 in nextjs-15 and nextjs-15-intl E2E test apps (#19917)
    • fix(deps): update lockfile to resolve [email protected] (#19933)
    • ref(core): Remove duplicate buildMethodPath utility from openai (#19969)
    • ref(elysia): Drop @elysiajs/opentelemetry dependency (#19947)
    • ref(nuxt): Extract core logic for storage/database to prepare for Nuxt v5 (#19920)
    • ref(nuxt): Extract handler patching to extra plugin for Nitro v2/v3 (#19915)
    • ref(sveltekit): Replace recast + @babel/parser with acorn (#19533)
    • test(astro): Re-enable server island tracing e2e test in Astro 6 (#19872)
    • test(cloudflare): Enable multi-worker tests for CF integration tests (#19938)

    </details>

    Work in this release was contributed by @roli-lpci. Thank you for your contributions!

    Important Changes

    • feat(node): Add nodeRuntimeMetricsIntegration for automatic Node.js runtime metrics (#19923)

      The new nodeRuntimeMetricsIntegration automatically collects Node.js runtime health metrics and sends them to Sentry. Eight metrics are emitted by default every 30 seconds: memory (RSS, heap used/total), CPU utilization, event loop delay (p50, p99), event loop utilization, and process uptime. Additional metrics are available as opt-in.

      import * as Sentry from '@sentry/node';
      
      Sentry.init({
        dsn: '...',
        integrations: [Sentry.nodeRuntimeMetricsIntegration()],
      });
      
    Open source โ†’
  31. 10.45.019 Mar 2026
    Release notes

    Important Changes

    • feat(remix): Server Timing Headers Trace Propagation (#18653)

      The Remix SDK now supports automatic trace propagation via Server-Timing response headers to continue pageload traces on the client side. This means, you no longer have to define a custom meta function to add Sentry <meta> tags to your page as previously. We'll update out Remix tracing docs after this release.

    Other Changes

    • fix(cloudflare): Use correct env types for withSentry (#19836)
    • fix(core): Align error span status message with core SpanStatusType for langchain/google-genai (#19863)
    • fix(deno): Clear pre-existing OTel global before registering TracerProvider (#19723)
    • fix(nextjs): Skip tracing for tunnel requests (#19861)
    • fix(node-core): Recycle propagationContext for each request (#19835)
    • ref(core): Simplify core utility functions for smaller bundle (#19854)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(deps): bump next from 16.1.5 to 16.1.7 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#19851)
    • ci(release): Switch from action-prepare-release to Craft (#18763)
    • fix(deps): bump devalue 5.6.3 to 5.6.4 to fix CVE-2026-30226 (#19849)
    • fix(deps): bump file-type to 21.3.2 and @nestjs/common to 11.1.17 (#19847)
    • fix(deps): bump flatted 3.3.1 to 3.4.2 to fix CVE-2026-32141 (#19842)
    • fix(deps): bump hono 4.12.5 to 4.12.7 in cloudflare-hono E2E test app (#19850)
    • fix(deps): bump next to 15.5.13/16.1.7 to fix CVE-2026-1525, CVE-202-33036 and related (#19870)
    • fix(deps): bump tar 7.5.10 to 7.5.11 to fix CVE-2026-31802 (#19846)
    • fix(deps): bump undici 6.23.0 to 6.24.1 to fix multiple CVEs (#19841)
    • fix(deps): bump unhead 2.1.4 to 2.1.12 to fix CVE-2026-31860 and CVE-2026-31873 (#19848)
    • test(nextjs): Skip broken ISR tests (#19871)
    • test(react): Add gql tests for react router (#19844)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.93 KB
    @sentry/browser - with treeshaking flags 23.47 KB
    @sentry/browser (incl. Tracing) 41.51 KB
    @sentry/browser (incl. Tracing, Profiling) 46.07 KB
    @sentry/browser (incl. Tracing, Replay) 79.41 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.22 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 84 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.97 KB
    @sentry/browser (incl. Feedback) 41.35 KB
    @sentry/browser (incl. sendFeedback) 29.49 KB
    @sentry/browser (incl. FeedbackAsync) 34.43 KB
    @sentry/browser (incl. Metrics) 26.18 KB
    @sentry/browser (incl. Logs) 26.32 KB
    @sentry/browser (incl. Metrics & Logs) 26.99 KB
    @sentry/react 26.66 KB
    @sentry/react (incl. Tracing) 43.81 KB
    @sentry/vue 29.29 KB
    @sentry/vue (incl. Tracing) 43.34 KB
    @sentry/svelte 24.95 KB
    CDN Bundle 27.54 KB
    CDN Bundle (incl. Tracing) 42.37 KB
    CDN Bundle (incl. Logs, Metrics) 28.39 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.22 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.52 KB
    CDN Bundle (incl. Tracing, Replay) 78.35 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.24 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.77 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.64 KB
    CDN Bundle - uncompressed 80.39 KB
    CDN Bundle (incl. Tracing) - uncompressed 125.24 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 83.19 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 128.04 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 203.92 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.35 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 242.14 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 251.96 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 254.74 KB
    @sentry/nextjs (client) 46.17 KB
    @sentry/sveltekit (client) 41.95 KB
    @sentry/node-core 54.96 KB
    @sentry/node 169.14 KB
    @sentry/node - without tracing 94 KB
    @sentry/aws-serverless 110.61 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(remix): Server Timing Headers Trace Propagation (#18653)

      The Remix SDK now supports automatic trace propagation via Server-Timing response headers to continue pageload traces on the client side. This means, you no longer have to define a custom meta function to add Sentry <meta> tags to your page as previously. We'll update out Remix tracing docs after this release.

    Other Changes

    • fix(cloudflare): Use correct env types for withSentry (#19836)
    • fix(core): Align error span status message with core SpanStatusType for langchain/google-genai (#19863)
    • fix(deno): Clear pre-existing OTel global before registering TracerProvider (#19723)
    • fix(nextjs): Skip tracing for tunnel requests (#19861)
    • fix(node-core): Recycle propagationContext for each request (#19835)
    • ref(core): Simplify core utility functions for smaller bundle (#19854)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(deps): bump next from 16.1.5 to 16.1.7 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#19851)
    • ci(release): Switch from action-prepare-release to Craft (#18763)
    • fix(deps): bump devalue 5.6.3 to 5.6.4 to fix CVE-2026-30226 (#19849)
    • fix(deps): bump file-type to 21.3.2 and @nestjs/common to 11.1.17 (#19847)
    • fix(deps): bump flatted 3.3.1 to 3.4.2 to fix CVE-2026-32141 (#19842)
    • fix(deps): bump hono 4.12.5 to 4.12.7 in cloudflare-hono E2E test app (#19850)
    • fix(deps): bump next to 15.5.13/16.1.7 to fix CVE-2026-1525, CVE-202-33036 and related (#19870)
    • fix(deps): bump tar 7.5.10 to 7.5.11 to fix CVE-2026-31802 (#19846)
    • fix(deps): bump undici 6.23.0 to 6.24.1 to fix multiple CVEs (#19841)
    • fix(deps): bump unhead 2.1.4 to 2.1.12 to fix CVE-2026-31860 and CVE-2026-31873 (#19848)
    • test(nextjs): Skip broken ISR tests (#19871)
    • test(react): Add gql tests for react router (#19844)

    </details>

    Open source โ†’
  32. 10.44.017 Mar 2026
    Release notes

    Important Changes

    • feat(effect): Add @sentry/effect SDK (Alpha) (#19644)

      This release introduces @sentry/effect, a new SDK for Effect.ts applications. The SDK provides Sentry integration via composable Effect layers for both Node.js and browser environments.

      Compose the effectLayer with optional tracing, logging, and metrics layers to instrument your Effect application:

      import * as Sentry from '@sentry/effect';
      import * as Layer from 'effect/Layer';
      import * as Logger from 'effect/Logger';
      
      const SentryLive = Layer.mergeAll(
        Sentry.effectLayer({ dsn: '__DSN__', tracesSampleRate: 1.0, enableLogs: true }),
        Layer.setTracer(Sentry.SentryEffectTracer),
        Logger.replace(Logger.defaultLogger, Sentry.SentryEffectLogger),
        Sentry.SentryEffectMetricsLayer,
      );
      

      Alpha features are still in progress, may have bugs and might include breaking changes. Please reach out on GitHub if you have any feedback or concerns.

    • feat(astro): Add Astro 6 support (#19745)

      This release enables full support for Astro v6 by adjusting our Astro SDK's middleware to some Astro-internal changes. We cannot yet guarantee full support for server-islands, due to a bug in Astro v6 but we'll follow up on this once the bug is fixed.

    • feat(hono): Add basic instrumentation for Node runtime (#19817)

      Adds a new package @sentry/hono/node (alpha) with basic instrumentation for Hono applications running in Node.js. The Hono middleware for Cloudflare (@sentry/hono/cloudflare - alpha) comes with fixes, and it's now possible to access the Cloudflare Worker Bindings (env) from the options' callback.

      Start using the new Hono middlewares by installing @sentry/hono and importing the respective middleware for your runtime. More instructions can be found in the Hono readme.

      Alpha features are still in progress, may have bugs and might include breaking changes. Please reach out on GitHub if you have any feedback or concerns.

    • feat(nestjs): Instrument @nestjs/bullmq @Processor decorator (#19759)

      Automatically capture exceptions and create transactions for BullMQ queue processors in NestJS applications.

      When using the @Processor decorator from @nestjs/bullmq, the SDK now automatically wraps the process() method to create queue.process transactions with proper isolation scopes, preventing breadcrumb and scope leakage between jobs and HTTP requests. Errors thrown in processors are captured with the auto.queue.nestjs.bullmq mechanism type.

      Requires @nestjs/bullmq v10.0.0 or later.

    • feat(nestjs): Instrument @nestjs/schedule decorators (#19735)

      Automatically capture exceptions thrown in @Cron, @Interval, and @Timeout decorated methods.

      Previously, exceptions in @Cron methods were only captured if you used the SentryCron decorator. Now they are captured automatically. The exception mechanism type changed from auto.cron.nestjs.async to auto.function.nestjs.cron. If you have Sentry queries or alerts that filter on the old mechanism type, update them accordingly.

    • feat(node): Expose headersToSpanAttributes option on nativeNodeFetchIntegration() (#19770)

      Response headers like http.response.header.content-length were previously captured automatically on outgoing fetch spans but are now opt-in since @opentelemetry/[email protected]. You can now configure which headers to capture via the headersToSpanAttributes option.

      Sentry.init({
        integrations: [
          Sentry.nativeNodeFetchIntegration({
            headersToSpanAttributes: {
              requestHeaders: ['x-custom-header'],
              responseHeaders: ['content-length', 'content-type'],
            },
          }),
        ],
      });
      

    Other Changes

    • feat(browser/cloudflare): Export conversation id from browser and cloudflare runtimes (#19820)
    • feat(bun): Set http response header attributes instead of response context headers (#19821)
    • feat(core): Add sentry.timestamp.sequence attribute for timestamp tie-breaking (#19421)
    • feat(deno): Set http response header attributes instead of response context headers (#19822)
    • feat(deps): Bump OpenTelemetry dependencies (#19682)
    • feat(nestjs): Use more specific span origins for NestJS guards, pipes, interceptors, and exception filters (#19751)
    • feat(nextjs): Vercel queue instrumentation (#19799)
    • feat(node): Avoid OTEL instrumentation for outgoing requests on Node 22+ (#17355)
    • feat(deps): bump hono from 4.12.5 to 4.12.7 (#19747)
    • feat(deps): bump mysql2 from 3.14.4 to 3.19.1 (#19787)
    • feat(deps): bump simple-git from 3.30.0 to 3.33.0 (#19744)
    • feat(deps): bump yauzl from 3.2.0 to 3.2.1 (#19809)
    • fix(browser): Skip browserTracingIntegration setup for bot user agents (#19708)
    • fix(cloudflare): Recreate client when previous one was disposed (#19727)
    • fix(core): Align Vercel embedding spans with semantic conventions (#19795)
    • fix(core): Fallback to sendDefaultPii setting in langchain and langgraph in non-node environments (#19813)
    • fix(core): Improve Vercel AI SDK instrumentation attributes (#19717)
    • fix(hono): Align error mechanism (#19831)
    • fix(hono): Allow passing env and fix type issues (#19825)
    • fix(nestjs): Fork isolation scope in @nestjs/event-emitter instrumentation (#19725)
    • fix(nextjs): Log correct lastEventId when error is thrown in component render (#19764)
    • fix(nextjs): Strip sourceMappingURL comments after deleting source maps in turbopack builds (#19814)
    • fix(nuxt): Upload client source maps (#19805)
    • fix(profiling-node): Fix NODE_VERSION rendered as [object Object] in warning (#19788)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add oxlint migration commits to blame ignore (#19784)
    • chore: add oxlint typescript program suppression to workspace settings (#19692)
    • chore: Bump oxlint and oxfmt (#19771)
    • chore: Clean up lint and format script names (#19719)
    • chore(agents): Be more explicit on linting and formatting (#19803)
    • chore(ci): Extract metadata workflow (#19680)
    • chore(deps): bump tedious from 18.6.1 to 19.2.1 (#19786)
    • chore(deps-dev): bump file-type from 20.5.0 to 21.3.1 (#19748)
    • chore(effect): Add Effect to craft, README and issue templates (#19837)
    • chore(lint): Rule adjustments and fix warnings (#19612)
    • chore(skills): Add skill-creator and update managed agent skills (#19713)
    • docs(changelog): Add entry for @sentry/hono alpha release (#19828)
    • docs(hono): Document usage without "*" (#19756)
    • docs(new-release): Document sdkName for craft (#19736)
    • docs(new-release): Update docs based on new Craft flow (#19731)
    • ref(cloudflare): Prepare for WorkerEntrypoint (#19742)
    • ref(nestjs): Move event instrumentation unit tests to separate file (#19738)
    • style: Auto changes made from "yarn fix" (#19710)
    • test(astro,cloudflare): Add an E2E test for Astro 6 on Cloudflare (#19781)
    • test(browser): Add simulated mfe integration test (#19768)
    • test(e2e): Add MFE e2e test using vite-plugin-federation (#19778)
    • test(nextjs): Add vercel queue tests to next-16 (#19798)
    • tests(core): Fix flaky metric sequence number test (#19754)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.04 KB
    @sentry/browser - with treeshaking flags 23.57 KB
    @sentry/browser (incl. Tracing) 41.62 KB
    @sentry/browser (incl. Tracing, Profiling) 46.17 KB
    @sentry/browser (incl. Tracing, Replay) 79.51 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.33 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 84.11 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 96.07 KB
    @sentry/browser (incl. Feedback) 41.45 KB
    @sentry/browser (incl. sendFeedback) 29.6 KB
    @sentry/browser (incl. FeedbackAsync) 34.53 KB
    @sentry/browser (incl. Metrics) 26.29 KB
    @sentry/browser (incl. Logs) 26.43 KB
    @sentry/browser (incl. Metrics & Logs) 27.09 KB
    @sentry/react 26.75 KB
    @sentry/react (incl. Tracing) 43.9 KB
    @sentry/vue 29.38 KB
    @sentry/vue (incl. Tracing) 43.44 KB
    @sentry/svelte 25.06 KB
    CDN Bundle 27.62 KB
    CDN Bundle (incl. Tracing) 42.49 KB
    CDN Bundle (incl. Logs, Metrics) 28.46 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.32 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.61 KB
    CDN Bundle (incl. Tracing, Replay) 78.45 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.33 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.86 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.74 KB
    CDN Bundle - uncompressed 80.69 KB
    CDN Bundle (incl. Tracing) - uncompressed 125.55 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 83.49 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 128.35 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 204.22 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.66 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 242.45 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 252.27 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 255.05 KB
    @sentry/nextjs (client) 46.26 KB
    @sentry/sveltekit (client) 42.06 KB
    @sentry/node-core 55.03 KB
    @sentry/node 169.1 KB
    @sentry/node - without tracing 94.09 KB
    @sentry/aws-serverless 110.68 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(effect): Add @sentry/effect SDK (Alpha) (#19644)

      This release introduces @sentry/effect, a new SDK for Effect.ts applications. The SDK provides Sentry integration via composable Effect layers for both Node.js and browser environments.

      Compose the effectLayer with optional tracing, logging, and metrics layers to instrument your Effect application:

      import * as Sentry from '@sentry/effect';
      import * as Layer from 'effect/Layer';
      import * as Logger from 'effect/Logger';
      
      const SentryLive = Layer.mergeAll(
        Sentry.effectLayer({ dsn: '__DSN__', tracesSampleRate: 1.0, enableLogs: true }),
        Layer.setTracer(Sentry.SentryEffectTracer),
        Logger.replace(Logger.defaultLogger, Sentry.SentryEffectLogger),
        Sentry.SentryEffectMetricsLayer,
      );
      

      Alpha features are still in progress, may have bugs and might include breaking changes. Please reach out on GitHub if you have any feedback or concerns.

    • feat(astro): Add Astro 6 support (#19745)

      This release enables full support for Astro v6 by adjusting our Astro SDK's middleware to some Astro-internal changes. We cannot yet guarantee full support for server-islands, due to a bug in Astro v6 but we'll follow up on this once the bug is fixed.

    • feat(hono): Add basic instrumentation for Node runtime (#19817)

      Adds a new package @sentry/hono/node (alpha) with basic instrumentation for Hono applications running in Node.js. The Hono middleware for Cloudflare (@sentry/hono/cloudflare - alpha) comes with fixes, and it's now possible to access the Cloudflare Worker Bindings (env) from the options' callback.

      Start using the new Hono middlewares by installing @sentry/hono and importing the respective middleware for your runtime. More instructions can be found in the Hono readme.

      Alpha features are still in progress, may have bugs and might include breaking changes. Please reach out on GitHub if you have any feedback or concerns.

    • feat(nestjs): Instrument @nestjs/bullmq @Processor decorator (#19759)

      Automatically capture exceptions and create transactions for BullMQ queue processors in NestJS applications.

      When using the @Processor decorator from @nestjs/bullmq, the SDK now automatically wraps the process() method to create queue.process transactions with proper isolation scopes, preventing breadcrumb and scope leakage between jobs and HTTP requests. Errors thrown in processors are captured with the auto.queue.nestjs.bullmq mechanism type.

      Requires @nestjs/bullmq v10.0.0 or later.

    • feat(nestjs): Instrument @nestjs/schedule decorators (#19735)

      Automatically capture exceptions thrown in @Cron, @Interval, and @Timeout decorated methods.

      Previously, exceptions in @Cron methods were only captured if you used the SentryCron decorator. Now they are captured automatically. The exception mechanism type changed from auto.cron.nestjs.async to auto.function.nestjs.cron. If you have Sentry queries or alerts that filter on the old mechanism type, update them accordingly.

    • feat(node): Expose headersToSpanAttributes option on nativeNodeFetchIntegration() (#19770)

      Response headers like http.response.header.content-length were previously captured automatically on outgoing fetch spans but are now opt-in since @opentelemetry/[email protected]. You can now configure which headers to capture via the headersToSpanAttributes option.

      Sentry.init({
        integrations: [
          Sentry.nativeNodeFetchIntegration({
            headersToSpanAttributes: {
              requestHeaders: ['x-custom-header'],
              responseHeaders: ['content-length', 'content-type'],
            },
          }),
        ],
      });
      

    Other Changes

    • feat(browser/cloudflare): Export conversation id from browser and cloudflare runtimes (#19820)
    • feat(bun): Set http response header attributes instead of response context headers (#19821)
    • feat(core): Add sentry.timestamp.sequence attribute for timestamp tie-breaking (#19421)
    • feat(deno): Set http response header attributes instead of response context headers (#19822)
    • feat(deps): Bump OpenTelemetry dependencies (#19682)
    • feat(nestjs): Use more specific span origins for NestJS guards, pipes, interceptors, and exception filters (#19751)
    • feat(nextjs): Vercel queue instrumentation (#19799)
    • feat(node): Avoid OTEL instrumentation for outgoing requests on Node 22+ (#17355)
    • feat(deps): bump hono from 4.12.5 to 4.12.7 (#19747)
    • feat(deps): bump mysql2 from 3.14.4 to 3.19.1 (#19787)
    • feat(deps): bump simple-git from 3.30.0 to 3.33.0 (#19744)
    • feat(deps): bump yauzl from 3.2.0 to 3.2.1 (#19809)
    • fix(browser): Skip browserTracingIntegration setup for bot user agents (#19708)
    • fix(cloudflare): Recreate client when previous one was disposed (#19727)
    • fix(core): Align Vercel embedding spans with semantic conventions (#19795)
    • fix(core): Fallback to sendDefaultPii setting in langchain and langgraph in non-node environments (#19813)
    • fix(core): Improve Vercel AI SDK instrumentation attributes (#19717)
    • fix(hono): Align error mechanism (#19831)
    • fix(hono): Allow passing env and fix type issues (#19825)
    • fix(nestjs): Fork isolation scope in @nestjs/event-emitter instrumentation (#19725)
    • fix(nextjs): Log correct lastEventId when error is thrown in component render (#19764)
    • fix(nextjs): Strip sourceMappingURL comments after deleting source maps in turbopack builds (#19814)
    • fix(nuxt): Upload client source maps (#19805)
    • fix(profiling-node): Fix NODE_VERSION rendered as [object Object] in warning (#19788)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add oxlint migration commits to blame ignore (#19784)
    • chore: add oxlint typescript program suppression to workspace settings (#19692)
    • chore: Bump oxlint and oxfmt (#19771)
    • chore: Clean up lint and format script names (#19719)
    • chore(agents): Be more explicit on linting and formatting (#19803)
    • chore(ci): Extract metadata workflow (#19680)
    • chore(deps): bump tedious from 18.6.1 to 19.2.1 (#19786)
    • chore(deps-dev): bump file-type from 20.5.0 to 21.3.1 (#19748)
    • chore(effect): Add Effect to craft, README and issue templates (#19837)
    • chore(lint): Rule adjustments and fix warnings (#19612)
    • chore(skills): Add skill-creator and update managed agent skills (#19713)
    • docs(changelog): Add entry for @sentry/hono alpha release (#19828)
    • docs(hono): Document usage without "*" (#19756)
    • docs(new-release): Document sdkName for craft (#19736)
    • docs(new-release): Update docs based on new Craft flow (#19731)
    • ref(cloudflare): Prepare for WorkerEntrypoint (#19742)
    • ref(nestjs): Move event instrumentation unit tests to separate file (#19738)
    • style: Auto changes made from "yarn fix" (#19710)
    • test(astro,cloudflare): Add an E2E test for Astro 6 on Cloudflare (#19781)
    • test(browser): Add simulated mfe integration test (#19768)
    • test(e2e): Add MFE e2e test using vite-plugin-federation (#19778)
    • test(nextjs): Add vercel queue tests to next-16 (#19798)
    • tests(core): Fix flaky metric sequence number test (#19754)

    </details>

    Open source โ†’
  33. 10.43.010 Mar 2026
    Release notes

    Important Changes

    • feat(nextjs): Add Turbopack support for React component name annotation (#19604)

      We added experimental support for React component name annotation in Turbopack builds. When enabled, JSX elements are annotated with data-sentry-component, data-sentry-element, and data-sentry-source-file attributes at build time. This enables searching Replays by component name, seeing component names in breadcrumbs, and performance monitoring โ€” previously only available with webpack builds.

      This feature requires Next.js 16+ and is currently behind an experimental flag:

      // next.config.ts
      import { withSentryConfig } from '@sentry/nextjs';
      
      export default withSentryConfig(nextConfig, {
        _experimental: {
          turbopackReactComponentAnnotation: {
            enabled: true,
            ignoredComponents: ['Header', 'Footer'], // optional
          },
        },
      });
      
    • feat(hono): Instrument middlewares app.use() (#19611)

      Hono middleware registered via app.use() is now automatically instrumented, creating spans for each middleware invocation.

    Other Changes

    • feat(node-core,node): Add tracePropagation option to http and fetch integrations (#19712)
    • feat(hono): Use parametrized names for errors (#19577)
    • fix(browser): Fix missing traces for user feedback (#19660)
    • fix(cloudflare): Use correct Proxy receiver in instrumentDurableObjectStorage (#19662)
    • fix(core): Standardize Vercel AI span descriptions to align with GenAI semantic conventions (#19624)
    • fix(deps): Bump hono to 4.12.5 to fix multiple vulnerabilities (#19653)
    • fix(deps): Bump svgo to 4.0.1 to fix DoS via entity expansion (#19651)
    • fix(deps): Bump tar to 7.5.10 to fix hardlink path traversal (#19650)
    • fix(nextjs): Align Turbopack module metadata injection with webpack behavior (#19645)
    • fix(node): Prevent duplicate LangChain spans from double module patching (#19684)
    • fix(node-core,vercel-edge): Use HEROKU_BUILD_COMMIT env var for default release (#19617)
    • fix(sveltekit): Fix file system race condition in source map cleaning (#19714)
    • fix(tanstackstart-react): Add workerd and worker export conditions (#19461)
    • fix(vercel-ai): Prevent tool call span map memory leak (#19328)
    • feat(deps): Bump @sentry/rollup-plugin from 5.1.0 to 5.1.1 (#19658)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Migrate to oxlint (#19134)
    • chore(aws-serverless): Don't build layer in build:dev command (#19586)
    • chore(ci): Allow triage action to run on issues from external users (#19701)
    • chore(deps): Bump immutable from 4.0.0 to 4.3.8 (#19637)
    • chore(e2e): Expand microservices E2E application with auto-tracing tests (#19652)
    • chore(hono): Prepare readme and add craft entry (#19583)
    • chore(sourcemaps): Make sourcemaps e2e test more generic (#19678)
    • chore(tanstackstart-react): Add link to docs in README (#19697)
    • feat(deps): Bump @hono/node-server from 1.19.4 to 1.19.10 (#19634)
    • feat(deps): Bump underscore from 1.12.1 to 1.13.8 (#19616)
    • test(angular): Fix failing canary test (#19639)
    • test(nextjs): Add sourcemaps test for nextjs turbopack (#19647)
    • tests(e2e): Add microservices e2e for nestjs (#19642)
    • tests(e2e): Add websockets e2e for nestjs (#19630)

    </details>

    Work in this release was contributed by @dmmulroy, @lithdew, and @smorimoto. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.04 KB
    @sentry/browser - with treeshaking flags 23.57 KB
    @sentry/browser (incl. Tracing) 41.45 KB
    @sentry/browser (incl. Tracing, Profiling) 46 KB
    @sentry/browser (incl. Tracing, Replay) 79.35 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.22 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.94 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.91 KB
    @sentry/browser (incl. Feedback) 41.45 KB
    @sentry/browser (incl. sendFeedback) 29.6 KB
    @sentry/browser (incl. FeedbackAsync) 34.53 KB
    @sentry/browser (incl. Metrics) 26.18 KB
    @sentry/browser (incl. Logs) 26.31 KB
    @sentry/browser (incl. Metrics & Logs) 26.97 KB
    @sentry/react 26.75 KB
    @sentry/react (incl. Tracing) 43.73 KB
    @sentry/vue 29.38 KB
    @sentry/vue (incl. Tracing) 43.27 KB
    @sentry/svelte 25.06 KB
    CDN Bundle 27.52 KB
    CDN Bundle (incl. Tracing) 42.26 KB
    CDN Bundle (incl. Logs, Metrics) 28.34 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.08 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.5 KB
    CDN Bundle (incl. Tracing, Replay) 78.27 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.11 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.66 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.51 KB
    CDN Bundle - uncompressed 80.45 KB
    CDN Bundle (incl. Tracing) - uncompressed 125.09 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 83.22 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 127.86 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 203.98 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.24 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 241.99 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 251.85 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 254.59 KB
    @sentry/nextjs (client) 46.09 KB
    @sentry/sveltekit (client) 41.9 KB
    @sentry/node-core 51.04 KB
    @sentry/node 170.67 KB
    @sentry/node - without tracing 95.14 KB
    @sentry/aws-serverless 110.58 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(nextjs): Add Turbopack support for React component name annotation (#19604)

      We added experimental support for React component name annotation in Turbopack builds. When enabled, JSX elements are annotated with data-sentry-component, data-sentry-element, and data-sentry-source-file attributes at build time. This enables searching Replays by component name, seeing component names in breadcrumbs, and performance monitoring โ€” previously only available with webpack builds.

      This feature requires Next.js 16+ and is currently behind an experimental flag:

      // next.config.ts
      import { withSentryConfig } from '@sentry/nextjs';
      
      export default withSentryConfig(nextConfig, {
        _experimental: {
          turbopackReactComponentAnnotation: {
            enabled: true,
            ignoredComponents: ['Header', 'Footer'], // optional
          },
        },
      });
      
    • feat(hono): Instrument middlewares app.use() (#19611)

      Hono middleware registered via app.use() is now automatically instrumented, creating spans for each middleware invocation.

    Other Changes

    • feat(node-core,node): Add tracePropagation option to http and fetch integrations (#19712)
    • feat(hono): Use parametrized names for errors (#19577)
    • fix(browser): Fix missing traces for user feedback (#19660)
    • fix(cloudflare): Use correct Proxy receiver in instrumentDurableObjectStorage (#19662)
    • fix(core): Standardize Vercel AI span descriptions to align with GenAI semantic conventions (#19624)
    • fix(deps): Bump hono to 4.12.5 to fix multiple vulnerabilities (#19653)
    • fix(deps): Bump svgo to 4.0.1 to fix DoS via entity expansion (#19651)
    • fix(deps): Bump tar to 7.5.10 to fix hardlink path traversal (#19650)
    • fix(nextjs): Align Turbopack module metadata injection with webpack behavior (#19645)
    • fix(node): Prevent duplicate LangChain spans from double module patching (#19684)
    • fix(node-core,vercel-edge): Use HEROKU_BUILD_COMMIT env var for default release (#19617)
    • fix(sveltekit): Fix file system race condition in source map cleaning (#19714)
    • fix(tanstackstart-react): Add workerd and worker export conditions (#19461)
    • fix(vercel-ai): Prevent tool call span map memory leak (#19328)
    • feat(deps): Bump @sentry/rollup-plugin from 5.1.0 to 5.1.1 (#19658)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Migrate to oxlint (#19134)
    • chore(aws-serverless): Don't build layer in build:dev command (#19586)
    • chore(ci): Allow triage action to run on issues from external users (#19701)
    • chore(deps): Bump immutable from 4.0.0 to 4.3.8 (#19637)
    • chore(e2e): Expand microservices E2E application with auto-tracing tests (#19652)
    • chore(hono): Prepare readme and add craft entry (#19583)
    • chore(sourcemaps): Make sourcemaps e2e test more generic (#19678)
    • chore(tanstackstart-react): Add link to docs in README (#19697)
    • feat(deps): Bump @hono/node-server from 1.19.4 to 1.19.10 (#19634)
    • feat(deps): Bump underscore from 1.12.1 to 1.13.8 (#19616)
    • test(angular): Fix failing canary test (#19639)
    • test(nextjs): Add sourcemaps test for nextjs turbopack (#19647)
    • tests(e2e): Add microservices e2e for nestjs (#19642)
    • tests(e2e): Add websockets e2e for nestjs (#19630)

    </details>

    Work in this release was contributed by @dmmulroy, @lithdew, and @smorimoto. Thank you for your contributions!

    Open source โ†’
  34. 10.42.03 Mar 2026
    Release notes
    • feat(consola): Enhance Consola integration to extract first-param object as searchable attributes (#19534)
    • fix(astro): Do not inject withSentry into Cloudflare Pages (#19558)
    • fix(core): Do not remove promiseBuffer entirely (#19592)
    • fix(deps): Bump fast-xml-parser to 4.5.4 for CVE-2026-25896 (#19588)
    • fix(react-router): Set correct transaction name when navigating with object argument (#19590)
    • ref(nuxt): Use addVitePlugin instead of deprecated vite:extendConfig (#19464)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(deps-dev): bump @sveltejs/kit from 2.52.2 to 2.53.3 (#19571)
    • chore(deps): Bump @sveltejs/kit to 2.53.3 in sveltekit-2-svelte-5 E2E test (#19594)
    • ci(deps): bump actions/checkout from 4 to 6 (#19570)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.02 KB
    @sentry/browser - with treeshaking flags 23.57 KB
    @sentry/browser (incl. Tracing) 41.44 KB
    @sentry/browser (incl. Tracing, Profiling) 45.99 KB
    @sentry/browser (incl. Tracing, Replay) 79.35 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.21 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.93 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.91 KB
    @sentry/browser (incl. Feedback) 41.44 KB
    @sentry/browser (incl. sendFeedback) 29.58 KB
    @sentry/browser (incl. FeedbackAsync) 34.52 KB
    @sentry/browser (incl. Metrics) 26.17 KB
    @sentry/browser (incl. Logs) 26.31 KB
    @sentry/browser (incl. Metrics & Logs) 26.96 KB
    @sentry/react 26.74 KB
    @sentry/react (incl. Tracing) 43.72 KB
    @sentry/vue 29.37 KB
    @sentry/vue (incl. Tracing) 43.26 KB
    @sentry/svelte 25.05 KB
    CDN Bundle 27.51 KB
    CDN Bundle (incl. Tracing) 42.25 KB
    CDN Bundle (incl. Logs, Metrics) 28.33 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.07 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.49 KB
    CDN Bundle (incl. Tracing, Replay) 78.26 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.1 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.65 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.5 KB
    CDN Bundle - uncompressed 80.42 KB
    CDN Bundle (incl. Tracing) - uncompressed 125.07 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 83.19 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 127.83 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 203.96 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.21 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 241.96 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 251.82 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 254.56 KB
    @sentry/nextjs (client) 46.08 KB
    @sentry/sveltekit (client) 41.89 KB
    @sentry/node-core 51.01 KB
    @sentry/node 170.6 KB
    @sentry/node - without tracing 95.09 KB
    @sentry/aws-serverless 110.53 KB
    Open source โ†’
    Release notes
    • feat(consola): Enhance Consola integration to extract first-param object as searchable attributes (#19534)
    • fix(astro): Do not inject withSentry into Cloudflare Pages (#19558)
    • fix(core): Do not remove promiseBuffer entirely (#19592)
    • fix(deps): Bump fast-xml-parser to 4.5.4 for CVE-2026-25896 (#19588)
    • fix(react-router): Set correct transaction name when navigating with object argument (#19590)
    • ref(nuxt): Use addVitePlugin instead of deprecated vite:extendConfig (#19464)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(deps-dev): bump @sveltejs/kit from 2.52.2 to 2.53.3 (#19571)
    • chore(deps): Bump @sveltejs/kit to 2.53.3 in sveltekit-2-svelte-5 E2E test (#19594)
    • ci(deps): bump actions/checkout from 4 to 6 (#19570)

    </details>

    Open source โ†’
  35. 10.41.02 Mar 2026
    Release notes

    Important Changes

    • feat(core,cloudflare,deno): Add instrumentPostgresJsSql instrumentation (#19566)

      Added a new instrumentation helper for the postgres (postgres.js) library, designed for SDKs that are not based on OpenTelemetry (e.g. Cloudflare, Deno). This wraps a postgres.js sql tagged template instance so that all queries automatically create Sentry spans.

      import postgres from 'postgres';
      import * as Sentry from '@sentry/cloudflare'; // or '@sentry/deno'
      
      export default Sentry.withSentry(env => ({ dsn: '__DSN__' }), {
        async fetch(request, env, ctx) {
          const sql = Sentry.instrumentPostgresJsSql(postgres(env.DATABASE_URL));
      
          // All queries now create Sentry spans
          const users = await sql`SELECT * FROM users WHERE id = ${userId}`;
          return Response.json(users);
        },
      });
      

      The instrumentation is available in @sentry/core, @sentry/cloudflare, and @sentry/deno.

    • feat(nextjs): Add Turbopack support for thirdPartyErrorFilterIntegration (#19542)

      We added experimental support for the thirdPartyErrorFilterIntegration with Turbopack builds.

      This feature requires Next.js 16+ and is currently behind an experimental flag:

      // next.config.ts
      import { withSentryConfig } from '@sentry/nextjs';
      
      export default withSentryConfig(nextConfig, {
        _experimental: {
          turbopackApplicationKey: 'my-app-key',
        },
      });
      

      Then configure the integration in your client instrumentation file with a matching key:

      // instrumentation-client.ts
      import * as Sentry from '@sentry/nextjs';
      
      Sentry.init({
        integrations: [
          Sentry.thirdPartyErrorFilterIntegration({
            filterKeys: ['my-app-key'],
            behaviour: 'apply-tag-if-exclusively-contains-third-party-frames',
          }),
        ],
      });
      

    Other Changes

    • feat(core,cloudflare): Add dispose to the client for proper cleanup (#19506)
    • feat(deps): Bump rxjs from 7.8.1 to 7.8.2 (#19545)
    • feat(nextjs): Use not: foreign condition in turbopack loaders (#19502)
    • feat(react-router): Include middleware function names and indices (#19109)
    • fix(consola): Normalize extra keys from consola (#19511)
    • fix(core): Improve message truncation for multimodal content and normalize streaming span names (#19500)
    • fix(core): Strip inline media from multimodal content before stringification (#19540)
    • fix(deps): Bump transitive rollup deps to patch CVE-2026-27606 (#19565)
    • fix(langchain): Use runName argument in handleChainStart to fix unknown_chain spans (#19554)
    • fix(nestjs): Improve control flow exception filtering (#19524)
    • fix(tanstackstart-react): Flush events in server entry point for serverless environments (#19513)
    • fix(vue): Avoid triggering deprecated next callback from router instrumentation (#19476)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Updating minimatch (#19434)
    • chore(agents): Add dotagents (#19526)
    • chore(agents): Add nested AGENTS.md for browser (#19551)
    • chore(agents): Add nested AGENTS.md for nextjs (#19556)
    • chore(agents): Consolidate SDK dev rules into AGENTS.md (#19521)
    • chore(agents): Migrate repo-wide cursor rules to skills (#19549)
    • chore(agents): Remove stale cursor commands (#19560)
    • chore(ci): Validate alert id (#19499)
    • chore(deps): Bump rollup to 4.59.0 to fix path traversal vulnerability (#19538)
    • chore(lint): Remove junit report file (#19491)
    • chore(svelte,sveltekit): Use version range for magic-string (#19520)
    • chore(tanstackstart): Fix leftover formatting issue (#19536)
    • test(consola): Restructure tests (#19517)
    • test(node): Test runName parameter in handleChainStart for langchain (#19562)

    </details>

    Work in this release was contributed by @YevheniiKotyrlo. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.02 KB
    @sentry/browser - with treeshaking flags 23.57 KB
    @sentry/browser (incl. Tracing) 41.44 KB
    @sentry/browser (incl. Tracing, Profiling) 45.99 KB
    @sentry/browser (incl. Tracing, Replay) 79.35 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.21 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.93 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.91 KB
    @sentry/browser (incl. Feedback) 41.44 KB
    @sentry/browser (incl. sendFeedback) 29.58 KB
    @sentry/browser (incl. FeedbackAsync) 34.52 KB
    @sentry/browser (incl. Metrics) 26.17 KB
    @sentry/browser (incl. Logs) 26.31 KB
    @sentry/browser (incl. Metrics & Logs) 26.96 KB
    @sentry/react 26.74 KB
    @sentry/react (incl. Tracing) 43.72 KB
    @sentry/vue 29.37 KB
    @sentry/vue (incl. Tracing) 43.26 KB
    @sentry/svelte 25.05 KB
    CDN Bundle 27.51 KB
    CDN Bundle (incl. Tracing) 42.25 KB
    CDN Bundle (incl. Logs, Metrics) 28.33 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.07 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.49 KB
    CDN Bundle (incl. Tracing, Replay) 78.26 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.1 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.65 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.5 KB
    CDN Bundle - uncompressed 80.42 KB
    CDN Bundle (incl. Tracing) - uncompressed 125.07 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 83.19 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 127.83 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 203.96 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.21 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 241.96 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 251.82 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 254.56 KB
    @sentry/nextjs (client) 46.08 KB
    @sentry/sveltekit (client) 41.89 KB
    @sentry/node-core 51.01 KB
    @sentry/node 170.59 KB
    @sentry/node - without tracing 95.1 KB
    @sentry/aws-serverless 110.53 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core,cloudflare,deno): Add instrumentPostgresJsSql instrumentation (#19566)

      Added a new instrumentation helper for the postgres (postgres.js) library, designed for SDKs that are not based on OpenTelemetry (e.g. Cloudflare, Deno). This wraps a postgres.js sql tagged template instance so that all queries automatically create Sentry spans.

      import postgres from 'postgres';
      import * as Sentry from '@sentry/cloudflare'; // or '@sentry/deno'
      
      export default Sentry.withSentry(env => ({ dsn: '__DSN__' }), {
        async fetch(request, env, ctx) {
          const sql = Sentry.instrumentPostgresJsSql(postgres(env.DATABASE_URL));
      
          // All queries now create Sentry spans
          const users = await sql`SELECT * FROM users WHERE id = ${userId}`;
          return Response.json(users);
        },
      });
      

      The instrumentation is available in @sentry/core, @sentry/cloudflare, and @sentry/deno.

    • feat(nextjs): Add Turbopack support for thirdPartyErrorFilterIntegration (#19542)

      We added experimental support for the thirdPartyErrorFilterIntegration with Turbopack builds.

      This feature requires Next.js 16+ and is currently behind an experimental flag:

      // next.config.ts
      import { withSentryConfig } from '@sentry/nextjs';
      
      export default withSentryConfig(nextConfig, {
        _experimental: {
          turbopackApplicationKey: 'my-app-key',
        },
      });
      

      Then configure the integration in your client instrumentation file with a matching key:

      // instrumentation-client.ts
      import * as Sentry from '@sentry/nextjs';
      
      Sentry.init({
        integrations: [
          Sentry.thirdPartyErrorFilterIntegration({
            filterKeys: ['my-app-key'],
            behaviour: 'apply-tag-if-exclusively-contains-third-party-frames',
          }),
        ],
      });
      

    Other Changes

    • feat(core,cloudflare): Add dispose to the client for proper cleanup (#19506)
    • feat(deps): Bump rxjs from 7.8.1 to 7.8.2 (#19545)
    • feat(nextjs): Use not: foreign condition in turbopack loaders (#19502)
    • feat(react-router): Include middleware function names and indices (#19109)
    • fix(consola): Normalize extra keys from consola (#19511)
    • fix(core): Improve message truncation for multimodal content and normalize streaming span names (#19500)
    • fix(core): Strip inline media from multimodal content before stringification (#19540)
    • fix(deps): Bump transitive rollup deps to patch CVE-2026-27606 (#19565)
    • fix(langchain): Use runName argument in handleChainStart to fix unknown_chain spans (#19554)
    • fix(nestjs): Improve control flow exception filtering (#19524)
    • fix(tanstackstart-react): Flush events in server entry point for serverless environments (#19513)
    • fix(vue): Avoid triggering deprecated next callback from router instrumentation (#19476)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Updating minimatch (#19434)
    • chore(agents): Add dotagents (#19526)
    • chore(agents): Add nested AGENTS.md for browser (#19551)
    • chore(agents): Add nested AGENTS.md for nextjs (#19556)
    • chore(agents): Consolidate SDK dev rules into AGENTS.md (#19521)
    • chore(agents): Migrate repo-wide cursor rules to skills (#19549)
    • chore(agents): Remove stale cursor commands (#19560)
    • chore(ci): Validate alert id (#19499)
    • chore(deps): Bump rollup to 4.59.0 to fix path traversal vulnerability (#19538)
    • chore(lint): Remove junit report file (#19491)
    • chore(svelte,sveltekit): Use version range for magic-string (#19520)
    • chore(tanstackstart): Fix leftover formatting issue (#19536)
    • test(consola): Restructure tests (#19517)
    • test(node): Test runName parameter in handleChainStart for langchain (#19562)

    </details>

    Work in this release was contributed by @YevheniiKotyrlo. Thank you for your contribution!

    Open source โ†’
  36. 10.41.0-beta.026 Feb 2026pre-release
    Release notes

    This is an internal beta release to test adding traces by timestamp to replay events for EAP trace association: https://github.com/getsentry/sentry-javascript/pull/18048.

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.02 KB
    @sentry/browser - with treeshaking flags 23.56 KB
    @sentry/browser (incl. Tracing) 41.44 KB
    @sentry/browser (incl. Tracing, Profiling) 45.99 KB
    @sentry/browser (incl. Tracing, Replay) 79.43 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.27 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 84 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.98 KB
    @sentry/browser (incl. Feedback) 41.44 KB
    @sentry/browser (incl. sendFeedback) 29.58 KB
    @sentry/browser (incl. FeedbackAsync) 34.52 KB
    @sentry/browser (incl. Metrics) 26.17 KB
    @sentry/browser (incl. Logs) 26.3 KB
    @sentry/browser (incl. Metrics & Logs) 26.96 KB
    @sentry/react 26.74 KB
    @sentry/react (incl. Tracing) 43.72 KB
    @sentry/vue 29.37 KB
    @sentry/vue (incl. Tracing) 43.23 KB
    @sentry/svelte 25.05 KB
    CDN Bundle 27.51 KB
    CDN Bundle (incl. Tracing) 42.24 KB
    CDN Bundle (incl. Logs, Metrics) 28.33 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.07 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.57 KB
    CDN Bundle (incl. Tracing, Replay) 78.33 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.16 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.71 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.56 KB
    CDN Bundle - uncompressed 80.42 KB
    CDN Bundle (incl. Tracing) - uncompressed 125.06 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 83.19 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 127.83 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 204.23 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.49 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 242.24 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 252.1 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 254.84 KB
    @sentry/nextjs (client) 46.07 KB
    @sentry/sveltekit (client) 41.89 KB
    @sentry/node-core 50.97 KB
    @sentry/node 170.4 KB
    @sentry/node - without tracing 95.06 KB
    @sentry/aws-serverless 110.49 KB
    Open source โ†’
  37. 10.40.024 Feb 2026
    Release notes

    Important Changes

    • feat(tanstackstart-react): Add global sentry exception middlewares (#19330)

      The sentryGlobalRequestMiddleware and sentryGlobalFunctionMiddleware global middlewares capture unhandled exceptions thrown in TanStack Start API routes and server functions. Add them as the first entries in the requestMiddleware and functionMiddleware arrays of createStart():

      import { createStart } from '@tanstack/react-start/server';
      import { sentryGlobalRequestMiddleware, sentryGlobalFunctionMiddleware } from '@sentry/tanstackstart-react';
      
      export default createStart({
        requestMiddleware: [sentryGlobalRequestMiddleware, myRequestMiddleware],
        functionMiddleware: [sentryGlobalFunctionMiddleware, myFunctionMiddleware],
      });
      
    • feat(tanstackstart-react)!: Export Vite plugin from @sentry/tanstackstart-react/vite subpath (#19182)

      The sentryTanstackStart Vite plugin is now exported from a dedicated subpath. Update your import:

      - import { sentryTanstackStart } from '@sentry/tanstackstart-react';
      + import { sentryTanstackStart } from '@sentry/tanstackstart-react/vite';
      
    • fix(node-core): Reduce bundle size by removing apm-js-collab and requiring pino >= 9.10 (#18631)

      In order to keep receiving pino logs, you need to update your pino version to >= 9.10, the reason for the support bump is to reduce the bundle size of the node-core SDK in frameworks that cannot tree-shake the apm-js-collab dependency.

    • fix(browser): Ensure user id is consistently added to sessions (#19341)

      Previously, the SDK inconsistently set the user id on sessions, meaning sessions were often lacking proper coupling to the user set for example via Sentry.setUser(). Additionally, the SDK incorrectly skipped starting a new session for the first soft navigation after the pageload. This patch fixes these issues. As a result, metrics around sessions, like "Crash Free Sessions" or "Crash Free Users" might change. This could also trigger alerts, depending on your set thresholds and conditions. We apologize for any inconvenience caused!

      While we're at it, if you're using Sentry in a Single Page App or meta framework, you might want to give the new 'page' session lifecycle a try! This new mode no longer creates a session per soft navigation but continues the initial session until the next hard page refresh. Check out the docs to learn more!

    • ref!(gatsby): Drop Gatsby v2 support (#19467)

      We drop support for Gatsby v2 (which still relies on webpack 4) for a critical security update in https://github.com/getsentry/sentry-javascript-bundler-plugins/releases/tag/5.0.0

    Other Changes

    • feat(astro): Add support for Astro on CF Workers (#19265)
    • feat(cloudflare): Instrument async KV API (#19404)
    • feat(core): Add framework-agnostic tunnel handler (#18892)
    • feat(deno): Export logs API from Deno SDK (#19313)
    • feat(deno): Export metrics API from Deno SDK (#19305)
    • feat(deno): instrument Deno.serve with async context support (#19230)
    • feat(deps): bump babel-loader from 8.2.5 to 10.0.0 (#19303)
    • feat(deps): bump body-parser from 1.20.4 to 2.2.2 (#19191)
    • feat(deps): Bump hono from 4.11.7 to 4.11.10 (#19440)
    • feat(deps): bump qs from 6.14.1 to 6.14.2 (#19310)
    • feat(deps): bump the opentelemetry group with 4 updates (#19425)
    • feat(feedback): Add setTheme() to dynamically update feedback widget color scheme (#19430)
    • feat(nextjs): Add sourcemaps.filesToDeleteAfterUpload as a top-level option (#19280)
    • feat(node): Add ignoreConnectSpans option to postgresIntegration (#19291)
    • feat(node): Bump to latest @fastify/otel (#19452)
    • fix: Bump bundler plugins to v5 (#19468)
    • fix: updated the codecov config (#19350)
    • fix(aws-serverless): Prevent crash in isPromiseAllSettledResult with null/undefined array elements (#19346)
    • fix(bun) Export pinoIntegration from @sentry/node (#17990)
    • fix(core,browser): Delete SentryNonRecordingSpan from fetch/xhr map (#19336)
    • fix(core): Explicitly flush log buffer in client.close() (#19371)
    • fix(core): Langgraph state graph invoke accepts null to resume (#19374)
    • fix(core): Wrap decodeURI in node stack trace parser to handle malformed URIs (#19400)
    • fix(deps): Bump nuxt devDependency to fix CVE-2026-24001 (#19249)
    • fix(deps): Bump to latest version of each minimatch major (#19486)
    • fix(nextjs): Apply environment from options if set (#19274)
    • fix(nextjs): Don't set sentry.drop_transaction attribute on spans when skipOpenTelemetrySetup is enabled (#19333)
    • fix(nextjs): Normalize trailing slashes in App Router route parameterization (#19365)
    • fix(nextjs): Return correct lastEventId for SSR pages (#19240)
    • fix(nextjs): Set parameterized transaction name for non-transaction events (#19316)
    • fix(node-core): Align pino mechanism type with spec conventions (#19363)
    • fix(nuxt): Use options.rootDir instead of options.srcDir (#19343)

    <details> <summary><strong>Internal Changes</strong></summary>

    • test(nextjs): Add bun e2e test app (#19318)
    • test(nextjs): Deactivate canary test for cf-workers (#19483)
    • tests(langchain): Fix langchain v1 internal error tests (#19409)
    • ref(nuxt): Remove defineNitroPlugin wrapper (#19334)
    • ref(cloudflare): Move internal files and functions around (#19369)
    • chore: Add external contributor to CHANGELOG.md (#19395)
    • chore: Add github action to notify stale PRs (#19361)
    • chore: add oxfmt changes to blame ignore rev list (#19366)
    • chore: Enhance AI integration guidelines with runtime-specific placemโ€ฆ (#19296)
    • chore: Ignore lerna.json for prettier (#19288)
    • chore: migrate to oxfmt (#19200)
    • chore: Revert to lerna v8 (#19294)
    • chore: Unignore HTML files and reformat with oxfmt (#19311)
    • chore(ci): Adapt max turns of triage issue agent (#19473)
    • chore(ci): Add environment to triage action (#19375)
    • chore(ci): Add id-token: write permission to triage workflow (#19381)
    • chore(ci): Move monorepo to nx (#19325)
    • chore(cursor): Add rules for fetching develop docs (#19377)
    • chore(deps-dev): Bump @sveltejs/kit from 2.49.5 to 2.52.2 in /dev-packages/e2e-tests/test-applications/sveltekit-2 (#19441)
    • chore(deps-dev): Bump @sveltejs/kit from 2.49.5 to 2.52.2 in /dev-packages/e2e-tests/test-applications/sveltekit-2-kit-tracing (#19446)
    • chore(deps-dev): Bump @sveltejs/kit from 2.49.5 to 2.52.2 in /dev-packages/e2e-tests/test-applications/sveltekit-cloudflare-pages (#19462)
    • chore(deps-dev): Bump @sveltejs/kit from 2.50.1 to 2.52.2 (#19442)
    • chore(deps-dev): bump @testing-library/react from 13.0.0 to 15.0.5 (#19194)
    • chore(deps-dev): bump @types/ember__debug from 3.16.5 to 4.0.8 (#19429)
    • chore(deps-dev): bump ember-resolver from 13.0.2 to 13.1.1 (#19301)
    • chore(deps): Bump @actions/glob from 0.4.0 to 0.6.1 (#19427)
    • chore(deps): bump agents from 0.2.32 to 0.3.10 in /dev-packages/e2e-tests/test-applications/cloudflare-mcp (#19326)
    • chore(deps): Bump hono from 4.11.7 to 4.11.10 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#19438)
    • chore(deps): Bump Sentry CLI to latest v2 (#19477)
    • chore(deps): Bump transitive dep fast-xml-parser (#19433)
    • chore(deps): upgrade tar to 7.5.9 to fix CVE-2026-26960 (#19445)
    • chore(github): Add allowedTools to Claude GitHub action (#19386)
    • chore(github): Add workflow to trigger triage-issue skill (#19358)
    • chore(github): Add write tool for markdown report (#19387)
    • chore(github): Change tool permission path (#19389)
    • chore(llm): Add triage-issue skill (#19356)
    • chore(llm): Better defense against prompt injection in triage skill (#19410)
    • chore(llm): Make cross-repo search optional and remove file cleanup (#19401)
    • chore(node-core): Make @sentry/opentelemetry not a peer dep in nodeโ€ฆ (#19308)
    • chore(repo): Allow WebFetch for Sentry docs in Claude settings (#18890)
    • chore(repo): Increase number of concurrently running nx tasks (#19443)
    • chore(skills): Add security notes for injection defense (#19379)
    • chore(triage-action): Fix JSON parsing (#19471)
    • chore(triage-issue): Improve triage prompt for accuracy (#19454)
    • chore(triage-skill): Add GitHub parsing python util script (#19405)
    • chore(triage-skill): Increase num_turns and add script to post summary (#19456)
    • ci(fix-security-vulnerability): Add id token write permission (#19412)
    • ci(fix-security-vulnerability): Be specific about how to fetch the alert page (#19414)
    • ci(fix-security-vulnerability): Run fetch alert first before executing skill (#19418)
    • ci(fix-security-vulnerability): Use opus 4.6 (#19416)
    • ci(github): Add tilde to file path to not exact-match (#19392)
    • ci(triage-skill): Allow Write and remove rm permission (#19397)
    • ci(triage-skill): Run on opened issues (#19423)
    • docs(nuxt): Remove duplicated setup instructions (#19422)
    • feat(ci): Add security vulnerability skill action (#19355) </details>

    Work in this release was contributed by @LudvigHz and @jadengis. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.02 KB
    @sentry/browser - with treeshaking flags 23.56 KB
    @sentry/browser (incl. Tracing) 41.43 KB
    @sentry/browser (incl. Tracing, Profiling) 45.98 KB
    @sentry/browser (incl. Tracing, Replay) 79.34 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.2 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.92 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.9 KB
    @sentry/browser (incl. Feedback) 41.43 KB
    @sentry/browser (incl. sendFeedback) 29.58 KB
    @sentry/browser (incl. FeedbackAsync) 34.51 KB
    @sentry/browser (incl. Metrics) 26.16 KB
    @sentry/browser (incl. Logs) 26.3 KB
    @sentry/browser (incl. Metrics & Logs) 26.96 KB
    @sentry/react 26.73 KB
    @sentry/react (incl. Tracing) 43.71 KB
    @sentry/vue 29.36 KB
    @sentry/vue (incl. Tracing) 43.23 KB
    @sentry/svelte 25.04 KB
    CDN Bundle 27.5 KB
    CDN Bundle (incl. Tracing) 42.24 KB
    CDN Bundle (incl. Logs, Metrics) 28.32 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43.06 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.49 KB
    CDN Bundle (incl. Tracing, Replay) 78.25 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.1 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.64 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.5 KB
    CDN Bundle - uncompressed 80.41 KB
    CDN Bundle (incl. Tracing) - uncompressed 125.06 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 83.18 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 127.82 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 203.94 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.2 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 241.95 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 251.81 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 254.55 KB
    @sentry/nextjs (client) 46.07 KB
    @sentry/sveltekit (client) 41.88 KB
    @sentry/node-core 50.95 KB
    @sentry/node 169.38 KB
    @sentry/node - without tracing 95.04 KB
    @sentry/aws-serverless 110.47 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(tanstackstart-react): Add global sentry exception middlewares (#19330)

      The sentryGlobalRequestMiddleware and sentryGlobalFunctionMiddleware global middlewares capture unhandled exceptions thrown in TanStack Start API routes and server functions. Add them as the first entries in the requestMiddleware and functionMiddleware arrays of createStart():

      import { createStart } from '@tanstack/react-start/server';
      import { sentryGlobalRequestMiddleware, sentryGlobalFunctionMiddleware } from '@sentry/tanstackstart-react/server';
      
      export default createStart({
        requestMiddleware: [sentryGlobalRequestMiddleware, myRequestMiddleware],
        functionMiddleware: [sentryGlobalFunctionMiddleware, myFunctionMiddleware],
      });
      
    • feat(tanstackstart-react)!: Export Vite plugin from @sentry/tanstackstart-react/vite subpath (#19182)

      The sentryTanstackStart Vite plugin is now exported from a dedicated subpath. Update your import:

      - import { sentryTanstackStart } from '@sentry/tanstackstart-react';
      + import { sentryTanstackStart } from '@sentry/tanstackstart-react/vite';
      
    • fix(node-core): Reduce bundle size by removing apm-js-collab and requiring pino >= 9.10 (#18631)

      In order to keep receiving pino logs, you need to update your pino version to >= 9.10, the reason for the support bump is to reduce the bundle size of the node-core SDK in frameworks that cannot tree-shake the apm-js-collab dependency.

    • fix(browser): Ensure user id is consistently added to sessions (#19341)

      Previously, the SDK inconsistently set the user id on sessions, meaning sessions were often lacking proper coupling to the user set for example via Sentry.setUser(). Additionally, the SDK incorrectly skipped starting a new session for the first soft navigation after the pageload. This patch fixes these issues. As a result, metrics around sessions, like "Crash Free Sessions" or "Crash Free Users" might change. This could also trigger alerts, depending on your set thresholds and conditions. We apologize for any inconvenience caused!

      While we're at it, if you're using Sentry in a Single Page App or meta framework, you might want to give the new 'page' session lifecycle a try! This new mode no longer creates a session per soft navigation but continues the initial session until the next hard page refresh. Check out the docs to learn more!

    • ref!(gatsby): Drop Gatsby v2 support (#19467)

      We drop support for Gatsby v2 (which still relies on webpack 4) for a critical security update in https://github.com/getsentry/sentry-javascript-bundler-plugins/releases/tag/5.0.0

    Other Changes

    • feat(astro): Add support for Astro on CF Workers (#19265)
    • feat(cloudflare): Instrument async KV API (#19404)
    • feat(core): Add framework-agnostic tunnel handler (#18892)
    • feat(deno): Export logs API from Deno SDK (#19313)
    • feat(deno): Export metrics API from Deno SDK (#19305)
    • feat(deno): instrument Deno.serve with async context support (#19230)
    • feat(deps): bump babel-loader from 8.2.5 to 10.0.0 (#19303)
    • feat(deps): bump body-parser from 1.20.4 to 2.2.2 (#19191)
    • feat(deps): Bump hono from 4.11.7 to 4.11.10 (#19440)
    • feat(deps): bump qs from 6.14.1 to 6.14.2 (#19310)
    • feat(deps): bump the opentelemetry group with 4 updates (#19425)
    • feat(feedback): Add setTheme() to dynamically update feedback widget color scheme (#19430)
    • feat(nextjs): Add sourcemaps.filesToDeleteAfterUpload as a top-level option (#19280)
    • feat(node): Add ignoreConnectSpans option to postgresIntegration (#19291)
    • feat(node): Bump to latest @fastify/otel (#19452)
    • fix: Bump bundler plugins to v5 (#19468)
    • fix: updated the codecov config (#19350)
    • fix(aws-serverless): Prevent crash in isPromiseAllSettledResult with null/undefined array elements (#19346)
    • fix(bun) Export pinoIntegration from @sentry/node (#17990)
    • fix(core,browser): Delete SentryNonRecordingSpan from fetch/xhr map (#19336)
    • fix(core): Explicitly flush log buffer in client.close() (#19371)
    • fix(core): Langgraph state graph invoke accepts null to resume (#19374)
    • fix(core): Wrap decodeURI in node stack trace parser to handle malformed URIs (#19400)
    • fix(deps): Bump nuxt devDependency to fix CVE-2026-24001 (#19249)
    • fix(deps): Bump to latest version of each minimatch major (#19486)
    • fix(nextjs): Apply environment from options if set (#19274)
    • fix(nextjs): Don't set sentry.drop_transaction attribute on spans when skipOpenTelemetrySetup is enabled (#19333)
    • fix(nextjs): Normalize trailing slashes in App Router route parameterization (#19365)
    • fix(nextjs): Return correct lastEventId for SSR pages (#19240)
    • fix(nextjs): Set parameterized transaction name for non-transaction events (#19316)
    • fix(node-core): Align pino mechanism type with spec conventions (#19363)
    • fix(nuxt): Use options.rootDir instead of options.srcDir (#19343)

    <details> <summary><strong>Internal Changes</strong></summary>

    • test(nextjs): Add bun e2e test app (#19318)
    • test(nextjs): Deactivate canary test for cf-workers (#19483)
    • tests(langchain): Fix langchain v1 internal error tests (#19409)
    • ref(nuxt): Remove defineNitroPlugin wrapper (#19334)
    • ref(cloudflare): Move internal files and functions around (#19369)
    • chore: Add external contributor to CHANGELOG.md (#19395)
    • chore: Add github action to notify stale PRs (#19361)
    • chore: add oxfmt changes to blame ignore rev list (#19366)
    • chore: Enhance AI integration guidelines with runtime-specific placemโ€ฆ (#19296)
    • chore: Ignore lerna.json for prettier (#19288)
    • chore: migrate to oxfmt (#19200)
    • chore: Revert to lerna v8 (#19294)
    • chore: Unignore HTML files and reformat with oxfmt (#19311)
    • chore(ci): Adapt max turns of triage issue agent (#19473)
    • chore(ci): Add environment to triage action (#19375)
    • chore(ci): Add id-token: write permission to triage workflow (#19381)
    • chore(ci): Move monorepo to nx (#19325)
    • chore(cursor): Add rules for fetching develop docs (#19377)
    • chore(deps-dev): Bump @sveltejs/kit from 2.49.5 to 2.52.2 in /dev-packages/e2e-tests/test-applications/sveltekit-2 (#19441)
    • chore(deps-dev): Bump @sveltejs/kit from 2.49.5 to 2.52.2 in /dev-packages/e2e-tests/test-applications/sveltekit-2-kit-tracing (#19446)
    • chore(deps-dev): Bump @sveltejs/kit from 2.49.5 to 2.52.2 in /dev-packages/e2e-tests/test-applications/sveltekit-cloudflare-pages (#19462)
    • chore(deps-dev): Bump @sveltejs/kit from 2.50.1 to 2.52.2 (#19442)
    • chore(deps-dev): bump @testing-library/react from 13.0.0 to 15.0.5 (#19194)
    • chore(deps-dev): bump @types/ember__debug from 3.16.5 to 4.0.8 (#19429)
    • chore(deps-dev): bump ember-resolver from 13.0.2 to 13.1.1 (#19301)
    • chore(deps): Bump @actions/glob from 0.4.0 to 0.6.1 (#19427)
    • chore(deps): bump agents from 0.2.32 to 0.3.10 in /dev-packages/e2e-tests/test-applications/cloudflare-mcp (#19326)
    • chore(deps): Bump hono from 4.11.7 to 4.11.10 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#19438)
    • chore(deps): Bump Sentry CLI to latest v2 (#19477)
    • chore(deps): Bump transitive dep fast-xml-parser (#19433)
    • chore(deps): upgrade tar to 7.5.9 to fix CVE-2026-26960 (#19445)
    • chore(github): Add allowedTools to Claude GitHub action (#19386)
    • chore(github): Add workflow to trigger triage-issue skill (#19358)
    • chore(github): Add write tool for markdown report (#19387)
    • chore(github): Change tool permission path (#19389)
    • chore(llm): Add triage-issue skill (#19356)
    • chore(llm): Better defense against prompt injection in triage skill (#19410)
    • chore(llm): Make cross-repo search optional and remove file cleanup (#19401)
    • chore(node-core): Make @sentry/opentelemetry not a peer dep in nodeโ€ฆ (#19308)
    • chore(repo): Allow WebFetch for Sentry docs in Claude settings (#18890)
    • chore(repo): Increase number of concurrently running nx tasks (#19443)
    • chore(skills): Add security notes for injection defense (#19379)
    • chore(triage-action): Fix JSON parsing (#19471)
    • chore(triage-issue): Improve triage prompt for accuracy (#19454)
    • chore(triage-skill): Add GitHub parsing python util script (#19405)
    • chore(triage-skill): Increase num_turns and add script to post summary (#19456)
    • ci(fix-security-vulnerability): Add id token write permission (#19412)
    • ci(fix-security-vulnerability): Be specific about how to fetch the alert page (#19414)
    • ci(fix-security-vulnerability): Run fetch alert first before executing skill (#19418)
    • ci(fix-security-vulnerability): Use opus 4.6 (#19416)
    • ci(github): Add tilde to file path to not exact-match (#19392)
    • ci(triage-skill): Allow Write and remove rm permission (#19397)
    • ci(triage-skill): Run on opened issues (#19423)
    • docs(nuxt): Remove duplicated setup instructions (#19422)
    • feat(ci): Add security vulnerability skill action (#19355) </details>

    Work in this release was contributed by @LudvigHz and @jadengis. Thank you for your contributions!

    Open source โ†’
  38. 10.39.016 Feb 2026
    Release notes

    Important Changes

    • feat(tanstackstart-react): Auto-instrument server function middleware (#19001)

      The sentryTanstackStart Vite plugin now automatically instruments middleware in createServerFn().middleware([...]) calls. This captures performance data without requiring manual wrapping with wrapMiddlewaresWithSentry().

    • feat(nextjs): New experimental automatic vercel cron monitoring (#19192)

      Setting _experimental.vercelCronMonitoring to true in your Sentry configuration will automatically create Sentry cron monitors for your Vercel Cron Jobs.

      Please note that this is an experimental unstable feature and subject to change.

      // next.config.ts
      export default withSentryConfig(nextConfig, {
        _experimental: {
          vercelCronMonitoring: true,
        },
      });
      
    • feat(node-core): Add node-core/light (#18502)

      This release adds a new light-weight @sentry/node-core/light export to @sentry/node-core. The export acts as a light-weight SDK that does not depend on OpenTelemetry and emits no spans.

      Use this SDK when:

      • You only need error tracking, logs or metrics without tracing data (no spans)
      • You want to minimize bundle size and runtime overhead
      • You don't need spans emitted by OpenTelemetry instrumentation

      It supports error tracking and reporting, logs, metrics, automatic request isolation (requires Node.js 22+) and basic tracing via our Sentry.startSpan* APIs.

      Install the SDK by running

      npm install @sentry/node-core
      

      and add Sentry at the top of your application's entry file:

      import * as Sentry from '@sentry/node-core/light';
      
      Sentry.init({
        dsn: '__DSN__',
      });
      

    Other Changes

    • feat(browser): Add mode option for the browser session integration (#18997)
    • feat(browser): Include culture context with events (#19148)
    • feat(browser): Trace continuation from server-timing headers (#18673)
    • feat(core,cloudflare): Enable certain fields with env variables (#19245)
    • feat(deps): bump @isaacs/brace-expansion from 5.0.0 to 5.0.1 (#19149)
    • feat(deps): bump @sentry/bundler-plugin-core from 4.8.0 to 4.9.0 (#19190)
    • feat(deps): Bump glob in @sentry/react-router (#19162)
    • feat(deps): bump hono from 4.11.1 to 4.11.7 (#19068)
    • feat(hono): Add base for Sentry Hono middleware (Cloudflare) (#18787)
    • feat(nextjs): Set cloudflare runtime (#19084)
    • feat(node-core): Add outgoing fetch trace propagation to light mode (#19262)
    • feat(react): Add lazyRouteManifest option to resolve lazy-route names (#19086)
    • feat(vercel-ai): Add rerank support and fix token attribute mapping (#19144)
    • fix(core): Avoid blocking the process for weightBasedFlushing (#19174)
    • fix(core): Avoid blocking the process when calling flush on empty buffer (#19062)
    • fix(core): Ensure partially set SDK metadata options are preserved (#19102)
    • fix(core): Fix truncation to only keep last message in vercel (#19080)
    • fix(core): Intercept .withResponse() to preserve OpenAI stream instrumentation (#19122)
    • fix(core): Prevent infinite recursion when event processor throws (#19110)
    • fix(core): Record client report with reason for HTTP 413 responses (#19093)
    • fix(core): Remove outdated _experiments.enableMetrics references from metrics JSDoc (#19252)
    • fix(core): Respect event.event_id in scope.captureEvent return value (#19113)
    • fix(core): use sessionId for MCP transport correlation (#19172)
    • fix(deps): Bump @nestjs/platform-express to 11.1.13 (#19206)
    • fix(deps): Bump diff to 5.2.2 (#19228)
    • fix(deps): Bump js-yaml to 3.14.2 and 4.1.1 (#19216)
    • fix(deps): Bump lodash to 4.17.23 (#19211)
    • fix(deps): Bump mdast-util-to-hast to 13.2.1 (#19205)
    • fix(deps): Bump node-forge to 1.3.2 (#19183)
    • fix(deps): Bump react-router to 6.30.3 (#19212)
    • fix(deps): Bump sinon to 21.0.1 in @sentry/ember (#19246)
    • fix(deps): Bump vite to 5.4.21 (#19214)
    • fix(nextjs): Expose an event id when captureUnderscoreErrorException captures an exception (#19185)
    • fix(nextjs): Populate SENTRY_SERVER_MODULES in Turbopack (#19231)
    • fix(node): Use snake_case for Fastify's request-handler op. (#18729)
    • fix(nuxt): Avoid logging database skip warning when debug is disabled (#19095)
    • fix(nuxt): Respect configured environment settings (#19243)
    • fix(profiling-node): 137 ABI should not be pruned for node 24 (#19236)
    • fix(replay): Improve error messages when compression worker fails to load (#19008)
    • fix(svelte): Bump svelte dev dependency to 3.59.2 (#19208)
    • fix(sveltekit): Detect used adapter via svelte.config.js (#19270)
    • fix(tanstackstart-react): Use auto.middleware.tanstackstart as middleware trace origin (#19137)
    • ref(core): Move shouldPropagateTraceForUrl from opentelemetry to core (#19254)
    • ref(core): Move shouldPropagateTraceForUrl from opentelemetry to core (#19258)
    • ref(sveltekit): Use untrack to read route id without invalidation (#19272)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add cursor rules for AI integrations contributions (#19167)
    • chore: Add Makefiles for dev-packages to make it convenient to run tests (#19203)
    • chore: bump prettier to 3.8 (#19198)
    • chore(bugbot): Add rule to flag not-unref'd timers (#19082)
    • chore(deps-dev): bump @sveltejs/kit from 2.49.5 to 2.50.1 (#19089)
    • chore(deps-dev): bump ts-node from 10.9.1 to 10.9.2 (#19189)
    • chore(deps-dev): bump vite from 3.2.11 to 5.4.21 (#19227)
    • chore(deps-dev): bump webpack from 5.95.0 to 5.104.1 (#19199)
    • chore(deps-dev): bump yaml from 2.2.2 to 2.8.2 (#19087)
    • chore(deps): Bump Apollo Server from v3 to v5 in integration tests (#19202)
    • chore(deps): Bump express in test utils + e2e apps (#19159)
    • chore(deps): Bump Lerna to v9 (#19244)
    • chore(deps): Bump mongoose in integration tests (#19175)
    • chore(deps): Bump solidjs to 1.9.11 to fix seroval alerts (#19150)
    • chore(deps): Bump webpack from 5.97.0 to 5.104.0 in ember-classic e2e test (#19239)
    • chore(deps): Bump webpack from 5.104.0 to 5.104.1 in ember-classic e2e test (#19247)
    • chore(e2e): Add banner to readme (#19138)
    • chore(llm): Add skill for fixing security vulnerabilities (#19178)
    • chore(node-core): Fix node-core integration test assertions (#19219)
    • ci: Ignore ticket creation for base branches other than develop/master (#19103)
    • ci(e2e): Remove nextjs-turbo canary tests (#19118)
    • ref: Removes unused eslint rule (via yarn fix) (#19266)
    • test(e2e): Bump nextjs-t3 to next 15 (#19130)
    • test(e2e): Migrate test app nextjs-turbo into nextjs-15 (#19107)

    </details>

    Work in this release was contributed by @limbonaut and @rfoel. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.96 KB
    @sentry/browser - with treeshaking flags 23.51 KB
    @sentry/browser (incl. Tracing) 41.37 KB
    @sentry/browser (incl. Tracing, Profiling) 45.93 KB
    @sentry/browser (incl. Tracing, Replay) 79.28 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.14 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.85 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.73 KB
    @sentry/browser (incl. Feedback) 41.3 KB
    @sentry/browser (incl. sendFeedback) 29.53 KB
    @sentry/browser (incl. FeedbackAsync) 34.4 KB
    @sentry/browser (incl. Metrics) 26.11 KB
    @sentry/browser (incl. Logs) 26.25 KB
    @sentry/browser (incl. Metrics & Logs) 26.91 KB
    @sentry/react 26.69 KB
    @sentry/react (incl. Tracing) 43.67 KB
    @sentry/vue 29.31 KB
    @sentry/vue (incl. Tracing) 43.18 KB
    @sentry/svelte 24.98 KB
    CDN Bundle 27.45 KB
    CDN Bundle (incl. Tracing) 42.19 KB
    CDN Bundle (incl. Logs, Metrics) 28.27 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 43 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.43 KB
    CDN Bundle (incl. Tracing, Replay) 78.2 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 79.05 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.5 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.37 KB
    CDN Bundle - uncompressed 80.29 KB
    CDN Bundle (incl. Tracing) - uncompressed 124.93 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 83.06 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 127.7 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 203.82 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.07 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 241.83 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 251.57 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 254.32 KB
    @sentry/nextjs (client) 45.94 KB
    @sentry/sveltekit (client) 41.81 KB
    @sentry/node-core 50.93 KB
    @sentry/node 162.61 KB
    @sentry/node - without tracing 91.75 KB
    @sentry/aws-serverless 106.89 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(tanstackstart-react): Auto-instrument server function middleware (#19001)

      The sentryTanstackStart Vite plugin now automatically instruments middleware in createServerFn().middleware([...]) calls. This captures performance data without requiring manual wrapping with wrapMiddlewaresWithSentry().

    • feat(nextjs): New experimental automatic vercel cron monitoring (#19192)

      Setting _experimental.vercelCronMonitoring to true in your Sentry configuration will automatically create Sentry cron monitors for your Vercel Cron Jobs.

      Please note that this is an experimental unstable feature and subject to change.

      // next.config.ts
      export default withSentryConfig(nextConfig, {
        _experimental: {
          vercelCronMonitoring: true,
        },
      });
      
    • feat(node-core): Add node-core/light (#18502)

      This release adds a new light-weight @sentry/node-core/light export to @sentry/node-core. The export acts as a light-weight SDK that does not depend on OpenTelemetry and emits no spans.

      Use this SDK when:

      • You only need error tracking, logs or metrics without tracing data (no spans)
      • You want to minimize bundle size and runtime overhead
      • You don't need spans emitted by OpenTelemetry instrumentation

      It supports error tracking and reporting, logs, metrics, automatic request isolation (requires Node.js 22+) and basic tracing via our Sentry.startSpan* APIs.

      Install the SDK by running

      npm install @sentry/node-core
      

      and add Sentry at the top of your application's entry file:

      import * as Sentry from '@sentry/node-core/light';
      
      Sentry.init({
        dsn: '__DSN__',
      });
      

    Other Changes

    • feat(browser): Add mode option for the browser session integration (#18997)
    • feat(browser): Include culture context with events (#19148)
    • feat(browser): Trace continuation from server-timing headers (#18673)
    • feat(core,cloudflare): Enable certain fields with env variables (#19245)
    • feat(deps): bump @isaacs/brace-expansion from 5.0.0 to 5.0.1 (#19149)
    • feat(deps): bump @sentry/bundler-plugin-core from 4.8.0 to 4.9.0 (#19190)
    • feat(deps): Bump glob in @sentry/react-router (#19162)
    • feat(deps): bump hono from 4.11.1 to 4.11.7 (#19068)
    • feat(hono): Add base for Sentry Hono middleware (Cloudflare) (#18787)
    • feat(nextjs): Set cloudflare runtime (#19084)
    • feat(node-core): Add outgoing fetch trace propagation to light mode (#19262)
    • feat(react): Add lazyRouteManifest option to resolve lazy-route names (#19086)
    • feat(vercel-ai): Add rerank support and fix token attribute mapping (#19144)
    • fix(core): Avoid blocking the process for weightBasedFlushing (#19174)
    • fix(core): Avoid blocking the process when calling flush on empty buffer (#19062)
    • fix(core): Ensure partially set SDK metadata options are preserved (#19102)
    • fix(core): Fix truncation to only keep last message in vercel (#19080)
    • fix(core): Intercept .withResponse() to preserve OpenAI stream instrumentation (#19122)
    • fix(core): Prevent infinite recursion when event processor throws (#19110)
    • fix(core): Record client report with reason for HTTP 413 responses (#19093)
    • fix(core): Remove outdated _experiments.enableMetrics references from metrics JSDoc (#19252)
    • fix(core): Respect event.event_id in scope.captureEvent return value (#19113)
    • fix(core): use sessionId for MCP transport correlation (#19172)
    • fix(deps): Bump @nestjs/platform-express to 11.1.13 (#19206)
    • fix(deps): Bump diff to 5.2.2 (#19228)
    • fix(deps): Bump js-yaml to 3.14.2 and 4.1.1 (#19216)
    • fix(deps): Bump lodash to 4.17.23 (#19211)
    • fix(deps): Bump mdast-util-to-hast to 13.2.1 (#19205)
    • fix(deps): Bump node-forge to 1.3.2 (#19183)
    • fix(deps): Bump react-router to 6.30.3 (#19212)
    • fix(deps): Bump sinon to 21.0.1 in @sentry/ember (#19246)
    • fix(deps): Bump vite to 5.4.21 (#19214)
    • fix(nextjs): Expose an event id when captureUnderscoreErrorException captures an exception (#19185)
    • fix(nextjs): Populate SENTRY_SERVER_MODULES in Turbopack (#19231)
    • fix(node): Use snake_case for Fastify's request-handler op. (#18729)
    • fix(nuxt): Avoid logging database skip warning when debug is disabled (#19095)
    • fix(nuxt): Respect configured environment settings (#19243)
    • fix(profiling-node): 137 ABI should not be pruned for node 24 (#19236)
    • fix(replay): Improve error messages when compression worker fails to load (#19008)
    • fix(svelte): Bump svelte dev dependency to 3.59.2 (#19208)
    • fix(sveltekit): Detect used adapter via svelte.config.js (#19270)
    • fix(tanstackstart-react): Use auto.middleware.tanstackstart as middleware trace origin (#19137)
    • ref(core): Move shouldPropagateTraceForUrl from opentelemetry to core (#19254)
    • ref(core): Move shouldPropagateTraceForUrl from opentelemetry to core (#19258)
    • ref(sveltekit): Use untrack to read route id without invalidation (#19272)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Add cursor rules for AI integrations contributions (#19167)
    • chore: Add Makefiles for dev-packages to make it convenient to run tests (#19203)
    • chore: bump prettier to 3.8 (#19198)
    • chore(bugbot): Add rule to flag not-unref'd timers (#19082)
    • chore(deps-dev): bump @sveltejs/kit from 2.49.5 to 2.50.1 (#19089)
    • chore(deps-dev): bump ts-node from 10.9.1 to 10.9.2 (#19189)
    • chore(deps-dev): bump vite from 3.2.11 to 5.4.21 (#19227)
    • chore(deps-dev): bump webpack from 5.95.0 to 5.104.1 (#19199)
    • chore(deps-dev): bump yaml from 2.2.2 to 2.8.2 (#19087)
    • chore(deps): Bump Apollo Server from v3 to v5 in integration tests (#19202)
    • chore(deps): Bump express in test utils + e2e apps (#19159)
    • chore(deps): Bump Lerna to v9 (#19244)
    • chore(deps): Bump mongoose in integration tests (#19175)
    • chore(deps): Bump solidjs to 1.9.11 to fix seroval alerts (#19150)
    • chore(deps): Bump webpack from 5.97.0 to 5.104.0 in ember-classic e2e test (#19239)
    • chore(deps): Bump webpack from 5.104.0 to 5.104.1 in ember-classic e2e test (#19247)
    • chore(e2e): Add banner to readme (#19138)
    • chore(llm): Add skill for fixing security vulnerabilities (#19178)
    • chore(node-core): Fix node-core integration test assertions (#19219)
    • ci: Ignore ticket creation for base branches other than develop/master (#19103)
    • ci(e2e): Remove nextjs-turbo canary tests (#19118)
    • ref: Removes unused eslint rule (via yarn fix) (#19266)
    • test(e2e): Bump nextjs-t3 to next 15 (#19130)
    • test(e2e): Migrate test app nextjs-turbo into nextjs-15 (#19107)

    </details>

    Work in this release was contributed by @limbonaut and @rfoel. Thank you for your contributions!

    Open source โ†’
  39. 10.39.0-alpha.013 Feb 2026pre-release
    Release notes

    This preview release includes updates to our Span Streaming PoC implementation. Use at your own risk.

    New:

    • Browser: SDKs now also use a span buffer, flushing periodically, on span amount limit and on segment span end
    • Browser: It's now enough to only register spanStreamingIntegration in Sentry.init.() to opt into span streaming
    • Browser: sentry.replay_id attribute is attached to spans started during an active replay
    • Browser: sentry.profiler_id attribute is attached to spans started while the continuous profiler is running
    • Browser: Web vital spans are sent as v2 spans
    • Browser: spanStreamingIntegration is now exported from CDN bundles supporting tracing

    Known issues:

    • Missing data from various integrations and framework SDKs
    • ignoreSpans is not yet applied

    Untested:

    • Meta frameworks or framework SDKs building on top of @sentry/browser or @sentry/node. Likely, data is missing, noisy spans are not filtered, etc.

    Usage (At your own risk)

    Browser

    Sentry.init({
      dsn: '...',
      integrations: [
        Sentry.browserTracingIntegration(),
        Sentry.spanStreamingIntegration(),
      ]
    })
    

    Server (Node)

    Sentry.init({
      dsn: '...',
      traceLifecycle: 'stream',
    })
    

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.93 KB
    @sentry/browser - with treeshaking flags 24.43 KB
    @sentry/browser (incl. Tracing) 42.78 KB
    @sentry/browser (incl. Tracing, Profiling) 47.43 KB
    @sentry/browser (incl. Tracing, Replay) 80.71 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 70.51 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 85.27 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 97.17 KB
    @sentry/browser (incl. Feedback) 42.23 KB
    @sentry/browser (incl. sendFeedback) 30.48 KB
    @sentry/browser (incl. FeedbackAsync) 35.33 KB
    @sentry/browser (incl. Metrics) 26.87 KB
    @sentry/browser (incl. Logs) 27.02 KB
    @sentry/browser (incl. Metrics & Logs) 27.66 KB
    @sentry/react 27.62 KB
    @sentry/react (incl. Tracing) 45.03 KB
    @sentry/vue 30.51 KB
    @sentry/vue (incl. Tracing) 44.58 KB
    @sentry/svelte 25.95 KB
    CDN Bundle 28.18 KB
    CDN Bundle (incl. Tracing) 44.63 KB
    CDN Bundle (incl. Logs, Metrics) 29.01 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 45.44 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 67.21 KB
    CDN Bundle (incl. Tracing, Replay) 80.67 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 81.53 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 86 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 86.84 KB
    CDN Bundle - uncompressed 82.31 KB
    CDN Bundle (incl. Tracing) - uncompressed 132.71 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 135.48 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 205.92 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 247.08 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 249.84 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 259.58 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 262.33 KB
    @sentry/nextjs (client) 47.4 KB
    @sentry/sveltekit (client) 43.23 KB
    @sentry/node-core 51.8 KB
    @sentry/node 165.43 KB
    @sentry/node - without tracing 94.67 KB
    @sentry/aws-serverless 109.55 KB
    Open source โ†’
  40. 10.38.029 Jan 2026
    Release notes

    Important Changes

    • feat(tanstackstart-react): Auto-instrument request middleware (#18989)

    The sentryTanstackStart Vite plugin now automatically instruments middleware arrays in createFileRoute(). This captures performance data without requiring manual wrapping with wrapMiddlewaresWithSentry().

    Other Changes

    • feat: Use v4.8.0 bundler plugins (#18993)
    • feat(browser): Add logs.metrics bundle (#19020)
    • feat(browser): Add replay.logs.metrics bundle (#19021)
    • feat(browser): Add tracing.replay.logs.metrics bundle (#19039)
    • feat(deps): bump import-in-the-middle from 2.0.1 to 2.0.6 (#19042)
    • feat(node): Add AI manual instrumentation exports to Node (#19063)
    • feat(wasm): initialised sentryWasmImages for webworkers (#18812)
    • fix(core): Classify custom AggregateErrors as exception groups (#19053)
    • fix(nextjs): Turn off debugID injection if sourcemaps are explicitly disabled (#19010)
    • fix(react): Avoid String(key) to fix Symbol conversion error (#18982)
    • fix(react): Prevent lazy route handlers from updating wrong navigation span (#18898)

    <details> <summary><strong>Internal Changes</strong></summary>

    • feat(deps-dev): bump @types/rsvp from 4.0.4 to 4.0.9 (#19038)
    • ci(build): Run full test suite on new bundle with logs+metrics (#19065)
    • ci(deps): bump actions/create-github-app-token from 1 to 2 (#19028)
    • ci(deps): bump peter-evans/create-pull-request from 8.0.0 to 8.1.0 (#19029)
    • chore: Add external contributor to CHANGELOG.md (#19005)
    • chore(aws-serverless): Fix local cache issues (#19081)
    • chore(dependabot): Allow all packages to update (#19024)
    • chore(dependabot): Update ignore patterns and add more groups (#19037)
    • chore(dependabot): Update ignore patterns and add more groups (#19043)
    • chore(deps-dev): bump @edge-runtime/types from 3.0.1 to 4.0.0 (#19032)
    • chore(deps-dev): bump @vercel/nft from 0.29.4 to 1.3.0 (#19030)
    • chore(deps): bump @actions/artifact from 2.1.11 to 5.0.3 (#19031)
    • chore(deps): bump hono from 4.11.4 to 4.11.7 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#19009)
    • chore(deps): bump next from 16.0.9 to 16.1.5 in /dev-packages/e2e-tests/test-applications/nextjs-16-cacheComponents (#19012)
    • chore(deps): Bump trpc v11 dependency in e2e test (#19061)
    • chore(deps): Bump wrangler to 4.61.0 (#19023)
    • chore(deps): Upgrade @remix-run deps to 2.17.4 (#19040)
    • chore(deps): Upgrade next versions 15 and 16 (#19057)
    • chore(deps): Upgrade Lerna to v8 (#19050)
    • chore(deps): Upgrade next to 14.2.35 (#19055)
    • chore(deps): Upgrade react-router, @react-router/node, @react-router/serve, @react-router/dev to 7.13.0 (#19026)
    • chore(llm): Add claude skill + cursor command for adding new cdn bundles (#19048)
    • chore(llm): Ignore local Claude settings (#18893)
    • chore(react): Update react-router-5 dev dependency to another than 5.0.0 (#19047)
    • chore(release): Add generate-changelog script (#18999)
    • chore(remix): Upgrade @remix-run/router to ^1.23.2 (#19045)
    • chore(solidstart): Bump peer dependencies of @solidjs/start (#19051)
    • chore(solidstart): Upgrade Vinxi to update h3 peer dependency (#19018)
    • chore(tests): Reject messages from unknown origins in integration tests (#19016)

    </details>

    Work in this release was contributed by @harshit078. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.73 KB
    @sentry/browser - with treeshaking flags 23.27 KB
    @sentry/browser (incl. Tracing) 41.16 KB
    @sentry/browser (incl. Tracing, Profiling) 45.69 KB
    @sentry/browser (incl. Tracing, Replay) 78.87 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.76 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.46 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.37 KB
    @sentry/browser (incl. Feedback) 41.06 KB
    @sentry/browser (incl. sendFeedback) 29.31 KB
    @sentry/browser (incl. FeedbackAsync) 34.19 KB
    @sentry/browser (incl. Metrics) 25.81 KB
    @sentry/browser (incl. Logs) 25.96 KB
    @sentry/browser (incl. Metrics & Logs) 26.61 KB
    @sentry/react 26.42 KB
    @sentry/react (incl. Tracing) 43.34 KB
    @sentry/vue 29.07 KB
    @sentry/vue (incl. Tracing) 42.91 KB
    @sentry/svelte 24.75 KB
    CDN Bundle 27.25 KB
    CDN Bundle (incl. Tracing) 41.93 KB
    CDN Bundle (incl. Logs, Metrics) 28.07 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 42.73 KB
    CDN Bundle (incl. Replay, Logs, Metrics) 66.09 KB
    CDN Bundle (incl. Tracing, Replay) 77.8 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 78.65 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.13 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.03 KB
    CDN Bundle - uncompressed 79.7 KB
    CDN Bundle (incl. Tracing) - uncompressed 124.17 KB
    CDN Bundle (incl. Logs, Metrics) - uncompressed 82.47 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 126.94 KB
    CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 202.96 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 238.04 KB
    CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 240.8 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 250.54 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 253.29 KB
    @sentry/nextjs (client) 45.63 KB
    @sentry/sveltekit (client) 41.52 KB
    @sentry/node-core 50.85 KB
    @sentry/node 162.19 KB
    @sentry/node - without tracing 91.64 KB
    @sentry/aws-serverless 106.79 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(tanstackstart-react): Auto-instrument request middleware (#18989)

      The sentryTanstackStart Vite plugin now automatically instruments middleware arrays in createFileRoute(). This captures performance data without requiring manual wrapping with wrapMiddlewaresWithSentry().

    Other Changes

    • feat: Use v4.8.0 bundler plugins (#18993)
    • feat(browser): Add logs.metrics bundle (#19020)
    • feat(browser): Add replay.logs.metrics bundle (#19021)
    • feat(browser): Add tracing.replay.logs.metrics bundle (#19039)
    • feat(deps): bump import-in-the-middle from 2.0.1 to 2.0.6 (#19042)
    • feat(node): Add AI manual instrumentation exports to Node (#19063)
    • feat(wasm): initialised sentryWasmImages for webworkers (#18812)
    • fix(core): Classify custom AggregateErrors as exception groups (#19053)
    • fix(nextjs): Turn off debugID injection if sourcemaps are explicitly disabled (#19010)
    • fix(react): Avoid String(key) to fix Symbol conversion error (#18982)
    • fix(react): Prevent lazy route handlers from updating wrong navigation span (#18898)

    <details> <summary><strong>Internal Changes</strong></summary>

    • feat(deps-dev): bump @types/rsvp from 4.0.4 to 4.0.9 (#19038)
    • ci(build): Run full test suite on new bundle with logs+metrics (#19065)
    • ci(deps): bump actions/create-github-app-token from 1 to 2 (#19028)
    • ci(deps): bump peter-evans/create-pull-request from 8.0.0 to 8.1.0 (#19029)
    • chore: Add external contributor to CHANGELOG.md (#19005)
    • chore(aws-serverless): Fix local cache issues (#19081)
    • chore(dependabot): Allow all packages to update (#19024)
    • chore(dependabot): Update ignore patterns and add more groups (#19037)
    • chore(dependabot): Update ignore patterns and add more groups (#19043)
    • chore(deps-dev): bump @edge-runtime/types from 3.0.1 to 4.0.0 (#19032)
    • chore(deps-dev): bump @vercel/nft from 0.29.4 to 1.3.0 (#19030)
    • chore(deps): bump @actions/artifact from 2.1.11 to 5.0.3 (#19031)
    • chore(deps): bump hono from 4.11.4 to 4.11.7 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#19009)
    • chore(deps): bump next from 16.0.9 to 16.1.5 in /dev-packages/e2e-tests/test-applications/nextjs-16-cacheComponents (#19012)
    • chore(deps): Bump trpc v11 dependency in e2e test (#19061)
    • chore(deps): Bump wrangler to 4.61.0 (#19023)
    • chore(deps): Upgrade @remix-run deps to 2.17.4 (#19040)
    • chore(deps): Upgrade next versions 15 and 16 (#19057)
    • chore(deps): Upgrade Lerna to v8 (#19050)
    • chore(deps): Upgrade next to 14.2.35 (#19055)
    • chore(deps): Upgrade react-router, @react-router/node, @react-router/serve, @react-router/dev to 7.13.0 (#19026)
    • chore(llm): Add claude skill + cursor command for adding new cdn bundles (#19048)
    • chore(llm): Ignore local Claude settings (#18893)
    • chore(react): Update react-router-5 dev dependency to another than 5.0.0 (#19047)
    • chore(release): Add generate-changelog script (#18999)
    • chore(remix): Upgrade @remix-run/router to ^1.23.2 (#19045)
    • chore(solidstart): Bump peer dependencies of @solidjs/start (#19051)
    • chore(solidstart): Upgrade Vinxi to update h3 peer dependency (#19018)
    • chore(tests): Reject messages from unknown origins in integration tests (#19016)

    </details>

    Work in this release was contributed by @harshit078. Thank you for your contribution!

    Open source โ†’
  41. 10.37.027 Jan 2026
    Release notes

    Important Changes

    • feat(core): Introduces a new Sentry.setConversationId() API to track multi turn AI conversations across API calls. (#18909)

      You can now set a conversation ID that will be automatically applied to spans within that scope. This allows you to link traces from the same conversation together.

      import * as Sentry from '@sentry/node';
      
      // Set conversation ID for all subsequent spans
      Sentry.setConversationId('conv_abc123');
      
      // All AI spans will now include the gen_ai.conversation.id attribute
      await openai.chat.completions.create({...});
      

      This is particularly useful for tracking multiple AI API calls that are part of the same conversation, allowing you to analyze entire conversation flows in Sentry. The conversation ID is stored on the isolation scope and automatically applied to spans via the new conversationIdIntegration.

    • feat(tanstackstart-react): Auto-instrument global middleware in sentryTanstackStart Vite plugin (#18844)

      The sentryTanstackStart Vite plugin now automatically instruments requestMiddleware and functionMiddleware arrays in createStart(). This captures performance data without requiring manual wrapping.

      Auto-instrumentation is enabled by default. To disable it:

      // vite.config.ts
      sentryTanstackStart({
        authToken: process.env.SENTRY_AUTH_TOKEN,
        org: 'your-org',
        project: 'your-project',
        autoInstrumentMiddleware: false,
      });
      

    Other Changes

    • feat(core): simplify truncation logic to only keep the newest message (#18906)
    • feat(core): Support new client discard reason invalid (#18901)
    • feat(deps): Bump OpenTelemetry instrumentations (#18934)
    • feat(nextjs): Update default ignore list for sourcemaps (#18938)
    • feat(node): pass prisma instrumentation options through (#18900)
    • feat(nuxt): Don't run source maps related code on Nuxt "prepare" (#18936)
    • feat(replay): Update client report discard reason for invalid sessions (#18796)
    • feat(winston): Add customLevelMap for winston transport (#18922)
    • feat(react-router): Add support for React Router instrumentation API (#18580)
    • fix(astro): Do not show warnings for valid options (#18947)
    • fix(core): Report well known values in gen_ai.operation.name attribute (#18925)
    • fix(node-core): ignore vercel AbortError by default on unhandled rejection (#18973)
    • fix(nuxt): include sentry.config.server.ts in nuxt app types (#18971)
    • fix(profiling): Add platform to envelope item header (#18954)
    • fix(react): Defer React Router span finalization until lazy routes load (#18881)
    • ref(core): rename gen_ai.input.messages.original_length to sentry.sdk_meta.gen_ai.input.messages.original_length (#18970)
    • ref(core): rename gen_ai.request.messages to gen_ai.input.messages (#18944)
    • ref(core): Set system message as separate attribute (#18978)
    • deps: Bump version of sentry-bundler-plugins (#18972)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore(e2e): Add e2e claude skill (#18957)
    • chore(e2e): Add Makefile to make running specific e2e test apps easier (#18953)
    • chore(e2e): Modify e2e skill to also account for untracked files (#18959)
    • ref(tests): use constants in ai integration tests and add missing ones (#18945)
    • test(nextjs): Added nextjs CF workers test app (#18928)
    • test(prisma): Move to yarn prisma (#18975)

    </details>

    Work in this release was contributed by @sebws, @harshit078, and @fedetorre. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.73 KB
    @sentry/browser - with treeshaking flags 23.27 KB
    @sentry/browser (incl. Tracing) 41.15 KB
    @sentry/browser (incl. Tracing, Profiling) 45.68 KB
    @sentry/browser (incl. Tracing, Replay) 78.86 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.75 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.46 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.36 KB
    @sentry/browser (incl. Feedback) 41.06 KB
    @sentry/browser (incl. sendFeedback) 29.31 KB
    @sentry/browser (incl. FeedbackAsync) 34.19 KB
    @sentry/browser (incl. Metrics) 25.81 KB
    @sentry/browser (incl. Logs) 25.95 KB
    @sentry/browser (incl. Metrics & Logs) 26.6 KB
    @sentry/react 26.42 KB
    @sentry/react (incl. Tracing) 43.33 KB
    @sentry/vue 29.07 KB
    @sentry/vue (incl. Tracing) 42.9 KB
    @sentry/svelte 24.74 KB
    CDN Bundle 27.24 KB
    CDN Bundle (incl. Tracing) 41.93 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 42.73 KB
    CDN Bundle (incl. Tracing, Replay) 77.82 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.12 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 84.01 KB
    CDN Bundle - uncompressed 79.69 KB
    CDN Bundle (incl. Tracing) - uncompressed 124.16 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 126.93 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 238.03 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 250.53 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 253.28 KB
    @sentry/nextjs (client) 45.63 KB
    @sentry/sveltekit (client) 41.51 KB
    @sentry/node-core 50.8 KB
    @sentry/node 162.16 KB
    @sentry/node - without tracing 91.59 KB
    @sentry/aws-serverless 106.74 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core): Introduces a new Sentry.setConversationId() API to track multi turn AI conversations across API calls. (#18909)

      You can now set a conversation ID that will be automatically applied to spans within that scope. This allows you to link traces from the same conversation together.

      import * as Sentry from '@sentry/node';
      
      // Set conversation ID for all subsequent spans
      Sentry.setConversationId('conv_abc123');
      
      // All AI spans will now include the gen_ai.conversation.id attribute
      await openai.chat.completions.create({...});
      

      This is particularly useful for tracking multiple AI API calls that are part of the same conversation, allowing you to analyze entire conversation flows in Sentry. The conversation ID is stored on the isolation scope and automatically applied to spans via the new conversationIdIntegration.

    • feat(tanstackstart-react): Auto-instrument global middleware in sentryTanstackStart Vite plugin (#18844)

      The sentryTanstackStart Vite plugin now automatically instruments requestMiddleware and functionMiddleware arrays in createStart(). This captures performance data without requiring manual wrapping.

      Auto-instrumentation is enabled by default. To disable it:

      // vite.config.ts
      sentryTanstackStart({
        authToken: process.env.SENTRY_AUTH_TOKEN,
        org: 'your-org',
        project: 'your-project',
        autoInstrumentMiddleware: false,
      });
      

    Other Changes

    • feat(core): simplify truncation logic to only keep the newest message (#18906)
    • feat(core): Support new client discard reason invalid (#18901)
    • feat(deps): Bump OpenTelemetry instrumentations (#18934)
    • feat(nextjs): Update default ignore list for sourcemaps (#18938)
    • feat(node): pass prisma instrumentation options through (#18900)
    • feat(nuxt): Don't run source maps related code on Nuxt "prepare" (#18936)
    • feat(replay): Update client report discard reason for invalid sessions (#18796)
    • feat(winston): Add customLevelMap for winston transport (#18922)
    • feat(react-router): Add support for React Router instrumentation API (#18580)
    • fix(astro): Do not show warnings for valid options (#18947)
    • fix(core): Report well known values in gen_ai.operation.name attribute (#18925)
    • fix(node-core): ignore vercel AbortError by default on unhandled rejection (#18973)
    • fix(nuxt): include sentry.config.server.ts in nuxt app types (#18971)
    • fix(profiling): Add platform to envelope item header (#18954)
    • fix(react): Defer React Router span finalization until lazy routes load (#18881)
    • ref(core): rename gen_ai.input.messages.original_length to sentry.sdk_meta.gen_ai.input.messages.original_length (#18970)
    • ref(core): rename gen_ai.request.messages to gen_ai.input.messages (#18944)
    • ref(core): Set system message as separate attribute (#18978)
    • deps: Bump version of sentry-bundler-plugins (#18972)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore(e2e): Add e2e claude skill (#18957)
    • chore(e2e): Add Makefile to make running specific e2e test apps easier (#18953)
    • chore(e2e): Modify e2e skill to also account for untracked files (#18959)
    • ref(tests): use constants in ai integration tests and add missing ones (#18945)
    • test(nextjs): Added nextjs CF workers test app (#18928)
    • test(prisma): Move to yarn prisma (#18975)

    </details>

    Work in this release was contributed by @sebws, @harshit078, and @fedetorre. Thank you for your contributions!

    Open source โ†’
  42. 10.36.021 Jan 2026
    Release notes
    • feat(node): Add Prisma v7 support (#18908)
    • feat(opentelemetry): Support db.system.name attribute for database spans (#18902)
    • feat(deps): Bump OpenTelemetry dependencies (#18878)
    • fix(core): Sanitize data URLs in http.client spans (#18896)
    • fix(nextjs): Add ALS runner fallbacks for serverless environments (#18889)
    • fix(node): Profiling debug ID matching (#18817)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore(deps-dev): bump @remix-run/server-runtime from 2.15.2 to 2.17.3 in /packages/remix (#18750)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.61 KB
    @sentry/browser - with treeshaking flags 23.15 KB
    @sentry/browser (incl. Tracing) 41.04 KB
    @sentry/browser (incl. Tracing, Profiling) 45.56 KB
    @sentry/browser (incl. Tracing, Replay) 78.74 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.63 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.32 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.24 KB
    @sentry/browser (incl. Feedback) 40.94 KB
    @sentry/browser (incl. sendFeedback) 29.19 KB
    @sentry/browser (incl. FeedbackAsync) 34.07 KB
    @sentry/browser (incl. Metrics) 25.69 KB
    @sentry/browser (incl. Logs) 25.84 KB
    @sentry/browser (incl. Metrics & Logs) 26.48 KB
    @sentry/react 26.3 KB
    @sentry/react (incl. Tracing) 43.22 KB
    @sentry/vue 28.95 KB
    @sentry/vue (incl. Tracing) 42.79 KB
    @sentry/svelte 24.63 KB
    CDN Bundle 27.13 KB
    CDN Bundle (incl. Tracing) 41.83 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 42.63 KB
    CDN Bundle (incl. Tracing, Replay) 77.67 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.98 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 83.87 KB
    CDN Bundle - uncompressed 79.36 KB
    CDN Bundle (incl. Tracing) - uncompressed 123.84 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 126.61 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 237.64 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 250.14 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 252.89 KB
    @sentry/nextjs (client) 45.53 KB
    @sentry/sveltekit (client) 41.4 KB
    @sentry/node-core 50.68 KB
    @sentry/node 161.54 KB
    @sentry/node - without tracing 91.46 KB
    @sentry/aws-serverless 106.6 KB
    Open source โ†’
    Release notes
    • feat(node): Add Prisma v7 support (#18908)
    • feat(opentelemetry): Support db.system.name attribute for database spans (#18902)
    • feat(deps): Bump OpenTelemetry dependencies (#18878)
    • fix(core): Sanitize data URLs in http.client spans (#18896)
    • fix(nextjs): Add ALS runner fallbacks for serverless environments (#18889)
    • fix(node): Profiling debug ID matching

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore(deps-dev): bump @remix-run/server-runtime from 2.15.2 to 2.17.3 in /packages/remix (#18750)

    </details>

    Open source โ†’
  43. 10.35.019 Jan 2026
    Release notes

    Important Changes

    • feat(tanstackstart-react): Add sentryTanstackStart vite plugin to manage automatic source map uploads (#18712)

      You can now configure source maps upload for TanStack Start using the sentryTanstackStart Vite plugin:

      // vite.config.ts
      import { defineConfig } from 'vite';
      import { sentryTanstackStart } from '@sentry/tanstackstart-react';
      import { tanstackStart } from '@tanstack/react-start/plugin/vite';
      
      export default defineConfig({
        plugins: [
          sentryTanstackStart({
            authToken: process.env.SENTRY_AUTH_TOKEN,
            org: 'your-org',
            project: 'your-project',
          }),
          tanstackStart(),
        ],
      });
      

    Other Changes

    • feat(browser): Add CDN bundle for tracing.replay.feedback.logs.metrics (#18785)
    • feat(browser): Add shim package for logs (#18831)
    • feat(cloudflare): Automatically set the release id when CF_VERSION_METADATA is enabled (#18855)
    • feat(core): Add ignored client report event drop reason (#18815)
    • feat(logs): Add Log exports to browser and node packages (#18857)
    • feat(node-core,bun): Export processSessionIntegration from node-core and add it to bun (#18852)
    • fix(core): Find the correct IP address regardless their case (#18880)
    • fix(core): Check for AI operation id to detect a vercelai span (#18823)
    • fix(ember): Use ES5 syntax in inline vendor scripts (#18858)
    • fix(fetch): Shallow-clone fetch options to prevent mutation (#18867)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore(ci): Use javascript-sdk-gitflow app instead of personal token (#18829)
    • chore(deps): Bump @sveltejs/kit devDependency to 2.49.5 (#18848)
    • chore(deps): Bump bundler plugins to ^4.6.2 (#18822)
    • chore(deps): bump hono from 4.10.3 to 4.11.4 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#18806)
    • chore(test): Bump svelte dependencies (#18850)
    • chore(core): Comment out Error tests in langchain (#18837)
    • meta(changelog): Fix entry for tanstack start vite plugin (#18883)
    • test(e2e): Add testing app for User Feedback (#18877)
    • test(fastify): Verify if upstream error is fixed and won't regress (#18838)

    </details>

    Work in this release was contributed by @rreckonerr. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.52 KB
    @sentry/browser - with treeshaking flags 23.06 KB
    @sentry/browser (incl. Tracing) 40.88 KB
    @sentry/browser (incl. Tracing, Profiling) 45.36 KB
    @sentry/browser (incl. Tracing, Replay) 78.58 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.51 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.18 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.09 KB
    @sentry/browser (incl. Feedback) 40.85 KB
    @sentry/browser (incl. sendFeedback) 29.1 KB
    @sentry/browser (incl. FeedbackAsync) 33.97 KB
    @sentry/browser (incl. Metrics) 25.6 KB
    @sentry/browser (incl. Logs) 25.75 KB
    @sentry/browser (incl. Metrics & Logs) 26.39 KB
    @sentry/react 26.21 KB
    @sentry/react (incl. Tracing) 43.05 KB
    @sentry/vue 28.87 KB
    @sentry/vue (incl. Tracing) 42.65 KB
    @sentry/svelte 24.53 KB
    CDN Bundle 27.02 KB
    CDN Bundle (incl. Tracing) 41.67 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 42.48 KB
    CDN Bundle (incl. Tracing, Replay) 77.51 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.82 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 83.71 KB
    CDN Bundle - uncompressed 79.18 KB
    CDN Bundle (incl. Tracing) - uncompressed 123.53 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 126.3 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 237.33 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 249.83 KB
    CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 252.58 KB
    @sentry/nextjs (client) 45.35 KB
    @sentry/sveltekit (client) 41.26 KB
    @sentry/node-core 50.72 KB
    @sentry/node 158.39 KB
    @sentry/node - without tracing 91.16 KB
    @sentry/aws-serverless 106.3 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(tanstackstart-react): Add sentryTanstackStart vite plugin to manage automatic source map uploads (#18712)

      You can now configure source maps upload for TanStack Start using the sentryTanstackStart Vite plugin:

      // vite.config.ts
      import { defineConfig } from 'vite';
      import { sentryTanstackStart } from '@sentry/tanstackstart-react';
      import { tanstackStart } from '@tanstack/react-start/plugin/vite';
      
      export default defineConfig({
        plugins: [
          sentryTanstackStart({
            authToken: process.env.SENTRY_AUTH_TOKEN,
            org: 'your-org',
            project: 'your-project',
          }),
          tanstackStart(),
        ],
      });
      

    Other Changes

    • feat(browser): Add CDN bundle for tracing.replay.feedback.logs.metrics (#18785)
    • feat(browser): Add shim package for logs (#18831)
    • feat(cloudflare): Automatically set the release id when CF_VERSION_METADATA is enabled (#18855)
    • feat(core): Add ignored client report event drop reason (#18815)
    • feat(logs): Add Log exports to browser and node packages (#18857)
    • feat(node-core,bun): Export processSessionIntegration from node-core and add it to bun (#18852)
    • fix(core): Find the correct IP address regardless their case (#18880)
    • fix(core): Check for AI operation id to detect a vercelai span (#18823)
    • fix(ember): Use ES5 syntax in inline vendor scripts (#18858)
    • fix(fetch): Shallow-clone fetch options to prevent mutation (#18867)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore(ci): Use javascript-sdk-gitflow app instead of personal token (#18829)
    • chore(deps): Bump @sveltejs/kit devDependency to 2.49.5 (#18848)
    • chore(deps): Bump bundler plugins to ^4.6.2 (#18822)
    • chore(deps): bump hono from 4.10.3 to 4.11.4 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#18806)
    • chore(test): Bump svelte dependencies (#18850)
    • chore(core): Comment out Error tests in langchain (#18837)
    • meta(changelog): Fix entry for tanstack start vite plugin (#18883)
    • test(e2e): Add testing app for User Feedback (#18877)
    • test(fastify): Verify if upstream error is fixed and won't regress (#18838)

    </details>

    Work in this release was contributed by @rreckonerr. Thank you for your contribution!

    Open source โ†’
  44. 10.34.014 Jan 2026
    Release notes

    Important Changes

    • feat(core): Add option to enhance the fetch error message (#18466)

      You can now enable enhanced fetch error messages by setting the enhancedFetchErrorMessage option. When enabled, the SDK will include additional context in fetch error messages to help with debugging.

    • feat(nextjs): Add routeManifestInjection option to exclude routes from client bundle (#18798)

      A new routeManifestInjection option allows you to exclude sensitive routes from being injected into the client bundle.

    • feat(tanstackstart-react): Add wrapMiddlewaresWithSentry for manual middleware instrumentation (#18680)

      You can now wrap your middlewares using wrapMiddlewaresWithSentry, allowing you to trace middleware execution in your TanStack Start application.

      import { createMiddleware } from '@tanstack/react-start';
      import { wrapMiddlewaresWithSentry } from '@sentry/tanstackstart-react';
      
      const loggingMiddleware = createMiddleware({ type: 'function' }).server(async ({ next }) => {
        console.log('Request started');
        return next();
      });
      
      export const [wrappedLoggingMiddleware] = wrapMiddlewaresWithSentry({ loggingMiddleware });
      

    Other Changes

    • feat(browser): Add CDN bundle for tracing.logs.metrics (#18784)
    • feat(core,node-core): Consolidate bun and node types with ServerRuntimeOptions (#18734)
    • feat(nextjs): Remove tracing from generation function template (#18733)
    • fix(core): Don't record outcomes for failed client reports (#18808)
    • fix(deno,cloudflare): Prioritize name from params over name from options (#18800)
    • fix(web-vitals): Add error handling for invalid object keys in WeakMap (#18809)

    <details> <summary><strong>Internal Changes</strong></summary>

    • ref(nextjs): Split withSentryConfig (#18777)
    • test(e2e): Pin @shopify/remix-oxygen to unblock ci (#18811)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.52 KB
    @sentry/browser - with treeshaking flags 23.06 KB
    @sentry/browser (incl. Tracing) 40.88 KB
    @sentry/browser (incl. Tracing, Profiling) 45.36 KB
    @sentry/browser (incl. Tracing, Replay) 78.58 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.51 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.17 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.08 KB
    @sentry/browser (incl. Feedback) 40.85 KB
    @sentry/browser (incl. sendFeedback) 29.1 KB
    @sentry/browser (incl. FeedbackAsync) 33.97 KB
    @sentry/browser (incl. Metrics) 25.6 KB
    @sentry/browser (incl. Logs) 25.75 KB
    @sentry/browser (incl. Metrics & Logs) 26.39 KB
    @sentry/react 26.21 KB
    @sentry/react (incl. Tracing) 43.05 KB
    @sentry/vue 28.87 KB
    @sentry/vue (incl. Tracing) 42.64 KB
    @sentry/svelte 24.53 KB
    CDN Bundle 26.96 KB
    CDN Bundle (incl. Tracing) 41.6 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) 42.48 KB
    CDN Bundle (incl. Tracing, Replay) 77.43 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.72 KB
    CDN Bundle - uncompressed 78.99 KB
    CDN Bundle (incl. Tracing) - uncompressed 123.34 KB
    CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 126.29 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 237.15 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 249.64 KB
    @sentry/nextjs (client) 45.34 KB
    @sentry/sveltekit (client) 41.25 KB
    @sentry/node-core 50.69 KB
    @sentry/node 158.35 KB
    @sentry/node - without tracing 91.14 KB
    @sentry/aws-serverless 106.28 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core): Add option to enhance the fetch error message (#18466)

      You can now enable enhanced fetch error messages by setting the enhancedFetchErrorMessage option. When enabled, the SDK will include additional context in fetch error messages to help with debugging.

    • feat(nextjs): Add routeManifestInjection option to exclude routes from client bundle (#18798)

      A new routeManifestInjection option allows you to exclude sensitive routes from being injected into the client bundle.

    • feat(tanstackstart-react): Add wrapMiddlewaresWithSentry for manual middleware instrumentation (#18680)

      You can now wrap your middlewares using wrapMiddlewaresWithSentry, allowing you to trace middleware execution in your TanStack Start application.

      import { createMiddleware } from '@tanstack/react-start';
      import { wrapMiddlewaresWithSentry } from '@sentry/tanstackstart-react';
      
      const loggingMiddleware = createMiddleware({ type: 'function' }).server(async ({ next }) => {
        console.log('Request started');
        return next();
      });
      
      export const [wrappedLoggingMiddleware] = wrapMiddlewaresWithSentry({ loggingMiddleware });
      

    Other Changes

    • feat(browser): Add CDN bundle for tracing.logs.metrics (#18784)
    • feat(core,node-core): Consolidate bun and node types with ServerRuntimeOptions (#18734)
    • feat(nextjs): Remove tracing from generation function template (#18733)
    • fix(core): Don't record outcomes for failed client reports (#18808)
    • fix(deno,cloudflare): Prioritize name from params over name from options (#18800)
    • fix(web-vitals): Add error handling for invalid object keys in WeakMap (#18809)

    <details> <summary><strong>Internal Changes</strong></summary>

    • ref(nextjs): Split withSentryConfig (#18777)
    • test(e2e): Pin @shopify/remix-oxygen to unblock ci (#18811)

    </details>

    Open source โ†’
  45. 10.33.012 Jan 2026
    Release notes

    Important Changes

    • feat(core): Apply scope attributes to metrics (#18738)

      You can now set attributes on the SDK's scopes which will be applied to all metrics as long as the respective scopes are active. For the time being, only string, number and boolean attribute values are supported.

      Sentry.getGlobalScope().setAttributes({ is_admin: true, auth_provider: 'google' });
      
      Sentry.withScope(scope => {
        scope.setAttribute('step', 'authentication');
      
        // scope attributes `is_admin`, `auth_provider` and `step` are added
        Sentry.metrics.count('clicks', 1, { attributes: { activeSince: 100 } });
        Sentry.metrics.gauge('timeSinceRefresh', 4, { unit: 'hour' });
      });
      
      // scope attributes `is_admin` and `auth_provider` are added
      Sentry.metrics.count('response_time', 283.33, { unit: 'millisecond' });
      
    • feat(tracing): Add Vercel AI SDK v6 support (#18741)

      The Sentry SDK now supports the Vercel AI SDK v6. Tracing and error monitoring will work automatically with the new version.

    • feat(wasm): Add applicationKey option for third-party error filtering (#18762)

      Adds support for applying an application key to WASM stack frames that can be then used in the thirdPartyErrorFilterIntegration for detection of first-party code.

      Usage:

      Sentry.init({
        integrations: [
          // Integration order matters: wasmIntegration needs to be before thirdPartyErrorFilterIntegration
          wasmIntegration({ applicationKey: 'your-custom-application-key' }), โ†โ”€โ”€โ”€โ”
          thirdPartyErrorFilterIntegration({                                      โ”‚
            behaviour: 'drop-error-if-exclusively-contains-third-party-frames',   โ”œโ”€ matching keys
            filterKeys: ['your-custom-application-key'] โ†โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
          }),
        ],
      });
      

    Other Changes

    • feat(cloudflare): Support propagateTraceparent (#18569)
    • feat(core): Add ignoreSentryInternalFrames option to thirdPartyErrorFilterIntegration (#18632)
    • feat(core): Add gen_ai.conversation.id attribute to OpenAI and LangGrโ€ฆ (#18703)
    • feat(core): Add recordInputs/recordOutputs options to MCP server wrapper (#18600)
    • feat(core): Support IPv6 hosts in the DSN (#2996) (#17708)
    • feat(deps): Bump bundler plugins to ^4.6.1 (#17980)
    • feat(nextjs): Emit warning for conflicting treeshaking / debug settings (#18638)
    • feat(nextjs): Print Turbopack note for deprecated webpack options (#18769)
    • feat(node-core): Add isolateTrace option to node-cron instrumentation (#18416)
    • feat(node): Use process.on('SIGTERM') for flushing in Vercel functions (#17583)
    • feat(nuxt): Detect development environment and add dev E2E test (#18671)
    • fix(browser): Forward worker metadata for third-party error filtering (#18756)
    • fix(browser): Reduce number of visibilitystate and pagehide listeners (#18581)
    • fix(browser): Respect tunnel in diagnoseSdkConnectivity (#18616)
    • fix(cloudflare): Consume body of fetch in the Cloudflare transport (#18545)
    • fix(core): Set op on ended Vercel AI spans (#18601)
    • fix(core): Subtract performance.now() from browserPerformanceTimeOrigin fallback (#18715)
    • fix(core): Update client options to allow explicit undefined (#18024)
    • fix(feedback): Fix cases where the outline of inputs were wrong (#18647)
    • fix(next): Ensure inline sourcemaps are generated for wrapped modules in Dev (#18640)
    • fix(next): Wrap all Random APIs with a safe runner (#18700)
    • fix(nextjs): Avoid Edge build warning from OpenTelemetry process.argv0 (#18759)
    • fix(nextjs): Remove polynomial regular expression (#18725)
    • fix(node-core): Ignore worker threads in OnUncaughtException (#18689)
    • fix(node): relax Fastify's setupFastifyErrorHandler argument type (#18620)
    • fix(nuxt): Allow overwriting server-side defaultIntegrations (#18717)
    • fix(pino): Allow custom namespaces for msg and err (#18597)
    • fix(react,solid,vue): Fix parametrization behavior for non-matched routes (#18735)
    • fix(replay): Ensure replays contain canvas rendering when resumed after inactivity (#18714)
    • fix(tracing): add gen_ai.request.messages.original_length attributes (#18608)
    • ref(nextjs): Drop resolve dependency (#18618)
    • ref(react-router): Use snake_case for span op names (#18617)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(bun): Fix install-bun.js version check and improve upgrade feedback (#18492)
    • chore(changelog): Fix typo (#18648)
    • chore(craft): Use version templating for aws layer (#18675)
    • chore(deps): Bump IITM to ^2.0.1 (#18599)
    • chore(e2e-tests): Upgrade @trpc/server and @trpc/client (#18722)
    • chore(e2e): Unpin react-router-7-framework-spa to ^7.11.0 (#18551)
    • chore(nextjs): Bump next version in dev deps (#18661)
    • chore(node-tests): Upgrade @langchain/core (#18720)
    • chore(react): Inline hoist-non-react-statics package (#18102)
    • chore(size-limit): Add size checks for metrics and logs (#18573)
    • chore(tests): Add unordered mode to cloudflare test runner (#18596)
    • ci(deps): bump actions/cache from 4 to 5 (#18654)
    • ci(deps): Bump actions/create-github-app-token from 2.2.0 to 2.2.1 (#18656)
    • ci(deps): bump actions/upload-artifact from 5 to 6 (#18655)
    • ci(deps): bump peter-evans/create-pull-request from 7.0.9 to 8.0.0 (#18657)
    • doc: E2E testing documentation updates (#18649)
    • ref(core): Extract and reuse getCombinedScopeData helper (#18585)
    • ref(core): Remove dependence between performance.timeOrigin and performance.timing.navigationStart (#18710)
    • ref(core): Streamline and test browserPerformanceTimeOrigin (#18708)
    • ref(core): Strengthen browserPerformanceTimeOrigin reliability check (#18719)
    • ref(core): Use serializeAttributes for metric attribute serialization (#18582)
    • ref(node): Remove duplicate function isCjs (#18662)
    • test(core): Improve unit test performance for offline transport tests (#18628)
    • test(core): Use fake timers in promisebuffer tests to ensure deterministic behavior (#18659)
    • test(e2e): Add e2e metrics tests in Next.js 16 (#18643)
    • test(e2e): Pin agents package in cloudflare-mcp test (#18609)
    • test(e2e): Pin solid/vue tanstack router to 1.41.8 (#18610)
    • test(nestjs): Add canary test for latest (#18685)
    • test(node-native): Increase worker block timeout (#18683)
    • test(nuxt): Fix nuxt-4 dev E2E test (#18737)
    • test(tanstackstart-react): Add canary test for latest (#18686)
    • test(vue): Added canary and latest test variants to Vue tests (#18681)

    </details>

    Work in this release was contributed by @G-Rath, @gianpaj, @maximepvrt, @Mohataseem89, @sebws, and @xgedev. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.37 KB
    @sentry/browser - with treeshaking flags 22.92 KB
    @sentry/browser (incl. Tracing) 40.71 KB
    @sentry/browser (incl. Tracing, Profiling) 45.19 KB
    @sentry/browser (incl. Tracing, Replay) 78.43 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.37 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.93 KB
    @sentry/browser (incl. Feedback) 40.7 KB
    @sentry/browser (incl. sendFeedback) 28.95 KB
    @sentry/browser (incl. FeedbackAsync) 33.82 KB
    @sentry/browser (incl. Metrics) 25.44 KB
    @sentry/browser (incl. Logs) 25.59 KB
    @sentry/browser (incl. Metrics & Logs) 26.22 KB
    @sentry/react 26.05 KB
    @sentry/react (incl. Tracing) 42.9 KB
    @sentry/vue 28.72 KB
    @sentry/vue (incl. Tracing) 42.5 KB
    @sentry/svelte 24.39 KB
    CDN Bundle 26.83 KB
    CDN Bundle (incl. Tracing) 41.46 KB
    CDN Bundle (incl. Tracing, Replay) 77.31 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.6 KB
    CDN Bundle - uncompressed 78.62 KB
    CDN Bundle (incl. Tracing) - uncompressed 122.94 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 236.75 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 249.24 KB
    @sentry/nextjs (client) 45.2 KB
    @sentry/sveltekit (client) 41.08 KB
    @sentry/node-core 50.59 KB
    @sentry/node 158.26 KB
    @sentry/node - without tracing 91.06 KB
    @sentry/aws-serverless 106.2 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core): Apply scope attributes to metrics (#18738)

      You can now set attributes on the SDK's scopes which will be applied to all metrics as long as the respective scopes are active. For the time being, only string, number and boolean attribute values are supported.

      Sentry.getGlobalScope().setAttributes({ is_admin: true, auth_provider: 'google' });
      
      Sentry.withScope(scope => {
        scope.setAttribute('step', 'authentication');
      
        // scope attributes `is_admin`, `auth_provider` and `step` are added
        Sentry.metrics.count('clicks', 1, { attributes: { activeSince: 100 } });
        Sentry.metrics.gauge('timeSinceRefresh', 4, { unit: 'hour' });
      });
      
      // scope attributes `is_admin` and `auth_provider` are added
      Sentry.metrics.count('response_time', 283.33, { unit: 'millisecond' });
      
    • feat(tracing): Add Vercel AI SDK v6 support (#18741)

      The Sentry SDK now supports the Vercel AI SDK v6. Tracing and error monitoring will work automatically with the new version.

    • feat(wasm): Add applicationKey option for third-party error filtering (#18762)

      Adds support for applying an application key to WASM stack frames that can be then used in the thirdPartyErrorFilterIntegration for detection of first-party code.

      Usage:

      Sentry.init({
        integrations: [
          // Integration order matters: wasmIntegration needs to be before thirdPartyErrorFilterIntegration
          wasmIntegration({ applicationKey: 'your-custom-application-key' }), โ†โ”€โ”€โ”€โ”
          thirdPartyErrorFilterIntegration({                                      โ”‚
            behaviour: 'drop-error-if-exclusively-contains-third-party-frames',   โ”œโ”€ matching keys
            filterKeys: ['your-custom-application-key'] โ†โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
          }),
        ],
      });
      

    Other Changes

    • feat(cloudflare): Support propagateTraceparent (#18569)
    • feat(core): Add ignoreSentryInternalFrames option to thirdPartyErrorFilterIntegration (#18632)
    • feat(core): Add gen_ai.conversation.id attribute to OpenAI and LangGrโ€ฆ (#18703)
    • feat(core): Add recordInputs/recordOutputs options to MCP server wrapper (#18600)
    • feat(core): Support IPv6 hosts in the DSN (#2996) (#17708)
    • feat(deps): Bump bundler plugins to ^4.6.1 (#17980)
    • feat(nextjs): Emit warning for conflicting treeshaking / debug settings (#18638)
    • feat(nextjs): Print Turbopack note for deprecated webpack options (#18769)
    • feat(node-core): Add isolateTrace option to node-cron instrumentation (#18416)
    • feat(node): Use process.on('SIGTERM') for flushing in Vercel functions (#17583)
    • feat(nuxt): Detect development environment and add dev E2E test (#18671)
    • fix(browser): Forward worker metadata for third-party error filtering (#18756)
    • fix(browser): Reduce number of visibilitystate and pagehide listeners (#18581)
    • fix(browser): Respect tunnel in diagnoseSdkConnectivity (#18616)
    • fix(cloudflare): Consume body of fetch in the Cloudflare transport (#18545)
    • fix(core): Set op on ended Vercel AI spans (#18601)
    • fix(core): Subtract performance.now() from browserPerformanceTimeOrigin fallback (#18715)
    • fix(core): Update client options to allow explicit undefined (#18024)
    • fix(feedback): Fix cases where the outline of inputs were wrong (#18647)
    • fix(next): Ensure inline sourcemaps are generated for wrapped modules in Dev (#18640)
    • fix(next): Wrap all Random APIs with a safe runner (#18700)
    • fix(nextjs): Avoid Edge build warning from OpenTelemetry process.argv0 (#18759)
    • fix(nextjs): Remove polynomial regular expression (#18725)
    • fix(node-core): Ignore worker threads in OnUncaughtException (#18689)
    • fix(node): relax Fastify's setupFastifyErrorHandler argument type (#18620)
    • fix(nuxt): Allow overwriting server-side defaultIntegrations (#18717)
    • fix(pino): Allow custom namespaces for msg and err (#18597)
    • fix(react,solid,vue): Fix parametrization behavior for non-matched routes (#18735)
    • fix(replay): Ensure replays contain canvas rendering when resumed after inactivity (#18714)
    • fix(tracing): add gen_ai.request.messages.original_length attributes (#18608)
    • ref(nextjs): Drop resolve dependency (#18618)
    • ref(react-router): Use snake_case for span op names (#18617)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(bun): Fix install-bun.js version check and improve upgrade feedback (#18492)
    • chore(changelog): Fix typo (#18648)
    • chore(craft): Use version templating for aws layer (#18675)
    • chore(deps): Bump IITM to ^2.0.1 (#18599)
    • chore(e2e-tests): Upgrade @trpc/server and @trpc/client (#18722)
    • chore(e2e): Unpin react-router-7-framework-spa to ^7.11.0 (#18551)
    • chore(nextjs): Bump next version in dev deps (#18661)
    • chore(node-tests): Upgrade @langchain/core (#18720)
    • chore(react): Inline hoist-non-react-statics package (#18102)
    • chore(size-limit): Add size checks for metrics and logs (#18573)
    • chore(tests): Add unordered mode to cloudflare test runner (#18596)
    • ci(deps): bump actions/cache from 4 to 5 (#18654)
    • ci(deps): Bump actions/create-github-app-token from 2.2.0 to 2.2.1 (#18656)
    • ci(deps): bump actions/upload-artifact from 5 to 6 (#18655)
    • ci(deps): bump peter-evans/create-pull-request from 7.0.9 to 8.0.0 (#18657)
    • doc: E2E testing documentation updates (#18649)
    • ref(core): Extract and reuse getCombinedScopeData helper (#18585)
    • ref(core): Remove dependence between performance.timeOrigin and performance.timing.navigationStart (#18710)
    • ref(core): Streamline and test browserPerformanceTimeOrigin (#18708)
    • ref(core): Strengthen browserPerformanceTimeOrigin reliability check (#18719)
    • ref(core): Use serializeAttributes for metric attribute serialization (#18582)
    • ref(node): Remove duplicate function isCjs (#18662)
    • test(core): Improve unit test performance for offline transport tests (#18628)
    • test(core): Use fake timers in promisebuffer tests to ensure deterministic behavior (#18659)
    • test(e2e): Add e2e metrics tests in Next.js 16 (#18643)
    • test(e2e): Pin agents package in cloudflare-mcp test (#18609)
    • test(e2e): Pin solid/vue tanstack router to 1.41.8 (#18610)
    • test(nestjs): Add canary test for latest (#18685)
    • test(node-native): Increase worker block timeout (#18683)
    • test(nuxt): Fix nuxt-4 dev E2E test (#18737)
    • test(tanstackstart-react): Add canary test for latest (#18686)
    • test(vue): Added canary and latest test variants to Vue tests (#18681)

    </details>

    Work in this release was contributed by @G-Rath, @gianpaj, @maximepvrt, @Mohataseem89, @sebws, and @xgedev. Thank you for your contributions!

    Open source โ†’
  46. 10.32.119 Dec 2025
    Release notes
    • fix(cloudflare): Add hono transaction name when error is thrown (#18529)
    • fix(ember): Make implementation field optional (hash routes) (#18564)
    • fix(vercelai): Fix input token count (#18574)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(lint): prefer 'unknown' to 'any', fix lint warnings
    • chore(test): Remove cloudflare-astro e2e test (#18567)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.24 KB
    @sentry/browser - with treeshaking flags 22.77 KB
    @sentry/browser (incl. Tracing) 40.62 KB
    @sentry/browser (incl. Tracing, Profiling) 45.12 KB
    @sentry/browser (incl. Tracing, Replay) 78.3 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.28 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.88 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.83 KB
    @sentry/browser (incl. Feedback) 40.57 KB
    @sentry/browser (incl. sendFeedback) 28.82 KB
    @sentry/browser (incl. FeedbackAsync) 33.7 KB
    @sentry/react 25.92 KB
    @sentry/react (incl. Tracing) 42.77 KB
    @sentry/vue 28.6 KB
    @sentry/vue (incl. Tracing) 42.39 KB
    @sentry/svelte 24.25 KB
    CDN Bundle 26.62 KB
    CDN Bundle (incl. Tracing) 41.25 KB
    CDN Bundle (incl. Tracing, Replay) 77.1 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.44 KB
    CDN Bundle - uncompressed 78.18 KB
    CDN Bundle (incl. Tracing) - uncompressed 122.47 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 236.27 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 248.74 KB
    @sentry/nextjs (client) 44.94 KB
    @sentry/sveltekit (client) 40.98 KB
    @sentry/node-core 50.4 KB
    @sentry/node 157.73 KB
    @sentry/node - without tracing 90.87 KB
    @sentry/aws-serverless 106.02 KB
    Open source โ†’
    Release notes
    • fix(cloudflare): Add hono transaction name when error is thrown (#18529)
    • fix(ember): Make implementation field optional (hash routes) (#18564)
    • fix(vercelai): Fix input token count (#18574)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(lint): prefer 'unknown' to 'any', fix lint warnings
    • chore(test): Remove cloudflare-astro e2e test (#18567)

    </details>

    Open source โ†’
  47. 10.32.018 Dec 2025
    Release notes

    Important Changes

    • feat(core): Apply scope attributes to logs (#18184)

      You can now set attributes on the SDK's scopes which will be applied to all logs as long as the respective scopes are active. For the time being, only string, number and boolean attribute values are supported.

      Sentry.getGlobalScope().setAttributes({ is_admin: true, auth_provider: 'google' });
      
      Sentry.withScope(scope => {
        scope.setAttribute('step', 'authentication');
      
        // scope attributes `is_admin`, `auth_provider` and `step` are added
        Sentry.logger.info(`user ${user.id} logged in`, { activeSince: 100 });
        Sentry.logger.info(`updated ${user.id} last activity`);
      });
      
      // scope attributes `is_admin` and `auth_provider` are added
      Sentry.logger.warn('stale website version, reloading page');
      
    • feat(replay): Add Request body with attachRawBodyFromRequest option (#18501)

      To attach the raw request body (from Request objects passed as the first fetch argument) to replay events, you can now use the attachRawBodyFromRequest option in the Replay integration:

      Sentry.init({
        integrations: [
          Sentry.replayIntegration({
            attachRawBodyFromRequest: true,
          }),
        ],
      });
      
    • feat(tanstackstart-react): Trace server functions (#18500)

      To enable tracing for server-side requests, you can now explicitly define a server entry point in your application and wrap your request handler with wrapFetchWithSentry.

      // src/server.ts
      import { wrapFetchWithSentry } from '@sentry/tanstackstart-react';
      import handler, { createServerEntry } from '@tanstack/react-start/server-entry';
      
      export default createServerEntry(
        wrapFetchWithSentry({
          fetch(request: Request) {
            return handler.fetch(request);
          },
        }),
      );
      
    • feat(vue): Add TanStack Router integration (#18547)

      The @sentry/vue package now includes support for TanStack Router. Use tanstackRouterBrowserTracingIntegration to automatically instrument pageload and navigation transactions with parameterized routes:

      import { createApp } from 'vue';
      import { createRouter } from '@tanstack/vue-router';
      import * as Sentry from '@sentry/vue';
      import { tanstackRouterBrowserTracingIntegration } from '@sentry/vue/tanstackrouter';
      
      const router = createRouter({
        // your router config
      });
      
      Sentry.init({
        app,
        dsn: '__PUBLIC_DSN__',
        integrations: [tanstackRouterBrowserTracingIntegration(router)],
        tracesSampleRate: 1.0,
      });
      

    Other Changes

    • feat(core): Capture initialize attributes on MCP servers (#18531)
    • feat(nextjs): Extract tracing logic from server component wrapper templates (#18408)
    • feat(nextjs): added webpack treeshaking flags as config (#18359)
    • fix(solid/tanstackrouter): Ensure web vitals are sent on pageload (#18542)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(changelog): Add entry for scope attributes (#18555)
    • chore(changelog): Add entry for tanstack start wrapFetchWithSentry (#18558)
    • chore(deps): bump @trpc/server from 10.45.2 to 10.45.3 in /dev-packages/e2e-tests/test-applications/node-express-incorrect-instrumentation (#18530)
    • chore(deps): bump @trpc/server from 10.45.2 to 10.45.3 in /dev-packages/e2e-tests/test-applications/node-express-v5 (#18550)
    • chore(e2e): Pin to react-router 7.10.1 in spa e2e test (#18548)
    • chore(e2e): Remove check on http.response_content_length_uncompressed (#18536)
    • chore(github): Add "Closes" to PR template (#18538)
    • test(cloudflare-mcp): Unpin mcp sdk (#18528)
    • test(nextjs): Add e2e tests for server component spans in next 16 (#18544)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.24 KB
    @sentry/browser - with treeshaking flags 22.77 KB
    @sentry/browser (incl. Tracing) 40.62 KB
    @sentry/browser (incl. Tracing, Profiling) 45.12 KB
    @sentry/browser (incl. Tracing, Replay) 78.3 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.28 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.88 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.82 KB
    @sentry/browser (incl. Feedback) 40.56 KB
    @sentry/browser (incl. sendFeedback) 28.82 KB
    @sentry/browser (incl. FeedbackAsync) 33.7 KB
    @sentry/react 25.92 KB
    @sentry/react (incl. Tracing) 42.77 KB
    @sentry/vue 28.6 KB
    @sentry/vue (incl. Tracing) 42.39 KB
    @sentry/svelte 24.25 KB
    CDN Bundle 26.62 KB
    CDN Bundle (incl. Tracing) 41.25 KB
    CDN Bundle (incl. Tracing, Replay) 77.1 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.44 KB
    CDN Bundle - uncompressed 78.18 KB
    CDN Bundle (incl. Tracing) - uncompressed 122.47 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 236.27 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 248.74 KB
    @sentry/nextjs (client) 44.93 KB
    @sentry/sveltekit (client) 40.98 KB
    @sentry/node-core 50.4 KB
    @sentry/node 157.71 KB
    @sentry/node - without tracing 90.87 KB
    @sentry/aws-serverless 106.02 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core): Apply scope attributes to logs (#18184)

      You can now set attributes on the SDK's scopes which will be applied to all logs as long as the respective scopes are active. For the time being, only string, number and boolean attribute values are supported.

      Sentry.getGlobalScope().setAttributes({ is_admin: true, auth_provider: 'google' });
      
      Sentry.withScope(scope => {
        scope.setAttribute('step', 'authentication');
      
        // scope attributes `is_admin`, `auth_provider` and `step` are added
        Sentry.logger.info(`user ${user.id} logged in`, { activeSince: 100 });
        Sentry.logger.info(`updated ${user.id} last activity`);
      });
      
      // scope attributes `is_admin` and `auth_provider` are added
      Sentry.logger.warn('stale website version, reloading page');
      
    • feat(replay): Add Request body with attachRawBodyFromRequest option (#18501)

      To attach the raw request body (from Request objects passed as the first fetch argument) to replay events, you can now use the attachRawBodyFromRequest option in the Replay integration:

      Sentry.init({
        integrations: [
          Sentry.replayIntegration({
            attachRawBodyFromRequest: true,
          }),
        ],
      });
      
    • feat(tanstackstart-react): Trace server functions (#18500)

      To enable tracing for server-side requests, you can now explicitly define a server entry point in your application and wrap your request handler with wrapFetchWithSentry.

      // src/server.ts
      import { wrapFetchWithSentry } from '@sentry/tanstackstart-react';
      import handler, { createServerEntry } from '@tanstack/react-start/server-entry';
      
      export default createServerEntry(
        wrapFetchWithSentry({
          fetch(request: Request) {
            return handler.fetch(request);
          },
        }),
      );
      
    • feat(vue): Add TanStack Router integration (#18547)

      The @sentry/vue package now includes support for TanStack Router. Use tanstackRouterBrowserTracingIntegration to automatically instrument pageload and navigation transactions with parameterized routes:

      import { createApp } from 'vue';
      import { createRouter } from '@tanstack/vue-router';
      import * as Sentry from '@sentry/vue';
      import { tanstackRouterBrowserTracingIntegration } from '@sentry/vue/tanstackrouter';
      
      const router = createRouter({
        // your router config
      });
      
      Sentry.init({
        app,
        dsn: '__PUBLIC_DSN__',
        integrations: [tanstackRouterBrowserTracingIntegration(router)],
        tracesSampleRate: 1.0,
      });
      

    Other Changes

    • feat(core): Capture initialize attributes on MCP servers (#18531)
    • feat(nextjs): Extract tracing logic from server component wrapper templates (#18408)
    • feat(nextjs): added webpack treeshaking flags as config (#18359)
    • fix(solid/tanstackrouter): Ensure web vitals are sent on pageload (#18542)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(changelog): Add entry for scope attributes (#18555)
    • chore(changelog): Add entry for tanstack start wrapFetchWithSentry (#18558)
    • chore(deps): bump @trpc/server from 10.45.2 to 10.45.3 in /dev-packages/e2e-tests/test-applications/node-express-incorrect-instrumentation (#18530)
    • chore(deps): bump @trpc/server from 10.45.2 to 10.45.3 in /dev-packages/e2e-tests/test-applications/node-express-v5 (#18550)
    • chore(e2e): Pin to react-router 7.10.1 in spa e2e test (#18548)
    • chore(e2e): Remove check on http.response_content_length_uncompressed (#18536)
    • chore(github): Add "Closes" to PR template (#18538)
    • test(cloudflare-mcp): Unpin mcp sdk (#18528)
    • test(nextjs): Add e2e tests for server component spans in next 16 (#18544)

    </details>

    Open source โ†’
  48. 10.32.0-alpha.018 Dec 2025pre-release
    Release notes

    This preview release includes updates to our Span Streaming PoC implementation. Use at your own risk.

    • Attributes extracted from request and known contexts on scopes are applied to the segment span
    • Scope attributes are applied to every span
    • Added a simple interval, limit and Sentry.flush-based span buffer for backend SDKs
    • Span-first can now also be tested in any of our server SDKs, including @sentry/node, @sentry/cloudflare, @sentry/deno, @sentry/bun and @sentry/vercel-edge

    Known issues:

    • Missing data from various integrations and framework SDKs
    • ignoreSpans is not yet applied

    Untested:

    • Meta frameworks or framework SDKs building on top of @sentry/browser or @sentry/node. Likely, data is missing, noisy spans are not filtered, etc.

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 25.21 KB
    @sentry/browser - with treeshaking flags 23.74 KB
    @sentry/browser (incl. Tracing) 41.8 KB
    @sentry/browser (incl. Tracing, Profiling) 46.29 KB
    @sentry/browser (incl. Tracing, Replay) 79.57 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 69.36 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 84.13 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 96 KB
    @sentry/browser (incl. Feedback) 41.52 KB
    @sentry/browser (incl. sendFeedback) 29.77 KB
    @sentry/browser (incl. FeedbackAsync) 34.65 KB
    @sentry/react 26.89 KB
    @sentry/react (incl. Tracing) 43.98 KB
    @sentry/vue 29.73 KB
    @sentry/vue (incl. Tracing) 43.56 KB
    @sentry/svelte 25.23 KB
    CDN Bundle 27.49 KB
    CDN Bundle (incl. Tracing) 42.39 KB
    CDN Bundle (incl. Tracing, Replay) 78.21 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 83.57 KB
    CDN Bundle - uncompressed 80.62 KB
    CDN Bundle (incl. Tracing) - uncompressed 125.72 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 239.52 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 251.99 KB
    @sentry/nextjs (client) 46.12 KB
    @sentry/sveltekit (client) 42.21 KB
    @sentry/node-core 51.31 KB
    @sentry/node 160.53 KB
    @sentry/node - without tracing 93.78 KB
    @sentry/aws-serverless 108.68 KB
    Open source โ†’
  49. 10.31.016 Dec 2025
    Release notes

    Important Changes

    • feat(browser): Add support for GraphQL persisted operations (#18505)

    The graphqlClientIntegration now supports GraphQL persisted operations (queries). When a persisted query is detected, the integration will capture the operation hash and version as span attributes:

    • graphql.persisted_query.hash.sha256 - The SHA-256 hash of the persisted query
    • graphql.persisted_query.version - The version of the persisted query protocol

    Additionally, the graphql.document attribute format has changed to align with OpenTelemetry semantic conventions. It now contains only the GraphQL query string instead of the full JSON request payload.

    Before:

    "graphql.document": "{\"query\":\"query Test { user { id } }\"}"
    

    After:

    "graphql.document": "query Test { user { id } }"
    

    Other Changes

    • feat(node): Support propagateTraceparent option (#18476)
    • feat(bun): Expose spotlight option in TypeScript (#18436)
    • feat(core): Add additional exports for captureException and captureMessage parameter types (#18521)
    • feat(core): Export captureException and captureMessage parameter types (#18509)
    • feat(core): Parse individual cookies from cookie header (#18325)
    • feat(node): Add instrument OpenAI export to node (#18461)
    • feat(nuxt): Bump @sentry/vite-plugin and @sentry/rollup-plugin to 4.6.1 (#18349)
    • feat(profiling): Add support for Node v24 in the prune script (#18447)
    • feat(tracing): strip inline media from messages (#18413)
    • feat(node): Add ESM support for postgres.js instrumentation (#17961)
    • fix(browser): Stringify span context in linked traces log statement (#18376)
    • fix(google-cloud-serverless): Move @types/express to optional peerDeps (#18452)
    • fix(node-core): passthrough node-cron context (#17835)
    • fix(tanstack-router): Check for fromLocation existence before reporting pageload (#18463)
    • fix(tracing): add system prompt, model to google genai (#18424)
    • fix(tracing): Set span operations for AI spans with model ID only (#18471)
    • ref(browser): Improve profiling debug statement (#18507)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add external contributor to CHANGELOG.md (#18473)
    • chore: upgrade Playwright to ~1.56.0 for WSL2 compatibility (#18468)
    • chore(bugbot): Add testing conventions code review rules (#18433)
    • chore(deps): bump next from 14.2.25 to 14.2.35 in /dev-packages/e2e-tests/test-applications/create-next-app (#18494)
    • chore(deps): bump next from 14.2.32 to 14.2.35 in /dev-packages/e2e-tests/test-applications/nextjs-orpc (#18520)
    • chore(deps): bump next from 14.2.32 to 14.2.35 in /dev-packages/e2e-tests/test-applications/nextjs-pages-dir (#18496)
    • chore(deps): bump next from 15.5.7 to 15.5.9 in /dev-packages/e2e-tests/test-applications/nextjs-15 (#18482)
    • chore(deps): bump next from 15.5.7 to 15.5.9 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (#18483)
    • chore(deps): bump next from 16.0.7 to 16.0.9 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#18480)
    • chore(deps): bump next from 16.0.7 to 16.0.9 in /dev-packages/e2e-tests/test-applications/nextjs-16-cacheComponents (#18479)
    • chore(deps): bump next from 16.0.7 to 16.0.9 in /dev-packages/e2e-tests/test-applications/nextjs-16-tunnel (#18481)
    • chore(deps): bump next from 16.0.9 to 16.0.10 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#18514)
    • chore(deps): bump next from 16.0.9 to 16.0.10 in /dev-packages/e2e-tests/test-applications/nextjs-16-tunnel (#18487)
    • chore(tests): Added test variant flag (#18458)
    • test(cloudflare-mcp): Pin mcp sdk to 1.24.0 (#18524)

    </details>

    Work in this release was contributed by @sebws and @TBeeren. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.23 KB
    @sentry/browser - with treeshaking flags 22.76 KB
    @sentry/browser (incl. Tracing) 40.58 KB
    @sentry/browser (incl. Tracing, Profiling) 45.08 KB
    @sentry/browser (incl. Tracing, Replay) 78.1 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.07 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.67 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.62 KB
    @sentry/browser (incl. Feedback) 40.54 KB
    @sentry/browser (incl. sendFeedback) 28.8 KB
    @sentry/browser (incl. FeedbackAsync) 33.68 KB
    @sentry/react 25.9 KB
    @sentry/react (incl. Tracing) 42.73 KB
    @sentry/vue 28.58 KB
    @sentry/vue (incl. Tracing) 42.35 KB
    @sentry/svelte 24.24 KB
    CDN Bundle 26.59 KB
    CDN Bundle (incl. Tracing) 41.23 KB
    CDN Bundle (incl. Tracing, Replay) 76.9 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.23 KB
    CDN Bundle - uncompressed 78.15 KB
    CDN Bundle (incl. Tracing) - uncompressed 122.44 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 235.75 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 248.21 KB
    @sentry/nextjs (client) 44.9 KB
    @sentry/sveltekit (client) 40.94 KB
    @sentry/node-core 50.39 KB
    @sentry/node 157.7 KB
    @sentry/node - without tracing 90.85 KB
    @sentry/aws-serverless 106 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(browser): Add support for GraphQL persisted operations (#18505)

    The graphqlClientIntegration now supports GraphQL persisted operations (queries). When a persisted query is detected, the integration will capture the operation hash and version as span attributes:

    • graphql.persisted_query.hash.sha256 - The SHA-256 hash of the persisted query
    • graphql.persisted_query.version - The version of the persisted query protocol

    Additionally, the graphql.document attribute format has changed to align with OpenTelemetry semantic conventions. It now contains only the GraphQL query string instead of the full JSON request payload.

    Before:

    "graphql.document": "{\"query\":\"query Test { user { id } }\"}"
    

    After:

    "graphql.document": "query Test { user { id } }"
    

    Other Changes

    • feat(node): Support propagateTraceparent option (#18476)
    • feat(bun): Expose spotlight option in TypeScript (#18436)
    • feat(core): Add additional exports for captureException and captureMessage parameter types (#18521)
    • feat(core): Export captureException and captureMessage parameter types (#18509)
    • feat(core): Parse individual cookies from cookie header (#18325)
    • feat(node): Add instrument OpenAI export to node (#18461)
    • feat(nuxt): Bump @sentry/vite-plugin and @sentry/rollup-plugin to 4.6.1 (#18349)
    • feat(profiling): Add support for Node v24 in the prune script (#18447)
    • feat(tracing): strip inline media from messages (#18413)
    • feat(node): Add ESM support for postgres.js instrumentation (#17961)
    • fix(browser): Stringify span context in linked traces log statement (#18376)
    • fix(google-cloud-serverless): Move @types/express to optional peerDeps (#18452)
    • fix(node-core): passthrough node-cron context (#17835)
    • fix(tanstack-router): Check for fromLocation existence before reporting pageload (#18463)
    • fix(tracing): add system prompt, model to google genai (#18424)
    • fix(tracing): Set span operations for AI spans with model ID only (#18471)
    • ref(browser): Improve profiling debug statement (#18507)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add external contributor to CHANGELOG.md (#18473)
    • chore: upgrade Playwright to ~1.56.0 for WSL2 compatibility (#18468)
    • chore(bugbot): Add testing conventions code review rules (#18433)
    • chore(deps): bump next from 14.2.25 to 14.2.35 in /dev-packages/e2e-tests/test-applications/create-next-app (#18494)
    • chore(deps): bump next from 14.2.32 to 14.2.35 in /dev-packages/e2e-tests/test-applications/nextjs-orpc (#18520)
    • chore(deps): bump next from 14.2.32 to 14.2.35 in /dev-packages/e2e-tests/test-applications/nextjs-pages-dir (#18496)
    • chore(deps): bump next from 15.5.7 to 15.5.9 in /dev-packages/e2e-tests/test-applications/nextjs-15 (#18482)
    • chore(deps): bump next from 15.5.7 to 15.5.9 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (#18483)
    • chore(deps): bump next from 16.0.7 to 16.0.9 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#18480)
    • chore(deps): bump next from 16.0.7 to 16.0.9 in /dev-packages/e2e-tests/test-applications/nextjs-16-cacheComponents (#18479)
    • chore(deps): bump next from 16.0.7 to 16.0.9 in /dev-packages/e2e-tests/test-applications/nextjs-16-tunnel (#18481)
    • chore(deps): bump next from 16.0.9 to 16.0.10 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#18514)
    • chore(deps): bump next from 16.0.9 to 16.0.10 in /dev-packages/e2e-tests/test-applications/nextjs-16-tunnel (#18487)
    • chore(tests): Added test variant flag (#18458)
    • test(cloudflare-mcp): Pin mcp sdk to 1.24.0 (#18524)

    </details>

    Work in this release was contributed by @sebws and @TBeeren. Thank you for your contributions!

    Open source โ†’
  50. 10.30.011 Dec 2025
    Release notes
    • feat(nextjs): Deprecate Webpack top-level options (#18343)
    • feat(node): Capture scope when event loop blocked (#18040)
    • fix(aws-serverless): Remove hyphens from AWS-lambda origins (#18353)
    • fix(core): Parse method from Request object in fetch (#18453)
    • fix(react): Add transaction name guards for rapid lazy-route navigations (#18346)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(ci): Fix double issue creation for unreferenced PRs (#18442)
    • chore(deps): bump next from 15.5.4 to 15.5.7 in /dev-packages/e2e-tests/test-applications/nextjs-15 (#18411)
    • chore(deps): bump next from 15.5.4 to 15.5.7 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (#18400)
    • chore(deps): bump next from 16.0.0 to 16.0.7 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#18399)
    • chore(deps): bump next from 16.0.0 to 16.0.7 in /dev-packages/e2e-tests/test-applications/nextjs-16-cacheComponents (#18427)
    • chore(deps): bump next from 16.0.0 to 16.0.7 in /dev-packages/e2e-tests/test-applications/nextjs-16-tunnel (#18439)
    • chore(publish): Fix publish order for @sentry/types (#18429)
    • ci(deps): bump actions/create-github-app-token from 2.1.4 to 2.2.0 (#18362)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.23 KB
    @sentry/browser - with treeshaking flags 22.76 KB
    @sentry/browser (incl. Tracing) 40.57 KB
    @sentry/browser (incl. Tracing, Profiling) 45.06 KB
    @sentry/browser (incl. Tracing, Replay) 78.09 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.07 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.66 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.61 KB
    @sentry/browser (incl. Feedback) 40.54 KB
    @sentry/browser (incl. sendFeedback) 28.8 KB
    @sentry/browser (incl. FeedbackAsync) 33.68 KB
    @sentry/react 25.9 KB
    @sentry/react (incl. Tracing) 42.73 KB
    @sentry/vue 28.58 KB
    @sentry/vue (incl. Tracing) 42.34 KB
    @sentry/svelte 24.24 KB
    CDN Bundle 26.6 KB
    CDN Bundle (incl. Tracing) 41.24 KB
    CDN Bundle (incl. Tracing, Replay) 76.91 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.23 KB
    CDN Bundle - uncompressed 78.16 KB
    CDN Bundle (incl. Tracing) - uncompressed 122.45 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 235.76 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 248.23 KB
    @sentry/nextjs (client) 44.89 KB
    @sentry/sveltekit (client) 40.94 KB
    @sentry/node-core 50.06 KB
    @sentry/node 155.85 KB
    @sentry/node - without tracing 90.74 KB
    @sentry/aws-serverless 105.67 KB
    Open source โ†’
    Release notes
    • feat(nextjs): Deprecate Webpack top-level options (#18343)
    • feat(node): Capture scope when event loop blocked (#18040)
    • fix(aws-serverless): Remove hyphens from AWS-lambda origins (#18353)
    • fix(core): Parse method from Request object in fetch (#18453)
    • fix(react): Add transaction name guards for rapid lazy-route navigations (#18346)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(ci): Fix double issue creation for unreferenced PRs (#18442)
    • chore(deps): bump next from 15.5.4 to 15.5.7 in /dev-packages/e2e-tests/test-applications/nextjs-15 (#18411)
    • chore(deps): bump next from 15.5.4 to 15.5.7 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (#18400)
    • chore(deps): bump next from 16.0.0 to 16.0.7 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#18399)
    • chore(deps): bump next from 16.0.0 to 16.0.7 in /dev-packages/e2e-tests/test-applications/nextjs-16-cacheComponents (#18427)
    • chore(deps): bump next from 16.0.0 to 16.0.7 in /dev-packages/e2e-tests/test-applications/nextjs-16-tunnel (#18439)
    • chore(publish): Fix publish order for @sentry/types (#18429)
    • ci(deps): bump actions/create-github-app-token from 2.1.4 to 2.2.0 (#18362)

    </details>

    Open source โ†’
  51. 10.29.04 Dec 2025
    Release notes

    Important Changes

    • feat(solid|solidstart): Bump accepted @solidjs/router range (#18395)

    We expanded the supported version range for @solidjs/router to include 0.14.x and 0.15.x versions.

    Other Changes

    • fix(logs): Add support for msg in pino integration (#18389)
    • fix(node): Include system message in anthropic-ai messages span (#18332)
    • fix(tracing): Add missing attributes in vercel-ai spans (#18333)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(tanstackstart-react): clean up re-exported types (#18393)
    • ref(core): Avoid looking up openai integration options (#17695)
    • test(nuxt): Relax captured unhandled error assertion (#18397)
    • test(tanstackstart-react): Set up E2E test application (#18358)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.22 KB
    @sentry/browser - with treeshaking flags 22.76 KB
    @sentry/browser (incl. Tracing) 40.57 KB
    @sentry/browser (incl. Tracing, Profiling) 45.05 KB
    @sentry/browser (incl. Tracing, Replay) 78.08 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.05 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.65 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.61 KB
    @sentry/browser (incl. Feedback) 40.51 KB
    @sentry/browser (incl. sendFeedback) 28.8 KB
    @sentry/browser (incl. FeedbackAsync) 33.66 KB
    @sentry/react 25.9 KB
    @sentry/react (incl. Tracing) 42.72 KB
    @sentry/vue 28.56 KB
    @sentry/vue (incl. Tracing) 42.32 KB
    @sentry/svelte 24.24 KB
    CDN Bundle 26.57 KB
    CDN Bundle (incl. Tracing) 41.22 KB
    CDN Bundle (incl. Tracing, Replay) 76.9 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.23 KB
    CDN Bundle - uncompressed 78.09 KB
    CDN Bundle (incl. Tracing) - uncompressed 122.4 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 235.71 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 248.17 KB
    @sentry/nextjs (client) 44.88 KB
    @sentry/sveltekit (client) 40.92 KB
    @sentry/node-core 50.07 KB
    @sentry/node 155.79 KB
    @sentry/node - without tracing 90.68 KB
    @sentry/aws-serverless 105.61 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(solid|solidstart): Bump accepted @solidjs/router range (#18395)

    We expanded the supported version range for @solidjs/router to include 0.14.x and 0.15.x versions.

    Other Changes

    • fix(logs): Add support for msg in pino integration (#18389)
    • fix(node): Include system message in anthropic-ai messages span (#18332)
    • fix(tracing): Add missing attributes in vercel-ai spans (#18333)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(tanstackstart-react): clean up re-exported types (#18393)
    • ref(core): Avoid looking up openai integration options (#17695)
    • test(nuxt): Relax captured unhandled error assertion (#18397)
    • test(tanstackstart-react): Set up E2E test application (#18358)

    </details>

    Open source โ†’
  52. 10.28.02 Dec 2025
    Release notes

    Important Changes

    • feat(core): Make matcher parameter optional in makeMultiplexedTransport (#10798)

    The matcher parameter in makeMultiplexedTransport is now optional with a sensible default. This makes it much easier to use the multiplexed transport for sending events to multiple DSNs based on runtime configuration.

    Before:

    import { makeFetchTransport, makeMultiplexedTransport } from '@sentry/browser';
    
    const EXTRA_KEY = 'ROUTE_TO';
    
    const transport = makeMultiplexedTransport(makeFetchTransport, args => {
      const event = args.getEvent();
      if (event?.extra?.[EXTRA_KEY] && Array.isArray(event.extra[EXTRA_KEY])) {
        return event.extra[EXTRA_KEY];
      }
      return [];
    });
    
    Sentry.init({
      transport,
      // ... other options
    });
    
    // Capture events with routing info
    Sentry.captureException(error, {
      extra: {
        [EXTRA_KEY]: [
          { dsn: 'https://[email protected]/project1', release: 'v1.0.0' },
          { dsn: 'https://[email protected]/project2' },
        ],
      },
    });
    

    After:

    import { makeFetchTransport, makeMultiplexedTransport, MULTIPLEXED_TRANSPORT_EXTRA_KEY } from '@sentry/browser';
    
    // Just pass the transport generator - the default matcher handles the rest!
    Sentry.init({
      transport: makeMultiplexedTransport(makeFetchTransport),
      // ... other options
    });
    
    // Capture events with routing info using the exported constant
    Sentry.captureException(error, {
      extra: {
        [MULTIPLEXED_TRANSPORT_EXTRA_KEY]: [
          { dsn: 'https://[email protected]/project1', release: 'v1.0.0' },
          { dsn: 'https://[email protected]/project2' },
        ],
      },
    });
    

    The default matcher looks for routing information in event.extra[MULTIPLEXED_TRANSPORT_EXTRA_KEY]. You can still provide a custom matcher function for advanced use cases.

    • feat(nextjs): Support cacheComponents on turbopack (#18304)

    This release adds support for cacheComponents on turbopack builds. We are working on adding support for this feature in webpack builds as well.

    Other Changes

    • feat: Publish AWS Lambda Layer for Node 24 (#18327)
    • feat(browser): Expose langchain instrumentation (#18342)
    • feat(browser): Expose langgraph instrumentation (#18345)
    • feat(cloudflare): Allow specifying a custom fetch in Cloudflare transport options (#18335)
    • feat(core): Add isolateTrace option to Sentry.withMonitor() (#18079)
    • feat(deps): bump @sentry/webpack-plugin from 4.3.0 to 4.6.1 (#18272)
    • feat(nextjs): Add cloudflare waitUntil detection (#18336)
    • feat(node): Add LangChain v1 support (#18306)
    • feat(remix): Add parameterized transaction naming for routes (#17951)
    • fix(cloudflare): Keep http root span alive until streaming responses are consumed (#18087)
    • fix(cloudflare): Wait for async events to finish (#18334)
    • fix(core): continueTrace doesn't propagate given trace ID if active span exists (#18328)
    • fix(node-core): Handle custom scope in log messages without parameters (#18322)
    • fix(opentelemetry): Ensure Sentry spans don't leak when tracing is disabled (#18337)
    • fix(react-router): Use underscores in trace origin values (#18351)
    • chore(tanstackstart-react): Export custom inits from tanstackstart-react (#18369)
    • chore(tanstackstart-react)!: Remove empty placeholder implementations (#18338)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Allow URLs as issue (#18372)
    • chore(changelog): Add entry for #18304 (#18329)
    • chore(ci): Add action to track all PRs as issues (#18363)
    • chore(github): Adjust BUGBOT.md rules to flag invalid op and origin values during review (#18352)
    • ci: Add action to create issue on gitflow merge conflicts (#18319)
    • ci(deps): bump actions/checkout from 5 to 6 (#18268)
    • ci(deps): bump peter-evans/create-pull-request from 7.0.8 to 7.0.9 (#18361)
    • test(cloudflare): Add typechecks for cloudflare-worker e2e test (#18321)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.22 KB
    @sentry/browser - with treeshaking flags 22.76 KB
    @sentry/browser (incl. Tracing) 40.57 KB
    @sentry/browser (incl. Tracing, Profiling) 45.05 KB
    @sentry/browser (incl. Tracing, Replay) 78.08 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.05 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.65 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.61 KB
    @sentry/browser (incl. Feedback) 40.51 KB
    @sentry/browser (incl. sendFeedback) 28.8 KB
    @sentry/browser (incl. FeedbackAsync) 33.66 KB
    @sentry/react 25.9 KB
    @sentry/react (incl. Tracing) 42.72 KB
    @sentry/vue 28.56 KB
    @sentry/vue (incl. Tracing) 42.32 KB
    @sentry/svelte 24.24 KB
    CDN Bundle 26.57 KB
    CDN Bundle (incl. Tracing) 41.22 KB
    CDN Bundle (incl. Tracing, Replay) 76.9 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.23 KB
    CDN Bundle - uncompressed 78.09 KB
    CDN Bundle (incl. Tracing) - uncompressed 122.4 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 235.71 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 248.17 KB
    @sentry/nextjs (client) 44.88 KB
    @sentry/sveltekit (client) 40.92 KB
    @sentry/node-core 50.06 KB
    @sentry/node 155.7 KB
    @sentry/node - without tracing 90.67 KB
    @sentry/aws-serverless 105.61 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core): Make matcher parameter optional in makeMultiplexedTransport (#10798)

    The matcher parameter in makeMultiplexedTransport is now optional with a sensible default. This makes it much easier to use the multiplexed transport for sending events to multiple DSNs based on runtime configuration.

    Before:

    import { makeFetchTransport, makeMultiplexedTransport } from '@sentry/browser';
    
    const EXTRA_KEY = 'ROUTE_TO';
    
    const transport = makeMultiplexedTransport(makeFetchTransport, args => {
      const event = args.getEvent();
      if (event?.extra?.[EXTRA_KEY] && Array.isArray(event.extra[EXTRA_KEY])) {
        return event.extra[EXTRA_KEY];
      }
      return [];
    });
    
    Sentry.init({
      transport,
      // ... other options
    });
    
    // Capture events with routing info
    Sentry.captureException(error, {
      extra: {
        [EXTRA_KEY]: [
          { dsn: 'https://[email protected]/project1', release: 'v1.0.0' },
          { dsn: 'https://[email protected]/project2' },
        ],
      },
    });
    

    After:

    import { makeFetchTransport, makeMultiplexedTransport, MULTIPLEXED_TRANSPORT_EXTRA_KEY } from '@sentry/browser';
    
    // Just pass the transport generator - the default matcher handles the rest!
    Sentry.init({
      transport: makeMultiplexedTransport(makeFetchTransport),
      // ... other options
    });
    
    // Capture events with routing info using the exported constant
    Sentry.captureException(error, {
      extra: {
        [MULTIPLEXED_TRANSPORT_EXTRA_KEY]: [
          { dsn: 'https://[email protected]/project1', release: 'v1.0.0' },
          { dsn: 'https://[email protected]/project2' },
        ],
      },
    });
    

    The default matcher looks for routing information in event.extra[MULTIPLEXED_TRANSPORT_EXTRA_KEY]. You can still provide a custom matcher function for advanced use cases.

    • feat(nextjs): Support cacheComponents on turbopack (#18304)

    This release adds support for cacheComponents on turbopack builds. We are working on adding support for this feature in webpack builds as well.

    Other Changes

    • feat: Publish AWS Lambda Layer for Node 24 (#18327)
    • feat(browser): Expose langchain instrumentation (#18342)
    • feat(browser): Expose langgraph instrumentation (#18345)
    • feat(cloudflare): Allow specifying a custom fetch in Cloudflare transport options (#18335)
    • feat(core): Add isolateTrace option to Sentry.withMonitor() (#18079)
    • feat(deps): bump @sentry/webpack-plugin from 4.3.0 to 4.6.1 (#18272)
    • feat(nextjs): Add cloudflare waitUntil detection (#18336)
    • feat(node): Add LangChain v1 support (#18306)
    • feat(remix): Add parameterized transaction naming for routes (#17951)
    • fix(cloudflare): Keep http root span alive until streaming responses are consumed (#18087)
    • fix(cloudflare): Wait for async events to finish (#18334)
    • fix(core): continueTrace doesn't propagate given trace ID if active span exists (#18328)
    • fix(node-core): Handle custom scope in log messages without parameters (#18322)
    • fix(opentelemetry): Ensure Sentry spans don't leak when tracing is disabled (#18337)
    • fix(react-router): Use underscores in trace origin values (#18351)
    • chore(tanstackstart-react): Export custom inits from tanstackstart-react (#18369)
    • chore(tanstackstart-react)!: Remove empty placeholder implementations (#18338)

    <details> <summary><strong>Internal Changes</strong></summary>

    • chore: Allow URLs as issue (#18372)
    • chore(changelog): Add entry for #18304 (#18329)
    • chore(ci): Add action to track all PRs as issues (#18363)
    • chore(github): Adjust BUGBOT.md rules to flag invalid op and origin values during review (#18352)
    • ci: Add action to create issue on gitflow merge conflicts (#18319)
    • ci(deps): bump actions/checkout from 5 to 6 (#18268)
    • ci(deps): bump peter-evans/create-pull-request from 7.0.8 to 7.0.9 (#18361)
    • test(cloudflare): Add typechecks for cloudflare-worker e2e test (#18321)

    </details>

    Open source โ†’
  53. 10.28.0-alpha.026 Nov 2025pre-release
    Release notes

    This release is a preview release for sending spans in browser via spanV2 instead of transaction event envelopes. All of this is experimental and subject to change. Use at your own risk. More Details.

    Changes from 10.24-alpha.1:

    • add sentry.segment.id common span attribute
    • rename attribute user.username to user.name
    • remove is_remote, add is_segment span attributes
    • remove span.kind field

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.33 KB
    @sentry/browser - with treeshaking flags 22.85 KB
    @sentry/browser (incl. Tracing) 40.97 KB
    @sentry/browser (incl. Tracing, Profiling) 45.45 KB
    @sentry/browser (incl. Tracing, Replay) 78.51 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.45 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 83.09 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 95.02 KB
    @sentry/browser (incl. Feedback) 40.65 KB
    @sentry/browser (incl. sendFeedback) 28.91 KB
    @sentry/browser (incl. FeedbackAsync) 33.73 KB
    @sentry/react 26 KB
    @sentry/react (incl. Tracing) 43.13 KB
    @sentry/vue 28.97 KB
    @sentry/vue (incl. Tracing) 42.73 KB
    @sentry/svelte 24.34 KB
    CDN Bundle 26.65 KB
    CDN Bundle (incl. Tracing) 41.48 KB
    CDN Bundle (incl. Tracing, Replay) 77.16 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.48 KB
    CDN Bundle - uncompressed 78.21 KB
    CDN Bundle (incl. Tracing) - uncompressed 123.49 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 236.8 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 249.27 KB
    @sentry/nextjs (client) 45.3 KB
    @sentry/sveltekit (client) 41.33 KB
    @sentry/node-core 50.12 KB
    @sentry/node 155.97 KB
    @sentry/node - without tracing 90.8 KB
    @sentry/aws-serverless 105.68 KB
    Open source โ†’
  54. 10.27.024 Nov 2025
    Release notes

    Important Changes

    • feat(deps): Bump OpenTelemetry (#18239)

      • Bump @opentelemetry/context-async-hooks from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/core from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/resources from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/sdk-trace-base from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/sdk-trace-node from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/instrumentation from 0.204.0 to 0.208.0
      • Bump @opentelemetry/instrumentation-amqplib from 0.51.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-aws-sdk from 0.59.0 to 0.64.0
      • Bump @opentelemetry/instrumentation-connect from 0.48.0 to 0.52.0
      • Bump @opentelemetry/instrumentation-dataloader from 0.22.0 to 0.26.0
      • Bump @opentelemetry/instrumentation-express from 0.53.0 to 0.57.0
      • Bump @opentelemetry/instrumentation-fs from 0.24.0 to 0.28.0
      • Bump @opentelemetry/instrumentation-generic-pool from 0.48.0 to 0.52.0
      • Bump @opentelemetry/instrumentation-graphql from 0.52.0 to 0.56.0
      • Bump @opentelemetry/instrumentation-hapi from 0.51.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-http from 0.204.0 to 0.208.0
      • Bump @opentelemetry/instrumentation-ioredis from 0.52.0 to 0.56.0
      • Bump @opentelemetry/instrumentation-kafkajs from 0.14.0 to 0.18.0
      • Bump @opentelemetry/instrumentation-knex from 0.49.0 to 0.53.0
      • Bump @opentelemetry/instrumentation-koa from 0.52.0 to 0.57.0
      • Bump @opentelemetry/instrumentation-lru-memoizer from 0.49.0 to 0.53.0
      • Bump @opentelemetry/instrumentation-mongodb from 0.57.0 to 0.61.0
      • Bump @opentelemetry/instrumentation-mongoose from 0.51.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-mysql from 0.50.0 to 0.54.0
      • Bump @opentelemetry/instrumentation-mysql2 from 0.51.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-nestjs-core from 0.50.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-pg from 0.57.0 to 0.61.0
      • Bump @opentelemetry/instrumentation-redis from 0.53.0 to 0.57.0
      • Bump @opentelemetry/instrumentation-tedious from 0.23.0 to 0.27.0
      • Bump @opentelemetry/instrumentation-undici from 0.15.0 to 0.19.0
      • Bump @prisma/instrumentation from 6.15.0 to 6.19.0
    • feat(browserprofiling): Add manual mode and deprecate old profiling (#18189)

      Adds the manual lifecycle mode for UI profiling (the default mode), allowing profiles to be captured manually with Sentry.uiProfiler.startProfiler() and Sentry.uiProfiler.stopProfiler(). The previous transaction-based profiling is with profilesSampleRate is now deprecated in favor of the new UI Profiling with profileSessionSampleRate.

    Other Changes

    • feat(core): Add gibibyte and pebibyte to InformationUnit type (#18241)
    • feat(core): Add scope attribute APIs (#18165)
    • feat(core): Re-add _experiments.enableLogs option (#18299)
    • feat(core): Use maxValueLength on error messages (#18301)
    • feat(deps): bump @sentry/bundler-plugin-core from 4.3.0 to 4.6.1 (#18273)
    • feat(deps): bump @sentry/cli from 2.56.0 to 2.58.2 (#18271)
    • feat(node): Add tracing support for AzureOpenAI (#18281)
    • feat(node): Fix local variables capturing for out-of-app frames (#18245)
    • fix(core): Add a PromiseBuffer for incoming events on the client (#18120)
    • fix(core): Always redact content of sensitive headers regardless of sendDefaultPii (#18311)
    • fix(metrics): Update return type of beforeSendMetric (#18261)
    • fix(nextjs): universal random tunnel path support (#18257)
    • ref(react): Add more guarding against wildcards in lazy route transactions (#18155)
    • chore(deps): bump glob from 11.0.1 to 11.1.0 in /packages/react-router (#18243)

    <details> <summary> <strong>Internal Changes</strong> </summary> - build(deps): bump hono from 4.9.7 to 4.10.3 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#18038) - chore: Add bump_otel_instrumentations cursor command (#18253) - chore: Add external contributor to CHANGELOG.md (#18297) - chore: Add external contributor to CHANGELOG.md (#18300) - chore: Do not update opentelemetry (#18254) - chore(angular): Add Angular 21 Support (#18274) - chore(deps): bump astro from 4.16.18 to 5.15.9 in /dev-packages/e2e-tests/test-applications/cloudflare-astro (#18259) - chore(dev-deps): Update some dev dependencies (#17816) - ci(deps): Bump actions/create-github-app-token from 2.1.1 to 2.1.4 (#17825) - ci(deps): bump actions/setup-node from 4 to 6 (#18077) - ci(deps): bump actions/upload-artifact from 4 to 5 (#18075) - ci(deps): bump github/codeql-action from 3 to 4 (#18076) - doc(sveltekit): Update documentation link for SvelteKit guide (#18298) - test(e2e): Fix astro config in test app (#18282) - test(nextjs): Remove debug logs from e2e test (#18250) </details>

    Work in this release was contributed by @bignoncedric and @adam-kov. Thank you for your contributions!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.22 KB
    @sentry/browser - with treeshaking flags 22.76 KB
    @sentry/browser (incl. Tracing) 40.57 KB
    @sentry/browser (incl. Tracing, Profiling) 45.05 KB
    @sentry/browser (incl. Tracing, Replay) 78.08 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.05 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.65 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.61 KB
    @sentry/browser (incl. Feedback) 40.51 KB
    @sentry/browser (incl. sendFeedback) 28.8 KB
    @sentry/browser (incl. FeedbackAsync) 33.62 KB
    @sentry/react 25.9 KB
    @sentry/react (incl. Tracing) 42.71 KB
    @sentry/vue 28.56 KB
    @sentry/vue (incl. Tracing) 42.32 KB
    @sentry/svelte 24.24 KB
    CDN Bundle 26.53 KB
    CDN Bundle (incl. Tracing) 41.18 KB
    CDN Bundle (incl. Tracing, Replay) 76.85 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 82.18 KB
    CDN Bundle - uncompressed 77.97 KB
    CDN Bundle (incl. Tracing) - uncompressed 122.28 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 235.6 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 248.06 KB
    @sentry/nextjs (client) 44.88 KB
    @sentry/sveltekit (client) 40.92 KB
    @sentry/node-core 49.99 KB
    @sentry/node 155.51 KB
    @sentry/node - without tracing 90.65 KB
    @sentry/aws-serverless 105.54 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(deps): Bump OpenTelemetry (#18239)

      • Bump @opentelemetry/context-async-hooks from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/core from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/resources from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/sdk-trace-base from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/sdk-trace-node from ^2.1.0 to ^2.2.0
      • Bump @opentelemetry/instrumentation from 0.204.0 to 0.208.0
      • Bump @opentelemetry/instrumentation-amqplib from 0.51.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-aws-sdk from 0.59.0 to 0.64.0
      • Bump @opentelemetry/instrumentation-connect from 0.48.0 to 0.52.0
      • Bump @opentelemetry/instrumentation-dataloader from 0.22.0 to 0.26.0
      • Bump @opentelemetry/instrumentation-express from 0.53.0 to 0.57.0
      • Bump @opentelemetry/instrumentation-fs from 0.24.0 to 0.28.0
      • Bump @opentelemetry/instrumentation-generic-pool from 0.48.0 to 0.52.0
      • Bump @opentelemetry/instrumentation-graphql from 0.52.0 to 0.56.0
      • Bump @opentelemetry/instrumentation-hapi from 0.51.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-http from 0.204.0 to 0.208.0
      • Bump @opentelemetry/instrumentation-ioredis from 0.52.0 to 0.56.0
      • Bump @opentelemetry/instrumentation-kafkajs from 0.14.0 to 0.18.0
      • Bump @opentelemetry/instrumentation-knex from 0.49.0 to 0.53.0
      • Bump @opentelemetry/instrumentation-koa from 0.52.0 to 0.57.0
      • Bump @opentelemetry/instrumentation-lru-memoizer from 0.49.0 to 0.53.0
      • Bump @opentelemetry/instrumentation-mongodb from 0.57.0 to 0.61.0
      • Bump @opentelemetry/instrumentation-mongoose from 0.51.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-mysql from 0.50.0 to 0.54.0
      • Bump @opentelemetry/instrumentation-mysql2 from 0.51.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-nestjs-core from 0.50.0 to 0.55.0
      • Bump @opentelemetry/instrumentation-pg from 0.57.0 to 0.61.0
      • Bump @opentelemetry/instrumentation-redis from 0.53.0 to 0.57.0
      • Bump @opentelemetry/instrumentation-tedious from 0.23.0 to 0.27.0
      • Bump @opentelemetry/instrumentation-undici from 0.15.0 to 0.19.0
      • Bump @prisma/instrumentation from 6.15.0 to 6.19.0
    • feat(browserprofiling): Add manual mode and deprecate old profiling (#18189)

      Adds the manual lifecycle mode for UI profiling (the default mode), allowing profiles to be captured manually with Sentry.uiProfiler.startProfiler() and Sentry.uiProfiler.stopProfiler(). The previous transaction-based profiling is with profilesSampleRate is now deprecated in favor of the new UI Profiling with profileSessionSampleRate.

    Other Changes

    • feat(core): Add gibibyte and pebibyte to InformationUnit type (#18241)
    • feat(core): Add scope attribute APIs (#18165)
    • feat(core): Re-add _experiments.enableLogs option (#18299)
    • feat(core): Use maxValueLength on error messages (#18301)
    • feat(deps): bump @sentry/bundler-plugin-core from 4.3.0 to 4.6.1 (#18273)
    • feat(deps): bump @sentry/cli from 2.56.0 to 2.58.2 (#18271)
    • feat(node): Add tracing support for AzureOpenAI (#18281)
    • feat(node): Fix local variables capturing for out-of-app frames (#18245)
    • fix(core): Add a PromiseBuffer for incoming events on the client (#18120)
    • fix(core): Always redact content of sensitive headers regardless of sendDefaultPii (#18311)
    • fix(metrics): Update return type of beforeSendMetric (#18261)
    • fix(nextjs): universal random tunnel path support (#18257)
    • ref(react): Add more guarding against wildcards in lazy route transactions (#18155)
    • chore(deps): bump glob from 11.0.1 to 11.1.0 in /packages/react-router (#18243)

    <details> <summary> <strong>Internal Changes</strong> </summary> - build(deps): bump hono from 4.9.7 to 4.10.3 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#18038) - chore: Add bump_otel_instrumentations cursor command (#18253) - chore: Add external contributor to CHANGELOG.md (#18297) - chore: Add external contributor to CHANGELOG.md (#18300) - chore: Do not update opentelemetry (#18254) - chore(angular): Add Angular 21 Support (#18274) - chore(deps): bump astro from 4.16.18 to 5.15.9 in /dev-packages/e2e-tests/test-applications/cloudflare-astro (#18259) - chore(dev-deps): Update some dev dependencies (#17816) - ci(deps): Bump actions/create-github-app-token from 2.1.1 to 2.1.4 (#17825) - ci(deps): bump actions/setup-node from 4 to 6 (#18077) - ci(deps): bump actions/upload-artifact from 4 to 5 (#18075) - ci(deps): bump github/codeql-action from 3 to 4 (#18076) - doc(sveltekit): Update documentation link for SvelteKit guide (#18298) - test(e2e): Fix astro config in test app (#18282) - test(nextjs): Remove debug logs from e2e test (#18250) </details>

    Work in this release was contributed by @bignoncedric and @adam-kov. Thank you for your contributions!

    Open source โ†’
  55. 10.26.019 Nov 2025
    Release notes

    Important Changes

    • feat(core): Instrument LangGraph Agent (#18114)

    Adds support for instrumenting LangGraph StateGraph operations in Node. The LangGraph integration can be configured as follows:

    Sentry.init({
      dsn: '__DSN__',
      sendDefaultPii: false, // Even with PII disabled globally
      integrations: [
        Sentry.langGraphIntegration({
          recordInputs: true, // Force recording input messages
          recordOutputs: true, // Force recording response text
        }),
      ],
    });
    
    • feat(cloudflare/vercel-edge): Add manual instrumentation for LangGraph (#18112)

    Instrumentation for LangGraph in Cloudflare Workers and Vercel Edge environments is supported by manually calling instrumentLangGraph:

    import * as Sentry from '@sentry/cloudflare'; // or '@sentry/vercel-edge'
    import { StateGraph, START, END, MessagesAnnotation } from '@langchain/langgraph';
    
    // Create and instrument the graph
    const graph = new StateGraph(MessagesAnnotation)
      .addNode('agent', agentFn)
      .addEdge(START, 'agent')
      .addEdge('agent', END);
    
    Sentry.instrumentLangGraph(graph, {
      recordInputs: true,
      recordOutputs: true,
    });
    
    const compiled = graph.compile({ name: 'weather_assistant' });
    
    await compiled.invoke({
      messages: [{ role: 'user', content: 'What is the weather in SF?' }],
    });
    
    • feat(node): Add OpenAI SDK v6 support (#18244)

    Other Changes

    • feat(core): Support OpenAI embeddings API (#18224)
    • feat(browser-utils): bump web-vitals to 5.1.0 (#18091)
    • feat(core): Support truncation for LangChain integration request messages (#18157)
    • feat(metrics): Add default server.address attribute on server runtimes (#18242)
    • feat(nextjs): Add URL to server-side transaction events (#18230)
    • feat(node-core): Add mechanism to prevent wrapping ai providers multiple times(#17972)
    • feat(replay): Bump limit for minReplayDuration (#18190)
    • fix(browser): Add ok status to successful idleSpans (#18139)
    • fix(core): Check fetch support with data URL (#18225)
    • fix(core): Decrease number of Sentry stack frames for messages from captureConsoleIntegration (#18096)
    • fix(core): Emit processed metric (#18222)
    • fix(core): Ensure logs past MAX_LOG_BUFFER_SIZE are not swallowed (#18207)
    • fix(core): Ensure metrics past MAX_METRIC_BUFFER_SIZE are not swallowed (#18212)
    • fix(core): Fix logs and metrics flush timeout starvation with continuous logging (#18211)
    • fix(core): Flatten gen_ai.request.available_tools in google-genai (#18194)
    • fix(core): Stringify available tools sent from vercelai (#18197)
    • fix(core/vue): Detect and skip normalizing Vue VNode objects with high normalizeDepth (#18206)
    • fix(nextjs): Avoid wrapping middleware files when in standalone mode (#18172)
    • fix(nextjs): Drop meta trace tags if rendered page is ISR (#18192)
    • fix(nextjs): Respect PORT variable for dev error symbolication (#18227)
    • fix(nextjs): use LRU map instead of map for ISR route cache (#18234)
    • fix(node): tracingChannel export missing in older node versions (#18191)
    • fix(node): Fix Spotlight configuration precedence to match specification (#18195)
    • fix(react): Prevent navigation span leaks for consecutive navigations (#18098)
    • ref(react-router): Deprecate ErrorBoundary exports (#18208)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Fix missing changelog quote we use for attribution placement (#18237)
    • chore: move tip about prioritizing issues (#18071)
    • chore(e2e): Pin @embroider/addon-shim to 1.10.0 for the e2e ember-embroider (#18173)
    • chore(react-router): Fix casing on deprecation notices (#18221)
    • chore(test): Use correct testTimeout field in bundler-tests vitest config
    • chore(e2e): Bump zod in e2e tests (#18251)
    • test(browser-integration): Fix incorrect tag value assertions (#18162)
    • test(profiling): Add test utils to validate Profile Chunk envelope (#18170)
    • ref(e2e-ember): Remove @embroider/addon-shim override (#18180)
    • ref(browser): Move trace lifecycle listeners to class function (#18231)
    • ref(browserprofiling): Move and rename profiler class to UIProfiler (#18187)
    • ref(core): Move ai integrations from utils to tracing (#18185)
    • ref(core): Optimize Scope.setTag bundle size and adjust test (#18182)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.04 KB
    @sentry/browser - with treeshaking flags 22.59 KB
    @sentry/browser (incl. Tracing) 40.4 KB
    @sentry/browser (incl. Tracing, Profiling) 44.62 KB
    @sentry/browser (incl. Tracing, Replay) 77.95 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 67.89 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.52 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.46 KB
    @sentry/browser (incl. Feedback) 40.32 KB
    @sentry/browser (incl. sendFeedback) 28.61 KB
    @sentry/browser (incl. FeedbackAsync) 33.41 KB
    @sentry/react 25.7 KB
    @sentry/react (incl. Tracing) 42.3 KB
    @sentry/vue 28.43 KB
    @sentry/vue (incl. Tracing) 42.16 KB
    @sentry/svelte 24.07 KB
    CDN Bundle 26.32 KB
    CDN Bundle (incl. Tracing) 40.96 KB
    CDN Bundle (incl. Tracing, Replay) 76.66 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 81.99 KB
    CDN Bundle - uncompressed 77.1 KB
    CDN Bundle (incl. Tracing) - uncompressed 121.42 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 234.73 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 247.19 KB
    @sentry/nextjs (client) 44.66 KB
    @sentry/sveltekit (client) 40.78 KB
    @sentry/node-core 49.76 KB
    @sentry/node 155.53 KB
    @sentry/node - without tracing 90.65 KB
    @sentry/aws-serverless 104.08 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(core): Instrument LangGraph Agent (#18114)

    Adds support for instrumenting LangGraph StateGraph operations in Node. The LangGraph integration can be configured as follows:

    Sentry.init({
      dsn: '__DSN__',
      sendDefaultPii: false, // Even with PII disabled globally
      integrations: [
        Sentry.langGraphIntegration({
          recordInputs: true, // Force recording input messages
          recordOutputs: true, // Force recording response text
        }),
      ],
    });
    
    • feat(cloudflare/vercel-edge): Add manual instrumentation for LangGraph (#18112)

    Instrumentation for LangGraph in Cloudflare Workers and Vercel Edge environments is supported by manually calling instrumentLangGraph:

    import * as Sentry from '@sentry/cloudflare'; // or '@sentry/vercel-edge'
    import { StateGraph, START, END, MessagesAnnotation } from '@langchain/langgraph';
    
    // Create and instrument the graph
    const graph = new StateGraph(MessagesAnnotation)
      .addNode('agent', agentFn)
      .addEdge(START, 'agent')
      .addEdge('agent', END);
    
    Sentry.instrumentLangGraph(graph, {
      recordInputs: true,
      recordOutputs: true,
    });
    
    const compiled = graph.compile({ name: 'weather_assistant' });
    
    await compiled.invoke({
      messages: [{ role: 'user', content: 'What is the weather in SF?' }],
    });
    
    • feat(node): Add OpenAI SDK v6 support (#18244)

    Other Changes

    • feat(core): Support OpenAI embeddings API (#18224)
    • feat(browser-utils): bump web-vitals to 5.1.0 (#18091)
    • feat(core): Support truncation for LangChain integration request messages (#18157)
    • feat(metrics): Add default server.address attribute on server runtimes (#18242)
    • feat(nextjs): Add URL to server-side transaction events (#18230)
    • feat(node-core): Add mechanism to prevent wrapping ai providers multiple times(#17972)
    • feat(replay): Bump limit for minReplayDuration (#18190)
    • fix(browser): Add ok status to successful idleSpans (#18139)
    • fix(core): Check fetch support with data URL (#18225)
    • fix(core): Decrease number of Sentry stack frames for messages from captureConsoleIntegration (#18096)
    • fix(core): Emit processed metric (#18222)
    • fix(core): Ensure logs past MAX_LOG_BUFFER_SIZE are not swallowed (#18207)
    • fix(core): Ensure metrics past MAX_METRIC_BUFFER_SIZE are not swallowed (#18212)
    • fix(core): Fix logs and metrics flush timeout starvation with continuous logging (#18211)
    • fix(core): Flatten gen_ai.request.available_tools in google-genai (#18194)
    • fix(core): Stringify available tools sent from vercelai (#18197)
    • fix(core/vue): Detect and skip normalizing Vue VNode objects with high normalizeDepth (#18206)
    • fix(nextjs): Avoid wrapping middleware files when in standalone mode (#18172)
    • fix(nextjs): Drop meta trace tags if rendered page is ISR (#18192)
    • fix(nextjs): Respect PORT variable for dev error symbolication (#18227)
    • fix(nextjs): use LRU map instead of map for ISR route cache (#18234)
    • fix(node): tracingChannel export missing in older node versions (#18191)
    • fix(node): Fix Spotlight configuration precedence to match specification (#18195)
    • fix(react): Prevent navigation span leaks for consecutive navigations (#18098)
    • ref(react-router): Deprecate ErrorBoundary exports (#18208)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Fix missing changelog quote we use for attribution placement (#18237)
    • chore: move tip about prioritizing issues (#18071)
    • chore(e2e): Pin @embroider/addon-shim to 1.10.0 for the e2e ember-embroider (#18173)
    • chore(react-router): Fix casing on deprecation notices (#18221)
    • chore(test): Use correct testTimeout field in bundler-tests vitest config
    • chore(e2e): Bump zod in e2e tests (#18251)
    • test(browser-integration): Fix incorrect tag value assertions (#18162)
    • test(profiling): Add test utils to validate Profile Chunk envelope (#18170)
    • ref(e2e-ember): Remove @embroider/addon-shim override (#18180)
    • ref(browser): Move trace lifecycle listeners to class function (#18231)
    • ref(browserprofiling): Move and rename profiler class to UIProfiler (#18187)
    • ref(core): Move ai integrations from utils to tracing (#18185)
    • ref(core): Optimize Scope.setTag bundle size and adjust test (#18182)

    </details>

    Open source โ†’
  56. 10.25.011 Nov 2025
    Release notes
    • feat(browser): Include Spotlight in development bundles (#18078)
    • feat(cloudflare): Add metrics exports (#18147)
    • feat(core): Truncate request string inputs in OpenAI integration (#18136)
    • feat(metrics): Add missing metric node exports (#18149)
    • feat(node): Add maxCacheKeyLength to Redis integration (remove truncation) (#18045)
    • feat(vercel-edge): Add metrics export (#18148)
    • fix(core): Only consider exception mechanism when updating session status from event with exceptions (#18137)
    • ref(browser): Remove truncation when not needed (#18051)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(build): Fix incorrect versions after merge (#18154) </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.02 KB
    @sentry/browser - with treeshaking flags 22.54 KB
    @sentry/browser (incl. Tracing) 40.26 KB
    @sentry/browser (incl. Tracing, Profiling) 44.44 KB
    @sentry/browser (incl. Tracing, Replay) 77.83 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 67.75 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.41 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.3 KB
    @sentry/browser (incl. Feedback) 40.3 KB
    @sentry/browser (incl. sendFeedback) 28.58 KB
    @sentry/browser (incl. FeedbackAsync) 33.39 KB
    @sentry/react 25.66 KB
    @sentry/react (incl. Tracing) 42.17 KB
    @sentry/vue 28.39 KB
    @sentry/vue (incl. Tracing) 41.99 KB
    @sentry/svelte 24.03 KB
    CDN Bundle 26.26 KB
    CDN Bundle (incl. Tracing) 40.8 KB
    CDN Bundle (incl. Tracing, Replay) 76.46 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 81.81 KB
    CDN Bundle - uncompressed 76.99 KB
    CDN Bundle (incl. Tracing) - uncompressed 121.03 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 234.35 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 246.81 KB
    @sentry/nextjs (client) 44.25 KB
    @sentry/sveltekit (client) 40.64 KB
    @sentry/node-core 49.57 KB
    @sentry/node 154.14 KB
    @sentry/node - without tracing 90.47 KB
    @sentry/aws-serverless 103.91 KB
    Open source โ†’
    Release notes
    • feat(browser): Include Spotlight in development bundles (#18078)
    • feat(cloudflare): Add metrics exports (#18147)
    • feat(core): Truncate request string inputs in OpenAI integration (#18136)
    • feat(metrics): Add missing metric node exports (#18149)
    • feat(node): Add maxCacheKeyLength to Redis integration (remove truncation) (#18045)
    • feat(vercel-edge): Add metrics export (#18148)
    • fix(core): Only consider exception mechanism when updating session status from event with exceptions (#18137)
    • ref(browser): Remove truncation when not needed (#18051)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore(build): Fix incorrect versions after merge (#18154)

    </details>

    Open source โ†’
  57. 10.24.010 Nov 2025
    Release notes

    Important Changes

    • feat(metrics): Add top level option enableMetrics and beforeSendMetric (#18088)

      This PR moves enableMetrics and beforeSendMetric out of the _experiments options. The metrics feature will now be enabled by default (none of our integrations will auto-emit metrics as of now), but you can disable sending metrics via enableMetrics: false. Metric options within _experiments got deprecated but will still work as of now, they will be removed with the next major version of our SDKs.

    Other Changes

    • feat(aws): Add SENTRY_LAYER_EXTENSION to configure using the lambda layer extension via env variables (#18101)
    • feat(core): Include all exception object keys instead of truncating (#18044)
    • feat(metrics)!: Update types (#17907)
    • feat(replay): ignore background-image when blockAllMedia is enabled (#18019)
    • fix(nextjs): Delete css map files (#18131)
    • fix(nextjs): Stop accessing sync props in template (#18113)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: X handle update (#18117)
    • chore(eslint): Add eslint-plugin-regexp rule (dev-packages) (#18063)
    • test(next): fix flakey tests (#18100)
    • test(node-core): Proof that withMonitor doesn't create a new trace (#18057) </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.02 KB
    @sentry/browser - with treeshaking flags 22.54 KB
    @sentry/browser (incl. Tracing) 40.26 KB
    @sentry/browser (incl. Tracing, Profiling) 44.43 KB
    @sentry/browser (incl. Tracing, Replay) 77.83 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 67.75 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.42 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.3 KB
    @sentry/browser (incl. Feedback) 40.3 KB
    @sentry/browser (incl. sendFeedback) 28.58 KB
    @sentry/browser (incl. FeedbackAsync) 33.39 KB
    @sentry/react 25.68 KB
    @sentry/react (incl. Tracing) 42.2 KB
    @sentry/vue 28.39 KB
    @sentry/vue (incl. Tracing) 41.99 KB
    @sentry/svelte 24.03 KB
    CDN Bundle 26.26 KB
    CDN Bundle (incl. Tracing) 40.79 KB
    CDN Bundle (incl. Tracing, Replay) 76.46 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 81.81 KB
    CDN Bundle - uncompressed 77 KB
    CDN Bundle (incl. Tracing) - uncompressed 121.06 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 234.37 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 246.83 KB
    @sentry/nextjs (client) 44.25 KB
    @sentry/sveltekit (client) 40.63 KB
    @sentry/node-core 49.57 KB
    @sentry/node 154.12 KB
    @sentry/node - without tracing 90.46 KB
    @sentry/aws-serverless 103.91 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(metrics): Add top level option enableMetrics and beforeSendMetric (#18088)

      This PR moves enableMetrics and beforeSendMetric out of the _experiments options. The metrics feature will now be enabled by default (none of our integrations will auto-emit metrics as of now), but you can disable sending metrics via enableMetrics: false. Metric options within _experiments got deprecated but will still work as of now, they will be removed with the next major version of our SDKs.

    Other Changes

    • feat(aws): Add SENTRY_LAYER_EXTENSION to configure using the lambda layer extension via env variables (#18101)
    • feat(core): Include all exception object keys instead of truncating (#18044)
    • feat(metrics)!: Update types (#17907)
    • feat(replay): ignore background-image when blockAllMedia is enabled (#18019)
    • fix(nextjs): Delete css map files (#18131)
    • fix(nextjs): Stop accessing sync props in template (#18113)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: X handle update (#18117)
    • chore(eslint): Add eslint-plugin-regexp rule (dev-packages) (#18063)
    • test(next): fix flakey tests (#18100)
    • test(node-core): Proof that withMonitor doesn't create a new trace (#18057)

    </details>

    Open source โ†’
  58. 10.23.05 Nov 2025
    Release notes
    • feat(core): Send user-agent header with envelope requests in server SDKs (#17929)
    • feat(browser): Limit transport buffer size (#18046)
    • feat(core): Remove default value of maxValueLength: 250 (#18043)
    • feat(react-router): Align options with shared build time options type (#18014)
    • fix(browser-utils): cache element names for INP (#18052)
    • fix(browser): Capture unhandled rejection errors for web worker integration (#18054)
    • fix(cloudflare): Ensure types for cloudflare handlers (#18064)
    • fix(nextjs): Update proxy template wrapping (#18086)
    • fix(nuxt): Added top-level fallback exports (#18083)
    • fix(nuxt): check for H3 error cause before re-capturing (#18035)
    • fix(replay): Linked errors not resetting session id (#17854)
    • fix(tracemetrics): Bump metrics buffer to 1k (#18039)
    • fix(vue): Make options parameter optional on attachErrorHandler (#18072)
    • ref(core): Set span status internal_error instead of unknown_error (#17909)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • fix(tests): un-override nitro dep version for nuxt-3 test (#18056)
    • fix(e2e): Add p-map override to fix React Router 7 test builds (#18068)
    • feat: Add a note to save changes before starting (#17987)
    • test(browser): Add test for INP target name after navigation or DOM changes (#18033)
    • chore: Add external contributor to CHANGELOG.md (#18032)
    • chore(aws-serverless): Fix typo in timeout warning function name (#18031)
    • chore(browser): upgrade fake-indexeddb to v6 (#17975)
    • chore(tests): pass test flags through to the test command (#18062)

    </details>

    Work in this release was contributed by @hanseo0507. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.06 KB
    @sentry/browser - with treeshaking flags 22.58 KB
    @sentry/browser (incl. Tracing) 40.29 KB
    @sentry/browser (incl. Tracing, Profiling) 44.47 KB
    @sentry/browser (incl. Tracing, Replay) 77.64 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 67.58 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.23 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 94.12 KB
    @sentry/browser (incl. Feedback) 40.34 KB
    @sentry/browser (incl. sendFeedback) 28.62 KB
    @sentry/browser (incl. FeedbackAsync) 33.44 KB
    @sentry/react 25.71 KB
    @sentry/react (incl. Tracing) 42.23 KB
    @sentry/vue 28.45 KB
    @sentry/vue (incl. Tracing) 42.04 KB
    @sentry/svelte 24.07 KB
    CDN Bundle 26.27 KB
    CDN Bundle (incl. Tracing) 40.82 KB
    CDN Bundle (incl. Tracing, Replay) 76.24 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 81.6 KB
    CDN Bundle - uncompressed 77.04 KB
    CDN Bundle (incl. Tracing) - uncompressed 121.1 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 233.6 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 246.06 KB
    @sentry/nextjs (client) 44.3 KB
    @sentry/sveltekit (client) 40.69 KB
    @sentry/node-core 49.62 KB
    @sentry/node 154.18 KB
    @sentry/node - without tracing 90.52 KB
    @sentry/aws-serverless 103.93 KB
    Open source โ†’
    Release notes
    • feat(core): Send user-agent header with envelope requests in server SDKs (#17929)
    • feat(browser): Limit transport buffer size (#18046)
    • feat(core): Remove default value of maxValueLength: 250 (#18043)
    • feat(react-router): Align options with shared build time options type (#18014)
    • fix(browser-utils): cache element names for INP (#18052)
    • fix(browser): Capture unhandled rejection errors for web worker integration (#18054)
    • fix(cloudflare): Ensure types for cloudflare handlers (#18064)
    • fix(nextjs): Update proxy template wrapping (#18086)
    • fix(nuxt): Added top-level fallback exports (#18083)
    • fix(nuxt): check for H3 error cause before re-capturing (#18035)
    • fix(replay): Linked errors not resetting session id (#17854)
    • fix(tracemetrics): Bump metrics buffer to 1k (#18039)
    • fix(vue): Make options parameter optional on attachErrorHandler (#18072)
    • ref(core): Set span status internal_error instead of unknown_error (#17909)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • fix(tests): un-override nitro dep version for nuxt-3 test (#18056)
    • fix(e2e): Add p-map override to fix React Router 7 test builds (#18068)
    • feat: Add a note to save changes before starting (#17987)
    • test(browser): Add test for INP target name after navigation or DOM changes (#18033)
    • chore: Add external contributor to CHANGELOG.md (#18032)
    • chore(aws-serverless): Fix typo in timeout warning function name (#18031)
    • chore(browser): upgrade fake-indexeddb to v6 (#17975)
    • chore(tests): pass test flags through to the test command (#18062)

    </details>

    Work in this release was contributed by @hanseo0507. Thank you for your contribution!

    Open source โ†’
  59. 10.22.024 Oct 2025
    Release notes

    Important Changes

    • feat(node): Instrument cloud functions for firebase v2 (#17952)

      We added instrumentation for Cloud Functions for Firebase v2, enabling automatic performance tracking and error monitoring. This will be added automatically if you have enabled tracing.

    • feat(core): Instrument LangChain AI (#17955)

      Instrumentation was added for LangChain AI operations. You can configure what is recorded like this:

      Sentry.init({
        integrations: [
          Sentry.langChainIntegration({
            recordInputs: true, // Record prompts/messages
            recordOutputs: true, // Record responses
          }),
        ],
      });
      

    Other Changes

    • feat(cloudflare,vercel-edge): Add support for LangChain instrumentation (#17986)
    • feat: Align sentry origin with documentation (#17998)
    • feat(core): Truncate request messages in AI integrations (#17921)
    • feat(nextjs): Support node runtime on proxy files (#17995)
    • feat(node): Pass requestHook and responseHook option to OTel (#17996)
    • fix(core): Fix wrong async types when instrumenting anthropic's stream api (#18007)
    • fix(nextjs): Remove usage of chalk to avoid runtime errors (#18010)
    • fix(node): Pino capture serialized err (#17999)
    • fix(node): Pino child loggers (#17934)
    • fix(react): Don't trim index route / when getting pathname (#17985)
    • fix(react): Patch spanEnd for potentially cancelled lazy-route transactions (#17962)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add required size_check for GH Actions (#18009)
    • chore: Upgrade madge to v8 (#17957)
    • test(hono): Fix hono e2e tests (#18000)
    • test(react-router): Fix getMetaTagTransformer tests for Vitest compatibility (#18013)
    • test(react): Add parameterized route tests for createHashRouter (#17789)

    </details>

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.05 KB
    @sentry/browser - with treeshaking flags 22.57 KB
    @sentry/browser (incl. Tracing) 40.01 KB
    @sentry/browser (incl. Tracing, Profiling) 44.2 KB
    @sentry/browser (incl. Tracing, Replay) 77.43 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 67.36 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.02 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 93.9 KB
    @sentry/browser (incl. Feedback) 40.33 KB
    @sentry/browser (incl. sendFeedback) 28.61 KB
    @sentry/browser (incl. FeedbackAsync) 33.42 KB
    @sentry/react 25.69 KB
    @sentry/react (incl. Tracing) 41.96 KB
    @sentry/vue 28.43 KB
    @sentry/vue (incl. Tracing) 41.75 KB
    @sentry/svelte 24.06 KB
    CDN Bundle 26.27 KB
    CDN Bundle (incl. Tracing) 40.65 KB
    CDN Bundle (incl. Tracing, Replay) 76.05 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 81.39 KB
    CDN Bundle - uncompressed 77.01 KB
    CDN Bundle (incl. Tracing) - uncompressed 120.55 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 232.89 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 245.35 KB
    @sentry/nextjs (client) 44.05 KB
    @sentry/sveltekit (client) 40.43 KB
    @sentry/node-core 49.56 KB
    @sentry/node 154.11 KB
    @sentry/node - without tracing 90.46 KB
    @sentry/aws-serverless 103.86 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(node): Instrument cloud functions for firebase v2 (#17952)

      We added instrumentation for Cloud Functions for Firebase v2, enabling automatic performance tracking and error monitoring. This will be added automatically if you have enabled tracing.

    • feat(core): Instrument LangChain AI (#17955)

      Instrumentation was added for LangChain AI operations. You can configure what is recorded like this:

      Sentry.init({
        integrations: [
          Sentry.langChainIntegration({
            recordInputs: true, // Record prompts/messages
            recordOutputs: true, // Record responses
          }),
        ],
      });
      

    Other Changes

    • feat(cloudflare,vercel-edge): Add support for LangChain instrumentation (#17986)
    • feat: Align sentry origin with documentation (#17998)
    • feat(core): Truncate request messages in AI integrations (#17921)
    • feat(nextjs): Support node runtime on proxy files (#17995)
    • feat(node): Pass requestHook and responseHook option to OTel (#17996)
    • fix(core): Fix wrong async types when instrumenting anthropic's stream api (#18007)
    • fix(nextjs): Remove usage of chalk to avoid runtime errors (#18010)
    • fix(node): Pino capture serialized err (#17999)
    • fix(node): Pino child loggers (#17934)
    • fix(react): Don't trim index route / when getting pathname (#17985)
    • fix(react): Patch spanEnd for potentially cancelled lazy-route transactions (#17962)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • chore: Add required size_check for GH Actions (#18009)
    • chore: Upgrade madge to v8 (#17957)
    • test(hono): Fix hono e2e tests (#18000)
    • test(react-router): Fix getMetaTagTransformer tests for Vitest compatibility (#18013)
    • test(react): Add parameterized route tests for createHashRouter (#17789)

    </details>

    Open source โ†’
  60. 10.21.021 Oct 2025
    Release notes

    Important Changes

    • feat(browserProfiling): Add trace lifecycle mode for UI profiling (#17619)

      Adds a new trace lifecycle mode for UI profiling, allowing profiles to be captured for the duration of a trace. A manual mode will be added in a future release.

    • feat(nuxt): Instrument Database (#17899)

      Adds instrumentation for Nuxt database operations, enabling better performance tracking of database queries.

    • feat(nuxt): Instrument server cache API (#17886)

      Adds instrumentation for Nuxt's server cache API, providing visibility into cache operations.

    • feat(nuxt): Instrument storage API (#17858)

      Adds instrumentation for Nuxt's storage API, enabling tracking of storage operations.

    Other Changes

    • feat(browser): Add onRequestSpanEnd hook to browser tracing integration (#17884)
    • feat(nextjs): Support Next.js proxy files (#17926)
    • feat(replay): Record outcome when event buffer size exceeded (#17946)
    • fix(cloudflare): copy execution context in durable objects and handlers (#17786)
    • fix(core): Fix and add missing cache attributes in Vercel AI (#17982)
    • fix(core): Improve uuid performance (#17938)
    • fix(ember): Use updated version for clean-css (#17979)
    • fix(nextjs): Don't set experimental instrumentation hook flag for next 16 (#17978)
    • fix(nextjs): Inconsistent transaction naming for i18n routing (#17927)
    • fix(nextjs): Update bundler detection (#17976)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • build: Update to typescript 5.8.0 (#17710)
    • chore: Add external contributor to CHANGELOG.md (#17949)
    • chore(build): Upgrade nodemon to 3.1.10 (#17956)
    • chore(ci): Fix external contributor action when multiple contributions existed (#17950)
    • chore(solid): Remove unnecessary import from README (#17947)
    • test(nextjs): Fix proxy/middleware test (#17970)

    </details>

    Work in this release was contributed by @0xbad0c0d3. Thank you for your contribution!

    Bundle size ๐Ÿ“ฆ

    Path Size
    @sentry/browser 24.05 KB
    @sentry/browser - with treeshaking flags 22.57 KB
    @sentry/browser (incl. Tracing) 40.01 KB
    @sentry/browser (incl. Tracing, Profiling) 44.2 KB
    @sentry/browser (incl. Tracing, Replay) 77.43 KB
    @sentry/browser (incl. Tracing, Replay) - with treeshaking flags 67.36 KB
    @sentry/browser (incl. Tracing, Replay with Canvas) 82.02 KB
    @sentry/browser (incl. Tracing, Replay, Feedback) 93.9 KB
    @sentry/browser (incl. Feedback) 40.33 KB
    @sentry/browser (incl. sendFeedback) 28.61 KB
    @sentry/browser (incl. FeedbackAsync) 33.42 KB
    @sentry/react 25.69 KB
    @sentry/react (incl. Tracing) 41.96 KB
    @sentry/vue 28.43 KB
    @sentry/vue (incl. Tracing) 41.75 KB
    @sentry/svelte 24.06 KB
    CDN Bundle 26.27 KB
    CDN Bundle (incl. Tracing) 40.65 KB
    CDN Bundle (incl. Tracing, Replay) 76.05 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) 81.39 KB
    CDN Bundle - uncompressed 77.01 KB
    CDN Bundle (incl. Tracing) - uncompressed 120.55 KB
    CDN Bundle (incl. Tracing, Replay) - uncompressed 232.89 KB
    CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 245.35 KB
    @sentry/nextjs (client) 44.05 KB
    @sentry/sveltekit (client) 40.43 KB
    @sentry/node-core 49.56 KB
    @sentry/node 150.82 KB
    @sentry/node - without tracing 90.44 KB
    @sentry/aws-serverless 103.84 KB
    Open source โ†’
    Release notes

    Important Changes

    • feat(browserProfiling): Add trace lifecycle mode for UI profiling (#17619)

      Adds a new trace lifecycle mode for UI profiling, allowing profiles to be captured for the duration of a trace. A manual mode will be added in a future release.

    • feat(nuxt): Instrument Database (#17899)

      Adds instrumentation for Nuxt database operations, enabling better performance tracking of database queries.

    • feat(nuxt): Instrument server cache API (#17886)

      Adds instrumentation for Nuxt's server cache API, providing visibility into cache operations.

    • feat(nuxt): Instrument storage API (#17858)

      Adds instrumentation for Nuxt's storage API, enabling tracking of storage operations.

    Other Changes

    • feat(browser): Add onRequestSpanEnd hook to browser tracing integration (#17884)
    • feat(nextjs): Support Next.js proxy files (#17926)
    • feat(replay): Record outcome when event buffer size exceeded (#17946)
    • fix(cloudflare): copy execution context in durable objects and handlers (#17786)
    • fix(core): Fix and add missing cache attributes in Vercel AI (#17982)
    • fix(core): Improve uuid performance (#17938)
    • fix(ember): Use updated version for clean-css (#17979)
    • fix(nextjs): Don't set experimental instrumentation hook flag for next 16 (#17978)
    • fix(nextjs): Inconsistent transaction naming for i18n routing (#17927)
    • fix(nextjs): Update bundler detection (#17976)

    <details> <summary> <strong>Internal Changes</strong> </summary>

    • build: Update to typescript 5.8.0 (#17710)
    • chore: Add external contributor to CHANGELOG.md (#17949)
    • chore(build): Upgrade nodemon to 3.1.10 (#17956)
    • chore(ci): Fix external contributor action when multiple contributions existed (#17950)
    • chore(solid): Remove unnecessary import from README (#17947)
    • test(nextjs): Fix proxy/middleware test (#17970)

    </details>

    Work in this release was contributed by @0xbad0c0d3. Thank you for your contribution!

    Open source โ†’