Releases: getsentry/sentry-javascript
7.100.0
Important Changes
Deprecations
This release includes some deprecations. For more details please look at our
migration guide.
The deprecation most likely to affect you is the one of BrowserTracing
. Instead of new BrowserTracing()
, you should
now use browserTracingIntegration()
, which will also handle framework-specific instrumentation out of the box for
you - no need to pass a custom routingInstrumentation
anymore. For @sentry/react
, we expose dedicated integrations
for the different react-router versions:
reactRouterV6BrowserTracingIntegration()
reactRouterV5BrowserTracingIntegration()
reactRouterV4BrowserTracingIntegration()
reactRouterV3BrowserTracingIntegration()
See the
migration guide
for details.
- feat(angular): Export custom
browserTracingIntegration()
(#10353) - feat(browser): Deprecate
BrowserTracing
integration (#10493) - feat(browser): Export
browserProfilingIntegration
(#10438) - feat(bun): Export
bunServerIntegration()
(#10439) - feat(nextjs): Add
browserTracingIntegration
(#10397) - feat(react): Add
reactRouterV3BrowserTracingIntegration
for react router v3 (#10489) - feat(react): Add
reactRouterV4/V5BrowserTracingIntegration
for react router v4 & v5 (#10488) - feat(react): Add
reactRouterV6BrowserTracingIntegration
for react router v6 & v6.4 (#10491) - feat(remix): Add custom
browserTracingIntegration
(#10442) - feat(node): Expose functional integrations to replace classes (#10356)
- feat(vercel-edge): Replace
WinterCGFetch
withwinterCGFetchIntegration
(#10436) - feat: Deprecate non-callback based
continueTrace
(#10301) - feat(vue): Deprecate
new VueIntegration()
(#10440) - feat(vue): Implement vue
browserTracingIntegration()
(#10477) - feat(sveltekit): Add custom
browserTracingIntegration()
(#10450)
Profiling Node
@sentry/profiling-node
has been ported into the monorepo. Future development for it will happen here!
- pkg(profiling-node): port profiling-node repo to monorepo (#10151)
Other Changes
- feat: Export
setHttpStatus
from all packages (#10475) - feat(bundles): Add pluggable integrations on CDN to
Sentry
namespace (#10452) - feat(core): Pass
name
&attributes
totracesSampler
(#10426) - feat(feedback): Add
system-ui
to start of font family (#10464) - feat(node-experimental): Add koa integration (#10451)
- feat(node-experimental): Update opentelemetry packages (#10456)
- feat(node-experimental): Update tracing integrations to functional style (#10443)
- feat(replay): Bump
rrweb
to 2.10.0 (#10445) - feat(replay): Enforce masking of credit card fields (#10472)
- feat(utils): Add
propagationContextFromHeaders
(#10313) - fix: Make
startSpan
,startSpanManual
andstartInactiveSpan
pick up the scopes at time of creation instead of
termination (#10492) - fix(feedback): Fix logo color when colorScheme is "system" (#10465)
- fix(nextjs): Do not report redirects and notFound calls as errors in server actions (#10474)
- fix(nextjs): Fix navigation tracing on app router (#10502)
- fix(nextjs): Apply server action data to correct isolation scope (#10514)
- fix(node): Use normal
require
call to import Undici (#10388) - ref(nextjs): Remove internally used deprecated APIs (#10453)
- ref(vue): use startInactiveSpan in tracing mixin (#10406)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 78.33 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 69.57 KB |
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) | 73.5 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 63.18 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 33.52 KB |
@sentry/browser (incl. browserTracingIntegration) - Webpack (gzipped) | 33.39 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 31.37 KB |
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) | 31.37 KB |
@sentry/browser - Webpack (gzipped) | 22.63 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 76.36 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 67.89 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 33.66 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 24.73 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 214.06 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 101.87 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 74.26 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 36.8 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 69.93 KB |
@sentry/react - Webpack (gzipped) | 22.67 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 87.55 KB |
@sentry/nextjs Client - Webpack (gzipped) | 51.72 KB |
@sentry-internal/feedback - Webpack (gzipped) | 17.22 KB |
7.99.0
Important Changes
Deprecations
This release includes some deprecations for span related methods and integrations in our Deno SDK, @sentry/deno
. For
more details please look at our
migration guide.
- feat(core): Deprecate
Span.setHttpStatus
in favor ofsetHttpStatus
(#10268) - feat(core): Deprecate
spanStatusfromHttpCode
in favour ofgetSpanStatusFromHttpCode
(#10361) - feat(core): Deprecate
StartSpanOptions.origin
in favour of passing attribute (#10274) - feat(deno): Expose functional integrations to replace classes (#10355)
Other Changes
- feat(bun): Add missing
@sentry/node
re-exports (#10396) - feat(core): Add
afterAllSetup
hook for integrations (#10345) - feat(core): Ensure
startSpan()
can handle spans that require parent (#10386) - feat(core): Read propagation context off scopes in
startSpan
APIs (#10300) - feat(remix): Export missing
@sentry/node
functions (#10385, #10391) - feat(serverless): Add missing
@sentry/node
re-exports (#10390) - feat(sveltekit): Add more missing
@sentry/node
re-exports (#10392) - feat(tracing): Export proper type for browser tracing (#10411)
- feat(tracing): Expose new
browserTracingIntegration
(#10351) - fix: Ensure
afterAllSetup
is called when usingaddIntegration()
(#10372) - fix(core): Export
spanToTraceContext
function from span utils (#10364) - fix(core): Make
FunctionToString
integration use SETUP_CLIENTS weakmap (#10358) - fix(deno): Call function if client is not setup (#10354)
- fix(react): Fix attachReduxState option (#10381)
- fix(spotlight): Use unpatched http.request (#10369)
- fix(tracing): Only create request span if there is active span (#10375)
- ref: Read propagation context off of scope and isolation scope when propagating and applying trace context (#10297)
Work in this release contributed by @AleshaOleg. Thank you for your contribution!
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 78.18 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 69.39 KB |
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) | 73.28 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 63.01 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 33.41 KB |
@sentry/browser (incl. browserTracingIntegration) - Webpack (gzipped) | 33.28 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 31.33 KB |
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) | 31.34 KB |
@sentry/browser - Webpack (gzipped) | 22.6 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 76 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 67.54 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 33.45 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 24.66 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 213.12 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 101.13 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 74 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 36.56 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 69.78 KB |
@sentry/react - Webpack (gzipped) | 22.63 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 86.45 KB |
@sentry/nextjs Client - Webpack (gzipped) | 50.76 KB |
@sentry-internal/feedback - Webpack (gzipped) | 17.21 KB |
7.98.0
This release primarily fixes some type declaration errors:
- feat(core): Export
IntegrationIndex
type (#10337) - fix(nextjs): Fix Http integration type declaration (#10338)
- fix(node): Fix type definitions (#10339)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 77.84 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 69.04 KB |
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) | 72.93 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 62.68 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 33.07 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 31.25 KB |
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) | 31.26 KB |
@sentry/browser - Webpack (gzipped) | 22.5 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 75.57 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 67.13 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 32.97 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 24.43 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 211.42 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 99.44 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 73.08 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 36.07 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 69.45 KB |
@sentry/react - Webpack (gzipped) | 22.55 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 86.11 KB |
@sentry/nextjs Client - Webpack (gzipped) | 50.4 KB |
@sentry-internal/feedback - Webpack (gzipped) | 17.21 KB |
7.97.0
This release contains a bug that can lead to too many spans being generated. This has been fixed in v7.99.0, we recommend updating to this version.
Note: The 7.96.0 release was incomplete. This release is partially encompassing changes from 7.96.0
.
- feat(react): Add
stripBasename
option for React Router 6 (#10314)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 77.84 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 69.04 KB |
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) | 72.93 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 62.68 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 33.07 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 31.25 KB |
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) | 31.26 KB |
@sentry/browser - Webpack (gzipped) | 22.5 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 75.57 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 67.13 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 32.97 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 24.43 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 211.42 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 99.44 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 73.08 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 36.07 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 69.44 KB |
@sentry/react - Webpack (gzipped) | 22.55 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 86.11 KB |
@sentry/nextjs Client - Webpack (gzipped) | 50.4 KB |
@sentry-internal/feedback - Webpack (gzipped) | 17.21 KB |
7.96.0
Note: This release was incomplete. Not all Sentry SDK packages were released for this version. Please upgrade to 7.98.0 directly.
Important Changes
Deprecations
This release includes some deprecations for integrations in @sentry/browser
and frontend framework SDKs
(@sentry/react
, @sentry/vue
, etc.). Please take a look at our
migration guide for more details.
- feat(browser): Export functional integrations & deprecate classes (#10267)
Web Vitals Fix for LCP and CLS
This release fixes an issue with the Web Vitals integration where LCP and CLS were not being captured correctly,
increasing capture rate by 10-30% for some apps. LCP and CLS capturing issues were introduced with version 7.75.0
.
- fix(tracing): Ensure web vitals are correctly stopped/captured (#10323)
Other Changes
- fix(node): Fix
node-cron
types and add test (#10315) - fix(node): Fix downleveled types entry point (#10321)
- fix(node): LocalVariables integration should use setupOnce (#10307)
- fix(replay): Fix type for options of replayIntegration (#10325)
Work in this release contributed by @Shubhdeep12. Thank you for your contribution!
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 77.84 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 69.04 KB |
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) | 72.93 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 62.68 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 33.07 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 31.25 KB |
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) | 31.26 KB |
@sentry/browser - Webpack (gzipped) | 22.5 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 75.57 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 67.13 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 32.97 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 24.43 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 211.42 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 99.44 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 73.08 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 36.07 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 69.45 KB |
@sentry/react - Webpack (gzipped) | 22.55 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 86.11 KB |
@sentry/nextjs Client - Webpack (gzipped) | 50.4 KB |
@sentry-internal/feedback - Webpack (gzipped) | 17.21 KB |
7.95.0
Important Changes
Deprecations
This release includes some deprecations in preparation for v8.
Most notably, it deprecates the Replay
& Feedback
classes in favor of a functional replacement:
import * as Sentry from '@sentry/browser';
Sentry.init({
integrations: [
// Instead of
new Sentry.Replay(),
new Sentry.Feedback(),
// Use the functional replacement:
Sentry.replayIntegration(),
Sentry.feedbackIntegration(),
],
});
- feat(core): Deprecate
Span.origin
in favor ofsentry.origin
attribute (#10260) - feat(core): Deprecate
Span.parentSpanId
(#10244) - feat(core): Expose
isInitialized()
to replace checking viagetClient
(#10296) - feat(replay): Deprecate
Replay
,ReplayCanvas
,Feedback
classes (#10270) - feat(wasm): Deprecate
Wasm
integration class (#10230)
Other Changes
- feat: Make
parameterize
function available through browser and node API (#10085) - feat(feedback): Configure feedback border radius (#10289)
- feat(sveltekit): Update default integration handling & deprecate
addOrUpdateIntegration
(#10263) - fix(replay-canvas): Add missing dependency on @sentry/utils (#10279)
- fix(tracing): Don't send negative ttfb (#10286)
Work in this release contributed by @AleshaOleg. Thank you for your contribution!
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 77.79 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 68.96 KB |
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) | 72.85 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 62.6 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 32.97 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 31.24 KB |
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) | 31.25 KB |
@sentry/browser - Webpack (gzipped) | 22.53 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 75.46 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 67.03 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 32.85 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 24.36 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 211.12 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 99.11 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 72.91 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 35.95 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 69.37 KB |
@sentry/react - Webpack (gzipped) | 22.58 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 85.98 KB |
@sentry/nextjs Client - Webpack (gzipped) | 50.27 KB |
@sentry-internal/feedback - Webpack (gzipped) | 17.21 KB |
7.94.1
This release fixes a publishing issue with 7.94.0
.
These are the 7.94.0
release notes:
Important Changes
Deprecations
As we're moving closer to the next major version of the SDK, more public APIs were deprecated.
To get a head start on migrating to the replacement APIs, please take a look at our
migration guide.
- feat: Deprecate user segment field (#10210)
- feat(core): Deprecate
finish
onSpan
interface in favour ofend
(#10161) - feat(core): Deprecate
getCurrentHub()
(#10200) - feat(core): Deprecate
hub.bindClient()
&makeMain()
(#10188) - feat(core): Deprecate
Span.instrumenter
(#10139) - feat(core): Deprecate
Span.isSuccess()
in favor of reading span status (#10213) - feat(core): Deprecate
Span.op
in favor of op attribute (#10189) - feat(core): Deprecate
Span.spanRecorder
(#10199) - feat(core): Deprecate
Span.status
(#10208) - feat(core): Deprecate
Span.transaction
in favor ofgetRootSpan
(#10134) - feat(core): Deprecate
Transaction.instrumenter
(#10162) - feat(core): Deprecate
Transaction.setMeasurement
in favor ofsetMeasurement
(#10182) - feat(core): Deprecate integration classes &
Integrations.X
(#10198) - feat(core): Deprecate methods on
Hub
(#10124) - feat(core): Deprecate remaining
setName
declarations onTransaction
andSpan
(#10164) - feat(core): Deprecate span
startTimestamp
&endTimestamp
(#10192) - feat(core): Deprecate
hub.bindClient()
andmakeMain()
(#10118) - feat(types): Deprecate
op
onSpan
interface (#10217) - feat(integrations): Deprecate
Transaction
integration (#10178) - feat(integrations): Deprecate pluggable integration classes (#10211)
Replay & Canvas
We have added a new ReplayCanvas
integration (#10112), which you can add to capture the contents of canvas elements
with Replay.
Just add it in addition to the regular replay integration:
Sentry.init({
integrations: [new Sentry.Replay(), new Sentry.ReplayCanvas()],
});
Other Changes
- feat(core): Add
client.getIntegrationByName()
(#10130) - feat(core): Add
client.init()
to replaceclient.setupIntegrations()
(#10118) - feat(core): Add
withActiveSpan
(#10195) - feat(core): Add
withIsolationScope
(#10141) - feat(core): Streamline integration function results to be compatible (#10135)
- feat(core): Write data from
setUser
,setTags
,setExtras
,setTag
,setExtra
, andsetContext
to isolation
scope (#10163) - feat(core): Add domain information to resource span data #10205
- feat(feedback): Export sendFeedback from @sentry/browser (#10231)
- feat(node): Update and vendor https-proxy-agent (#10088)
- feat(node-experimental): Add
withActiveSpan
(#10194) - feat(replays): Add snapshot function to replay canvas integration (#10066)
- feat(types): Add
SerializedEvent
interface (pre v8) (#10240) - feat(types): Add support for new monitor config thresholds (#10225)
- fix: Ensure all integration classes have correct types (#10183)
- fix(astro): Fix import path when using external init files with default path (#10214)
- fix(cdn): Emit console warning instead of error for integration shims (#10193)
- fix(core): Take user from current scope when starting a session (#10153)
- fix(node-experimental): Ensure
http.status_code
is always a string (#10177) - fix(node): Guard against
process.argv[1]
being undefined (#10155) - fix(node): Module name resolution (#10144)
- fix(node): Remove leading slash in Windows filenames (#10147)
- fix(remix): Capture thrown fetch responses. (#10166)
- fix(tracing): Gate mongo operation span data behind sendDefaultPii (#10227)
- fix(tracing-internal): Delay pageload transaction finish until document is interactive (#10215)
- fix(tracing-internal): Only collect request/response spans when browser performance timing is available (#10207)
- fix(tracing-internal): Prefer
fetch
init headers overfetch
input headers (#10176) - fix(utils): Ensure dropUndefinedKeys() does not break class instances (#10245)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 77.62 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 68.88 KB |
@sentry/browser (incl. Tracing, Replay with Canvas) - Webpack (gzipped) | 72.77 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 62.52 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 32.89 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 31.15 KB |
@sentry/browser (incl. sendFeedback) - Webpack (gzipped) | 31.16 KB |
@sentry/browser - Webpack (gzipped) | 22.51 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 75.2 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 66.81 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 32.66 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 24.21 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 210.51 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 98.48 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 72.46 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 35.71 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 69.3 KB |
@sentry/react - Webpack (gzipped) | 22.55 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 85.88 KB |
@sentry/nextjs Client - Webpack (gzipped) | 50.01 KB |
@sentry-internal/feedback - Webpack (gzipped) | 17.14 KB |
7.93.0
Important Changes
Deprecations
As we're moving closer to the next major version of the SDK, more public APIs were deprecated.
To get a head start on migrating to the replacement APIs, please take a look at our
migration guide.
- feat(core): Deprecate
getActiveTransaction()
&scope.getTransaction()
(#10098) - feat(core): Deprecate
Hub.shouldSendDefaultPii
(#10062) - feat(core): Deprecate
new Transaction()
(#10125) - feat(core): Deprecate
scope.getSpan()
&scope.setSpan()
(#10114) - feat(core): Deprecate
scope.setTransactionName()
(#10113) - feat(core): Deprecate
span.startChild()
(#10091) - feat(core): Deprecate
startTransaction()
(#10073) - feat(core): Deprecate
Transaction.getDynamicSamplingContext
in favor ofgetDynamicSamplingContextFromSpan
(#10094) - feat(core): Deprecate arguments for
startSpan()
(#10101) - feat(core): Deprecate hub capture APIs and add them to
Scope
(#10039) - feat(core): Deprecate session APIs on hub and add global replacements (#10054)
- feat(core): Deprecate span
name
anddescription
(#10056) - feat(core): Deprecate span
tags
,data
,context
& setters (#10053) - feat(core): Deprecate transaction metadata in favor of attributes (#10097)
- feat(core): Deprecate
span.sampled
in favor ofspan.isRecording()
(#10034) - ref(node-experimental): Deprecate
lastEventId
on scope (#10093)
Cron Monitoring Support for node-schedule
library
This release adds auto instrumented check-ins for the node-schedule
library.
import * as Sentry from '@sentry/node';
import * as schedule from 'node-schedule';
const scheduleWithCheckIn = Sentry.cron.instrumentNodeSchedule(schedule);
const job = scheduleWithCheckIn.scheduleJob('my-cron-job', '* * * * *', () => {
console.log('You will see this message every minute');
});
- feat(node): Instrumentation for
node-schedule
library (#10086)
Other Changes
- feat(core): Add
span.spanContext()
(#10037) - feat(core): Add
spanToJSON()
method to get span properties (#10074) - feat(core): Allow to pass
scope
tostartSpan
APIs (#10076) - feat(core): Allow to pass start/end timestamp for spans flexibly (#10060)
- feat(node): Make
getModuleFromFilename
compatible with ESM (#10061) - feat(replay): Update rrweb to 2.7.3 (#10072)
- feat(utils): Add
parameterize
function (#9145) - fix(astro): Use correct package name for CF (#10099)
- fix(core): Do not run
setup
for integration on client multiple times (#10116) - fix(core): Ensure we copy passed in span data/tags/attributes (#10105)
- fix(cron): Make name required for instrumentNodeCron option (#10070)
- fix(nextjs): Don't capture not-found and redirect errors in generation functions (#10057)
- fix(node):
LocalVariables
integration should have correct name (#10084) - fix(node): Anr events should have an
event_id
(#10068) - fix(node): Revert to only use sync debugger for
LocalVariables
(#10077) - fix(node): Update ANR min node version to v16.17.0 (#10107)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 76.98 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 68.36 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 61.99 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 32.38 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 30.98 KB |
@sentry/browser - Webpack (gzipped) | 22.31 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 74.61 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 66.26 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 32.07 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 23.9 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 208.7 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 96.75 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 71.35 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 35.04 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 68.72 KB |
@sentry/react - Webpack (gzipped) | 22.35 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 85.37 KB |
@sentry/nextjs Client - Webpack (gzipped) | 49.5 KB |
@sentry-internal/feedback - Webpack (gzipped) | 17.01 KB |
7.92.0
Important Changes
Deprecations
- feat(core): Add
span.updateName()
and deprecatespan.setName()
(#10018) - feat(core): Deprecate
span.getTraceContext()
(#10032) - feat(core): Deprecate
span.toTraceparent()
in favor ofspanToTraceHeader()
util (#10031) - feat(core): Deprecate
trace
in favor ofstartSpan
(#10012) - feat(core): Deprecate span
toContext()
andupdateWithContext()
(#10030) - ref: Deprecate
deepReadDirSync
(#10016) - ref: Deprecate
lastEventId()
(#10043)
Please take a look at the Migration docs for more details. These methods will be removed in the upcoming v8 major release.
Cron Monitoring Support for cron
and node-cron
libraries
- feat(node): Instrumentation for
cron
library (#9999) - feat(node): Instrumentation for
node-cron
library (#9904)
This release adds instrumentation for the cron
and node-cron
libraries. This allows you to monitor your cron jobs with Sentry cron monitors.
For cron
:
import * as Sentry from '@sentry/node';
import { CronJob } from 'cron';
const CronJobWithCheckIn = Sentry.cron.instrumentCron(CronJob, 'my-cron-job');
// use the constructor
const job = new CronJobWithCheckIn('* * * * *', () => {
console.log('You will see this message every minute');
});
// or from
const job = CronJobWithCheckIn.from({
cronTime: '* * * * *',
onTick: () => {
console.log('You will see this message every minute');
},
});
For node-cron
:
import * as Sentry from '@sentry/node';
import cron from 'node-cron';
const cronWithCheckIn = Sentry.cron.instrumentNodeCron(cron);
cronWithCheckIn.schedule(
'* * * * *',
() => {
console.log('running a task every minute');
},
{ name: 'my-cron-job' },
);
Other Changes
- feat(astro): Add
enabled
option to Astro integration options (#10007) - feat(core): Add
attributes
toSpan
(#10008) - feat(core): Add
setClient()
andgetClient()
toScope
(#10055) - feat(integrations): Capture error cause with
captureErrorCause
inExtraErrorData
integration (#9914) - feat(node-experimental): Allow to pass base span options to trace methods (#10006)
- feat(node): Local variables via async inspector in node 19+ (#9962)
- fix(astro): handle commonjs related issues (#10042)
- fix(astro): Handle non-utf8 encoded streams in middleware (#9989)
- fix(astro): prevent sentry from externalized (#9994)
- fix(core): Ensure
withScope
sets current scope correctly with async callbacks (#9974) - fix(node): ANR fixes and additions (#9998)
- fix(node): Anr should not block exit (#10035)
- fix(node): Correctly resolve module name (#10001)
- fix(node): Handle inspector already open (#10025)
- fix(node): Make
NODE_VERSION
properties required (#9964) - fix(node): Anr doesn't block exit (#10064)
- fix(utils): use correct typeof URL validation (#10028)
- perf(astro): reduce unnecessary path resolutions (#10021)
- ref(astro): Use astro logger instead of console (#9995)
- ref(remix): Isolate Express instrumentation from server auto-instrumentation. (#9966)
Work in this release contributed by @joshkel. Thank you for your contribution!
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 76.1 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 67.5 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 61.1 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 32.08 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 30.49 KB |
@sentry/browser - Webpack (gzipped) | 22.21 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 73.53 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 65.2 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 31.37 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 23.29 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 204.35 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 94.24 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 69.09 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 34.33 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 67.91 KB |
@sentry/react - Webpack (gzipped) | 22.23 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 84.53 KB |
@sentry/nextjs Client - Webpack (gzipped) | 49.14 KB |
@sentry-internal/feedback - Webpack (gzipped) | 16.73 KB |
7.91.0
Important Changes
- feat: Add server runtime metrics aggregator (#9894)
The release adds alpha support for Sentry developer metrics in the server runtime SDKs (@sentry/node
, @sentry/deno
, @sentry/nextjs
server-side, etc.). Via the newly introduced APIs, you can now flush metrics directly to Sentry.
To enable capturing metrics, you first need to add the metricsAggregator
experiment to your Sentry.init
call.
Sentry.init({
dsn: '__DSN__',
_experiments: {
metricsAggregator: true,
},
});
Then you'll be able to add counters
, sets
, distributions
, and gauges
under the Sentry.metrics
namespace.
// Add 4 to a counter named `hits`
Sentry.metrics.increment('hits', 4);
// Add 2 to gauge named `parallel_requests`, tagged with `type: "a"`
Sentry.metrics.gauge('parallel_requests', 2, { tags: { type: 'a' } });
// Add 4.6 to a distribution named `response_time` with unit seconds
Sentry.metrics.distribution('response_time', 4.6, { unit: 'seconds' });
// Add 2 to a set named `valuable.ids`
Sentry.metrics.set('valuable.ids', 2);
- feat(node): Rework ANR to use worker script via an integration (#9945)
The ANR tracking integration for Node has been reworked to use an integration. ANR tracking now requires a minimum Node version of 16 or higher. Previously you had to call Sentry.enableANRDetection
before running your application, now you can simply add the Anr
integration to your Sentry.init
call.
import * as Sentry from '@sentry/node';
Sentry.init({
dsn: 'https://public@dsn.ingest.sentry.io/1337',
integrations: [new Sentry.Integrations.Anr({ captureStackTrace: true, anrThreshold: 200 })],
});
Other Changes
- feat(breadcrumbs): Send component names on UI breadcrumbs (#9946)
- feat(core): Add
getGlobalScope()
method (#9920) - feat(core): Add
getIsolationScope()
method (#9957) - feat(core): Add
span.end()
to replacespan.finish()
(#9954) - feat(core): Ensure
startSpan
&startSpanManual
fork scope (#9955) - feat(react): Send component name on spans (#9949)
- feat(replay): Send component names in replay breadcrumbs (#9947)
- feat(sveltekit): Add options to configure fetch instrumentation script for CSP (#9969)
- feat(tracing): Send component name on interaction spans (#9948)
- feat(utils): Add function to extract relevant component name (#9921)
- fix(core): Rethrow caught promise rejections in
startSpan
,startSpanManual
,trace
(#9958)
Bundle size 📦
Path | Size |
---|---|
@sentry/browser (incl. Tracing, Replay, Feedback) - Webpack (gzipped) | 75.89 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack (gzipped) | 67.25 KB |
@sentry/browser (incl. Tracing, Replay) - Webpack with treeshaking flags (gzipped) | 60.87 KB |
@sentry/browser (incl. Tracing) - Webpack (gzipped) | 31.83 KB |
@sentry/browser (incl. Feedback) - Webpack (gzipped) | 30.39 KB |
@sentry/browser - Webpack (gzipped) | 22.09 KB |
@sentry/browser (incl. Tracing, Replay, Feedback) - ES6 CDN Bundle (gzipped) | 73.3 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (gzipped) | 64.97 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (gzipped) | 31.12 KB |
@sentry/browser - ES6 CDN Bundle (gzipped) | 23.12 KB |
@sentry/browser (incl. Tracing, Replay) - ES6 CDN Bundle (minified & uncompressed) | 203.77 KB |
@sentry/browser (incl. Tracing) - ES6 CDN Bundle (minified & uncompressed) | 93.66 KB |
@sentry/browser - ES6 CDN Bundle (minified & uncompressed) | 68.58 KB |
@sentry/browser (incl. Tracing) - ES5 CDN Bundle (gzipped) | 34.07 KB |
@sentry/react (incl. Tracing, Replay) - Webpack (gzipped) | 67.66 KB |
@sentry/react - Webpack (gzipped) | 22.12 KB |
@sentry/nextjs Client (incl. Tracing, Replay) - Webpack (gzipped) | 84.31 KB |
@sentry/nextjs Client - Webpack (gzipped) | 48.95 KB |
@sentry-internal/feedback - Webpack (gzipped) | 16.6 KB |