Conversation
82c23ba to
5cb3fb8
Compare
waxlamp
left a comment
There was a problem hiding this comment.
According the the migration guide we don't need to make any changes to our usage. Claude's assessment:
Breaking Changes v9 → v10 Assessment
None of the frontend code is subject to breaking changes. All APIs in use are stable and unchanged between v9 and v10:
┌───────────────────────────────────────┬─────────────────────┐
│ API │ Status │
├───────────────────────────────────────┼─────────────────────┤
│ Sentry.init() standard options │ No breaking changes │
├───────────────────────────────────────┼─────────────────────┤
│ browserTracingIntegration({ router }) │ No breaking changes │
├───────────────────────────────────────┼─────────────────────┤
│ replayIntegration() │ No breaking changes │
├───────────────────────────────────────┼─────────────────────┤
│ vueIntegration({ tracingOptions }) │ No breaking changes │
├───────────────────────────────────────┼─────────────────────┤
│ captureConsoleIntegration({ levels }) │ No breaking changes │
├───────────────────────────────────────┼─────────────────────┤
│ createSentryPiniaPlugin() │ No breaking changes │
└───────────────────────────────────────┴─────────────────────┘The notable v10 changes that don't affect this codebase:
- BaseClient renamed to Client — not used here
- hasTracingEnabled() renamed to hasSpansEnabled() — not used here
- FID web vital removed (replaced by INP) — only relevant if you had beforeSend hooks filtering on FID
- sendDefaultPii now controls IP address inference — the backend Python SDK has send_default_pii=True but that's unrelated to this JS upgrade
The upgrade looks safe with no code changes needed.
This PR contains the following updates:
^9.10.0→^10.0.0Release Notes
getsentry/sentry-javascript (@sentry/vue)
v10.44.0Important Changes
feat(effect): Add
@sentry/effectSDK (Alpha) (#19644)This release introduces
@sentry/effect, a new SDK for Effect.ts applications. The SDK provides Sentry integration via composable Effect layers for both Node.js and browser environments.Compose the
effectLayerwith optional tracing, logging, and metrics layers to instrument your Effect application:Alpha features are still in progress, may have bugs and might include breaking changes. Please reach out on GitHub if you have any feedback or concerns.
feat(astro): Add Astro 6 support (#19745)
This release enables full support for Astro v6 by adjusting our Astro SDK's middleware to some Astro-internal
changes. We cannot yet guarantee full support for server-islands, due to a bug in Astro v6
but we'll follow up on this once the bug is fixed.
feat(hono): Add basic instrumentation for Node runtime (#19817)
Adds a new package
@sentry/hono/node(alpha) with basic instrumentation for Hono applications running in Node.js.The Hono middleware for Cloudflare (
@sentry/hono/cloudflare- alpha) comes with fixes, and it's now possible to access the Cloudflare Worker Bindings (env) from the options' callback.Start using the new Hono middlewares by installing
@sentry/honoand importing the respective middleware for your runtime.More instructions can be found in the Hono readme.
Alpha features are still in progress, may have bugs and might include breaking changes. Please reach out on GitHub if you have any feedback or concerns.
feat(nestjs): Instrument
@nestjs/bullmq@Processordecorator (#19759)Automatically capture exceptions and create transactions for BullMQ queue processors in NestJS applications.
When using the
@Processordecorator from@nestjs/bullmq, the SDK now automatically wraps theprocess()methodto create
queue.processtransactions with proper isolation scopes, preventing breadcrumb and scope leakage betweenjobs and HTTP requests. Errors thrown in processors are captured with the
auto.queue.nestjs.bullmqmechanism type.Requires
@nestjs/bullmqv10.0.0 or later.feat(nestjs): Instrument
@nestjs/scheduledecorators (#19735)Automatically capture exceptions thrown in
@Cron,@Interval, and@Timeoutdecorated methods.Previously, exceptions in
@Cronmethods were only captured if you used theSentryCrondecorator. Now they arecaptured automatically. The exception mechanism type changed from
auto.cron.nestjs.asynctoauto.function.nestjs.cron. If you have Sentry queries or alerts that filter on the old mechanism type, update themaccordingly.
feat(node): Expose
headersToSpanAttributesoption onnativeNodeFetchIntegration()(#19770)Response headers like
http.response.header.content-lengthwere previously captured automatically on outgoingfetch spans but are now opt-in since
@opentelemetry/instrumentation-undici@0.22.0. You can now configure whichheaders to capture via the
headersToSpanAttributesoption.Other Changes
sentry.timestamp.sequenceattribute for timestamp tie-breaking (#19421)sendDefaultPiisetting in langchain and langgraph in non-node environments (#19813)@nestjs/event-emitterinstrumentation (#19725)lastEventIdwhen error is thrown in component render (#19764)Internal Changes
skill-creatorand update managed agent skills (#19713)@sentry/honoalpha release (#19828)"*"(#19756)sdkNamefor craft (#19736)vite-plugin-federation(#19778)Bundle size 📦
v10.43.0Compare Source
Important Changes
feat(nextjs): Add Turbopack support for React component name annotation (#19604)
We added experimental support for React component name annotation in Turbopack builds. When enabled, JSX elements
are annotated with
data-sentry-component,data-sentry-element, anddata-sentry-source-fileattributes at buildtime. This enables searching Replays by component name, seeing component names in breadcrumbs, and performance
monitoring — previously only available with webpack builds.
This feature requires Next.js 16+ and is currently behind an experimental flag:
feat(hono): Instrument middlewares
app.use()(#19611)Hono middleware registered via
app.use()is now automatically instrumented, creating spans for each middleware invocation.Other Changes
tracePropagationoption to http and fetch integrations (#19712)instrumentDurableObjectStorage(#19662)Internal Changes
build:devcommand (#19586)Work in this release was contributed by @dmmulroy, @lithdew, and @smorimoto. Thank you for your contributions!
v10.42.0Compare Source
addVitePlugininstead of deprecatedvite:extendConfig(#19464)Internal Changes
Bundle size 📦
v10.41.0Compare Source
v10.40.0Compare Source
Important Changes
feat(tanstackstart-react): Add global sentry exception middlewares (#19330)
The
sentryGlobalRequestMiddlewareandsentryGlobalFunctionMiddlewareglobal middlewares capture unhandled exceptions thrown in TanStack Start API routes and server functions. Add them as the first entries in therequestMiddlewareandfunctionMiddlewarearrays ofcreateStart():feat(tanstackstart-react)!: Export Vite plugin from
@sentry/tanstackstart-react/vitesubpath (#19182)The
sentryTanstackStartVite plugin is now exported from a dedicated subpath. Update your import:fix(node-core): Reduce bundle size by removing apm-js-collab and requiring pino >= 9.10 (#18631)
In order to keep receiving pino logs, you need to update your pino version to >= 9.10, the reason for the support bump is to reduce the bundle size of the node-core SDK in frameworks that cannot tree-shake the apm-js-collab dependency.
fix(browser): Ensure user id is consistently added to sessions (#19341)
Previously, the SDK inconsistently set the user id on sessions, meaning sessions were often lacking proper coupling to the user set for example via
Sentry.setUser().Additionally, the SDK incorrectly skipped starting a new session for the first soft navigation after the pageload.
This patch fixes these issues. As a result, metrics around sessions, like "Crash Free Sessions" or "Crash Free Users" might change.
This could also trigger alerts, depending on your set thresholds and conditions.
We apologize for any inconvenience caused!
While we're at it, if you're using Sentry in a Single Page App or meta framework, you might want to give the new
'page'session lifecycle a try!This new mode no longer creates a session per soft navigation but continues the initial session until the next hard page refresh.
Check out the docs to learn more!
ref!(gatsby): Drop Gatsby v2 support (#19467)
We drop support for Gatsby v2 (which still relies on webpack 4) for a critical security update in https://github.com/getsentry/sentry-javascript-bundler-plugins/releases/tag/5.0.0
Other Changes
setTheme()to dynamically update feedback widget color scheme (#19430)sourcemaps.filesToDeleteAfterUploadas a top-level option (#19280)ignoreConnectSpansoption topostgresIntegration(#19291)isPromiseAllSettledResultwith null/undefined array elements (#19346)client.close()(#19371)optionsif set (#19274)sentry.drop_transactionattribute on spans whenskipOpenTelemetrySetupis enabled (#19333)options.rootDirinstead ofoptions.srcDir(#19343)Internal Changes
- test(nextjs): Add bun e2e test app ([#19318](https://redirect.github.com/getsentry/sentry-javascript/pull/19318)) - test(nextjs): Deactivate canary test for cf-workers ([#19483](https://redirect.github.com/getsentry/sentry-javascript/pull/19483)) - tests(langchain): Fix langchain v1 internal error tests ([#19409](https://redirect.github.com/getsentry/sentry-javascript/pull/19409)) - ref(nuxt): Remove `defineNitroPlugin` wrapper ([#19334](https://redirect.github.com/getsentry/sentry-javascript/pull/19334)) - ref(cloudflare): Move internal files and functions around ([#19369](https://redirect.github.com/getsentry/sentry-javascript/pull/19369)) - chore: Add external contributor to CHANGELOG.md ([#19395](https://redirect.github.com/getsentry/sentry-javascript/pull/19395)) - chore: Add github action to notify stale PRs ([#19361](https://redirect.github.com/getsentry/sentry-javascript/pull/19361)) - chore: add oxfmt changes to blame ignore rev list ([#19366](https://redirect.github.com/getsentry/sentry-javascript/pull/19366)) - chore: Enhance AI integration guidelines with runtime-specific placem… ([#19296](https://redirect.github.com/getsentry/sentry-javascript/pull/19296)) - chore: Ignore `lerna.json` for prettier ([#19288](https://redirect.github.com/getsentry/sentry-javascript/pull/19288)) - chore: migrate to oxfmt ([#19200](https://redirect.github.com/getsentry/sentry-javascript/pull/19200)) - chore: Revert to lerna v8 ([#19294](https://redirect.github.com/getsentry/sentry-javascript/pull/19294)) - chore: Unignore HTML files and reformat with oxfmt ([#19311](https://redirect.github.com/getsentry/sentry-javascript/pull/19311)) - chore(ci): Adapt max turns of triage issue agent ([#19473](https://redirect.github.com/getsentry/sentry-javascript/pull/19473)) - chore(ci): Add `environment` to triage action ([#19375](https://redirect.github.com/getsentry/sentry-javascript/pull/19375)) - chore(ci): Add `id-token: write` permission to triage workflow ([#19381](https://redirect.github.com/getsentry/sentry-javascript/pull/19381)) - chore(ci): Move monorepo to nx ([#19325](https://redirect.github.com/getsentry/sentry-javascript/pull/19325)) - chore(cursor): Add rules for fetching develop docs ([#19377](https://redirect.github.com/getsentry/sentry-javascript/pull/19377)) - chore(deps-dev): Bump @sveltejs/kit from 2.49.5 to 2.52.2 in /dev-packages/e2e-tests/test-applications/sveltekit-2 ([#19441](https://redirect.github.com/getsentry/sentry-javascript/pull/19441)) - chore(deps-dev): Bump @sveltejs/kit from 2.49.5 to 2.52.2 in /dev-packages/e2e-tests/test-applications/sveltekit-2-kit-tracing ([#19446](https://redirect.github.com/getsentry/sentry-javascript/pull/19446)) - chore(deps-dev): Bump @sveltejs/kit from 2.49.5 to 2.52.2 in /dev-packages/e2e-tests/test-applications/sveltekit-cloudflare-pages ([#19462](https://redirect.github.com/getsentry/sentry-javascript/pull/19462)) - chore(deps-dev): Bump @sveltejs/kit from 2.50.1 to 2.52.2 ([#19442](https://redirect.github.com/getsentry/sentry-javascript/pull/19442)) - chore(deps-dev): bump @testing-library/react from 13.0.0 to 15.0.5 ([#19194](https://redirect.github.com/getsentry/sentry-javascript/pull/19194)) - chore(deps-dev): bump @types/ember__debug from 3.16.5 to 4.0.8 ([#19429](https://redirect.github.com/getsentry/sentry-javascript/pull/19429)) - chore(deps-dev): bump ember-resolver from 13.0.2 to 13.1.1 ([#19301](https://redirect.github.com/getsentry/sentry-javascript/pull/19301)) - chore(deps): Bump @actions/glob from 0.4.0 to 0.6.1 ([#19427](https://redirect.github.com/getsentry/sentry-javascript/pull/19427)) - chore(deps): bump agents from 0.2.32 to 0.3.10 in /dev-packages/e2e-tests/test-applications/cloudflare-mcp ([#19326](https://redirect.github.com/getsentry/sentry-javascript/pull/19326)) - chore(deps): Bump hono from 4.11.7 to 4.11.10 in /dev-packages/e2e-tests/test-applications/cloudflare-hono ([#19438](https://redirect.github.com/getsentry/sentry-javascript/pull/19438)) - chore(deps): Bump Sentry CLI to latest v2 ([#19477](https://redirect.github.com/getsentry/sentry-javascript/pull/19477)) - chore(deps): Bump transitive dep `fast-xml-parser` ([#19433](https://redirect.github.com/getsentry/sentry-javascript/pull/19433)) - chore(deps): upgrade tar to 7.5.9 to fix CVE-2026-26960 ([#19445](https://redirect.github.com/getsentry/sentry-javascript/pull/19445)) - chore(github): Add `allowedTools` to Claude GitHub action ([#19386](https://redirect.github.com/getsentry/sentry-javascript/pull/19386)) - chore(github): Add workflow to trigger `triage-issue` skill ([#19358](https://redirect.github.com/getsentry/sentry-javascript/pull/19358)) - chore(github): Add write tool for markdown report ([#19387](https://redirect.github.com/getsentry/sentry-javascript/pull/19387)) - chore(github): Change tool permission path ([#19389](https://redirect.github.com/getsentry/sentry-javascript/pull/19389)) - chore(llm): Add `triage-issue` skill ([#19356](https://redirect.github.com/getsentry/sentry-javascript/pull/19356)) - chore(llm): Better defense against prompt injection in triage skill ([#19410](https://redirect.github.com/getsentry/sentry-javascript/pull/19410)) - chore(llm): Make cross-repo search optional and remove file cleanup ([#19401](https://redirect.github.com/getsentry/sentry-javascript/pull/19401)) - chore(node-core): Make @sentry/opentelemetry not a peer dep in node… ([#19308](https://redirect.github.com/getsentry/sentry-javascript/pull/19308)) - chore(repo): Allow WebFetch for Sentry docs in Claude settings ([#18890](https://redirect.github.com/getsentry/sentry-javascript/pull/18890)) - chore(repo): Increase number of concurrently running nx tasks ([#19443](https://redirect.github.com/getsentry/sentry-javascript/pull/19443)) - chore(skills): Add security notes for injection defense ([#19379](https://redirect.github.com/getsentry/sentry-javascript/pull/19379)) - chore(triage-action): Fix JSON parsing ([#19471](https://redirect.github.com/getsentry/sentry-javascript/pull/19471)) - chore(triage-issue): Improve triage prompt for accuracy ([#19454](https://redirect.github.com/getsentry/sentry-javascript/pull/19454)) - chore(triage-skill): Add GitHub parsing python util script ([#19405](https://redirect.github.com/getsentry/sentry-javascript/pull/19405)) - chore(triage-skill): Increase `num_turns` and add script to post summary ([#19456](https://redirect.github.com/getsentry/sentry-javascript/pull/19456)) - ci(fix-security-vulnerability): Add id token write permission ([#19412](https://redirect.github.com/getsentry/sentry-javascript/pull/19412)) - ci(fix-security-vulnerability): Be specific about how to fetch the alert page ([#19414](https://redirect.github.com/getsentry/sentry-javascript/pull/19414)) - ci(fix-security-vulnerability): Run fetch alert first before executing skill ([#19418](https://redirect.github.com/getsentry/sentry-javascript/pull/19418)) - ci(fix-security-vulnerability): Use opus 4.6 ([#19416](https://redirect.github.com/getsentry/sentry-javascript/pull/19416)) - ci(github): Add tilde to file path to not exact-match ([#19392](https://redirect.github.com/getsentry/sentry-javascript/pull/19392)) - ci(triage-skill): Allow `Write` and remove `rm` permission ([#19397](https://redirect.github.com/getsentry/sentry-javascript/pull/19397)) - ci(triage-skill): Run on opened issues ([#19423](https://redirect.github.com/getsentry/sentry-javascript/pull/19423)) - docs(nuxt): Remove duplicated setup instructions ([#19422](https://redirect.github.com/getsentry/sentry-javascript/pull/19422)) - feat(ci): Add security vulnerability skill action ([#19355](https://redirect.github.com/getsentry/sentry-javascript/pull/19355))Work in this release was contributed by @LudvigHz and @jadengis. Thank you for your contributions!
Bundle size 📦
v10.39.0Compare Source
Important Changes
feat(tanstackstart-react): Auto-instrument server function middleware (#19001)
The
sentryTanstackStartVite plugin now automatically instruments middleware increateServerFn().middleware([...])calls. This captures performance data without requiring manual wrapping withwrapMiddlewaresWithSentry().feat(nextjs): New experimental automatic vercel cron monitoring (#19192)
Setting
_experimental.vercelCronMonitoringtotruein your Sentry configuration will automatically create Sentry cron monitors for your Vercel Cron Jobs.Please note that this is an experimental unstable feature and subject to change.
feat(node-core): Add node-core/light (#18502)
This release adds a new light-weight
@sentry/node-core/lightexport to@sentry/node-core. The export acts as a light-weight SDK that does not depend on OpenTelemetry and emits no spans.Use this SDK when:
It supports error tracking and reporting, logs, metrics, automatic request isolation (requires Node.js 22+) and basic tracing via our
Sentry.startSpan*APIs.Install the SDK by running
and add Sentry at the top of your application's entry file:
Other Changes
Configuration
📅 Schedule: Branch creation - Between 12:00 AM and 03:59 AM, only on Monday ( * 0-3 * * 1 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.