Skip to content

chore(deps): update react dependencies (major) #1312

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

ggrossetie
Copy link
Collaborator

@ggrossetie ggrossetie commented Feb 28, 2025

This PR contains the following updates:

Package Type Update Change
@sentry/react (source) dependencies major ^8.38.0 -> ^9.0.0
react (source) dependencies major ~18.3 -> ~19.1.0
react-dom (source) dependencies major ~18.3 -> ~19.1.0

Release Notes

getsentry/sentry-javascript (@​sentry/react)

v9.35.0

Compare Source

  • feat(browser): Add ElementTiming instrumentation and spans (#​16589)
  • feat(browser): Export Context and Contexts types (#​16763)
  • feat(cloudflare): Add user agent to cloudflare spans (#​16793)
  • feat(node): Add eventLoopBlockIntegration (#​16709)
  • feat(node): Export server-side feature flag integration shims (#​16735)
  • feat(node): Update vercel ai integration attributes (#​16721)
  • fix(astro): Handle errors in middlewares better (#​16693)
  • fix(browser): Ensure explicit parentSpan is considered (#​16776)
  • fix(node): Avoid using dynamic require for fastify integration (#​16789)
  • fix(nuxt): Add @sentry/cloudflare as optional peerDependency (#​16782)
  • fix(nuxt): Ensure order of plugins is consistent (#​16798)
  • fix(nestjs): Fix exception handling in @Cron decorated tasks (#​16792)

Work in this release was contributed by @​0xbad0c0d3 and @​alSergey. Thank you for your contributions!

v9.34.0

Compare Source

Important Changes
  • feat(nuxt): Add Cloudflare Nitro plugin (#​15597)

    A Nitro plugin for @sentry/nuxt which initializes Sentry when deployed to Cloudflare (cloudflare-pages preset).

    1. Remove the previous server config file: sentry.server.config.ts

    2. Add a plugin in server/plugins (e.g. server/plugins/sentry-cloudflare-setup.ts)

    3. Add this code in your plugin file

      // server/plugins/sentry-cloudflare-setup.ts (filename does not matter)
      import { sentryCloudflareNitroPlugin } from '@​sentry/nuxt/module/plugins';
      
      export default defineNitroPlugin(
        sentryCloudflareNitroPlugin({
          dsn: 'https://dsn',
          tracesSampleRate: 1.0,
        }),
      );

      or with access to nitroApp:

      // server/plugins/sentry-cloudflare-setup.ts (filename does not matter)
      import { sentryCloudflareNitroPlugin } from '@​sentry/nuxt/module/plugins';
      
      export default defineNitroPlugin(sentryCloudflareNitroPlugin((nitroApp: NitroApp) => {
        // You can access nitroApp here if needed
        return  ({
          dsn: 'https://dsn',
          tracesSampleRate: 1.0,
        })
      }))
Other Changes
  • feat(browser): Record standalone LCP spans (#​16591)
  • fix(nuxt): Only add OTel alias in dev mode (#​16756)

v9.33.0

Compare Source

Important Changes
  • feat: Add opt-in vercelAiIntegration to cloudflare & vercel-edge (#​16732)

The vercelAiIntegration is now available as opt-in for the Cloudflare and the Next.js SDK for Vercel Edge.
To use it, add the integration in Sentry.init

Sentry.init({
  tracesSampleRate: 1.0,
  integrations: [Sentry.vercelAIIntegration()],
});

And enable telemetry for Vercel AI calls

const result = await generateText({
  model: openai('gpt-4o'),
  experimental_telemetry: {
    isEnabled: true,
  },
});
  • feat(node): Add postgresjs instrumentation (#​16665)

The Node.js SDK now includes instrumentation for Postgres.js.

  • feat(node): Use diagnostics channel for Fastify v5 error handling (#​16715)

If you're on Fastify v5, you no longer need to call setupFastifyErrorHandler. It is done automatically by the node SDK. Older versions still rely on calling setupFastifyErrorHandler.

Other Changes
  • feat(cloudflare): Allow interop with OpenTelemetry emitted spans (#​16714)
  • feat(cloudflare): Flush after waitUntil (#​16681)
  • fix(nextjs): Remove ai from default server external packages (#​16736)

Work in this release was contributed by @​0xbad0c0d3. Thank you for your contribution!

v9.32.0

Compare Source

Important Changes
  • feat(browser): Add CLS sources to span attributes (#​16710)

Enhances CLS (Cumulative Layout Shift) spans by adding attributes detailing the elements that caused layout shifts.

  • feat(cloudflare): Add instrumentWorkflowWithSentry to instrument workflows (#​16672)

We've added support for Cloudflare Workflows, enabling comprehensive tracing for your workflow runs. This integration uses the workflow's instanceId as the Sentry trace_id and for sampling, linking all steps together. You'll now be able to see full traces, including retries with exponential backoff.

  • feat(pino-transport): Add functionality to send logs to sentry (#​16667)

Adds the ability to send logs to Sentry via a pino transport.

Other Changes
  • feat(nextjs): Expose top level buildTime errorHandler option (#​16718)
  • feat(node): update pipeline spans to use agent naming (#​16712)
  • feat(deps): bump @​prisma/instrumentation from 6.9.0 to 6.10.1 (#​16698)
  • fix(sveltekit): Export logger from sveltekit worker (#​16716)
  • fix(google-cloud-serverless): Make CloudEventsContext compatible with CloudEvent (#​16705)
  • fix(nextjs): Stop injecting release value when create release options is set to false (#​16695)
  • fix(node): account for Object. syntax with local variables matching (#​16702)
  • fix(nuxt): Add alias for @opentelemetry/resources (#​16727)

Work in this release was contributed by @​flaeppe. Thank you for your contribution!

v9.31.0

Compare Source

Important Changes
  • feat(nextjs): Add option for auto-generated random tunnel route (#​16626)

Adds an option to automatically generate a random tunnel route for the Next.js SDK. This helps prevent ad blockers and other tools from blocking Sentry requests by using a randomized path instead of the predictable /monitoring endpoint.

  • feat(core): Allow to pass scope & client to getTraceData (#​16633)

Adds the ability to pass custom scope and client parameters to the getTraceData function, providing more flexibility when generating trace data for distributed tracing.

Other Changes
  • feat(core): Add support for x-forwarded-host and x-forwarded-proto headers (#​16687)
  • deps: Remove unused @sentry/opentelemetry dependency (#​16677)
  • deps: Update all bundler plugin instances to latest & allow caret ranges (#​16641)
  • feat(deps): Bump @​prisma/instrumentation from 6.8.2 to 6.9.0 (#​16608)
  • feat(flags): add node support for generic featureFlagsIntegration and move utils to core (#​16585)
  • feat(flags): capture feature flag evaluations on spans (#​16485)
  • feat(pino): Add initial package for @sentry/pino-transport (#​16652)
  • fix: Wait for the correct clientWidth/clientHeight when showing Feedback Screenshot previews (#​16648)
  • fix(browser): Remove usage of Array.at() method (#​16647)
  • fix(core): Improve safeJoin usage in console logging integration (#​16658)
  • fix(google-cloud-serverless): Make CloudEvent type compatible (#​16661)
  • fix(nextjs): Fix lookup of instrumentation-client.js file (#​16637)
  • fix(node): Ensure graphql errors result in errored spans (#​16678)

v9.30.0

Compare Source

  • feat(nextjs): Add URL to tags of server components and generation functions issues (#​16500)
  • feat(nextjs): Ensure all packages we auto-instrument are externalized (#​16552)
  • feat(node): Automatically enable vercelAiIntegration when ai module is detected (#​16565)
  • feat(node): Ensure modulesIntegration works in more environments (#​16566)
  • feat(core): Don't gate user on logs with sendDefaultPii (#​16527)
  • feat(browser): Add detail to measure spans and add regression tests (#​16557)
  • feat(node): Update Vercel AI span attributes (#​16580)
  • fix(opentelemetry): Ensure only orphaned spans of sent spans are sent (#​16590)

v9.29.0

Compare Source

Important Changes
  • feat(browser): Update web-vitals to 5.0.2 (#​16492)

This release upgrades the web-vitals library to version 5.0.2. This upgrade could slightly change the collected web vital values and potentially also influence alerts and performance scores in the Sentry UI.

Other Changes
  • feat(deps): Bump @​sentry/rollup-plugin from 3.4.0 to 3.5.0 (#​16524)
  • feat(ember): Stop warning for onError usage (#​16547)
  • feat(node): Allow to force activate vercelAiIntegration (#​16551)
  • feat(node): Introduce ignoreLayersType option to koa integration (#​16553)
  • fix(browser): Ensure suppressTracing does not leak when async (#​16545)
  • fix(vue): Ensure root component render span always ends (#​16488)

v9.28.1

Compare Source

  • feat(deps): Bump @​sentry/cli from 2.45.0 to 2.46.0 (#​16516)
  • fix(nextjs): Avoid tracing calls to symbolication server on dev (#​16533)
  • fix(sveltekit): Add import attribute for node exports (#​16528)

Work in this release was contributed by @​eltigerchino. Thank you for your contribution!

v9.28.0

Compare Source

Important Changes
  • feat(nestjs): Stop creating spans for TracingInterceptor (#​16501)

With this change we stop creating spans for TracingInterceptor as this interceptor only serves as an internal helper and adds noise for the user.

  • feat(node): Update vercel ai spans as per new conventions (#​16497)

This feature ships updates to the span names and ops to better match OpenTelemetry. This should make them more easily accessible to the new agents module view we are building.

Other Changes
  • fix(sveltekit): Export vercelAIIntegration from @sentry/node (#​16496)

Work in this release was contributed by @​agrattan0820. Thank you for your contribution!

v9.27.0

Compare Source

  • feat(node): Expand how vercel ai input/outputs can be set (#​16455)
  • feat(node): Switch to new semantic conventions for Vercel AI (#​16476)
  • feat(react-router): Add component annotation plugin (#​16472)
  • feat(react-router): Export wrappers for server loaders and actions (#​16481)
  • fix(browser): Ignore unrealistically long INP values (#​16484)
  • fix(react-router): Conditionally add ReactRouterServer integration (#​16470)

v9.26.0

Compare Source

  • feat(react-router): Re-export functions from @sentry/react (#​16465)
  • fix(nextjs): Skip re instrumentating on generate phase of experimental build mode (#​16410)
  • fix(node): Ensure adding sentry-trace and baggage headers via SentryHttpInstrumentation doesn't crash (#​16473)

v9.25.1

Compare Source

  • fix(otel): Don't ignore child spans after the root is sent (#​16416)

v9.25.0

Compare Source

Important Changes
  • feat(browser): Add option to ignore mark and measure spans (#​16443)

This release adds an option to browserTracingIntegration that lets you ignore
mark and measure spans created from the performance.mark(...) and performance.measure(...) browser APIs:

Sentry.init({
  integrations: [
    Sentry.browserTracingIntegration({
      ignorePerformanceApiSpans: ['measure-to-ignore', /mark-to-ignore/],
    }),
  ],
});
Other Changes
  • feat(browser): Export getTraceData from the browser sdks (#​16433)
  • feat(node): Add includeServerName option (#​16442)
  • fix(nuxt): Remove setting @sentry/nuxt external (#​16444)

v9.24.0

Compare Source

Important Changes
  • feat(angular): Bump @sentry/angular peer dependencies to add Angular 20 support (#​16414)

This release adds support for Angular 20 to the Sentry Angular SDK @sentry/angular.

Other Changes
  • feat(browser): Add unregisterOriginalCallbacks option to browserApiErrorsIntegration (#​16412)
  • feat(core): Add user to logs (#​16399)
  • feat(core): Make sure Supabase db query insights are populated (#​16169)

v9.23.0

Compare Source

Important changes
  • feat(browser): option to ignore certain resource types (#​16389)

Adds an option to opt out of certain resource.* spans via ignoreResourceSpans.

For example, to opt out of resource.script spans:

Sentry.browserTracingIntegration({
  ignoreResourceSpans: ['resource.script'],
}),
Other changes

Work in this release was contributed by @​Xenossolitarius. Thank you for your contribution!

v9.22.0

Compare Source

Important changes
  • Revert "feat(browser): Track measure detail as span attributes" (#​16348)

This is a revert of a feature introduced in 9.20.0 with #​16240. This feature was causing crashes in firefox, so we are reverting it. We will re-enable this functionality in the future after fixing the crash.

Other changes

v9.21.0

Compare Source

  • docs: Fix v7 migration link (#​14629)
  • feat(node): Vendor in @fastify/otel (#​16328)
  • fix(nestjs): Handle multiple OnEvent decorators (#​16306)
  • fix(node): Avoid creating breadcrumbs for suppressed requests (#​16285)
  • fix(remix): Add missing client exports to server and cloudflare entries (#​16341)

Work in this release was contributed by @​phthhieu. Thank you for your contribution!

v9.20.0

Compare Source

Important changes
  • feat(browser): Track measure detail as span attributes (#​16240)

The SDK now automatically collects details passed to performance.measure options.

Other changes
  • feat(node): Add maxIncomingRequestBodySize (#​16225)
  • feat(react-router): Add server action instrumentation (#​16292)
  • feat(react-router): Filter manifest requests (#​16294)
  • feat(replay): Extend default list for masking with aria-label (#​16192)
  • fix(browser): Ensure pageload & navigation spans have correct data (#​16279)
  • fix(cloudflare): Account for static fields in wrapper type (#​16303)
  • fix(nextjs): Preserve next.route attribute on root spans (#​16297)
  • feat(node): Fork isolation scope in tRPC middleware (#​16296)
  • feat(core): Add orgId option to init and DSC (sentry-org_id in baggage) (#​16305)

v9.19.0

Compare Source

  • feat(react-router): Add otel instrumentation for server requests (#​16147)
  • feat(remix): Vendor in opentelemetry-instrumentation-remix (#​16145)
  • fix(browser): Ensure spans auto-ended for navigations have cancelled reason (#​16277)
  • fix(node): Pin @fastify/otel fork to direct url to allow installing without git (#​16287)
  • fix(react): Handle nested parameterized routes in reactrouterv3 transaction normalization (#​16274)

Work in this release was contributed by @​sidx1024. Thank you for your contribution!

v9.18.0

Compare Source

Important changes

We now also publish profiling binaries for Node 24.

Other changes
  • deps(node): Bump import-in-the-middle to 1.13.1 (#​16260)
  • feat: Export consoleLoggingIntegration from vercel edge sdk (#​16228)
  • feat(cloudflare): Add support for email, queue, and tail handler (#​16233)
  • feat(cloudflare): Improve http span data (#​16232)
  • feat(nextjs): Add more attributes for generation functions (#​16214)
  • feat(opentelemetry): Widen peer dependencies to support Otel v2 (#​16246)
  • fix(core): Gracefully handle invalid baggage entries (#​16257)
  • fix(node): Ensure traces are propagated without spans in Node 22+ (#​16221)
  • fix(node): Use sentry forked @fastify/otel dependency with pinned Otel v1 deps (#​16256)
  • fix(remix): Remove vendored types (#​16218)

v9.17.0

Compare Source

  • feat(node): Migrate to @fastify/otel (#​15542)

v9.16.1

Compare Source

  • fix(core): Make sure logs get flushed in server-runtime-client (#​16222)
  • ref(node): Remove vercel flushing code that does nothing (#​16217)

v9.16.0

Compare Source

Important changes
  • feat: Create a Vite plugin that injects sentryConfig into the global config (#​16197)

Add a new plugin makeConfigInjectorPlugin within our existing vite plugin that updates the global vite config with sentry options

  • feat(browser): Add option to sample linked traces consistently (#​16037)

This PR implements consistent sampling across traces as outlined in (#​15754)

  • feat(cloudflare): Add support for durable objects (#​16180)

This PR introduces a new instrumentDurableObjectWithSentry method to the SDK, which instruments durable objects. We capture both traces and errors automatically.

  • feat(node): Add Prisma integration by default (#​16073)

Prisma integration is enabled by default, it should work for both ESM and CJS.

  • feat(react-router): Add client-side router instrumentation (#​16185)

Adds client-side instrumentation for react router's HydratedRouter. To enable it, simply replace browserTracingIntegration() with reactRouterTracingIntegration() in your client-side init call.

  • fix(node): Avoid double-wrapping http module (#​16177)

When running your application in ESM mode, there have been scenarios that resulted in the http/https emitting duplicate spans for incoming requests. This was apparently caused by us double-wrapping the modules for incoming request isolation.

In order to solve this problem, the modules are no longer monkey patched by us for request isolation. Instead, we register diagnosticschannel hooks to handle request isolation now.
While this is generally not expected to break anything, there is one tiny change that _may
affect you if you have been relying on very specific functionality:

The ignoreOutgoingRequests option of httpIntegration receives the RequestOptions as second argument. This type is not changed, however due to how the wrapping now works, we no longer pass through the full RequestOptions, but re-construct this partially based on the generated request. For the vast majority of cases, this should be fine, but for the sake of completeness, these are the only fields that may be available there going forward - other fields that may have existed before may no longer be set:

ignoreOutgoingRequests(url: string, {
  method: string;
  protocol: string;
  host: string;
  hostname: string; // same as host
  path: string;
  headers: OutgoingHttpHeaders;
})
Other changes
  • feat(cloudflare): Add logs exports (#​16165)
  • feat(vercel-edge): Add logs export (#​16166)
  • feat(cloudflare): Read SENTRY_RELEASE from env (#​16201)
  • feat(node): Drop http.server spans with 404 status by default (#​16205)
  • fix(browser): Respect manually set sentry tracing headers in XHR requests (#​16184)
  • fix(core): Respect manually set sentry tracing headers in fetch calls (#​16183)
  • fix(feedback): Prevent removeFromDom() from throwing (#​16030)
  • fix(node): Use class constructor in docstring for winston transport (#​16167)
  • fix(node): Fix vercel flushing logic & add test for it (#​16208)
  • fix(node): Fix 404 route handling in express 5 (#​16211)
  • fix(logs): Ensure logs can be flushed correctly (#​16216)
  • ref(core): Switch to standardized log envelope (#​16133)

v9.15.0

Compare Source

Important Changes
  • feat: Export wrapMcpServerWithSentry from server packages (#​16127)

Exports the wrapMcpServerWithSentry which is our MCP server instrumentation from all the server packages.

  • feat(core): Associate resource/tool/prompt invocations with request span instead of response span (#​16126)

Adds a best effort mechanism to associate handler spans for resource, tool and prompt with the incoming message requests instead of the outgoing SSE response.

Other Changes
  • fix: Vercel ai ESM patching (#​16152)
  • fix(node): Update version range for module.register (#​16125)
  • fix(react-router): Spread unstable_sentryVitePluginOptions correctly (#​16156)
  • fix(react): Fix Redux integration failing with reducer injection (#​16106)
  • fix(remix): Add ESM-compatible exports (#​16124)
  • fix(remix): Avoid rewrapping root loader. (#​16136)

Work in this release was contributed by @​AntoineDuComptoirDesPharmacies. Thank you for your contribution!

v9.14.0

Compare Source

Important Changes

This PR adds Supabase integration to @sentry/core, allowing automatic instrumentation of Supabase client operations (database queries and authentication) for performance monitoring and error tracking.

  • feat(nestjs): Gracefully handle RPC scenarios in SentryGlobalFilter (#​16066)

This PR adds better RPC exception handling to @sentry/nestjs, preventing application crashes while still capturing errors and warning users when a dedicated filter is needed. The implementation gracefully handles the 'rpc' context type in SentryGlobalFilter to improve reliability in hybrid applications.

  • feat(react-router): Trace propagation (#​16070)

This PR adds trace propagation to @sentry/react-router by providing utilities to inject trace meta tags into HTML headers and offering a pre-built Sentry-instrumented request handler, improving distributed tracing capabilities across page loads.

Other Changes

v9.13.0

Compare Source

Important Changes
  • feat(node): Add support for winston logger (#​15983)

    Sentry is adding support for structured logging. In this release we've added support for sending logs to Sentry via the winston logger to the Sentry Node SDK (and SDKs that use the Node SDK under the hood like @sentry/nestjs). The Logging APIs in the Sentry SDK are still experimental and subject to change.

    const winston = require('winston');
    const Transport = require('winston-transport');
    
    const transport = Sentry.createSentryWinstonTransport(Transport);
    
    const logger = winston.createLogger({
      transports: [transport],
    });
  • feat(core): Add wrapMcpServerWithSentry to instrument MCP servers from @modelcontextprotocol/sdk (#​16032)

    The Sentry SDK now supports instrumenting MCP servers from the @modelcontextprotocol/sdk package. Compatible with versions ^1.9.0 of the @modelcontextprotocol/sdk package.

    import { McpServer } from '@​modelcontextprotocol/sdk/server/mcp.js';
    
    // Create an MCP server
    const server = new McpServer({
      name: 'Demo',
      version: '1.0.0',
    });
    
    // Use the instrumented server in your application
    const instrumentedServer = Sentry.wrapMcpServerWithSentry(server);
  • feat(core): Move console integration into core and add to cloudflare/vercel-edge (#​16024)

    Console instrumentation has been added to @sentry/cloudflare and @sentry/nextjs Edge Runtime and is enabled by default. Now calls to the console object will be captured as breadcrumbs for those SDKs.

  • feat(bun): Support new Bun.serve APIs (#​16035)

    Bun 1.2.6 and above have a new Bun.serve API, which the Bun SDK now supports. The SDK instruments the new routes object that can be used to define routes for the server.

    Thanks to @​Jarred-Sumner for helping us get this supported!

Other Changes
  • feat(browser): Warn on duplicate browserTracingIntegration (#​16042)
  • feat(core): Allow delayed sending with offline transport (#​15937)
  • feat(deps): Bump @​sentry/webpack-plugin from 3.2.4 to 3.3.1 (#​16057)
  • feat(vue): Apply stateTransformer to attachments in Pinia Plugin (#​16034)
  • fix(core): Run beforeSendLog after we process log (#​16019)
  • fix(nextjs): Don't show turbopack warning for newer Next.js canaries (#​16065)
  • fix(nextjs): Include patch version 0 for min supported 15.3.0 (#​16026)
  • fix(node): Ensure late init works with all integrations (#​16016)
  • fix(react-router): Pass unstable_sentryVitePluginOptions to cli instance (#​16033)
  • fix(serverless-aws): Overwrite root span name with GraphQL if set (#​16010)

v9.12.0

Compare Source

Important Changes
  • feat(feedback): Implement highlighting and hiding controls for screenshots (#​15951)

    The Sentry SDK now supports highlighting and hiding controls for screenshots in user feedback reports. This functionality is enabled by default.

  • feat(node): Add ignoreIncomingRequestBody callback to httpIntegration (#​15959)

    The httpIntegration now supports an optional ignoreIncomingRequestBody callback that can be used to skip capturing the body of incoming requests.

    Sentry.init({
      integrations: [
        Sentry.httpIntegration({
          ignoreIncomingRequestBody: (url, request) => {
            return request.method === 'GET' && url.includes('/api/large-payload');
          },
        }),
      ],
    });

    The ignoreIncomingRequestBody callback receives the URL of the request and should return true if the body should be ignored.

  • Logging Improvements

    Sentry is adding support for structured logging. In this release we've made a variety of improvements to logging functionality in the Sentry SDKs.

    • feat(node): Add server.address to nodejs logs (#​16006)
    • feat(core): Add sdk name and version to logs (#​16005)
    • feat(core): Add sentry origin attribute to console logs integration (#​15998)
    • fix(core): Do not abbreviate message parameter attribute (#​15987)
    • fix(core): Prefix release and environment correctly (#​15999)
    • fix(node): Make log flushing logic more robust (#​15991)
Other Changes
  • build(aws-serverless): Include debug logs in lambda layer SDK bundle (#​15974)
  • feat(astro): Add tracking of errors during HTML streaming (#​15995)
  • feat(browser): Add onRequestSpanStart hook to browser tracing integration (#​15979)
  • feat(deps): Bump @​sentry/cli from 2.42.3 to 2.43.0 (#​16001)
  • feat(nextjs): Add captureRouterTransitionStart hook for capturing navigations (#​15981)
  • feat(nextjs): Mark clientside prefetch request spans with http.request.prefetch: true attribute (#​15980)
  • feat(nextjs): Un experimentify clientInstrumentationHook (#​15992)
  • feat(nextjs): Warn when client was initialized more than once (#​15971)
  • feat(node): Add support for SENTRY_DEBUG env variable (#​15972)
  • fix(tss-react): Change authToken type to string (#​15985)

Work in this release was contributed by @​Page- and @​Fryuni. Thank you for your contributions!

v9.11.0

Compare Source

  • feat(browser): Add http.redirect_count attribute to browser.redirect span (#​15943)
  • feat(core): Add consoleLoggingIntegration for logs (#​15955)
  • feat(core): Don't truncate error messages (#​15818)
  • feat(core): Emit debug log when transport execution fails (#​16009)
  • feat(nextjs): Add release injection in Turbopack (#​15958)
  • feat(nextjs): Record turbopack as tag (#​15928)
  • feat(nuxt): Base decision on source maps upload only on Nuxt source map settings (#​15859)
  • feat(react-router): Add sentryHandleRequest (#​15787)
  • fix(node): Use module instead of require for CJS check (#​15927)
  • fix(remix): Remove mentions of deprecated ErrorBoundary wrapper (#​15930)
  • ref(browser): Temporarily add sentry.previous_trace span attribute (#​15957)
  • ref(browser/core): Move all log flushing logic into clients (#​15831)
  • ref(core): Improve URL parsing utilities (#​15882)

v9.10.1

Compare Source

v9.10.0

Compare Source

Important Changes
  • feat: Add support for logs

    • feat(node): Add logging public APIs to Node SDKs (#​15764)
    • feat(core): Add support for beforeSendLog (#​15814)
    • feat(core): Add support for parameterizing logs (#​15812)
    • fix: Remove critical log severity level (#​15824)

    All JavaScript SDKs other than @sentry/cloudflare and @sentry/deno now support sending logs via dedicated methods as part of Sentry's upcoming logging product.

    Logging is gated by an experimental option, _experiments.enableLogs.

    Sentry.init({
      dsn: 'PUBLIC_DSN',
      // `enableLogs` must be set to true to use the logging features
      _experiments: { enableLogs: true },
    });
    
    const { trace, debug, info, warn, error, fatal, fmt } = Sentry.logger;
    
    trace('Starting database connection', { database: 'users' });
    debug('Cache miss for user', { userId: 123 });
    error('Failed to process payment', { orderId: 'order_123', amount: 99.99 });
    fatal('Database connection pool exhausted', { database: 'users', activeConnections: 100 });
    
    // Structured logging via the `fmt` helper function. When you use `fmt`, the string template and parameters are sent separately so they can be queried independently in Sentry.
    
    info(fmt(`Updated profile for user ${userId}`));
    warn(fmt(`Rate limit approaching for endpoint ${endpoint}. Requests: ${requests}, Limit: ${limit}`));

    With server-side SDKs like @sentry/node, @sentry/bun or server-side of @sentry/nextjs or @sentry/sveltekit, you can do structured logging without needing the fmt helper function.

    const { info, warn } = Sentry.logger;
    
    info('User %s logged in successfully', [123]);
    warn('Failed to load user %s data', [123], { errorCode: 404 });

    To filter logs, or update them before they are sent to Sentry, you can use the _experiments.beforeSendLog option.

  • feat(browser): Add diagnoseSdkConnectivity() function to programmatically detect possible connectivity issues (#​15821)

    The diagnoseSdkConnectivity() function can be used to programmatically detect possible connectivity issues with the Sentry SDK.

    const result = await Sentry.diagnoseSdkConnectivity();

    The result will be an object with the following properties:

    • "no-client-active": There was no active client when the function was called. This possibly means that the SDK was not initialized yet.
    • "sentry-unreachable": The Sentry SaaS servers were not reachable. This likely means that there is an ad blocker active on the page or that there are other connection issues.
    • undefined: The SDK is working as expected.
  • SDK Tracing Performance Improvements for Node SDKs

    • feat: Stop using dropUndefinedKeys (#​15796)
    • feat(node): Only add span listeners for instrumentation when used (#​15802)
    • ref: Avoid dropUndefinedKeys for spanToJSON calls (#​15792)
    • ref: Avoid using SentryError for PromiseBuffer control flow (#​15822)
    • ref: Stop using dropUndefinedKeys in SpanExporter (#​15794)
    • ref(core): Avoid using SentryError for event processing control flow (#​15823)
    • ref(node): Avoid dropUndefinedKeys in Node SDK init (#​15797)
    • ref(opentelemetry): Avoid sampling work for non-root spans (#​15820)

    We've been hard at work making performance improvements to the Sentry Node SDKs (@sentry/node, @sentry/aws-serverless, @sentry/nestjs, etc.). We've seen that upgrading from 9.7.0 to 9.10.0 leads to 30-40% improvement in request latency for HTTP web-server applications that use tracing with high sample rates. Non web-server applications and non-tracing applications will see smaller improvements.

Other Changes
  • chore(deps): Bump rrweb to 2.35.0 (#​15825)
  • deps: Bump bundler plugins to 3.2.3 (#​15829)
  • feat: Always truncate stored breadc

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

@ggrossetie
Copy link
Collaborator Author

ggrossetie commented Feb 28, 2025

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: front/package-lock.json
npm warn Unknown env config "store". This will stop working in the next major version of npm.
npm error code ERESOLVE
npm error ERESOLVE could not resolve
npm error
npm error While resolving: @welldone-software/why-did-you-render@8.0.3
npm error Found: react@19.1.0
npm error node_modules/react
npm error   react@"~19.1.0" from the root project
npm error   peer overridden react@"~19.1.0" (was ">=16.9.0") from @geist-ui/core@2.3.8
npm error   node_modules/@geist-ui/core
npm error     @geist-ui/core@"^2.3.8" from the root project
npm error   16 more (@monaco-editor/react, @rjsf/core, @rjsf/utils, ...)
npm error
npm error Could not resolve dependency:
npm error peer react@"^18" from @welldone-software/why-did-you-render@8.0.3
npm error node_modules/@welldone-software/why-did-you-render
npm error   dev @welldone-software/why-did-you-render@"~8.0" from the root project
npm error
npm error Conflicting peer dependency: react@18.3.1
npm error node_modules/react
npm error   peer react@"^18" from @welldone-software/why-did-you-render@8.0.3
npm error   node_modules/@welldone-software/why-did-you-render
npm error     dev @welldone-software/why-did-you-render@"~8.0" from the root project
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error /tmp/renovate/cache/others/npm/_logs/2025-06-02T02_44_56_782Z-eresolve-report.txt
npm error A complete log of this run can be found in: /tmp/renovate/cache/others/npm/_logs/2025-06-02T02_44_56_782Z-debug-0.log

Copy link

netlify bot commented Feb 28, 2025

Deploy Preview for stylo-docs canceled.

Name Link
🔨 Latest commit d1a2541
🔍 Latest deploy log https://app.netlify.com/sites/stylo-docs/deploys/67e75d9d3be6380008a17127

@ggrossetie ggrossetie force-pushed the renovate/major-react-dependencies branch from d340a17 to b879338 Compare March 6, 2025 02:38
@ggrossetie ggrossetie force-pushed the renovate/major-react-dependencies branch 2 times, most recently from 4c9a8c3 to d1a2541 Compare March 29, 2025 02:40
@ggrossetie ggrossetie force-pushed the renovate/major-react-dependencies branch from d1a2541 to f475bd6 Compare May 17, 2025 02:39
Copy link

netlify bot commented May 17, 2025

Deploy Preview for stylo-docs canceled.

Name Link
🔨 Latest commit 07573a0
🔍 Latest deploy log https://app.netlify.com/projects/stylo-docs/deploys/683d102d3845bb0008fb3019

Copy link

netlify bot commented May 17, 2025

Deploy Preview for stylo-dev ready!

Name Link
🔨 Latest commit 07573a0
🔍 Latest deploy log https://app.netlify.com/projects/stylo-dev/deploys/683d102d341c1b0008e33051
😎 Deploy Preview https://deploy-preview-1312--stylo-dev.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@ggrossetie ggrossetie force-pushed the renovate/major-react-dependencies branch from f475bd6 to 351ebb1 Compare May 27, 2025 17:18
@ggrossetie ggrossetie force-pushed the renovate/major-react-dependencies branch from 351ebb1 to 07573a0 Compare June 2, 2025 02:45
@ggrossetie
Copy link
Collaborator Author

Il faut aussi bump @welldone-software/why-did-you-render en version 10.0 afin d'être compatible avec React 19.
@thom4parisot J'ai l'impression qu'on a beaucoup moins de soucis de performance/rerender maintenant que les composants sont mieux découpés et avec l'utilisation des hooks + SWR. Peut être qu'on pourrait se passer de @welldone-software/why-did-you-render?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant