Skip to content

Releases: getsentry/sentry-javascript

7.112.1

23 Apr 13:14
Compare
Choose a tag to compare
  • fix(ember/v7): Do not create rendering spans without transaction (#11750)

7.112.0

23 Apr 09:03
Compare
Choose a tag to compare

Important Changes

  • feat: Export pluggable integrations from SDK packages (#11723)

Instead of installing @sentry/integrations, you can now import the pluggable integrations directly from your SDK
package:

// Before
import * as Sentry fromv '@sentry/browser';
import { dedupeIntegration } from '@sentry/integrations';

Sentry.init({
  integrations: [dedupeIntegration()],
});

// After
import * as Sentry from '@sentry/browser';

Sentry.init({
  integrations: [Sentry.dedupeIntegration()],
});

Note that only the functional integrations (e.g. xxxIntegration()) are re-exported.

Other Changes

  • feat(replay): Add "maxCanvasSize" option for replay canvases (#11732)
  • fix(serverless): [v7] Check if cloud event callback is a function (#11734)

Bundle size 📦

Path Size
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) 80.72 KB
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) 71.69 KB
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) 75.91 KB
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) 65.32 KB
@sentry/browser (incl. Tracing) - Webpack (gzipped) 35.62 KB
@sentry/browser (incl. browserTracingIntegration) - Webpack (gzipped) 35.5 KB
@sentry/browser (incl. Feedback) - Webpack (gzipped) 31.57 KB
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) 31.58 KB
@sentry/browser - Webpack (gzipped) 22.78 KB
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) 78.9 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) 70.27 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) 36.02 KB
@sentry/browser - ES6 CDN Bundle (gzipped) 25.28 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) 221.25 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) 109.01 KB
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) 75.79 KB
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) 39.3 KB
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) 72.18 KB
@sentry/react - Webpack (gzipped) 22.81 KB
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) 90.01 KB
@sentry/nextjs Client - Webpack (gzipped) 54.15 KB
@sentry-internal/feedback - Webpack (gzipped) 17.32 KB

8.0.0-beta.3

19 Apr 13:57
Compare
Choose a tag to compare
8.0.0-beta.3 Pre-release
Pre-release

