github getsentry/sentry-react-native 8.12.0

5 hours ago

Features

  • Multi-instance <TimeToInitialDisplay> / <TimeToFullDisplay> coordination (#6090)
    • New ready prop. When a screen has multiple async data sources, mount one <TimeToFullDisplay ready={...} /> per source — TTID/TTFD is recorded only when every instance reports ready === true.
    • The existing record prop is unchanged BUT it is now deprecated in favor of ready.
  • Extract text content from children of touched components as a label fallback for touch breadcrumbs (#6106)
  • Auto-inject sentry-label from static text content at build time when annotateReactComponents is enabled (#6141)
  • Respect Replay Mask boundaries when reading sentry-label for touch breadcrumbs (#6142)
  • Add textComponentNames option to annotateReactComponents for custom text components (#6169)
  • Add first-class expoRouterIntegration() with auto-registration (#6189)
  • Expose addConsoleInstrumentationFilter from @sentry/core (#6180)
  • Expose experimental captureSurfaceViews option for Android Session Replay (#6175)
  • Add OTA SDK version to native sdk.packages when JS bundle version differs from built-in version (#6191)

Fixes

  • Deduplicate native HTTP breadcrumbs that duplicate JS XHR/fetch breadcrumbs (#6132)
  • Fix duplicate JS error reporting on iOS New Architecture when the native SDK is initialized early via sentry.options.json ("Capture App Start Errors"). It's done by applying the ExceptionsManager.reportException C++ wrapper filter in both init paths (#6145)
  • Fix boolean options from sentry.options.json being ignored on Android when using RNSentrySDK.init (#6130)
  • Fix includeWebFeedback: false Metro config option causing crash at startup (#6150)
  • Fix sentry-expo-upload-sourcemaps failing for projects with devEngines.packageManager set to non-npm managers (#6155)
  • Fix Metro serializer wrapper breaking getModulesRunBeforeMainModule for third-party plugins like react-native-worklets bundleMode (#6188)

Dependencies

Don't miss a new sentry-react-native release

NewReleases is sending notifications on new releases.