@sentry/node
11.9.0 · 23 Oct 2026MIT36.1M / weekRepositoryHomepagenpmAtom feed
9.47.2 is the newest release of 9.x.
In short
76 breaking28 new16 fixed26 internal
- breaking
Version
9.0.0marks a release of the Sentry JavaScript SDKs that contains breaking changes. - breaking
Bump typescript to
~5.0.0 - breaking
Drop
nitro-utilspackage - breaking
Only collect ip addresses with
sendDefaultPii: true - breaking
Remove
autoSessionTrackingoption - breaking
Remove
enableTracing - breaking
Remove
getCurrentHub(),Hub, andgetCurrentHubShim() - breaking
Remove
spanIdfrom propagation context
Release note
Version 9.0.0 marks a release of the Sentry JavaScript SDKs that contains breaking changes.
The goal of this release is to trim down on unused and potentially confusing APIs, prepare the SDKs for future framework versions to build deeper instrumentation, and remove old polyfills to reduce the packages' size.
How To Upgrade
Please carefully read through the migration guide in the Sentry docs on how to upgrade from version 8 to version 9.
Make sure to select your specific platform/framework in the top left corner: docs.sentry.io/platforms/javascript/migration/v…
A comprehensive migration guide outlining all changes for all the frameworks can be found within the Sentry JavaScript SDK Repository: github.com/getsentry/sentry-javascript/blob/dev…
Breaking Changes
- breaking
Bump typescript to
~5.0.0 - breaking
Drop
nitro-utilspackage - breaking
Only collect ip addresses with
sendDefaultPii: true - breaking
Remove
autoSessionTrackingoption - breaking
Remove
enableTracing - breaking
Remove
getCurrentHub(),Hub, andgetCurrentHubShim() - breaking
Remove
spanIdfrom propagation context - breaking
Remove deprecated and unused code
- breaking
Remove metrics API from the JS SDK
- breaking
Require Node
>=18as minimum supported version - breaking
astro: Respect user-specified source map setting
- breaking
browser: Remove
captureUserFeedbackmethod - breaking
build: Drop pre-ES2020 polyfills
- breaking
core: Add
normalizedRequesttosamplingContext - breaking
core: Always use session from isolation scope
- breaking
core: Pass root spans to
beforeSendSpanand disallow returningnull - breaking
core: Remove
BAGGAGE_HEADER_NAMEexport - breaking
core: Remove
TransactionNamingSchemetype - breaking
core: Remove
addOpenTelemetryInstrumentationmethod - breaking
core: Remove
arrayifymethod - breaking
core: Remove
debugIntegrationandsessionTimingIntegration - breaking
core: Remove
flattenmethod - breaking
core: Remove
getDomElementmethod - breaking
core: Remove
makeFifoCachemethod - breaking
core: Remove
memoBuilderexport &WeakSetfallback - breaking
core: Remove
transactionContextfromsamplingContext - breaking
core: Remove
urlEncodemethod - breaking
core: Remove deprecated
Requesttype - breaking
core: Remove deprecated request data methods
- breaking
core: Remove standalone
Clientinterface & deprecateBaseClient - breaking
core: Remove validSeverityLevels export
- breaking
core: Stop accepting
eventas argument forrecordDroppedEvent - breaking
core: Stop setting user in
requestDataIntegration - breaking
core: Type sdkProcessingMetadata more strictly
- breaking
core: Update
hasTracingEnabledto consider empty trace config - breaking
core: Update
requestDataIntegrationhandling - breaking
deno: Remove deno prepack
- breaking
ember: Officially drop support for ember
<=3.x - breaking
nestjs: Move
nestIntegrationinto nest sdk and removesetupNestErrorHandler - breaking
nestjs: Remove
@WithSentrydecorator - breaking
nestjs: Remove
SentryService - breaking
nextjs: Don't rely on Next.js Build ID for release names
- breaking
nextjs: Remove
experimental_captureRequestError - breaking
nextjs: Respect user-provided source map generation settings
- breaking
node: Add support for Prisma v6 and drop v5 support
- breaking
node: Avoid http spans by default for custom OTEL setups
- breaking
node: Collect request sessions via HTTP instrumentation
- breaking
node: Remove
processThreadBreadcrumbIntegration - breaking
node: Remove fine grained
registerEsmLoaderHooks - breaking
opentelemetry: Exclusively pass root spans through sampling pipeline
- breaking
pinia: Include state of all stores in breadcrumb
- breaking
react: Raise minimum supported TanStack Router version to
1.63.0 - breaking
react: Remove deprecated
getNumberOfUrlSegmentsmethod - breaking
react: Remove deprecated react router methods
- breaking
react: Update
ErrorBoundarycomponentStacktype - breaking
remix: Drop support for Remix v1
- breaking
remix: Remove
autoInstrumentRemixoption - breaking
solidstart: Default to
--importsetup and addautoInjectServerSentry - breaking
solidstart: No longer export
sentrySolidStartVite - breaking
solidstart: Respect user-provided source map setting
- breaking
svelte: Disable component update tracking by default
- breaking
sveltekit: Drop support for SvelteKit @1.x
- breaking
sveltekit: Remove
fetchProxyScriptNonceoption - breaking
sveltekit: Respect user-provided source map generation settings
- breaking
utils: Remove
@sentry/utilspackage - breaking
vue: Remove configuring Vue tracing options anywhere else other than through the
vueIntegration'stracingOptionsoption - breaking
vue/nuxt: No longer create
"update"spans for component tracking by default - breaking
node: Fix name of
vercelAIIntegrationtoVercelAI - breaking
vue: Remove
logErrorfromvueIntegration - breaking
Don't polyfill optional chaining and nullish coalescing
- breaking
core: Cleanup internal types, including
ReportDialogOptions - breaking
core: Mark exceptions from
captureConsoleIntegrationashandled: trueby default - breaking
core: Move
shutdownTimeoutoption type from core to node - breaking
core: Remove
Scopetype interface in favor of usingScopeclass - breaking
core: Remove backwards compatible SentryCarrier type
Other Changes
aws: Rename AWS lambda layer name to
SentryNodeServerlessSDKv9aws-serverless: Upgrade OTEL deps
browser: Set
user.ip_addressexplicitly to{{auto}}core: Add
inheritOrSampleWithhelper totraceSamplercore: Emit client reports for unsampled root spans on span start
core: Rename
hasTracingEnabledtohasSpansEnabledcore: Streamline
SpanJSONtypedeno: Don't bundle
@sentry/denodeno: Don't publish to
deno.landdeno: Stop inlining types from core
flags: Add Statsig browser integration
gatsby: Preserve user-provided source map settings
nestjs: Remove
SentryTracingInterceptor,SentryGlobalGraphQLFilter,SentryGlobalGenericFilternextjs: Directly forward
sourcemaps.disableto webpack pluginnode: Add
processSessionIntegrationnode: Add missing
vercelAIIntegrationexportnode: Capture exceptions from
worker_threadsnuxt: Add enabled to disable Sentry module
nuxt: Add
silent,errorHandler,releasetoSourceMapsOptionsprofiling-node: Use
@sentry-internal/node-cpu-profilersolidstart: Add
autoInjectServerSentry: 'experimental_dynamic-importsveltekit: Only inject fetch proxy script for SvelteKit < 2.16.0
user feedback: Adds draw tool for UF screenshot annotations
user feedback: Adds toolbar for cropping and annotating
Avoid class fields all-together
Only emit
__esModuleproperties in CJS modules when there is a default exportPass
parentSampleRatetotracesSamplerPropagate and use a sampling random
browser: Remove
browserPerformanceTimeOriginside-effectscore: Ensure debugIds are applied to all exceptions in an event
core: Fork scope if custom scope is passed to
startSpanManualcore: Fork scope if custom scope is passed to
startSpancore: Only fall back to
sendDefaultPiifor IP collection inrequestDataIntegrationnextjs: Flush with
waitUntilincaptureRequestErrornextjs: Use batched devserver symbolication endpoint
node: Don't leak
__spanproperty into breadcrumbsnode: Fix sample rand propagation for negative sampling decisions
node: Missing
releasefrom ANR sessionsnode: Set the correct fallback URL fields for outgoing https requests if they are not defined
nuxt: Detect Azure Function runtime for flushing with timeout
react: From location can be undefined in Tanstack Router Instrumentation
react: Import default for hoistNonReactStatics
react: Support lazy-loaded routes and components.
solidstart: Do not copy release-injection map file
Work in this release was contributed by @aloisklink, @arturovt, @aryanvdesh, @benjick, @chris-basebone, @davidturissini, @GrizliK1988, @jahands, @jrandolf, @kunal-511, @maximepvrt, @maxmaxme, @mstrokin, @nathankleyn, @nwalters512, @tannerlinsley, @tjhiggins, and @Zen-cronic. Thank you for your contributions!