Important Changes

  • feat(opentelemetry): Add addOpenTelemetryInstrumentation (#11667)

A utility function addOpenTelemetryInstrumentation was added that allows for the registration of instrumentations that
conform to the OpenTelemetry JS API without having to specify @opentelemetry/instrumentation as a dependency.

  • ref(core): Don't start transaction for trpc middleware (#11697)

Going forward, the Sentry trpcMiddleware will only create spans. Previously it used to always create a transaction.
This change was made to integrate more nicely with the HTTP instrumentation added in earlier versions to avoid creating
unnecessary transactions.

Other Changes

  • feat(nextjs): Instrument outgoing http requests (#11685)
  • feat(opentelemetry): Remove setupGlobalHub (#11668)
  • fix: Missing ErrorEvent export are added to node, browser, bun, deno, vercel-edge sub-packages (#11649)
  • fix(nextjs): Do not sample next spans if they have remote parent (#11680)
  • fix(nextjs): Re-enable OTEL fetch instrumentation and disable Next.js fetch instrumentation (#11686)
  • fix(node): Ensure DSC on envelope header uses root span (#11683)
  • ref(browser): Streamline pageload span creation and scope handling (#11679)
  • ref(core): Directly use endSession (#11669)

Bundle size 📦

Path Size
@sentry/browser 21.67 KB
@sentry/browser (incl. Tracing) 31.4 KB
@sentry/browser (incl. Tracing, Replay) 66.73 KB
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 60.14 KB
@sentry/browser (incl. Tracing, Replay with Canvas) 70.57 KB
@sentry/browser (incl. Tracing, Replay, Feedback) 80.44 KB
@sentry/browser (incl. Feedback) 35.25 KB
@sentry/browser (incl. Feedback, Feedback Modal) 35.25 KB
@sentry/browser (incl. Feedback, Feedback Modal, Feedback Screenshot) 37.28 KB
@sentry/browser (incl. sendFeedback) 26.46 KB
@sentry/react 24.35 KB
@sentry/react (incl. Tracing) 34.31 KB
@sentry/vue 25.2 KB
@sentry/vue (incl. Tracing) 33.12 KB
@sentry/svelte 21.79 KB
CDN Bundle 24.03 KB
CDN Bundle (incl. Tracing) 32.71 KB
CDN Bundle (incl. Tracing, Replay) 66.37 KB
CDN Bundle (incl. Tracing, Replay, Feedback) 82.57 KB
CDN Bundle - uncompressed 70.85 KB
CDN Bundle (incl. Tracing) - uncompressed 97.5 KB
CDN Bundle (incl. Tracing, Replay) - uncompressed 207.16 KB
@sentry/nextjs (client) 33.64 KB
@sentry/sveltekit (client) 31.9 KB
@sentry/node 160.37 KB

7.111.0

18 Apr 16:22
Compare
Choose a tag to compare
  • feat(core): Add server.address to browser http.client spans (#11663)
  • fix: Ensure next & sveltekit correctly handle browserTracingIntegration (#11647)
  • fix(browser): Don't assume window.document is available (#11598)

Bundle size 📦

Path Size
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) 80.71 KB
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) 71.68 KB
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) 75.7 KB
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) 65.31 KB
@sentry/browser (incl. Tracing) - Webpack (gzipped) 35.62 KB
@sentry/browser (incl. browserTracingIntegration) - Webpack (gzipped) 35.5 KB
@sentry/browser (incl. Feedback) - Webpack (gzipped) 31.57 KB
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) 31.58 KB
@sentry/browser - Webpack (gzipped) 22.78 KB
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) 78.89 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) 70.25 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) 36.02 KB
@sentry/browser - ES6 CDN Bundle (gzipped) 25.27 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) 221.21 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) 109.01 KB
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) 75.79 KB
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) 39.3 KB
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) 72.17 KB
@sentry/react - Webpack (gzipped) 22.81 KB
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) 90 KB
@sentry/nextjs Client - Webpack (gzipped) 54.15 KB
@sentry-internal/feedback - Webpack (gzipped) 17.32 KB

8.0.0-beta.2

17 Apr 13:45
Compare
Choose a tag to compare
8.0.0-beta.2 Pre-release
Pre-release

Important Changes

  • feat(browser): Update propagationContext on spanEnd to keep trace consistent

To ensure consistency throughout a route's duration, we update the scope's propagation context when the initial page
load or navigation span ends. This keeps span-specific attributes like the sampled decision and dynamic sampling context
on the scope, even after the transaction has ended.

  • fix(browser): Don't assume window.document is available (#11602)

We won't assume window.dodument is available in the browser SDKs anymore. This should prevent errors in environments
where window.document is not available (such as web workers).

