Skip to content

chore(deps): update JavaScript SDK to v10.38.0#3474

Merged
buenaflor merged 1 commit intomainfrom
deps/packages/flutter/scripts/update-js.sh
Feb 12, 2026
Merged

chore(deps): update JavaScript SDK to v10.38.0#3474
buenaflor merged 1 commit intomainfrom
deps/packages/flutter/scripts/update-js.sh

Conversation

@github-actions
Copy link
Contributor

@github-actions github-actions bot commented Jan 23, 2026

Bumps packages/flutter/scripts/update-js.sh from 10.6.0 to 10.38.0.

Auto-generated by a dependency updater.

Changelog

10.38.0

Important Changes

  • feat(tanstackstart-react): Auto-instrument request middleware (#18989)

The sentryTanstackStart Vite plugin now automatically instruments middleware arrays in createFileRoute(). This captures performance data without requiring manual wrapping with wrapMiddlewaresWithSentry().

Other Changes

  • feat: Use v4.8.0 bundler plugins (#18993)
  • feat(browser): Add logs.metrics bundle (#19020)
  • feat(browser): Add replay.logs.metrics bundle (#19021)
  • feat(browser): Add tracing.replay.logs.metrics bundle (#19039)
  • feat(deps): bump import-in-the-middle from 2.0.1 to 2.0.6 (#19042)
  • feat(node): Add AI manual instrumentation exports to Node (#19063)
  • feat(wasm): initialised sentryWasmImages for webworkers (#18812)
  • fix(core): Classify custom AggregateErrors as exception groups (#19053)
  • fix(nextjs): Turn off debugID injection if sourcemaps are explicitly disabled (#19010)
  • fix(react): Avoid String(key) to fix Symbol conversion error (#18982)
  • fix(react): Prevent lazy route handlers from updating wrong navigation span (#18898)
Internal Changes - feat(deps-dev): bump types/rsvp from 4.0.4 to 4.0.9 ([#19038](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19038)) - ci(build): Run full test suite on new bundle with logs+metrics ([#19065](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19065)) - ci(deps): bump actions/create-github-app-token from 1 to 2 ([#19028](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19028)) - ci(deps): bump peter-evans/create-pull-request from 8.0.0 to 8.1.0 ([#19029](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19029)) - chore: Add external contributor to CHANGELOG.md ([#19005](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19005)) - chore(aws-serverless): Fix local cache issues ([#19081](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19081)) - chore(dependabot): Allow all packages to update ([#19024](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19024)) - chore(dependabot): Update ignore patterns and add more groups ([#19037](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19037)) - chore(dependabot): Update ignore patterns and add more groups ([#19043](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19043)) - chore(deps-dev): bump edge-runtime/types from 3.0.1 to 4.0.0 ([#19032](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19032)) - chore(deps-dev): bump vercel/nft from 0.29.4 to 1.3.0 ([#19030](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19030)) - chore(deps): bump actions/artifact from 2.1.11 to 5.0.3 ([#19031](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19031)) - chore(deps): bump hono from 4.11.4 to 4.11.7 in /dev-packages/e2e-tests/test-applications/cloudflare-hono ([#19009](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19009)) - chore(deps): bump next from 16.0.9 to 16.1.5 in /dev-packages/e2e-tests/test-applications/nextjs-16-cacheComponents ([#19012](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19012)) - chore(deps): Bump trpc v11 dependency in e2e test ([#19061](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19061)) - chore(deps): Bump wrangler to 4.61.0 ([#19023](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19023)) - chore(deps): Upgrade remix-run deps to 2.17.4 ([#19040](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19040)) - chore(deps): Upgrade `next` versions 15 and 16 ([#19057](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19057)) - chore(deps): Upgrade Lerna to v8 ([#19050](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19050)) - chore(deps): Upgrade next to 14.2.35 ([#19055](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19055)) - chore(deps): Upgrade react-router, react-router/node, react-router/serve, react-router/dev to 7.13.0 ([#19026](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19026)) - chore(llm): Add claude skill + cursor command for adding new cdn bundles ([#19048](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19048)) - chore(llm): Ignore local Claude settings ([#18893](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/18893)) - chore(react): Update react-router-5 dev dependency to another than 5.0.0 ([#19047](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19047)) - chore(release): Add generate-changelog script ([#18999](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/18999)) - chore(remix): Upgrade remix-run/router to ^1.23.2 ([#19045](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19045)) - chore(solidstart): Bump peer dependencies of solidjs/start ([#19051](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19051)) - chore(solidstart): Upgrade Vinxi to update h3 peer dependency ([#19018](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19018)) - chore(tests): Reject messages from unknown origins in integration tests ([#19016](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/19016))

Work in this release was contributed by harshit078. Thank you for your contribution!

10.37.0

Important Changes

  • feat(core): Introduces a new Sentry.setConversationId() API to track multi turn AI conversations across API calls. (#18909)

    You can now set a conversation ID that will be automatically applied to spans within that scope. This allows you to link traces from the same conversation together.

    import * as Sentry from 'sentry/node';
    
    // Set conversation ID for all subsequent spans
    Sentry.setConversationId('conv_abc123');
    
    // All AI spans will now include the gen_ai.conversation.id attribute
    await openai.chat.completions.create({...});

    This is particularly useful for tracking multiple AI API calls that are part of the same conversation, allowing you to analyze entire conversation flows in Sentry.
    The conversation ID is stored on the isolation scope and automatically applied to spans via the new conversationIdIntegration.

  • feat(tanstackstart-react): Auto-instrument global middleware in sentryTanstackStart Vite plugin (#18844)

    The sentryTanstackStart Vite plugin now automatically instruments requestMiddleware and functionMiddleware arrays in createStart(). This captures performance data without requiring manual wrapping.

    Auto-instrumentation is enabled by default. To disable it:

    // vite.config.ts
    sentryTanstackStart({
      authToken: process.env.SENTRY_AUTH_TOKEN,
      org: 'your-org',
      project: 'your-project',
      autoInstrumentMiddleware: false,
    });

Other Changes

  • feat(core): simplify truncation logic to only keep the newest message (#18906)
  • feat(core): Support new client discard reason invalid (#18901)
  • feat(deps): Bump OpenTelemetry instrumentations (#18934)
  • feat(nextjs): Update default ignore list for sourcemaps (#18938)
  • feat(node): pass prisma instrumentation options through (#18900)
  • feat(nuxt): Don't run source maps related code on Nuxt "prepare" (#18936)
  • feat(replay): Update client report discard reason for invalid sessions (#18796)
  • feat(winston): Add customLevelMap for winston transport (#18922)
  • feat(react-router): Add support for React Router instrumentation API (#18580)
  • fix(astro): Do not show warnings for valid options (#18947)
  • fix(core): Report well known values in gen_ai.operation.name attribute (#18925)
  • fix(node-core): ignore vercel AbortError by default on unhandled rejection (#18973)
  • fix(nuxt): include sentry.config.server.ts in nuxt app types (#18971)
  • fix(profiling): Add platform to envelope item header (#18954)
  • fix(react): Defer React Router span finalization until lazy routes load (#18881)
  • ref(core): rename gen_ai.input.messages.original_length to sentry.sdk_meta.gen_ai.input.messages.original_length (#18970)
  • ref(core): rename gen_ai.request.messages to gen_ai.input.messages (#18944)
  • ref(core): Set system message as separate attribute (#18978)
  • deps: Bump version of sentry-bundler-plugins (#18972)
Internal Changes
  • chore(e2e): Add e2e claude skill (#18957)
  • chore(e2e): Add Makefile to make running specific e2e test apps easier (#18953)
  • chore(e2e): Modify e2e skill to also account for untracked files (#18959)
  • ref(tests): use constants in ai integration tests and add missing ones (#18945)
  • test(nextjs): Added nextjs CF workers test app (#18928)
  • test(prisma): Move to yarn prisma (#18975)

Work in this release was contributed by sebws, harshit078, and fedetorre. Thank you for your contributions!

10.36.0

  • feat(node): Add Prisma v7 support (#18908)
  • feat(opentelemetry): Support db.system.name attribute for database spans (#18902)
  • feat(deps): Bump OpenTelemetry dependencies (#18878)
  • fix(core): Sanitize data URLs in http.client spans (#18896)
  • fix(nextjs): Add ALS runner fallbacks for serverless environments (#18889)
  • fix(node): Profiling debug ID matching
Internal Changes
  • chore(deps-dev): bump remix-run/server-runtime from 2.15.2 to 2.17.3 in /packages/remix (#18750)

10.35.0

Important Changes

  • feat(tanstackstart-react): Add sentryTanstackStart vite plugin to manage automatic source map uploads (#18712)

    You can now configure source maps upload for TanStack Start using the sentryTanstackStart Vite plugin:

    // vite.config.ts
    import { defineConfig } from 'vite';
    import { sentryTanstackStart } from 'sentry/tanstackstart-react';
    import { tanstackStart } from 'tanstack/react-start/plugin/vite';
    
    export default defineConfig({
      plugins: [
        sentryTanstackStart({
          authToken: process.env.SENTRY_AUTH_TOKEN,
          org: 'your-org',
          project: 'your-project',
        }),
        tanstackStart(),
      ],
    });

Other Changes

  • feat(browser): Add CDN bundle for tracing.replay.feedback.logs.metrics (#18785)
  • feat(browser): Add shim package for logs (#18831)
  • feat(cloudflare): Automatically set the release id when CF_VERSION_METADATA is enabled (#18855)
  • feat(core): Add ignored client report event drop reason (#18815)
  • feat(logs): Add Log exports to browser and node packages (#18857)
  • feat(node-core,bun): Export processSessionIntegration from node-core and add it to bun (#18852)
  • fix(core): Find the correct IP address regardless their case (#18880)
  • fix(core): Check for AI operation id to detect a vercelai span (#18823)
  • fix(ember): Use ES5 syntax in inline vendor scripts (#18858)
  • fix(fetch): Shallow-clone fetch options to prevent mutation (#18867)
Internal Changes
  • chore(ci): Use javascript-sdk-gitflow app instead of personal token (#18829)
  • chore(deps): Bump sveltejs/kit devDependency to 2.49.5 (#18848)
  • chore(deps): Bump bundler plugins to ^4.6.2 (#18822)
  • chore(deps): bump hono from 4.10.3 to 4.11.4 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#18806)
  • chore(test): Bump svelte dependencies (#18850)
  • chore(core): Comment out Error tests in langchain (#18837)
  • meta(changelog): Fix entry for tanstack start vite plugin (#18883)
  • test(e2e): Add testing app for User Feedback (#18877)
  • test(fastify): Verify if upstream error is fixed and won't regress (#18838)

Work in this release was contributed by rreckonerr. Thank you for your contribution!

10.34.0

Important Changes

  • feat(core): Add option to enhance the fetch error message (#18466)

    You can now enable enhanced fetch error messages by setting the enhancedFetchErrorMessage option. When enabled, the SDK will include additional context in fetch error messages to help with debugging.

  • feat(nextjs): Add routeManifestInjection option to exclude routes from client bundle (#18798)

    A new routeManifestInjection option allows you to exclude sensitive routes from being injected into the client bundle.

  • feat(tanstackstart-react): Add wrapMiddlewaresWithSentry for manual middleware instrumentation (#18680)

    You can now wrap your middlewares using wrapMiddlewaresWithSentry, allowing you to trace middleware execution in your TanStack Start application.

    import { createMiddleware } from 'tanstack/react-start';
    import { wrapMiddlewaresWithSentry } from 'sentry/tanstackstart-react';
    
    const loggingMiddleware = createMiddleware({ type: 'function' }).server(async ({ next }) => {
      console.log('Request started');
      return next();
    });
    
    export const [wrappedLoggingMiddleware] = wrapMiddlewaresWithSentry({ loggingMiddleware });

Other Changes

  • feat(browser): Add CDN bundle for tracing.logs.metrics (#18784)
  • feat(core,node-core): Consolidate bun and node types with ServerRuntimeOptions (#18734)
  • feat(nextjs): Remove tracing from generation function template (#18733)
  • fix(core): Don't record outcomes for failed client reports (#18808)
  • fix(deno,cloudflare): Prioritize name from params over name from options (#18800)
  • fix(web-vitals): Add error handling for invalid object keys in WeakMap (#18809)
Internal Changes
  • ref(nextjs): Split withSentryConfig (#18777)
  • test(e2e): Pin shopify/remix-oxygen to unblock ci (#18811)

10.33.0

Important Changes

  • feat(core): Apply scope attributes to metrics (#18738)

    You can now set attributes on the SDK's scopes which will be applied to all metrics as long as the respective scopes are active. For the time being, only string, number and boolean attribute values are supported.

    Sentry.getGlobalScope().setAttributes({ is_admin: true, auth_provider: 'google' });
    
    Sentry.withScope(scope => {
      scope.setAttribute('step', 'authentication');
    
      // scope attributes `is_admin`, `auth_provider` and `step` are added
      Sentry.metrics.count('clicks', 1, { attributes: { activeSince: 100 } });
      Sentry.metrics.gauge('timeSinceRefresh', 4, { unit: 'hour' });
    });
    
    // scope attributes `is_admin` and `auth_provider` are added
    Sentry.metrics.count('response_time', 283.33, { unit: 'millisecond' });
  • feat(tracing): Add Vercel AI SDK v6 support (#18741)

    The Sentry SDK now supports the Vercel AI SDK v6. Tracing and error monitoring will work automatically with the new version.

  • feat(wasm): Add applicationKey option for third-party error filtering (#18762)

    Adds support for applying an application key to WASM stack frames that can be then used in the thirdPartyErrorFilterIntegration for detection of first-party code.

    Usage:

    Sentry.init({
      integrations: [
        // Integration order matters: wasmIntegration needs to be before thirdPartyErrorFilterIntegration
        wasmIntegration({ applicationKey: 'your-custom-application-key' }), ←───┐
        thirdPartyErrorFilterIntegration({                                      
          behaviour: 'drop-error-if-exclusively-contains-third-party-frames',   ├─ matching keys
          filterKeys: ['your-custom-application-key'] ←─────────────────────────┘
        }),
      ],
    });

Other Changes

  • feat(cloudflare): Support propagateTraceparent (#18569)
  • feat(core): Add ignoreSentryInternalFrames option to thirdPartyErrorFilterIntegration (#18632)
  • feat(core): Add gen_ai.conversation.id attribute to OpenAI and LangGr… (#18703)
  • feat(core): Add recordInputs/recordOutputs options to MCP server wrapper (#18600)
  • feat(core): Support IPv6 hosts in the DSN (#2996) (#17708)
  • feat(deps): Bump bundler plugins to ^4.6.1 (#17980)
  • feat(nextjs): Emit warning for conflicting treeshaking / debug settings (#18638)
  • feat(nextjs): Print Turbopack note for deprecated webpack options (#18769)
  • feat(node-core): Add isolateTrace option to node-cron instrumentation (#18416)
  • feat(node): Use process.on('SIGTERM') for flushing in Vercel functions (#17583)
  • feat(nuxt): Detect development environment and add dev E2E test (#18671)
  • fix(browser): Forward worker metadata for third-party error filtering (#18756)
  • fix(browser): Reduce number of visibilitystate and pagehide listeners (#18581)
  • fix(browser): Respect tunnel in diagnoseSdkConnectivity (#18616)
  • fix(cloudflare): Consume body of fetch in the Cloudflare transport (#18545)
  • fix(core): Set op on ended Vercel AI spans (#18601)
  • fix(core): Subtract performance.now() from browserPerformanceTimeOrigin fallback (#18715)
  • fix(core): Update client options to allow explicit undefined (#18024)
  • fix(feedback): Fix cases where the outline of inputs were wrong (#18647)
  • fix(next): Ensure inline sourcemaps are generated for wrapped modules in Dev (#18640)
  • fix(next): Wrap all Random APIs with a safe runner (#18700)
  • fix(nextjs): Avoid Edge build warning from OpenTelemetry process.argv0 (#18759)
  • fix(nextjs): Remove polynomial regular expression (#18725)
  • fix(node-core): Ignore worker threads in OnUncaughtException (#18689)
  • fix(node): relax Fastify's setupFastifyErrorHandler argument type (#18620)
  • fix(nuxt): Allow overwriting server-side defaultIntegrations (#18717)
  • fix(pino): Allow custom namespaces for msg and err (#18597)
  • fix(react,solid,vue): Fix parametrization behavior for non-matched routes (#18735)
  • fix(replay): Ensure replays contain canvas rendering when resumed after inactivity (#18714)
  • fix(tracing): add gen_ai.request.messages.original_length attributes (#18608)
  • ref(nextjs): Drop resolve dependency (#18618)
  • ref(react-router): Use snake_case for span op names (#18617)
Internal Changes
  • chore(bun): Fix install-bun.js version check and improve upgrade feedback (#18492)
  • chore(changelog): Fix typo (#18648)
  • chore(craft): Use version templating for aws layer (#18675)
  • chore(deps): Bump IITM to ^2.0.1 (#18599)
  • chore(e2e-tests): Upgrade trpc/server and trpc/client (#18722)
  • chore(e2e): Unpin react-router-7-framework-spa to ^7.11.0 (#18551)
  • chore(nextjs): Bump next version in dev deps (#18661)
  • chore(node-tests): Upgrade langchain/core (#18720)
  • chore(react): Inline hoist-non-react-statics package (#18102)
  • chore(size-limit): Add size checks for metrics and logs (#18573)
  • chore(tests): Add unordered mode to cloudflare test runner (#18596)
  • ci(deps): bump actions/cache from 4 to 5 (#18654)
  • ci(deps): Bump actions/create-github-app-token from 2.2.0 to 2.2.1 (#18656)
  • ci(deps): bump actions/upload-artifact from 5 to 6 (#18655)
  • ci(deps): bump peter-evans/create-pull-request from 7.0.9 to 8.0.0 (#18657)
  • doc: E2E testing documentation updates (#18649)
  • ref(core): Extract and reuse getCombinedScopeData helper (#18585)
  • ref(core): Remove dependence between performance.timeOrigin and performance.timing.navigationStart (#18710)
  • ref(core): Streamline and test browserPerformanceTimeOrigin (#18708)
  • ref(core): Strengthen browserPerformanceTimeOrigin reliability check (#18719)
  • ref(core): Use serializeAttributes for metric attribute serialization (#18582)
  • ref(node): Remove duplicate function isCjs (#18662)
  • test(core): Improve unit test performance for offline transport tests (#18628)
  • test(core): Use fake timers in promisebuffer tests to ensure deterministic behavior (#18659)
  • test(e2e): Add e2e metrics tests in Next.js 16 (#18643)
  • test(e2e): Pin agents package in cloudflare-mcp test (#18609)
  • test(e2e): Pin solid/vue tanstack router to 1.41.8 (#18610)
  • test(nestjs): Add canary test for latest (#18685)
  • test(node-native): Increase worker block timeout (#18683)
  • test(nuxt): Fix nuxt-4 dev E2E test (#18737)
  • test(tanstackstart-react): Add canary test for latest (#18686)
  • test(vue): Added canary and latest test variants to Vue tests (#18681)

Work in this release was contributed by G-Rath, gianpaj, maximepvrt, Mohataseem89, sebws, and xgedev. Thank you for your contributions!

10.32.1

  • fix(cloudflare): Add hono transaction name when error is thrown (#18529)
  • fix(ember): Make implementation field optional (hash routes) (#18564)
  • fix(vercelai): Fix input token count (#18574)
Internal Changes
  • chore(lint): prefer 'unknown' to 'any', fix lint warnings
  • chore(test): Remove cloudflare-astro e2e test (#18567)

10.32.0

Important Changes

  • feat(core): Apply scope attributes to logs (#18184)

    You can now set attributes on the SDK's scopes which will be applied to all logs as long as the respective scopes are active. For the time being, only string, number and boolean attribute values are supported.

    Sentry.getGlobalScope().setAttributes({ is_admin: true, auth_provider: 'google' });
    
    Sentry.withScope(scope => {
      scope.setAttribute('step', 'authentication');
    
      // scope attributes `is_admin`, `auth_provider` and `step` are added
      Sentry.logger.info(`user ${user.id} logged in`, { activeSince: 100 });
      Sentry.logger.info(`updated ${user.id} last activity`);
    });
    
    // scope attributes `is_admin` and `auth_provider` are added
    Sentry.logger.warn('stale website version, reloading page');
  • feat(replay): Add Request body with attachRawBodyFromRequest option (#18501)

    To attach the raw request body (from Request objects passed as the first fetch argument) to replay events, you can now use the attachRawBodyFromRequest option in the Replay integration:

    Sentry.init({
      integrations: [
        Sentry.replayIntegration({
          attachRawBodyFromRequest: true,
        }),
      ],
    });
  • feat(tanstackstart-react): Trace server functions (#18500)

    To enable tracing for server-side requests, you can now explicitly define a server entry point in your application and wrap your request handler with wrapFetchWithSentry.

    // src/server.ts
    import { wrapFetchWithSentry } from 'sentry/tanstackstart-react';
    import handler, { createServerEntry } from 'tanstack/react-start/server-entry';
    
    export default createServerEntry(
      wrapFetchWithSentry({
        fetch(request: Request) {
          return handler.fetch(request);
        },
      }),
    );
  • feat(vue): Add TanStack Router integration (#18547)

    The sentry/vue package now includes support for TanStack Router. Use tanstackRouterBrowserTracingIntegration to automatically instrument pageload and navigation transactions with parameterized routes:

    import { createApp } from 'vue';
    import { createRouter } from 'tanstack/vue-router';
    import * as Sentry from 'sentry/vue';
    import { tanstackRouterBrowserTracingIntegration } from 'sentry/vue/tanstackrouter';
    
    const router = createRouter({
      // your router config
    });
    
    Sentry.init({
      app,
      dsn: '__PUBLIC_DSN__',
      integrations: [tanstackRouterBrowserTracingIntegration(router)],
      tracesSampleRate: 1.0,
    });

Other Changes

  • feat(core): Capture initialize attributes on MCP servers (#18531)
  • feat(nextjs): Extract tracing logic from server component wrapper templates (#18408)
  • feat(nextjs): added webpack treeshaking flags as config (#18359)
  • fix(solid/tanstackrouter): Ensure web vitals are sent on pageload (#18542)
Internal Changes
  • chore(changelog): Add entry for scope attributes (#18555)
  • chore(changelog): Add entry for tanstack start wrapFetchWithSentry (#18558)
  • chore(deps): bump trpc/server from 10.45.2 to 10.45.3 in /dev-packages/e2e-tests/test-applications/node-express-incorrect-instrumentation (#18530)
  • chore(deps): bump trpc/server from 10.45.2 to 10.45.3 in /dev-packages/e2e-tests/test-applications/node-express-v5 (#18550)
  • chore(e2e): Pin to react-router 7.10.1 in spa e2e test (#18548)
  • chore(e2e): Remove check on http.response_content_length_uncompressed (#18536)
  • chore(github): Add "Closes" to PR template (#18538)
  • test(cloudflare-mcp): Unpin mcp sdk (#18528)
  • test(nextjs): Add e2e tests for server component spans in next 16 (#18544)

10.31.0

Important Changes

  • feat(browser): Add support for GraphQL persisted operations (#18505)

The graphqlClientIntegration now supports GraphQL persisted operations (queries). When a persisted query is detected, the integration will capture the operation hash and version as span attributes:

  • graphql.persisted_query.hash.sha256 - The SHA-256 hash of the persisted query
  • graphql.persisted_query.version - The version of the persisted query protocol

Additionally, the graphql.document attribute format has changed to align with OpenTelemetry semantic conventions. It now contains only the GraphQL query string instead of the full JSON request payload.

Before:

"graphql.document": "{\"query\":\"query Test { user { id } }\"}"

After:

"graphql.document": "query Test { user { id } }"

Other Changes

  • feat(node): Support propagateTraceparent option (#18476)
  • feat(bun): Expose spotlight option in TypeScript (#18436)
  • feat(core): Add additional exports for captureException and captureMessage parameter types (#18521)
  • feat(core): Export captureException and captureMessage parameter types (#18509)
  • feat(core): Parse individual cookies from cookie header (#18325)
  • feat(node): Add instrument OpenAI export to node (#18461)
  • feat(nuxt): Bump sentry/vite-plugin and sentry/rollup-plugin to 4.6.1 (#18349)
  • feat(profiling): Add support for Node v24 in the prune script (#18447)
  • feat(tracing): strip inline media from messages (#18413)
  • feat(node): Add ESM support for postgres.js instrumentation (#17961)
  • fix(browser): Stringify span context in linked traces log statement (#18376)
  • fix(google-cloud-serverless): Move types/express to optional peerDeps (#18452)
  • fix(node-core): passthrough node-cron context (#17835)
  • fix(tanstack-router): Check for fromLocation existence before reporting pageload (#18463)
  • fix(tracing): add system prompt, model to google genai (#18424)
  • fix(tracing): Set span operations for AI spans with model ID only (#18471)
  • ref(browser): Improve profiling debug statement (#18507)
Internal Changes
  • chore: Add external contributor to CHANGELOG.md (#18473)
  • chore: upgrade Playwright to ~1.56.0 for WSL2 compatibility (#18468)
  • chore(bugbot): Add testing conventions code review rules (#18433)
  • chore(deps): bump next from 14.2.25 to 14.2.35 in /dev-packages/e2e-tests/test-applications/create-next-app (#18494)
  • chore(deps): bump next from 14.2.32 to 14.2.35 in /dev-packages/e2e-tests/test-applications/nextjs-orpc (#18520)
  • chore(deps): bump next from 14.2.32 to 14.2.35 in /dev-packages/e2e-tests/test-applications/nextjs-pages-dir (#18496)
  • chore(deps): bump next from 15.5.7 to 15.5.9 in /dev-packages/e2e-tests/test-applications/nextjs-15 (#18482)
  • chore(deps): bump next from 15.5.7 to 15.5.9 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (#18483)
  • chore(deps): bump next from 16.0.7 to 16.0.9 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#18480)
  • chore(deps): bump next from 16.0.7 to 16.0.9 in /dev-packages/e2e-tests/test-applications/nextjs-16-cacheComponents (#18479)
  • chore(deps): bump next from 16.0.7 to 16.0.9 in /dev-packages/e2e-tests/test-applications/nextjs-16-tunnel (#18481)
  • chore(deps): bump next from 16.0.9 to 16.0.10 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#18514)
  • chore(deps): bump next from 16.0.9 to 16.0.10 in /dev-packages/e2e-tests/test-applications/nextjs-16-tunnel (#18487)
  • chore(tests): Added test variant flag (#18458)
  • test(cloudflare-mcp): Pin mcp sdk to 1.24.0 (#18524)

Work in this release was contributed by sebws and TBeeren. Thank you for your contributions!

10.30.0

  • feat(nextjs): Deprecate Webpack top-level options (#18343)
  • feat(node): Capture scope when event loop blocked (#18040)
  • fix(aws-serverless): Remove hyphens from AWS-lambda origins (#18353)
  • fix(core): Parse method from Request object in fetch (#18453)
  • fix(react): Add transaction name guards for rapid lazy-route navigations (#18346)
Internal Changes
  • chore(ci): Fix double issue creation for unreferenced PRs (#18442)
  • chore(deps): bump next from 15.5.4 to 15.5.7 in /dev-packages/e2e-tests/test-applications/nextjs-15 (#18411)
  • chore(deps): bump next from 15.5.4 to 15.5.7 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (#18400)
  • chore(deps): bump next from 16.0.0 to 16.0.7 in /dev-packages/e2e-tests/test-applications/nextjs-16 (#18399)
  • chore(deps): bump next from 16.0.0 to 16.0.7 in /dev-packages/e2e-tests/test-applications/nextjs-16-cacheComponents (#18427)
  • chore(deps): bump next from 16.0.0 to 16.0.7 in /dev-packages/e2e-tests/test-applications/nextjs-16-tunnel (#18439)
  • chore(publish): Fix publish order for sentry/types (#18429)
  • ci(deps): bump actions/create-github-app-token from 2.1.4 to 2.2.0 (#18362)

10.29.0

Important Changes

  • feat(solid|solidstart): Bump accepted solidjs/router range (#18395)

We expanded the supported version range for solidjs/router to include 0.14.x and 0.15.x versions.

Other Changes

  • fix(logs): Add support for msg in pino integration (#18389)
  • fix(node): Include system message in anthropic-ai messages span (#18332)
  • fix(tracing): Add missing attributes in vercel-ai spans (#18333)
Internal Changes
  • chore(tanstackstart-react): clean up re-exported types (#18393)
  • ref(core): Avoid looking up openai integration options (#17695)
  • test(nuxt): Relax captured unhandled error assertion (#18397)
  • test(tanstackstart-react): Set up E2E test application (#18358)

10.28.0

Important Changes

  • feat(core): Make matcher parameter optional in makeMultiplexedTransport (#10798)

The matcher parameter in makeMultiplexedTransport is now optional with a sensible default. This makes it much easier to use the multiplexed transport for sending events to multiple DSNs based on runtime configuration.

Before:

import { makeFetchTransport, makeMultiplexedTransport } from 'sentry/browser';

const EXTRA_KEY = 'ROUTE_TO';

const transport = makeMultiplexedTransport(makeFetchTransport, args => {
  const event = args.getEvent();
  if (event?.extra?.[EXTRA_KEY] && Array.isArray(event.extra[EXTRA_KEY])) {
    return event.extra[EXTRA_KEY];
  }
  return [];
});

Sentry.init({
  transport,
  // ... other options
});

// Capture events with routing info
Sentry.captureException(error, {
  extra: {
    [EXTRA_KEY]: [
      { dsn: 'https://key1sentry.io/project1', release: 'v1.0.0' },
      { dsn: 'https://key2sentry.io/project2' },
    ],
  },
});

After:

import { makeFetchTransport, makeMultiplexedTransport, MULTIPLEXED_TRANSPORT_EXTRA_KEY } from 'sentry/browser';

// Just pass the transport generator - the default matcher handles the rest!
Sentry.init({
  transport: makeMultiplexedTransport(makeFetchTransport),
  // ... other options
});

// Capture events with routing info using the exported constant
Sentry.captureException(error, {
  extra: {
    [MULTIPLEXED_TRANSPORT_EXTRA_KEY]: [
      { dsn: 'https://key1sentry.io/project1', release: 'v1.0.0' },
      { dsn: 'https://key2sentry.io/project2' },
    ],
  },
});

The default matcher looks for routing information in event.extra[MULTIPLEXED_TRANSPORT_EXTRA_KEY]. You can still provide a custom matcher function for advanced use cases.

  • feat(nextjs): Support cacheComponents on turbopack (#18304)

This release adds support for cacheComponents on turbopack builds. We are working on adding support for this feature in webpack builds as well.

Other Changes

  • feat: Publish AWS Lambda Layer for Node 24 (#18327)
  • feat(browser): Expose langchain instrumentation (#18342)
  • feat(browser): Expose langgraph instrumentation (#18345)
  • feat(cloudflare): Allow specifying a custom fetch in Cloudflare transport options (#18335)
  • feat(core): Add isolateTrace option to Sentry.withMonitor() (#18079)
  • feat(deps): bump sentry/webpack-plugin from 4.3.0 to 4.6.1 (#18272)
  • feat(nextjs): Add cloudflare waitUntil detection (#18336)
  • feat(node): Add LangChain v1 support (#18306)
  • feat(remix): Add parameterized transaction naming for routes (#17951)
  • fix(cloudflare): Keep http root span alive until streaming responses are consumed (#18087)
  • fix(cloudflare): Wait for async events to finish (#18334)
  • fix(core): continueTrace doesn't propagate given trace ID if active span exists (#18328)
  • fix(node-core): Handle custom scope in log messages without parameters (#18322)
  • fix(opentelemetry): Ensure Sentry spans don't leak when tracing is disabled (#18337)
  • fix(react-router): Use underscores in trace origin values (#18351)
  • chore(tanstackstart-react): Export custom inits from tanstackstart-react (#18369)
  • chore(tanstackstart-react)!: Remove empty placeholder implementations (#18338)
Internal Changes
  • chore: Allow URLs as issue (#18372)
  • chore(changelog): Add entry for #18304 (#18329)
  • chore(ci): Add action to track all PRs as issues (#18363)
  • chore(github): Adjust BUGBOT.md rules to flag invalid op and origin values during review (#18352)
  • ci: Add action to create issue on gitflow merge conflicts (#18319)
  • ci(deps): bump actions/checkout from 5 to 6 (#18268)
  • ci(deps): bump peter-evans/create-pull-request from 7.0.8 to 7.0.9 (#18361)
  • test(cloudflare): Add typechecks for cloudflare-worker e2e test (#18321)

10.27.0

Important Changes

  • feat(deps): Bump OpenTelemetry (#18239)

    • Bump opentelemetry/context-async-hooks from ^2.1.0 to ^2.2.0
    • Bump opentelemetry/core from ^2.1.0 to ^2.2.0
    • Bump opentelemetry/resources from ^2.1.0 to ^2.2.0
    • Bump opentelemetry/sdk-trace-base from ^2.1.0 to ^2.2.0
    • Bump opentelemetry/sdk-trace-node from ^2.1.0 to ^2.2.0
    • Bump opentelemetry/instrumentation from 0.204.0 to 0.208.0
    • Bump opentelemetry/instrumentation-amqplib from 0.51.0 to 0.55.0
    • Bump opentelemetry/instrumentation-aws-sdk from 0.59.0 to 0.64.0
    • Bump opentelemetry/instrumentation-connect from 0.48.0 to 0.52.0
    • Bump opentelemetry/instrumentation-dataloader from 0.22.0 to 0.26.0
    • Bump opentelemetry/instrumentation-express from 0.53.0 to 0.57.0
    • Bump opentelemetry/instrumentation-fs from 0.24.0 to 0.28.0
    • Bump opentelemetry/instrumentation-generic-pool from 0.48.0 to 0.52.0
    • Bump opentelemetry/instrumentation-graphql from 0.52.0 to 0.56.0
    • Bump opentelemetry/instrumentation-hapi from 0.51.0 to 0.55.0
    • Bump opentelemetry/instrumentation-http from 0.204.0 to 0.208.0
    • Bump opentelemetry/instrumentation-ioredis from 0.52.0 to 0.56.0
    • Bump opentelemetry/instrumentation-kafkajs from 0.14.0 to 0.18.0
    • Bump opentelemetry/instrumentation-knex from 0.49.0 to 0.53.0
    • Bump opentelemetry/instrumentation-koa from 0.52.0 to 0.57.0
    • Bump opentelemetry/instrumentation-lru-memoizer from 0.49.0 to 0.53.0
    • Bump opentelemetry/instrumentation-mongodb from 0.57.0 to 0.61.0
    • Bump opentelemetry/instrumentation-mongoose from 0.51.0 to 0.55.0
    • Bump opentelemetry/instrumentation-mysql from 0.50.0 to 0.54.0
    • Bump opentelemetry/instrumentation-mysql2 from 0.51.0 to 0.55.0
    • Bump opentelemetry/instrumentation-nestjs-core from 0.50.0 to 0.55.0
    • Bump opentelemetry/instrumentation-pg from 0.57.0 to 0.61.0
    • Bump opentelemetry/instrumentation-redis from 0.53.0 to 0.57.0
    • Bump opentelemetry/instrumentation-tedious from 0.23.0 to 0.27.0
    • Bump opentelemetry/instrumentation-undici from 0.15.0 to 0.19.0
    • Bump prisma/instrumentation from 6.15.0 to 6.19.0
  • feat(browserprofiling): Add manual mode and deprecate old profiling (#18189)

    Adds the manual lifecycle mode for UI profiling (the default mode), allowing profiles to be captured manually with Sentry.uiProfiler.startProfiler() and Sentry.uiProfiler.stopProfiler().
    The previous transaction-based profiling is with profilesSampleRate is now deprecated in favor of the new UI Profiling with profileSessionSampleRate.

Other Changes

  • feat(core): Add gibibyte and pebibyte to InformationUnit type (#18241)
  • feat(core): Add scope attribute APIs (#18165)
  • feat(core): Re-add _experiments.enableLogs option (#18299)
  • feat(core): Use maxValueLength on error messages (#18301)
  • feat(deps): bump sentry/bundler-plugin-core from 4.3.0 to 4.6.1 (#18273)
  • feat(deps): bump sentry/cli from 2.56.0 to 2.58.2 (#18271)
  • feat(node): Add tracing support for AzureOpenAI (#18281)
  • feat(node): Fix local variables capturing for out-of-app frames (#18245)
  • fix(core): Add a PromiseBuffer for incoming events on the client (#18120)
  • fix(core): Always redact content of sensitive headers regardless of sendDefaultPii (#18311)
  • fix(metrics): Update return type of beforeSendMetric (#18261)
  • fix(nextjs): universal random tunnel path support (#18257)
  • ref(react): Add more guarding against wildcards in lazy route transactions (#18155)
  • chore(deps): bump glob from 11.0.1 to 11.1.0 in /packages/react-router (#18243)
Internal Changes - build(deps): bump hono from 4.9.7 to 4.10.3 in /dev-packages/e2e-tests/test-applications/cloudflare-hono ([#18038](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/18038)) - chore: Add `bump_otel_instrumentations` cursor command ([#18253](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/18253)) - chore: Add external contributor to CHANGELOG.md ([#18297](https://github-redirect.dependabot.com/getsentry/sentry-javascript/pull/18297))

⚠️ Changelog content truncated by 206433 characters because it was over the limit (60000) and wouldn't fit into PR description.

@bruno-garcia bruno-garcia force-pushed the deps/packages/flutter/scripts/update-js.sh branch 3 times, most recently from c07b6a3 to fe88e24 Compare January 26, 2026 11:11
@github-actions github-actions bot changed the title chore(deps): update JavaScript SDK to v10.36.0 chore(deps): update JavaScript SDK to v10.37.0 Jan 28, 2026
@bruno-garcia bruno-garcia force-pushed the deps/packages/flutter/scripts/update-js.sh branch 6 times, most recently from f6d02b9 to f99c5dc Compare January 29, 2026 14:56
@github-actions github-actions bot changed the title chore(deps): update JavaScript SDK to v10.37.0 chore(deps): update JavaScript SDK to v10.38.0 Jan 30, 2026
@bruno-garcia bruno-garcia force-pushed the deps/packages/flutter/scripts/update-js.sh branch 6 times, most recently from 24bd03d to 2808147 Compare February 4, 2026 16:58
@bruno-garcia bruno-garcia force-pushed the deps/packages/flutter/scripts/update-js.sh branch from 2808147 to ef5bf50 Compare February 5, 2026 15:47
@buenaflor buenaflor merged commit a34fde0 into main Feb 12, 2026
53 checks passed
@buenaflor buenaflor deleted the deps/packages/flutter/scripts/update-js.sh branch February 12, 2026 11:00
buenaflor added a commit that referenced this pull request Feb 16, 2026
* build(deps): bump actions/cache from 4 to 5 (#3423)

Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v4...v5)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump actions/upload-artifact from 5 to 6 (#3399)

Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@v5...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* enh(internal): internal logging api (#3425)

* feat(logging): introduce SentryDebugLogger for enhanced diagnostic logging

This commit adds a new `SentryDebugLogger` class to provide a lightweight, isolate-compatible logging solution for the Sentry SDK. The logger supports various log levels and can be configured for each isolate. Additionally, it integrates with `SentryOptions` to enable logging based on the debug flag and diagnostic level. The existing `IsolateLogger` has been removed in favor of this new implementation, streamlining the logging process across the SDK.

- Added `SentryDebugLogger` for structured logging.
- Updated `SentryOptions` to configure the logger based on debug settings.
- Replaced instances of `IsolateLogger` with `SentryDebugLogger` in relevant files.
- Added unit tests for the new logger functionality.

* refactor(sentry): remove debug logger warning from Sentry initialization

This commit removes a debug logger warning message from the Sentry class during initialization. The change helps to clean up the logging output and streamline the initialization process without affecting functionality.

* docs(debug_logger): update example usage and clarify instance requirements

This commit updates the documentation for the `SentryDebugLogger` to reflect the correct variable name in the example and adds a note emphasizing that each package should have at least one top-level instance of the logger. This enhances clarity for users implementing the logger in their applications.

* refactor(sentry): remove unused debug logger import and enhance debug logger documentation

This commit removes the unused import of the debug logger from the Sentry class and adds an internal annotation to the `SentryDebugLogger` in the debug logger file. Additionally, a comment is added in the isolate worker to suppress a lint warning related to the internal member usage, improving code clarity and maintainability.

* refactor(sentry): remove unused debug logger import from sentry_options.dart

This commit removes the unused import of the debug logger from the `sentry_options.dart` file, contributing to cleaner code and improved maintainability.

* docs(debug_logger): correct example usage in documentation

This commit updates the example usage in the `SentryDebugLogger` documentation to reflect the correct variable name, enhancing clarity for users implementing the logger in their applications.

* Update

* refactor(debug_logger): remove unused category parameter from logging methods

This commit simplifies the `SentryDebugLogger` class by removing the unused `category` parameter from the `debug`, `info`, `warning`, `error`, and `fatal` logging methods. This change enhances code clarity and reduces unnecessary complexity in the logging interface.

* refactor(debug_logger_test): remove test for category logging

This commit removes the test case that checks logging with a category parameter from the `debug_logger_test.dart` file. This change aligns with the recent refactor of the `SentryDebugLogger` class, which eliminated the unused category parameter, thereby enhancing the clarity and relevance of the test suite.

* refactor(android_replay_handler): enhance debug logging with context

This commit updates the logging statements in the `_AndroidReplayHandler` class to include the debug name from the configuration. This change improves the clarity of log messages by providing context for unexpected messages and payload types, aiding in debugging and monitoring efforts.

* refactor(debug_logger_test): enhance test coverage and improve naming conventions

This commit refactors the `debug_logger_test.dart` file by renaming test groups for clarity and adding new tests to verify the behavior of `SentryOptions.debug` and `SentryOptions.diagnosticLevel`. The changes improve the organization and comprehensiveness of the test suite, ensuring better validation of the `SentryDebugLogger` configuration and logging functionality.

* refactor(sentry_options): improve debug logger configuration and diagnostic level handling

This commit refactors the `SentryOptions` class to enhance the configuration of the debug logger. The `diagnosticLevel` setter now updates the logger's minimum level dynamically, ensuring that changes to the diagnostic level are reflected immediately. Additionally, the debug logger configuration is encapsulated in a private method for better organization and clarity.

* refactor(logging): replace SentryDebugLogger with SentryInternalLogger and enhance logging functionality

This commit refactors the logging mechanism by replacing the `SentryDebugLogger` with the new `SentryInternalLogger` across the codebase. The `SentryInternalLogger` provides improved logging capabilities, including compile-time constants for release, profile, and debug modes, ensuring better tree-shaking and performance. Additionally, the associated tests have been updated to validate the new logger's behavior, enhancing overall logging clarity and maintainability.

* refactor(logging): remove SentryDebugLogger and its import from the codebase

This commit removes the `SentryDebugLogger` class and its associated import from `sentry_options.dart`, streamlining the logging functionality in the Sentry SDK. This change is part of the ongoing effort to enhance the logging mechanism by transitioning to the `SentryInternalLogger`, which offers improved capabilities and performance.

* refactor(sentry_options): update logger configuration methods to use SentryInternalLogger

This commit modifies the `SentryOptions` class to replace calls to the deprecated `_configureDebugLogger` method with `_configureInternalLogger`. This change aligns with the recent transition to the `SentryInternalLogger`, ensuring consistent logging configuration and improving overall code clarity.

* refactor(logging): rename debugLogger to internalLogger for consistency

This commit renames the `debugLogger` to `internalLogger` across the codebase, including tests and various components. This change aligns with the recent transition to the `SentryInternalLogger`, ensuring consistent naming and improving clarity in the logging functionality.

* refactor(logging): remove debugLogger test and update logging references to internalLogger

This commit removes the test for the `debugLogger` constant in `internal_logger_test.dart` and updates references from `debugLogger` to `internalLogger` in the `_AndroidEnvelopeHandler` and `_AndroidReplayHandler` classes. These changes ensure consistency in the logging implementation and align with the recent transition to the `SentryInternalLogger`.

* refactor(logging): move _defaultLogOutput method to SentryInternalLogger

This commit relocates the `_defaultLogOutput` method into the `SentryInternalLogger` class, enhancing the organization of the logging functionality. This change improves code clarity and aligns with the ongoing refactor to streamline the logging mechanism within the Sentry SDK.

* refactor(logging): improve error logging format in isolate_worker

This commit enhances the error logging format in the `isolate_worker.dart` file by improving the readability of the log statement. The changes ensure that the error and stack trace are clearly separated, contributing to better debugging and monitoring of isolate message handling failures.

* fix(android): Envelope worker not starting when `autoInitializeNativeSdk` is disabled (#3420)

* Update

* Update CHANGELOG

* Enhance AndroidEnvelopeSender to buffer envelopes when worker is not started and flush them upon starting. Update tests to reflect new buffering behavior and log changes from warning to info level.

* Refactor SentryNativeJava tests: Split tests into separate files for VM and web environments. Introduce new test file for SentryNativeJava with ReplaySizeAdjustment and EnvelopeSender initialization tests. Remove redundant web stubs and streamline imports.

* Refactor AndroidEnvelopeSender: Remove pending envelopes buffering and streamline envelope capture logic. Ensure envelopes are sent directly when the worker is available, and adjust logging for envelope capture in the main isolate. Update SentryNativeJava to start the envelope sender conditionally.

* Enhance AndroidEnvelopeSender to manage closed state and improve envelope capture logic. Introduce a flag to prevent envelope capture after closure and update logging to use a required logger parameter. Adjust tests to reflect changes in behavior when the worker is not started.

* Refactor AndroidEnvelopeSender: Adjust captureEnvelope method to ensure client assignment occurs after closed state check. This change improves clarity and maintains the integrity of the envelope sending process.

* Fix AndroidEnvelopeSender start method to prevent spawning a worker if already closed. Update tests to reflect the expected spawn count when the sender is closed.

* Update Android envelope capture test to assert behavior when the native channel is unavailable. Introduced a matcher for improved error handling in the captureEnvelope method.

* Refactor AndroidEnvelopeSender start method to ensure proper closure handling during worker spawning. Introduce a guard clause to close the worker if the sender is already closed, enhancing stability and preventing resource leaks.

* Refactor AndroidEnvelopeSender test to clarify logging behavior when sending envelopes in the main isolate. Update test description for improved readability and understanding of the expected functionality.

* refactor(AndroidEnvelopeSender): update constructor to use SentryOptions and improve logging

This commit refactors the `AndroidEnvelopeSender` class to replace the `_options` parameter with `SentryOptions` in the constructor. It also enhances the logging mechanism by utilizing `internalLogger` for logging messages related to envelope capture. The `_captureEnvelope` method has been updated to streamline error handling and improve clarity in logging, ensuring better maintainability and consistency across the codebase.

* refactor(AndroidEnvelopeSender test): enhance logging configuration for envelope sending

This commit updates the logging mechanism in the `AndroidEnvelopeSender` test to utilize the new `SentryInternalLogger`. The changes include removing the previous debug options and configuring the logger to capture logs with improved structure and clarity. This refactor aims to enhance the maintainability and consistency of logging behavior during envelope sending in the main isolate.

* release: 9.9.2

* chore(agents): Add `AGENTS.md` (#3426)

* Update

* Refine test naming conventions in AGENTS.md for improved clarity and structure

- Updated guidelines to ensure test group and test names read as coherent sentences.
- Introduced a structured approach for naming by depth, emphasizing the use of subjects, contexts, variants, and behaviors.
- Added examples and anti-patterns to illustrate best practices in test organization and naming.

* Enhance Dart code design guidelines in AGENTS.md

- Added comprehensive guidelines for identifiers, ordering, formatting, comments, and documentation to improve code consistency and readability.
- Included best practices for naming conventions, code structure, and documentation styles to align with the Effective Dart guide.
- Emphasized the importance of adhering to these guidelines for new and modified tests.

* Refactor AGENTS.md for improved clarity and structure

- Streamlined project structure section by removing table format for a more concise list format.
- Updated environment section to include specific Flutter and Dart versions.
- Enhanced testing guidelines with clearer commands and descriptions for Dart and Flutter packages.
- Added new guidelines for modern Dart language features to promote clarity and reduce boilerplate in code.

* Enhance agent documentation and testing guidelines

- Updated AGENTS.md to clarify the structure and purpose of the Sentry Dart/Flutter SDK.
- Introduced new documentation files for code guidelines and test conventions, emphasizing best practices for Dart/Flutter development.
- Added detailed sections on naming conventions, test structure, and the use of modern Dart features to improve code clarity and maintainability.
- Ensured that all new and modified code adheres to these updated guidelines for consistency across the project.

* Update documentation comments guidelines in code-guidelines.md

- Renamed section from "Doc Comments" to "Documentation Comments" for clarity.
- Added recommendations for when to write comments, emphasizing the importance of self-documenting code.
- Included specific guidelines on documenting public APIs and non-obvious reasoning, while advising against commenting on obvious behavior and providing excessive inline commentary.

* build(deps): bump aws-sdk-s3 from 1.203.0 to 1.208.0 in /metrics (#3428)

Bumps [aws-sdk-s3](https://github.com/aws/aws-sdk-ruby) from 1.203.0 to 1.208.0.
- [Release notes](https://github.com/aws/aws-sdk-ruby/releases)
- [Changelog](https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sdk-s3/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-ruby/commits)

---
updated-dependencies:
- dependency-name: aws-sdk-s3
  dependency-version: 1.208.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump aws-sdk-s3 in /packages/flutter/example/ios (#3417)

Bumps [aws-sdk-s3](https://github.com/aws/aws-sdk-ruby) from 1.203.0 to 1.208.0.
- [Release notes](https://github.com/aws/aws-sdk-ruby/releases)
- [Changelog](https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sdk-s3/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-ruby/commits)

---
updated-dependencies:
- dependency-name: aws-sdk-s3
  dependency-version: 1.208.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump ruby/setup-ruby from 1.268.0 to 1.278.0 (#3430)

Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.268.0 to 1.278.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases)
- [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb)
- [Commits](ruby/setup-ruby@8aeb6ff...4c24fa5)

---
updated-dependencies:
- dependency-name: ruby/setup-ruby
  dependency-version: 1.278.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: update scripts/update-symbol-collector.sh to 2.3.1 (#3385)

Co-authored-by: GitHub <noreply@github.com>

* build(deps): bump reactivecircus/android-emulator-runner (#3328)

Bumps [reactivecircus/android-emulator-runner](https://github.com/reactivecircus/android-emulator-runner) from 2.34.0 to 2.35.0.
- [Release notes](https://github.com/reactivecircus/android-emulator-runner/releases)
- [Changelog](https://github.com/ReactiveCircus/android-emulator-runner/blob/main/CHANGELOG.md)
- [Commits](ReactiveCircus/android-emulator-runner@1dcd009...b530d96)

---
updated-dependencies:
- dependency-name: reactivecircus/android-emulator-runner
  dependency-version: 2.35.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Giancarlo Buenaflor <giancarlo_buenaflor@yahoo.com>

* chore: update metrics/flutter.properties to 3.38.5 (#3387)

Co-authored-by: GitHub <noreply@github.com>

* build(deps): bump actions/checkout from 4 to 6 (#3365)

Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Giancarlo Buenaflor <giancarlo_buenaflor@yahoo.com>

* chore: update packages/flutter/scripts/update-native.sh to 0.12.3 (#3438)

Co-authored-by: GitHub <noreply@github.com>

* Add claude settings (#3445)

* Add `CLAUDE.md` symlink to `AGENTS.md`

* Move `TelemetryProcessor` from span-first branch and replace `LogBatcher` (#3448)

* Add TelemetryProcessor for span and log buffering

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* Remove SpanV2 and TraceLifecycle dependencies

- Remove addSpan method from TelemetryProcessor interface
- Remove span buffer from DefaultTelemetryProcessor
- Remove captureSpan method from SentryClient
- Remove traceLifecycle property from SentryOptions
- Remove span imports and exports
- Update mocks to remove span-related code

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* Remove span-related tests from sentry_client_test

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* Remove span-related processor tests

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* Remove span import from Flutter mocks

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* Fix wiring up

* Update

* Update

* Update CHANGELOG

* Update

* Remove logbatcher

* Polish

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>

* chore(deps): update Flutter SDK (metrics) to v3.38.7 (#3437)

* chore: update metrics/flutter.properties to 3.38.7

* update

* update

* Update

---------

Co-authored-by: GitHub <noreply@github.com>
Co-authored-by: Giancarlo Buenaflor <giancarlobuenaflor97@gmail.com>

* fix: update kotlin version handling in android (#3436)

* update kotlin version handling in android build scripts for CI compatibility

* Fix Kotlin version format in workflow file

* Update

* Update

* Update

* Remove CI override comment for Kotlin language version

Removed comment about allowing CI to override Kotlin language version.

* release: 9.10.0

* Update Xcode version to 16.4 in workflow (#3452)

* fix(ci): failing package-analysis (#3453)

* Fix analyze

* Fix analyze

* Fix analyze

* Fix analyze

* Fix analyze

* Fix analyze

* Fix analyze

* Fix analyze

* Fix analyze

* Fix analyze

* Refactor Pana score check logic in analyze.yml

* chore: ignore local Claude settings (#3462)

Add .claude/settings.local.json to .gitignore to prevent committing
local Claude Code configuration.

* chore: update packages/flutter/scripts/update-android.sh to 8.30.0 (#3451)

Co-authored-by: GitHub <noreply@github.com>

* feat: trace connected metrics (#3450)

Adds trace connected metrics feature to Dart

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>

* refactor(log): make implementation consistent with metrics and span-first (#3463)

Make log implementation consistent with metrics and span-first

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>

* build(deps): bump actions/setup-java from 4 to 5 (#3461)

Bumps [actions/setup-java](https://github.com/actions/setup-java) from 4 to 5.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](actions/setup-java@v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat(flutter): Add captureNativeFailedRequests option for iOS/macOS (#3472)

Add a new `captureNativeFailedRequests` option to control native HTTP
failed request capturing independently from `captureFailedRequests`.

This separation allows users to:
- Keep Dart-side failed request capturing enabled while disabling native
- Or vice versa, based on their needs

For backwards compatibility, `captureNativeFailedRequests` defaults to
`null`, which falls back to the value of `captureFailedRequests`. This
ensures existing users who set `captureFailedRequests = false` will
still have native capturing disabled as expected.

* release: 9.11.0-beta.1

* chore: update GitHub Actions workflows to use updater v3 (#3468)

* chore: update GitHub Actions workflows to use new updater version

Refactor the update-deps.yml workflow to utilize the latest version of the updater action, improving the structure and permissions for dependency updates across Android, Cocoa, JavaScript, Native, and Symbol Collector jobs.

* chore: add pull request trigger for update-deps.yml workflow

Include a pull request trigger in the update-deps.yml workflow for testing purposes, while maintaining existing push configurations.

* chore: update update-deps.yml to use ssh-key instead of api-token

Refactor the update-deps.yml workflow to replace the api-token with ssh-key for Android, Cocoa, JavaScript, Native, and Symbol Collector jobs, enhancing security and access management.

* Update

* Fix cocoa

* Fix formatting in update-deps.yml permissions section

* Modify update-deps workflow triggers

Removed pull_request trigger from update-deps workflow.

* Fix cocoa

* Update

* Update

* Disable wasm runner for now (#3478)

* ci(testflight): Update to Xcode 26.2 (#3479)

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

* ref(dart): Remove unused beforeMetricCallback (#3484)

Remove dead code that was never used in the codebase. The
BeforeMetricCallback typedef and beforeMetricCallback field
in SentryOptions had no references anywhere in the SDK.

Co-authored-by: Claude <noreply@anthropic.com>

* ref(tracing-instrumentation): Introduce internal instrumentation abstraction for packages (#3488)

* feat(tracing): Introduce internal instrumentation API for Sentry

- Added `InstrumentationSpan` and `LegacyInstrumentationSpan` classes to provide a backend-agnostic abstraction for tracing.
- Implemented `InstrumentationSpanFactory` for creating spans, allowing for future flexibility in span implementations.
- Enhanced `SentryOptions` to include a `spanFactory` for custom span creation.
- Updated various components to utilize the new instrumentation API, including `SentryInstrumentation` and `TransactionInstrumentation`.
- Refactored existing database executor and batch classes to support the new instrumentation spans.

This update improves the tracing capabilities and prepares the codebase for future enhancements in span management.

* refactor(tracing): Simplify transaction instrumentation documentation

- Removed outdated comments and example usage from the `TransactionInstrumentation` class.
- Clarified the behavior of transaction methods by streamlining the documentation.
- Enhanced code readability and maintainability by focusing on essential information.

This update improves the clarity of the transaction instrumentation API, making it easier for developers to understand its usage.

* Update

* Update

* Update

* Update

* Update

* refactor(tracing): Improve transaction stack management in Sentry instrumentation

- Ensured that the transaction stack maintains nesting invariants by always pushing a null value when no parent exists.
- Simplified the logic for adding and removing spans from the stack, enhancing clarity and reducing potential errors.
- Removed redundant comments and streamlined the handling of null spans in transaction methods.

This update enhances the robustness of the Sentry tracing implementation, making it more reliable during transaction execution.

* Remove unnecessary hint

* Fix review issues

* Fix review issues

* Fix review issues

* Fix review issues

* Remove unnecessary files

* Naming

* Naming

* Analyzer

* Naming

* Add test

* Update

* Change finish call to unawaited in error handling

* Add async import to sentry_span_helper.dart

* Update

* ref(tracing-instrumentation): migrate hive, isar, file, supabase and link (#3489)

* feat(hive): add internal logger for sentry_hive package

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(hive): migrate SentrySpanHelper to InstrumentationSpan

- Use InstrumentationSpanFactory instead of hub.getSpan()?.startChild()
- Add proper null checks with warning logs
- Maintain both async and sync wrapper methods

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(hive): update classes to use new SentrySpanHelper constructor

- Pass Hub directly to SentrySpanHelper constructor
- Remove setHub() method calls
- Update tests to use constructor parameter

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(file): migrate to InstrumentationSpan

- Use InstrumentationSpanFactory instead of hub.getSpan()?.startChild()
- Maintain both async and sync wrapper methods

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(supabase): migrate to InstrumentationSpan

- Use InstrumentationSpanFactory instead of hub.getSpan()?.startChild()
- Return InstrumentationSpan from _createSpan helper

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(link): migrate SentryTracingLink to InstrumentationSpan

- Use InstrumentationSpanFactory for child span creation
- Keep legacy API for transaction creation (when shouldStartTransaction=true)
- Wrap transactions in LegacyInstrumentationSpan for unified interface

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(link): migrate SentryRequestSerializer to InstrumentationSpan

- Use InstrumentationSpanFactory instead of hub.getSpan()?.startChild()

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(link): migrate SentryResponseParser to InstrumentationSpan

- Use InstrumentationSpanFactory instead of hub.getSpan()?.startChild()

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Update

* Update

* Update

* Update

* Update

* Update

* feat(supabase): add internal logger and update dependencies

- Introduced an internal logger using Sentry for better tracing.
- Added 'meta' package as a dependency in pubspec.yaml.
- Updated Sentry tracing logic to utilize the new internal logger for warnings.

* Update

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

* ref(dart): instrumentation span for http dio (#3493)

* ref(tracing-instrumentation): migrate http and dio to instrumentation span

Migrate TracingClient (http package) and TracingClientAdapter (dio package)
to use the new InstrumentationSpanFactory pattern, consistent with the
recent migration of hive, isar, file, supabase, and link packages.

Changes:
- Add InstrumentationSpanFactory field to TracingClient and TracingClientAdapter
- Replace hub.getSpan()?.startChild() with spanFactory.getSpan()/createSpan()
- Extract underlying ISentrySpan via LegacyInstrumentationSpan.spanReference
  for tracing headers (sentry-trace, baggage, traceparent)
- Add applyToInstrumentationSpan() method to UrlDetails for URL data

All existing tests pass without modification, preserving backward compatibility.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* ref(dio): migrate SentryTransformer to instrumentation span

Complete the migration of dio package to use InstrumentationSpanFactory
by updating SentryTransformer's transformRequest and transformResponse
methods.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* ref(tracing): rename applyToInstrumentationSpan to applyToSpan

Remove the old ISentrySpan-based applyToSpan method and rename
applyToInstrumentationSpan to applyToSpan since all callers now use
InstrumentationSpan.

Update url_details_test.dart to use MockInstrumentationSpan.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* chore(tests): add mock_span import to lifecycle tests

Added the mock_span import to both sentry_client_lifecycle_test.dart and sentry_client_sdk_lifecycle_test.dart to facilitate testing with spans.

* feat(tests): add MockSpan class for testing Sentry spans

Introduced a new MockSpan class in mock_span.dart to facilitate testing with SentrySpan, providing a mock implementation for use in unit tests.

* ref(tracing): remove commented code for extracting ISentrySpan

Removed commented-out code related to extracting ISentrySpan for tracing headers in TracingClient and TracingClientAdapter, streamlining the codebase.

* ref(tracing): enhance tracing header handling with InstrumentationSpan

Updated TracingClient and TracingClientAdapter to utilize the new addTracingHeadersFromInstrumentationSpan method for adding tracing headers. This change simplifies the code by directly passing the InstrumentationSpan, improving clarity and maintainability. Additionally, new methods for converting spans to Sentry trace and baggage headers were added to the InstrumentationSpan interface.

* ref(tracing): rename addTracingHeadersFromInstrumentationSpan to addTracingHeadersToHttpHeader

Updated the TracingClient and TracingClientAdapter to use the renamed addTracingHeadersToHttpHeader method for adding tracing headers. This change improves code clarity and consistency across the codebase by standardizing the method name. Adjusted related tests to accommodate the new method signature.

* ref(baggage): remove logging callback from SentryBaggage

Refactored SentryBaggage to eliminate the logging callback, replacing it with an internal logger for improved logging consistency. Updated related methods and tests to reflect this change, enhancing code clarity and maintainability.

* Update

* ref(baggage): simplify toBaggage method by removing logging callback

Refactored the toBaggage method in SentryTraceContextHeader to eliminate the logging callback, enhancing code clarity. Updated the SentryTracer to reflect this change, ensuring consistency across the codebase.

* Update

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

* Update CHANGELOG

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

* build(deps): bump actions/checkout from 5 to 6 (#3460)

Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump ruby/setup-ruby from 1.278.0 to 1.286.0 (#3482)

Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.278.0 to 1.286.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases)
- [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb)
- [Commits](ruby/setup-ruby@4c24fa5...90be115)

---
updated-dependencies:
- dependency-name: ruby/setup-ruby
  dependency-version: 1.286.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(dart): Catch client exceptions in HttpTransport.send (#3490)

* fix(dart): Catch client exceptions in HttpTransport.send

Prevents unhandled exceptions like `ClientException: Connection closed
before full header was received` from crashing the host application.
The error is logged via internalLogger and only rethrown in
automatedTestMode.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Update

* Update CHANGELOG

* Update

* Update

* Implement lost event recording in HttpTransport for network errors

Enhance the HttpTransport class to record lost events when a network error occurs during envelope transmission. This includes logging discarded events for both Sentry transactions and spans. Add corresponding tests to verify the functionality when client exceptions are thrown.

* Refactor lost event handling in HttpTransport and TransportUtils

Consolidate lost event recording logic into TransportUtils for better reusability. Update HttpTransport to utilize the new method for recording lost events on network errors. Enhance logging for response statuses, including rate limit handling. Remove redundant lost event recording method from HttpTransport.

* Update

* Update

* Rename to recordLostEvents

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

* release: 9.11.0-beta.2

* chore(release): prepare `9.11.0` changelog (#3498)

* Update CHANGELOG

* Revise CHANGELOG for enhancements and dependencies

Updated CHANGELOG to reflect enhancements and dependency bumps.

* release: 9.11.0

* chore: update packages/flutter/scripts/update-native.sh to 0.12.5 (#3481)

Co-authored-by: GitHub <noreply@github.com>

* chore: update packages/flutter/scripts/update-android.sh to 8.31.0 (#3476)

Co-authored-by: GitHub <noreply@github.com>

* release: 9.12.0

* chore: update packages/flutter/scripts/update-js.sh to 10.38.0 (#3474)

Co-authored-by: GitHub <noreply@github.com>

* chore(bugbot): Update `BUGBOT.md` to check the PR description when reviewing dependency updates (#3509)

* Update BUGBOT.md

* chore(deps): update Android SDK to v8.32.0 (#3506)

* chore: update packages/flutter/scripts/update-android.sh to 8.32.0

* Add spotlight as debugImplementation

* Update analyze

* Updat

* Update android example sdk targets

* Update

---------

Co-authored-by: GitHub <noreply@github.com>
Co-authored-by: Giancarlo Buenaflor <giancarlo_buenaflor@yahoo.com>
Co-authored-by: Giancarlo Buenaflor <giancarlobuenaflor97@gmail.com>

* feat(flutter): Synchronize `traceId` to native SDKs (#3507)

* feat: Synchronize PropagationContext to native SDKs (#3406)

Native crashes/errors on Android and iOS carry their own independently-
generated traceId, disconnecting them from the Dart-side trace. This
wires up the existing native setTrace APIs so the Dart PropagationContext
is synced to native on init and whenever generateNewTrace() is called.

- Add OnTraceReset lifecycle event dispatched from Hub.generateNewTrace()
- Add NativeTraceSyncIntegration that subscribes to OnTraceReset and
  calls the platform-specific native setTrace API
- Implement setTrace on all platform bindings (JNI for Android, method
  channel for Cocoa, no-op for C/Web)
- Add supportsTraceSync capability flag to SentryNativeBinding
- Disable native auto trace ID generation on Android so Flutter is
  the single source of truth
- Add setTrace handler in iOS SentryFlutterPlugin.swift
- Register NativeTraceSyncIntegration in default integrations

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix build

* Update CHANGELOG

* Update

* Update

* Update

* Update

* Fix mocks

* Update

* Update doc

* Fix changelog

* Update

* Review

* Update

* Bubble up error from native flutter plugin in swift

* Move enableNativeTraceSync from dart to flutter options

* Fix duplicate result

* Improve documentation

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

* chore(deps): update Native SDK to v0.12.6 (#3502)

* chore: update packages/flutter/scripts/update-native.sh to 0.12.6

* Update gitignore

---------

Co-authored-by: GitHub <noreply@github.com>
Co-authored-by: Giancarlo Buenaflor <giancarlobuenaflor97@gmail.com>

* internal(flutter): Add SDK features metadata for SPM vs CocoaPods tracking (#3508)

* feat(dart): Add `features` list to `SdkVersion` metadata

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat(flutter): Merge native SDK features into event metadata

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat(flutter): Report SPM vs CocoaPods build type as SDK feature on iOS

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Review

* Remove redundant comments

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

* release: 9.13.0

* Fix jni usage for creating bitmap

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: getsentry-bot <bot@sentry.io>
Co-authored-by: getsentry-bot <bot@getsentry.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: GitHub <noreply@github.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: Philipp Hofmann <philipp.hofmann@sentry.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants