Skip to content

8.7.0

Latest
Compare
Choose a tag to compare
@getsentry-bot getsentry-bot released this 29 May 16:31

Important Changes

  • feat(react): Add TanStack Router integration (#12095)

    This release adds instrumentation for TanStack router with a new tanstackRouterBrowserTracingIntegration in the
    @sentry/react SDK:

    import * as Sentry from '@sentry/react';
    import { createRouter } from '@tanstack/react-router';
    
    const router = createRouter({
      // Your router options...
    });
    
    Sentry.init({
      dsn: '___PUBLIC_DSN___',
      integrations: [Sentry.tanstackRouterBrowserTracingIntegration(router)],
      tracesSampleRate: 1.0,
    });

Other Changes

  • fix(nextjs): Do not hide sourceMappingURL comment on client when nextConfig.productionBrowserSourceMaps: true is
    set (#12278)

8.6.0

8.6.0 did not release fully, so this 8.7.0 also includes changes from that release.

Important Changes

  • feat(metrics): Add timings method to metrics (#12226)

    This introduces a new method, metrics.timing(), which can be used in two ways:

    1. With a numeric value, to simplify creating a distribution metric. This will default to second as unit:
    Sentry.metrics.timing('myMetric', 100);
    1. With a callback, which will wrap the duration of the callback. This can accept a sync or async callback. It will
      create an inactive span around the callback and at the end emit a metric with the duration of the span in seconds:
    const returnValue = Sentry.metrics.timing('myMetric', measureThisFunction);
  • feat(react): Add Sentry.reactErrorHandler (#12147)

    This PR introduces Sentry.reactErrorHandler, which you can use in React 19 as follows:

    import * as Sentry from '@sentry/react';
    import { hydrateRoot } from 'react-dom/client';
    
    ReactDOM.hydrateRoot(
      document.getElementById('root'),
      <React.StrictMode>
        <App />
      </React.StrictMode>,
      {
        onUncaughtError: Sentry.reactErrorHandler(),
        onCaughtError: Sentry.reactErrorHandler((error, errorInfo) => {
          // optional callback if users want custom config.
        }),
      },
    );

    For more details, take a look at the PR. Our
    documentation will be updated soon!

Other Changes

  • feat(sveltekit): Add request data to server-side events (#12254)
  • fix(core): Pass in cron monitor config correctly (#12248)
  • fix(nextjs): Don't capture suspense errors in server components (#12261)
  • fix(tracing): Ensure sent spans are limited to 1000 (#12252)
  • ref(core): Use versioned carrier on global object (#12206)

Bundle size 📦

Path Size
@sentry/browser 21.74 KB
@sentry/browser (incl. Tracing) 32.73 KB
@sentry/browser (incl. Tracing, Replay) 68.3 KB
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 61.62 KB
@sentry/browser (incl. Tracing, Replay with Canvas) 72.36 KB
@sentry/browser (incl. Tracing, Replay, Feedback) 84.44 KB
@sentry/browser (incl. Tracing, Replay, Feedback, metrics) 86.29 KB
@sentry/browser (incl. metrics) 25.91 KB
@sentry/browser (incl. Feedback) 37.86 KB
@sentry/browser (incl. sendFeedback) 26.32 KB
@sentry/browser (incl. FeedbackAsync) 30.83 KB
@sentry/react 24.51 KB
@sentry/react (incl. Tracing) 35.78 KB
@sentry/vue 25.72 KB
@sentry/vue (incl. Tracing) 34.57 KB
@sentry/svelte 21.87 KB
CDN Bundle 23.11 KB
CDN Bundle (incl. Tracing) 34.46 KB
CDN Bundle (incl. Tracing, Replay) 68.39 KB
CDN Bundle (incl. Tracing, Replay, Feedback) 73.53 KB
CDN Bundle - uncompressed 68 KB
CDN Bundle (incl. Tracing) - uncompressed 102.1 KB
CDN Bundle (incl. Tracing, Replay) - uncompressed 212 KB
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 224.37 KB
@sentry/nextjs (client) 35.12 KB
@sentry/sveltekit (client) 33.36 KB
@sentry/node 115.24 KB
@sentry/aws-serverless 103.73 KB