Skip to content

7.47.0

Compare
Choose a tag to compare
@getsentry-bot getsentry-bot released this 05 Apr 14:06

Important Changes

  • feat(browser): Add captureUserFeedback (#7729)

This release adds a new API, Sentry.captureUserFeedback, to browser-side SDKs that allows you to send user feedback to Sentry without loading and opening Sentry's user feedback dialog. This allows you to obtain user feedback however and whenever you want to and simply send it to Sentry using the SDK.

For instance, you can collect feedback, whenever convenient as shown in this example:

const eventId = Sentry.captureMessage('User Feedback');
const user = Sentry.getCurrentHub().getScope().getUser();
const userFeedback = {
  event_id: eventId;
  email: user.email
  name: user.username
  comments: 'I really like your App, thanks!'
}
Sentry.captureUserFeedback(userFeedback);

Note that feedback needs to be coupled to an event but as in the example above, you can just use Sentry.captureMessage to generate one.

You could also collect feedback in a custom way if an error happens and use the SDK to send it along:

Sentry.init({
  dsn: '__DSN__',
  beforeSend: event => {
    const userFeedback = collectYourUserFeedback();
    const feedback = {
      ...userFeedback,
      event_id: event.event_id.
    }
    Sentry.captureUserFeedback(feedback);
    return event;
  }
})
  • feat(tracing): Deprecate @sentry/tracing exports (#7611)

With this release, we officially deprecate all exports from the @sentry/tracing package, in favour of using them directly from the main SDK package. The @sentry/tracing package will be removed in a future major release.

Please take a look at the Migration docs for more details.

Additional Features and Fixes

  • feat(sveltekit): Add partial instrumentation for client-side fetch (#7626)
  • fix(angular): Handle routes with empty path (#7686)
  • fix(angular): Only open report dialog if error was sent (#7750)
  • fix(core): Determine debug ID paths from the top of the stack (#7722)
  • fix(ember): Ensure only one client is created & Replay works (#7712)
  • fix(integrations): Ensure HttpClient integration works with Axios (#7714)
  • fix(loader): Ensure JS loader works with tracing & add tests (#7662)
  • fix(nextjs): Restore tree shaking capabilities (#7710)
  • fix(node): Disable LocalVariables integration on Node < v18 (#7748)
  • fix(node): Redact URL authority only in breadcrumbs and spans (#7740)
  • fix(react): Only show report dialog if event was sent to Sentry (#7754)
  • fix(remix): Remove unnecessary dependencies (#7708)
  • fix(replay): Ensure circular references are handled (#7752)
  • fix(sveltekit): Don't capture thrown Redirects as exceptions (#7731)
  • fix(sveltekit): Log error to console by default in handleErrorWithSentry (#7674)
  • fix(tracing): Make sure idle transaction does not override other transactions (#7725)

Work in this release contributed by @de-don and @TrySound. Thank you for your contributions!

Bundle size 📦

Path Size
@sentry/browser - ES5 CDN Bundle (gzipped + minified) 20.89 KB
@sentry/browser - ES5 CDN Bundle (minified) 65.29 KB
@sentry/browser - ES6 CDN Bundle (gzipped + minified) 19.44 KB
@sentry/browser - ES6 CDN Bundle (minified) 57.75 KB
@sentry/browser - Webpack (gzipped + minified) 21.06 KB
@sentry/browser - Webpack (minified) 68.73 KB
@sentry/react - Webpack (gzipped + minified) 21.09 KB
@sentry/nextjs Client - Webpack (gzipped + minified) 48.87 KB
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) 28.45 KB
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) 26.68 KB
@sentry/replay ES6 CDN Bundle (gzipped + minified) 44.88 KB
@sentry/replay - Webpack (gzipped + minified) 38.87 KB
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) 63.77 KB
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) 56.8 KB