Skip to content

9.16.0

Compare
Choose a tag to compare
@sentry-release-bot sentry-release-bot released this 07 May 14:41

Important changes

  • feat: Create a Vite plugin that injects sentryConfig into the global config (#16197)

Add a new plugin makeConfigInjectorPlugin within our existing vite plugin that updates the global vite config with sentry options

  • feat(browser): Add option to sample linked traces consistently (#16037)

This PR implements consistent sampling across traces as outlined in (#15754)

  • feat(cloudflare): Add support for durable objects (#16180)

This PR introduces a new instrumentDurableObjectWithSentry method to the SDK, which instruments durable objects. We capture both traces and errors automatically.

  • feat(node): Add Prisma integration by default (#16073)

Prisma integration is enabled by default, it should work for both ESM and CJS.

  • feat(react-router): Add client-side router instrumentation (#16185)

Adds client-side instrumentation for react router's HydratedRouter. To enable it, simply replace browserTracingIntegration() with reactRouterTracingIntegration() in your client-side init call.

  • fix(node): Avoid double-wrapping http module (#16177)

When running your application in ESM mode, there have been scenarios that resulted in the http/https emitting duplicate spans for incoming requests. This was apparently caused by us double-wrapping the modules for incoming request isolation.

In order to solve this problem, the modules are no longer monkey patched by us for request isolation. Instead, we register diagnosticschannel hooks to handle request isolation now.
While this is generally not expected to break anything, there is one tiny change that _may
affect you if you have been relying on very specific functionality:

The ignoreOutgoingRequests option of httpIntegration receives the RequestOptions as second argument. This type is not changed, however due to how the wrapping now works, we no longer pass through the full RequestOptions, but re-construct this partially based on the generated request. For the vast majority of cases, this should be fine, but for the sake of completeness, these are the only fields that may be available there going forward - other fields that may have existed before may no longer be set:

ignoreOutgoingRequests(url: string, {
  method: string;
  protocol: string;
  host: string;
  hostname: string; // same as host
  path: string;
  headers: OutgoingHttpHeaders;
})

Other changes

  • feat(cloudflare): Add logs exports (#16165)
  • feat(vercel-edge): Add logs export (#16166)
  • feat(cloudflare): Read SENTRY_RELEASE from env (#16201)
  • feat(node): Drop http.server spans with 404 status by default (#16205)
  • fix(browser): Respect manually set sentry tracing headers in XHR requests (#16184)
  • fix(core): Respect manually set sentry tracing headers in fetch calls (#16183)
  • fix(feedback): Prevent removeFromDom() from throwing (#16030)
  • fix(node): Use class constructor in docstring for winston transport (#16167)
  • fix(node): Fix vercel flushing logic & add test for it (#16208)
  • fix(node): Fix 404 route handling in express 5 (#16211)
  • fix(logs): Ensure logs can be flushed correctly (#16216)
  • ref(core): Switch to standardized log envelope (#16133)

Bundle size 📦

Path Size
@sentry/browser 23.35 KB
@sentry/browser - with treeshaking flags 23.19 KB
@sentry/browser (incl. Tracing) 37.25 KB
@sentry/browser (incl. Tracing, Replay) 74.47 KB
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.34 KB
@sentry/browser (incl. Tracing, Replay with Canvas) 79.12 KB
@sentry/browser (incl. Tracing, Replay, Feedback) 90.93 KB
@sentry/browser (incl. Feedback) 39.75 KB
@sentry/browser (incl. sendFeedback) 27.98 KB
@sentry/browser (incl. FeedbackAsync) 32.74 KB
@sentry/react 25.16 KB
@sentry/react (incl. Tracing) 39.24 KB
@sentry/vue 27.63 KB
@sentry/vue (incl. Tracing) 39.01 KB
@sentry/svelte 23.38 KB
CDN Bundle 24.55 KB
CDN Bundle (incl. Tracing) 37.29 KB
CDN Bundle (incl. Tracing, Replay) 72.33 KB
CDN Bundle (incl. Tracing, Replay, Feedback) 77.64 KB
CDN Bundle - uncompressed 71.62 KB
CDN Bundle (incl. Tracing) - uncompressed 110.34 KB
CDN Bundle (incl. Tracing, Replay) - uncompressed 221.63 KB
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 234.15 KB
@sentry/nextjs (client) 40.84 KB
@sentry/sveltekit (client) 37.73 KB
@sentry/node 144.43 KB
@sentry/node - without tracing 96.3 KB
@sentry/aws-serverless 120.66 KB