Other changes

  • feat(core): Add server.address to browser http.client spans (#11634)
  • feat(opentelemetry): Update OTEL packages & relax some version ranges (#11580)
  • feat(deps): bump @opentelemetry/instrumentation-hapi from 0.34.0 to 0.36.0 (#11496)
  • feat(deps): bump @opentelemetry/instrumentation-koa from 0.37.0 to 0.39.0 (#11495)
  • feat(deps): bump @opentelemetry/instrumentation-pg from 0.38.0 to 0.40.0 (#11494)
  • feat(nextjs): Skip OTEL root spans emitted by Next.js (#11623)
  • feat(node): Collect Local Variables via a worker (#11586)
  • fix(nextjs): Escape Next.js' OpenTelemetry instrumentation (#11625)
  • fix(feedback): Fix timeout on feedback submission (#11619)
  • fix(node): Allow use of NodeClient without calling init (#11585)
  • fix(node): Ensure DSC is correctly set in envelope headers (#11628)

Bundle size 📦

Path Size
@sentry/browser 21.67 KB
@sentry/browser (incl. Tracing) 31.46 KB
@sentry/browser (incl. Tracing, Replay) 66.79 KB
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 60.19 KB
@sentry/browser (incl. Tracing, Replay with Canvas) 70.62 KB
@sentry/browser (incl. Tracing, Replay, Feedback) 80.5 KB
@sentry/browser (incl. Feedback) 35.25 KB
@sentry/browser (incl. Feedback, Feedback Modal) 35.25 KB
@sentry/browser (incl. Feedback, Feedback Modal, Feedback Screenshot) 37.28 KB
@sentry/browser (incl. sendFeedback) 26.46 KB
@sentry/react 24.35 KB
@sentry/react (incl. Tracing) 34.37 KB
@sentry/vue 25.2 KB
@sentry/vue (incl. Tracing) 33.18 KB
@sentry/svelte 21.79 KB
CDN Bundle 24.03 KB
CDN Bundle (incl. Tracing) 32.76 KB
CDN Bundle (incl. Tracing, Replay) 66.4 KB
CDN Bundle (incl. Tracing, Replay, Feedback) 82.6 KB
CDN Bundle - uncompressed 70.86 KB
CDN Bundle (incl. Tracing) - uncompressed 97.59 KB
CDN Bundle (incl. Tracing, Replay) - uncompressed 207.25 KB
@sentry/nextjs (client) 33.7 KB
@sentry/sveltekit (client) 31.96 KB
@sentry/node 153.46 KB

8.0.0-beta.1

15 Apr 16:25
Compare
Choose a tag to compare
8.0.0-beta.1 Pre-release
Pre-release

This is the first beta release of Sentry JavaScript SDK v8. With this release, there are no more planned breaking
changes for the v8 cycle.

Read the in-depth migration guide to find out how to address any breaking changes in your code. All
deprecations from the v7 cycle, with the exception of getCurrentHub(), have been removed and can no longer be used in v8.

Version Support

The Sentry JavaScript SDK v8 now supports Node.js 14.8.0 or higher. This applies to @sentry/node and all of our
node-based server-side sdks (@sentry/nextjs, @sentry/remix, etc.).

The browser SDKs now require
ES2018+
compatible browsers. New minimum browser versions:

  • Chrome 63
  • Edge 79
  • Safari/iOS Safari 12
  • Firefox 58
  • Opera 50
  • Samsung Internet 8.2

For more details, please see the version support section in migration guide.

Package removal

The following packages will no longer be published

Initializing Server-side SDKs (Node, Bun, Next.js, SvelteKit, Astro, Remix):

Initializing the SDKs on the server-side has been simplified. See more details in our migration docs about
initializing the SDK in v8.

Performance Monitoring Changes

The API around performance monitoring and tracing has been vastly improved, and we've added support for more
integrations out of the box.

Important Changes since v8.0.0-alpha.9

  • feat(browser): Create spans as children of root span by default (#10986)

Because execution context isolation in browser environments does not work reliably, we deciced to keep a flat span
hierarchy by default in v8.

  • feat(core): Deprecate addTracingExtensions (#11579)

Instead of calling Sentry.addTracingExtensions() if you want to use performance in a browser SDK without using
browserTracingIntegration(), you should now call Sentry.registerSpanErrorInstrumentation().

  • feat(core): Implement suppressTracing (#11468)

You can use the new suppressTracing API to ensure a given callback will not generate any spans:

return Sentry.suppressTracing(() => {
  // Ensure this fetch call does not generate a span
  return fetch('/my-url');
});
  • feat: Rename ESM loader hooks to import and loader (#11498)

We renamed the loader hooks for better clarity:

# For Node.js <= 18.18.2
node --loader=@sentry/node/loader app.js

# For Node.js >= 18.19.0
node --import=@sentry/node/import app.js
  • feat(node): Do not exit process by default when other onUncaughtException handlers are registered in
    onUncaughtExceptionIntegration (#11532)

In v8, we will no longer exit the node process by default if other uncaught exception handlers have been registered by
the user.

  • Better handling of transaction name for errors

We improved the way we keep the transaction name for error events, even when spans are not sampled or performance is
disabled.

  • feat(fastify): Update scope transactionName when handling request (#11447)
  • feat(hapi): Update scope transactionName when handling request (#11448)
  • feat(koa): Update scope transactionName when creating router span (#11476)
  • feat(sveltekit): Update scope transactionName when handling server-side request (#11511)
  • feat(nestjs): Update scope transaction name with parameterized route (#11510)

Removal/Refactoring of deprecated functionality

  • feat(core): Remove getCurrentHub from AsyncContextStrategy (#11581)
  • feat(core): Remove getGlobalHub export (#11565)
  • feat(core): Remove Hub class export (#11560)
  • feat(core): Remove most Hub class exports (#11536)
  • feat(nextjs): Remove webpack 4 support (#11605)
  • feat(vercel-edge): Stop using hub (#11539)

Other Changes

  • feat: Hoist getCurrentHub shim to core as getCurrentHubShim (#11537)
  • feat(core): Add default behaviour for rewriteFramesIntegration in browser (#11535)
  • feat(core): Ensure replay envelopes are sent in order when offline (#11413)
  • feat(core): Extract errors from props in unkown inputs (#11526)
  • feat(core): Update metric normalization (#11518)
  • feat(feedback): Customize feedback placeholder text color (#11417)
  • feat(feedback): Maintain v7 compat in the @sentry-internal/feedback package (#11461)
  • feat(next): Handle existing root spans for isolation scope (#11479)
  • feat(node): Ensure tracing without performance (TWP) works (#11564)
  • feat(opentelemetry): Export getRequestSpanData (#11508)
  • feat(opentelemetry): Remove otel.attributes in context (#11604)
  • feat(ratelimit): Add metrics rate limit (#11538)
  • feat(remix): Skip span creation for OPTIONS and HEAD requests. (#11149)
  • feat(replay): Merge packages together & ensure bundles are built (#11552)
  • feat(tracing): Adds span envelope and datacategory (#11534)
  • fix(browser): Ensure pageload trace remains active after pageload span finished (#11600)
  • fix(browser): Ensure tracing without performance (TWP) works (#11561)
  • fix(nextjs): Fix tunnelRoute matching logic for hybrid cloud (#11576)
  • fix(nextjs): Remove Http integration from Next.js (#11304)
  • fix(node): Ensure isolation scope is correctly cloned for non-recording spans (#11503)
  • fix(node): Make fastify types more broad (#11544)
  • fix(node): Send ANR events without scope if event loop blocked indefinitely (#11578)
  • fix(tracing): Fixes latest route name and source not updating correctly (#11533)
  • ref(browser): Move browserTracing into browser pkg (#11484)
  • ref(feedback): Configure font size (#11437)
  • ref(feedback): Refactor Feedback types into @sentry/types and reduce the exported surface area (#11355)

Bundle size 📦

Path Size
@sentry/browser 22.16 KB
@sentry/browser (incl. Tracing) 31.74 KB
@sentry/browser (incl. Tracing, Replay) 67.05 KB
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 60.47 KB
@sentry/browser (incl. Tracing, Replay with Canvas) 70.88 KB
@sentry/browser (incl. Tracing, Replay, Feedback) 80.78 KB
@sentry/browser (incl. Feedback) 35.71 KB
@sentry/browser (incl. Feedback, Feedback Modal) 35.71 KB
@sentry/browser (incl. Feedback, Feedback Modal, Feedback Screenshot) 37.74 KB
@sentry/browser (incl. sendFeedback) 26.95 KB
@sentry/react 24.84 KB
@sentry/react (incl. Tracing) 34.64 KB
@sentry/vue 25.72 KB
@sentry/vue (incl. Tracing) 33.45 KB
@sentry/svelte 22.28 KB
CDN Bundle 24.47 KB
CDN Bundle (incl. Tracing) 32.97 KB
CDN Bundle (incl. Tracing, Replay) 66.59 KB
CDN Bundle (incl. Tracing, Replay, Feedback) 82.8 KB
CDN Bundle - uncompressed 72.9 KB
CDN Bundle (incl. Tracing) - uncompressed 98.89 KB
CDN Bundle (incl. Tracing, Replay) - uncompressed 208.55 KB
@sentry/nextjs (client) 34.01 KB
@sentry/sveltekit (client) 32.25 KB
@sentry/node 120.17 KB

7.110.1

15 Apr 10:57
Compare
Choose a tag to compare
  • fix(nextjs): Fix tunnelRoute matching logic for hybrid cloud (#11577)

Bundle size 📦

Path Size
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) 80.58 KB
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) 71.55 KB
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) 75.57 KB
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) 65.18 KB
@sentry/browser (incl. Tracing) - Webpack (gzipped) 35.49 KB
@sentry/browser (incl. browserTracingIntegration) - Webpack (gzipped) 35.37 KB
@sentry/browser (incl. Feedback) - Webpack (gzipped) 31.57 KB
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) 31.58 KB
@sentry/browser - Webpack (gzipped) 22.78 KB
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) 78.76 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) 70.12 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) 35.9 KB
@sentry/browser - ES6 CDN Bundle (gzipped) 25.27 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) 220.72 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) 108.53 KB
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) 75.79 KB
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) 39.17 KB
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) 72.03 KB
@sentry/react - Webpack (gzipped) 22.81 KB
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) 89.87 KB
@sentry/nextjs Client - Webpack (gzipped) 54.01 KB
@sentry-internal/feedback - Webpack (gzipped) 17.32 KB

7.110.0

11 Apr 16:52
Compare
Choose a tag to compare

Important Changes

  • feat(tracing): Add interactions sample rate to browser tracing integrations (#11382)

You can now use a interactionsSampleRate to control the sample rate of INP spans. interactionsSampleRate is applied
on top of the global tracesSampleRate. Therefore if interactionsSampleRate is 0.5 and tracesSampleRate is 0.1,
then the actual sample rate for interactions is 0.05.

Sentry.init({
  tracesSampleRate: 0.1,
  integrations: [
    Sentry.browserTracingIntegration({
      interactionsSampleRate: 0.5,
    }),
  ],
});
  • Deprecations

This release deprecates the Hub class, as well as the addRequestDataToTransaction method. The trpcMiddleware
method is no longer on the Handlers export, but instead is a standalone export.

Please see the detailed Migration docs on how to migrate to the new APIs.

  • feat: Deprecate and relocate trpcMiddleware (#11389)
  • feat(core): Deprecate Hub class (#11528)
  • feat(types): Deprecate Hub interface (#11530)
  • ref: Deprecate addRequestDataToTransaction (#11368)

Other Changes

  • feat(core): Update metric normalization (#11519)
  • feat(feedback): Customize feedback placeholder text color (#11521)
  • feat(remix): Skip span creation for OPTIONS and HEAD request. (#11485)
  • feat(utils): Add metric buckets rate limit (#11506)
  • fix(core): unref timer to not block node exit (#11483)
  • fix(metrics): Map statsd to metric_bucket (#11505)
  • fix(spans): Allow zero exclusive time for INP spans (#11408)
  • ref(feedback): Configure feedback fonts (#11520)

Bundle size 📦

Path Size
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) 80.58 KB
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) 71.55 KB
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) 75.57 KB
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) 65.18 KB
@sentry/browser (incl. Tracing) - Webpack (gzipped) 35.49 KB
@sentry/browser (incl. browserTracingIntegration) - Webpack (gzipped) 35.37 KB
@sentry/browser (incl. Feedback) - Webpack (gzipped) 31.57 KB
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) 31.58 KB
@sentry/browser - Webpack (gzipped) 22.78 KB
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) 78.76 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) 70.12 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) 35.9 KB
@sentry/browser - ES6 CDN Bundle (gzipped) 25.27 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) 220.72 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) 108.53 KB
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) 75.79 KB
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) 39.17 KB
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) 72.03 KB
@sentry/react - Webpack (gzipped) 22.81 KB
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) 89.87 KB
@sentry/nextjs Client - Webpack (gzipped) 54.01 KB
@sentry-internal/feedback - Webpack (gzipped) 17.32 KB

8.0.0-alpha.9

08 Apr 13:53
Compare
Choose a tag to compare
8.0.0-alpha.9 Pre-release
Pre-release

This is the eighth alpha release of Sentry JavaScript SDK v8, which includes a variety of breaking changes.

Read the in-depth migration guide to find out how to address any breaking changes in your code.

Important Changes

  • feat: Add @sentry-internal/browser-utils (#11381)

A big part of the browser-runtime specific exports of the internal @sentry/utils package were moved into a new package
@sentry-internal/browser-utils. If you imported any API from @sentry/utils (which is generally not recommended but
necessary for some workarounds), please check that your import statements still point to existing exports after
upgrading.

  • feat: Add loader file to node-based SDKs to support ESM monkeypatching (#11338)

When using ESM, it is necessary to use a "loader" to be able to instrument certain third-party packages and Node.js API.
The server-side SDKs now ship with a set of ESM loader hooks, that should be used when using ESM. Use them as follows:

# For Node.js <= 18.18.2
node --experimental-loader=@sentry/node/hook your-app.js

# For Node.js >= 18.19.0
node --import=@sentry/node/register your-app.js

Please note that due to an upstream bug, these loader hooks will currently crash or simply not work. We are planning to
fix this in upcoming versions of the SDK - definitely before a stable version 8 release.

  • feat(node): Add Koa error handler (#11403)
  • feat(node): Add NestJS error handler (#11375)

The Sentry SDK now exports integrations and error middlewares for Koa (koaIntegration(), setupKoaErrorHandler()) and
NestJS (setupNestErrorHandler()) that can be used to instrument your Koa and NestJS applications with error
monitoring.

Removal/Refactoring of deprecated functionality

  • feat(core): Remove hub check in isSentryRequestUrl (#11407)
  • feat(opentelemetry): Remove top level startActiveSpan (#11380)
  • feat(types): beforeSend and beforeSendTransaction breaking changes (#11354)
  • feat(v8): Remove all class based integrations (#11345)
  • feat(v8/core): Remove span.attributes top level field (#11378)
  • ref: Remove convertIntegrationFnToClass (#11343)
  • ref(node): Remove the old node package (#11322)
  • ref(tracing): Remove span.startChild() (#11376)
  • ref(v8): Remove addRequestDataToTransaction util (#11369)
  • ref(v8): Remove args on HandlerDataXhr (#11373)
  • ref(v8): Remove getGlobalObject utility method (#11372)
  • ref(v8): Remove metadata on transaction (#11397)
  • ref(v8): Remove pushScope, popScope, isOlderThan, shouldSendDefaultPii from hub (#11404)
  • ref(v8): Remove shouldCreateSpanForRequest from vercel edge options (#11371)
  • ref(v8): Remove deprecated _reportAllChanges option (#11393)
  • ref(v8): Remove deprecated scope.getTransaction() (#11365)
  • ref(v8): Remove deprecated methods on scope (#11366)
  • ref(v8): Remove deprecated span & transaction properties (#11400)
  • ref(v8): Remove Transaction concept (#11422)

Other Changes

  • feat: Add trpcMiddleware back to serverside SDKs (#11374)
  • feat: Implement timed events & remove transaction.measurements (#11398)
  • feat(browser): Bump web-vitals to 3.5.2 (#11391)
  • feat(feedback): Add getFeedback utility to get typed feedback instance (#11331)
  • feat(otel): Do not sample options and head requests (#11467)
  • feat(remix): Update scope transactionName when resolving route (#11420)
  • feat(replay): Bump rrweb to 2.12.0 (#11314)
  • feat(replay): Use data sentry element as fallback for the component name (#11383)
  • feat(sveltekit): Update scope transactionName when pageload route name is updated (#11406)
  • feat(tracing-internal): Reset propagation context on navigation (#11401)
  • feat(types): Add View Hierarchy types (#11409)
  • feat(utils): Use globalThis (#11351)
  • feat(vue): Update scope's transactionName when resolving a route (#11423)
  • fix(core): unref timer to not block node exit (#11430)
  • fix(node): Fix baggage propagation (#11363)
  • fix(web-vitals): Check for undefined navigation entry (#11311)
  • ref: Set preserveModules to true for browser packages (#11452)
  • ref(core): Remove duplicate logic in scope.update (#11384)
  • ref(feedback): Add font family style to actor (#11432)
  • ref(feedback): Add font family to buttons (#11414)
  • ref(gcp-serverless): Remove setting .__sentry_transaction (#11346)
  • ref(nextjs): Replace multiplexer with conditional exports (#11442)

Bundle size 📦

Path Size
@sentry/browser (incl. Tracing, Replay, Feedback) 75.65 KB
@sentry/browser (incl. Tracing, Replay) 66.86 KB
@sentry/browser (incl. Tracing, Replay with Canvas) 70.73 KB
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 60.44 KB
@sentry/browser (incl. Tracing) 31.75 KB
@sentry/browser (incl. browserTracingIntegration) 31.75 KB
@sentry/browser (incl. feedbackIntegration) 30.88 KB
@sentry/browser (incl. feedbackModalIntegration) 30.9 KB
@sentry/browser (incl. feedbackScreenshotIntegration) 30.9 KB
@sentry/browser (incl. sendFeedback) 26.89 KB
@sentry/browser 22.1 KB
CDN Bundle (incl. Tracing, Replay, Feedback) 71.27 KB
CDN Bundle (incl. Tracing, Replay) 66.03 KB
CDN Bundle (incl. Tracing) 32.33 KB
CDN Bundle 23.76 KB
CDN Bundle (incl. Tracing, Replay) - uncompressed 205.79 KB
CDN Bundle (incl. Tracing) - uncompressed 96.4 KB
CDN Bundle - uncompressed 70.17 KB
@sentry/react (incl. Tracing, Replay) 66.99 KB
@sentry/react 22.12 KB

7.109.0

28 Mar 20:18
Compare
Choose a tag to compare

This release deprecates some exports from the @sentry/replay package. These exports have been moved to the browser SDK
(or related framework SDKs like @sentry/react).

  • feat(feedback): Make "required" text for input elements configurable (#11287)
  • feat(node): Add scope to ANR events (#11267)
  • feat(replay): Bump rrweb to 2.12.0 (#11317)
  • fix(node): Local variables skipped after Promise (#11248)
  • fix(node): Skip capturing Hapi Boom error responses (#11324)
  • fix(web-vitals): Check for undefined navigation entry (#11312)
  • ref(replay): Deprecate @sentry/replay exports (#11242)

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

Bundle size 📦

Path Size
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) 80.48 KB
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) 71.47 KB
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) 75.49 KB
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) 65.11 KB
@sentry/browser (incl. Tracing) - Webpack (gzipped) 35.41 KB
@sentry/browser (incl. browserTracingIntegration) - Webpack (gzipped) 35.29 KB
@sentry/browser (incl. Feedback) - Webpack (gzipped) 31.52 KB
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) 31.53 KB
@sentry/browser - Webpack (gzipped) 22.74 KB
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) 78.59 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) 69.97 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) 35.77 KB
@sentry/browser - ES6 CDN Bundle (gzipped) 25.17 KB
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) 220.31 KB
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) 108.12 KB
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) 75.48 KB
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) 39 KB
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) 71.97 KB
@sentry/react - Webpack (gzipped) 22.77 KB
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) 89.81 KB
@sentry/nextjs Client - Webpack (gzipped) 53.95 KB
@sentry-internal/feedback - Webpack (gzipped) 17.3 KB