Releases: getsentry/sentry-javascript
7.59.1
No changes. This release was published to fix a publishing issue with 7.59.0. Please see 7.59.0 for the changes in that release.
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.95 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 69.13 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 20.29 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 60.38 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.9 KB |
@sentry/browser - Webpack (minified) | 71.51 KB |
@sentry/react - Webpack (gzipped + minified) | 21.92 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 50.76 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 30.33 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 28.2 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 49.44 KB |
@sentry/replay - Webpack (gzipped + minified) | 43.16 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 69.56 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 61.84 KB |
7.59.0
Important Changes
- feat(remix): Add Remix v2 support (#8415)
This release adds support for Remix v2 future flags, in particular for the new error handling utilities of Remix v2. We recommend you switch to using v2_errorBoundary
future flag to get the best error handling experience with Sentry.
To capture errors from v2 client-side ErrorBoundary, you should define your own ErrorBoundary
in root.tsx
and use Sentry.captureRemixErrorBoundaryError
helper to capture the error.
// root.tsx
import { captureRemixErrorBoundaryError } from "@sentry/remix";
export const ErrorBoundary: V2_ErrorBoundaryComponent = () => {
const error = useRouteError();
captureRemixErrorBoundaryError(error);
return <div> ... </div>;
};
For server-side errors, define a handleError
function in your server entry point and use the Sentry.captureRemixServerException
helper to capture the error.
// entry.server.tsx
export function handleError(
error: unknown,
{ request }: DataFunctionArgs
): void {
if (error instanceof Error) {
Sentry.captureRemixServerException(error, "remix.server", request);
} else {
// Optionally capture non-Error objects
Sentry.captureException(error);
}
}
For more details, see the Sentry Remix SDK documentation.
Other Changes
- feat(core): Add
ModuleMetadata
integration (#8475) - feat(core): Allow multiplexed transport to send to multiple releases (#8559)
- feat(tracing): Add more network timings to http calls (#8540)
- feat(tracing): Bring http timings out of experiment (#8563)
- fix(nextjs): Avoid importing
SentryWebpackPlugin
in dev mode (#8557) - fix(otel): Use
HTTP_URL
attribute for client requests (#8539) - fix(replay): Better session storage check (#8547)
- fix(replay): Handle errors in
beforeAddRecordingEvent
callback (#8548) - fix(tracing): Improve network.protocol.version (#8502)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.95 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 69.13 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 20.28 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 60.38 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.9 KB |
@sentry/browser - Webpack (minified) | 71.51 KB |
@sentry/react - Webpack (gzipped + minified) | 21.92 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 50.76 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 30.33 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 28.2 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 49.44 KB |
@sentry/replay - Webpack (gzipped + minified) | 43.16 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 69.56 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 61.83 KB |
7.59.0-beta.1
- fix(nextjs): Avoid importing SentryWebpackPlugin in dev mode (#8543)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.97 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 69.14 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 20.3 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 60.39 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.91 KB |
@sentry/browser - Webpack (minified) | 71.53 KB |
@sentry/react - Webpack (gzipped + minified) | 21.93 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 50.58 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 30.12 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 28.17 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 49.29 KB |
@sentry/replay - Webpack (gzipped + minified) | 42.88 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 69.37 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 61.69 KB |
7.59.0-beta.0
- feat(replay): Re-sample sessions after they expire #8407
This pre-release contains a revamped replay session expiration handling.
Now, when a session expires (because it ran for too long), we will always
re-sample the session, and may start another one (or start buffering) based on the sample rates.
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.96 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 69.14 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 20.29 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 60.39 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.91 KB |
@sentry/browser - Webpack (minified) | 71.53 KB |
@sentry/react - Webpack (gzipped + minified) | 21.93 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 50.58 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 30.12 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 28.17 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 49.29 KB |
@sentry/replay - Webpack (gzipped + minified) | 42.88 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 69.37 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 61.69 KB |
7.58.1
- fix(node): Set propagation context even when tracingOptions are not defined (#8517)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.95 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 69.13 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 20.28 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 60.38 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.9 KB |
@sentry/browser - Webpack (minified) | 71.51 KB |
@sentry/react - Webpack (gzipped + minified) | 21.92 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 50.58 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 30.11 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 28.16 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 49.42 KB |
@sentry/replay - Webpack (gzipped + minified) | 43.1 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 69.51 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 61.82 KB |
7.58.0
Important Changes
- Performance Monitoring not required for Distributed Tracing
This release adds support for distributed tracing without requiring performance monitoring to be active on the JavaScript SDKs (browser and node). This means even if there is no sampled transaction/span, the SDK will still propagate traces to downstream services. Distributed Tracing can be configured with the tracePropagationTargets
option, which controls what requests to attach the sentry-trace
and baggage
HTTP headers to (which is what propagates tracing information).
Sentry.init({
tracePropagationTargets: ["third-party-site.com", /^https:\/\/yourserver\.io\/api/],
});
-
feat(tracing): Add tracing without performance to browser and client Sveltekit (#8458)
-
feat(node): Add tracing without performance to Node http integration (#8450)
-
feat(node): Add tracing without performance to Node Undici (#8449)
-
feat(node): Populate propagation context using env variables (#8422)
-
feat(core): Support
AggregateErrors
inLinkedErrors
integration (#8463)
This release adds support for AggregateErrors
. AggregateErrors are considered as Exception Groups by Sentry, and will be visualized and grouped differently. See the Exception Groups Changelog Post for more details.
Exception Group support requires Self-Hosted Sentry version 23.5.1 or newer.
- feat(replay): Add a new option
networkDetailDenyUrls
(#8439)
This release adds a new option networkDetailDenyUrls
to the Replay
integration. This option allows you to specify a list of URLs that should not be captured by the Replay
integration, which can be used alongside the existing networkDetailAllowUrls
for finely grained control of which URLs should have network details captured.
Sentry.init({
integrations: [
new Sentry.Integrations.Replay({
networkDetailDenyUrls: [/^http:\/\/example.com\/test$/],
}),
],
});
Other Changes
- feat(core): Add helpers to get module metadata from injected code (#8438)
- feat(core): Add sampling decision to trace envelope header (#8483)
- feat(node): Add trace context to checkin (#8503)
- feat(node): Export
getModule
for Electron SDK (#8488) - feat(types): Allow
user.id
to be a number (#8330) - fix(browser): Set anonymous
crossorigin
attribute on report dialog (#8424) - fix(nextjs): Ignore
tunnelRoute
when doing static exports (#8471) - fix(nextjs): Use
basePath
option fortunnelRoute
(#8454) - fix(node): Apply source context to linked errors even when it is uncached (#8453)
- fix(node): report errorMiddleware errors as unhandled (#8048)
- fix(react): Add support for
basename
option ofcreateBrowserRouter
(#8457) - fix(remix): Add explicit
@sentry/node
exports. (#8509) - fix(remix): Don't inject trace/baggage to
redirect
andcatch
responses (#8467) - fix(replay): Adjust slow/multi click handling (#8380)
Work in this release contributed by @mrdulin, @donaldxdonald & @ziyad-elabid-nw. Thank you for your contributions!
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.95 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 69.13 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 20.28 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 60.38 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.9 KB |
@sentry/browser - Webpack (minified) | 71.51 KB |
@sentry/react - Webpack (gzipped + minified) | 21.92 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 50.58 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 30.11 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 28.16 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 49.42 KB |
@sentry/replay - Webpack (gzipped + minified) | 43.1 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 69.51 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 61.82 KB |
7.57.0
Important Changes
- build: Update typescript from 3.8.3 to 4.9.5 (#8255)
This release version bumps the internally used typescript version from 3.8.x to 4.9.x.
We use ds-downlevel to generate two versions of our types, one for >=3.8, one for >=4.9.
This means that this change should be fully backwards compatible and not have any noticable user impact,
but if you still encounter issues please let us know.
- feat(types): Add tracePropagationTargets to top level options (#8395)
Instead of passing tracePropagationTargets
to the BrowserTracing
integration, you can now define them on the top level:
Sentry.init({
tracePropagationTargets: ['api.site.com'],
});
- fix(angular): Filter out
TryCatch
integration by default (#8367)
The Angular and Angular-ivy SDKs will not install the TryCatch integration anymore by default.
This integration conflicted with the SentryErrorHander
, sometimes leading to duplicated errors and/or missing data on events.
- feat(browser): Better event name handling for non-Error objects (#8374)
When capturing non-errors via Sentry.captureException()
, e.g. Sentry.captureException({ prop: "custom object" })
,
we now generate a more helpful value for the synthetic exception. Instead of e.g. Non-Error exception captured with keys: currentTarget, isTrusted, target, type
, you'll now get messages like:
Object captured as exception with keys: prop1, prop2
Event `MouseEvent` (type=click) captured as exception
Event `ErrorEvent` captured as exception with message `Script error.`
Other Changes
- feat(browser): Send profiles in same envelope as transactions (#8375)
- feat(profiling): Collect timings on profiler stop calls (#8409)
- feat(replay): Do not capture replays < 5 seconds (GA) (#8277)
- feat(tracing): Add experiment to capture http timings (#8371)
- feat(tracing): Add
http.response.status_code
tospan.data
(#8366) - fix(angular): Stop routing spans on navigation cancel and error events (#8369)
- fix(core): Only start spans in
trace
if tracing is enabled (#8357) - fix(nextjs): Inject init calls via loader instead of via entrypoints (#8368)
- fix(replay): Mark ui.slowClickDetected
clickCount
as optional (#8376) - fix(serverless): Export
autoDiscoverNodePerformanceMonitoringIntegrations
from SDK (#8382) - fix(sveltekit): Check for cached requests in client-side fetch instrumentation (#8391)
- fix(sveltekit): Only instrument SvelteKit
fetch
if the SDK client is valid (#8381) - fix(tracing): Instrument Prisma client in constructor of integration (#8383)
- ref(replay): More graceful
sessionStorage
check (#8394) - ref(replay): Remove circular dep in replay eventBuffer (#8389)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.49 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 67.59 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 19.82 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 58.9 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.43 KB |
@sentry/browser - Webpack (minified) | 69.87 KB |
@sentry/react - Webpack (gzipped + minified) | 21.46 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 49.81 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 29.39 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 27.48 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 49.34 KB |
@sentry/replay - Webpack (gzipped + minified) | 43.11 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 68.82 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 61.38 KB |
7.57.0-beta.0
This beta version bumps the internally used typescript version from 3.8.x to 4.9.x.
We use ds-downlevel to generate two versions of our types, one for >=3.8, one for >=4.9.
This means that this change should be fully backwards compatible and not have any noticable user impact.
However, since this touches the whole code base, we decided to release this as a beta first in order to ensure this is fully stable.
Other Changes
- feat(replay): Do not capture replays < 5 seconds (GA) (#8277)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.38 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 67.24 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 19.72 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 58.61 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.34 KB |
@sentry/browser - Webpack (minified) | 69.53 KB |
@sentry/react - Webpack (gzipped + minified) | 21.37 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 49.29 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 29.03 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 27.04 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 49.34 KB |
@sentry/replay - Webpack (gzipped + minified) | 43.08 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 68.37 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 61.27 KB |
7.56.0
- feat(replay): Rework slow click & multi click detection (#8322)
- feat(replay): Stop replay when event buffer exceeds max. size (#8315)
- feat(replay): Consider
window.open
for slow clicks (#8308) - fix(core): Temporarily store debug IDs in stack frame and only put them into
debug_meta
before sending (#8347) - fix(remix): Extract deferred responses correctly in root loaders. (#8305)
- fix(vue): Don't call
next
in Vue router 4 instrumentation (#8351)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.17 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 66.13 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 19.71 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 58.6 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.33 KB |
@sentry/browser - Webpack (minified) | 69.52 KB |
@sentry/react - Webpack (gzipped + minified) | 21.36 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 49.28 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 28.79 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 27.03 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 49.37 KB |
@sentry/replay - Webpack (gzipped + minified) | 43.1 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 68.4 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 61.29 KB |
7.55.2
- fix(replay): Stop exporting
EventType
from@sentry-internal/rrweb
(#8334) - fix(serverless): Export captureCheckIn (#8333)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser - ES5 CDN Bundle (gzipped + minified) | 21.12 KB |
@sentry/browser - ES5 CDN Bundle (minified) | 65.86 KB |
@sentry/browser - ES6 CDN Bundle (gzipped + minified) | 19.65 KB |
@sentry/browser - ES6 CDN Bundle (minified) | 58.34 KB |
@sentry/browser - Webpack (gzipped + minified) | 21.28 KB |
@sentry/browser - Webpack (minified) | 69.26 KB |
@sentry/react - Webpack (gzipped + minified) | 21.31 KB |
@sentry/nextjs Client - Webpack (gzipped + minified) | 49.23 KB |
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) | 28.74 KB |
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) | 26.98 KB |
@sentry/replay ES6 CDN Bundle (gzipped + minified) | 48.6 KB |
@sentry/replay - Webpack (gzipped + minified) | 42.26 KB |
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 67.63 KB |
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) | 60.54 KB |