Skip to content

fix(deps): update dependency @sentry/react-native to v8#1209

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/sentry-react-native-8.x
Open

fix(deps): update dependency @sentry/react-native to v8#1209
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/sentry-react-native-8.x

Conversation

@renovate

@renovate renovate Bot commented Mar 15, 2026

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@sentry/react-native ^5.36.0^8.16.0 age confidence

Release Notes

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

v8.16.0

Compare Source

Features
  • Capture errors that hit Expo Router's per-route ErrorBoundary (#​6318)

    Wrap the boundary with Sentry.wrapExpoRouterErrorBoundary in your route file:

    // app/_layout.tsx
    import { ErrorBoundary as ExpoErrorBoundary } from 'expo-router';
    import * as Sentry from '@​sentry/react-native';
    
    export const ErrorBoundary = Sentry.wrapExpoRouterErrorBoundary(ExpoErrorBoundary);

    Render-phase errors that reach the boundary are captured with route context (route.name, route.path, route.params), the in-flight navigation transaction is tagged as errored, and a breadcrumb is emitted. Concrete paths and params are gated behind sendDefaultPii.

Fixes
  • Fix fatal NSInvalidArgumentException crash in RNSentryReplayBreadcrumbConverter when a touch breadcrumb path contains a non-dictionary element (#​6346)
  • Apply SENTRY_ENVIRONMENT, SENTRY_RELEASE and SENTRY_DIST build-time overrides to the JS bundled options to match the native SDKs (#​6330)
  • Fix user geo being dropped from the native scope by forwarding it as a structured object instead of a JSON string (#​6309)
  • Remove unused React/RCTTextView.h import that broke iOS builds on React Native 0.87, where the header was removed as part of the legacy architecture cleanup (#​6322)
Internal
  • Hide the dataCollection option until it is fully supported in React Native. It is exposed by @sentry/core but is not yet honored by the native SDKs (iOS/Android) nor by the RN-specific sendDefaultPii gates, so setting it would silently have no effect. Use sendDefaultPii instead. (#​6345)
Dependencies

v8.15.1

Compare Source

Fixes
  • Fix Android Gradle source map upload being silently skipped on some occasions (#​6320)

v8.15.0

Compare Source

Features
  • Add nativeStackAndroid support to NativeLinkedErrors, capturing the JVM stack trace of rejected native module promises as a linked exception (#​6278)
  • Record XHR request/response headers and (optionally) bodies in Mobile Session Replay. Opt in via mobileReplayIntegration with networkDetailAllowUrls to capture headers; set networkCaptureBodies: true to also capture bodies. Other options: networkDetailDenyUrls, networkRequestHeaders, networkResponseHeaders. Authorization-like headers are always stripped, bodies are capped at ~150 KB. Covers XHR-based clients like axios; fetch will follow. See Network Details for details. (#​6288)
  • Warn during dev builds when multiple versions of Sentry JS SDK are detected (#​6269)
Fixes
  • Fix Android ClassCastException when syncing breadcrumbs with a numeric timestamp to the native scope (#​6308)
Dependencies

v8.14.2

Compare Source

Fixes
  • Fix iOS retain cycle in RNSentryOnDrawReporterView leaking TTID/TTFD reporter views and their frame-tracker listeners (#​6449)

v8.14.1

Compare Source

Fixes
  • Fix Android Gradle source map upload being silently skipped on some occasions (#​6320)
Dependencies

v8.14.0

Compare Source

Features
  • Correlate deep links with the navigation transaction they trigger. The next idle navigation span started within routeChangeTimeoutMs of a deep link arrival is tagged with navigation.trigger: 'deeplink', deeplink.url (sanitized, respects sendDefaultPii), and deeplink.dispatch_delay_ms (ms gap between URL received and navigation dispatched). Covers both cold start (Linking.getInitialURL()) and warm open ('url' event) paths, including the late-arrival case where Expo Router auto-handles the link before our getInitialURL() chain resolves (#​6264)
  • Add memory, CPU, and frame measurements to Android profiling (#​6250)
  • Add enableAutoConsoleLogs option to opt out of automatic console.* capture while keeping enableLogs: true for manual Sentry.logger.* calls (#​6235)
  • Instrument Expo Router push, replace, navigate, back, and dismiss (in addition to prefetch) with breadcrumbs and spans, and tag the resulting idle navigation span with the initiating navigation.method (#​6221)
    • Note: Expo Router span/breadcrumb attributes that may contain user identifiers (route.href, route.params, and concrete pathnames derived from string hrefs such as /users/42) are now gated behind sendDefaultPii. When sendDefaultPii is off (the default), prefetch spans for string hrefs use route.name: 'unknown' and omit route.href. Templated object hrefs (e.g. { pathname: '/users/[id]' }) are unaffected.
  • Warn when Gradle resolves sentry-android to a version incompatible with the SDK (#​6238)
  • Attach the active TurboModule method to native crash reports as contexts.turbo_module + turbo_module.name / turbo_module.method tags (#​6227)
Fixes
  • Exclude additional server-only modules (express, postgresjs, requestdata, consola, spanStreaming) from native bundles (#​6263)
  • Enable fetch instrumentation when Expo SDK 56's native expo/fetch is active (#​6226)
  • Resolve sentry-cli in isolated dependency layouts (#​6242)
Internal
  • Convert sentry.gradle to Kotlin DSL (sentry.gradle.kts) (#​6119)
    • The old sentry.gradle is kept as a shim forwarding to the new .kts file for backward compatibility
Dependencies

v8.13.0

Compare Source

Features
  • Add breadcrumbs for dispatched React Navigation events (#​6218)
  • Add Sentry.NavigationContainer drop-in wrapper for React Navigation (#​6199)
  • Opt-in: consume sentry-cocoa via Swift Package Manager. Set SENTRY_USE_SPM=1 before pod install to pull Sentry from sentry-cocoa's SPM package as a binary xcframework instead of the CocoaPods source build (#​6182)
  • Add disableAutoUpload option to Expo plugin to disable source map and debug symbol uploads (#​6195)
  • Expose pauseAppHangTracking and resumeAppHangTracking APIs on iOS (#​6192)
  • Better route and dynamic param extraction for Expo Router (#​6197)
Fixes
  • Rethrow native exceptions from Sentry's Expo host handler so Android crashes terminate the process instead of leaving the app on a blank screen (#​6228)
  • Bound TTID/TTFD to prevent inflated transactions (#​6210)
  • Return NO from requiresMainQueueSetup to avoid unnecessary dispatch_sync on the main queue during bridge init (#​6202)
Dependencies

v8.12.0

Compare Source

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

v8.11.1

Compare Source

Fixes
  • Fix iOS crash with AVAssetDownloadTask in urlSessionTask:setState: (#​6133)
Dependencies

v8.11.0

Compare Source

[!WARNING]
⚠️ Known Issue (iOS): Apps using sentry-react-native 8.11.0+ may crash when using AVAssetDownloadURLSession due to an issue in the sentry-cocoa SDK. Please use 8.11.1.

Features
  • Use accessibilityLabel, aria-label, and testID as fallback labels for touch breadcrumbs when sentry-label is not set (#​6103)
Fixes
  • Fix the issue with uploading iOS Debug Symbols in EAS Build when using pnpm (#​6076)
  • Improve frame delay collection performance by using sentry-java getFramesDelay API (#​6074)
Dependencies

v8.10.0

Compare Source

Features
  • Support SENTRY_RELEASE and SENTRY_DIST env vars in build scripts to override values in sentry.options.json at build time (#​6070)
  • Add includeWebFeedback Metro config option to exclude @sentry-internal/feedback from the bundle (#​6025)
  • Add rage tap detection — rapid consecutive taps on the same element emit ui.multiClick breadcrumbs and appear on the replay timeline with the rage click icon (#​5992)
Fixes
  • Android build failure in expo-handler when Android SDK 31 is not installed by using safeExtGet for compileSdkVersion and minSdkVersion (#​6061)
  • Stop the Hermes sampling profiler on React instance teardown to prevent pthread_kill SIGABRT when the JS thread is torn down with profiling active (#​6035)
  • Restrict the URI scope of getDataFromUri on iOS and Android (#​6045)
  • Restrict the Metro source-context middleware to files within the project root (#​6044)
  • Escape name and version values when injecting release constants into the web bundle (#​6044)
  • Mask the Sentry auth token in the sentry.gradle upload-task lifecycle log (#​6057)
  • Discard invalid navigation/interaction transactions via an event processor instead of mutating the internal _sampled flag, removing misleading "dropped due to sampling" debug logs (#​6051)
Dependencies

v8.9.2

Compare Source

Fixes
  • Restore executable bit on shell scripts in the published tarball, fixing Permission denied on iOS build (#​6049)
  • Restore EAS build hook bin scripts (sentry-eas-build-on-{success,error,complete}) missing from the published tarball (#​6049)

v8.9.1

Compare Source

Features
  • Add new @sentry/expo-upload-sourcemaps package for uploading JavaScript bundles and source maps from Expo builds to Sentry (#​6027)
    • The existing sentry-expo-upload-sourcemaps bin bundled with @sentry/react-native is superseded by the new package; it continues to work unchanged for now
  • Expose scope-level attributes API (setAttribute, setAttributes, removeAttribute) bridging to native SDKs (#​6009)
  • Expose screenshot masking options (screenshot.maskAllText, screenshot.maskAllImages, screenshot.maskedViewClasses, screenshot.unmaskedViewClasses) for error screenshots (#​6007)
  • Warn Expo users at Metro startup when prebuilt native projects are missing Sentry configuration (#​5984)
  • Re-export AI SDK manual instrumentation helpers (instrumentOpenAiClient, instrumentAnthropicAiClient, instrumentGoogleGenAIClient, createLangChainCallbackHandler, instrumentLangGraph, instrumentStateGraphCompile) for use in React Native apps (#​6028)
  • Add Sentry.GlobalErrorBoundary component (and withGlobalErrorBoundary HOC) that renders a fallback UI for fatal non-rendering JS errors routed through ErrorUtils in addition to the render-phase errors caught by Sentry.ErrorBoundary. Opt-in flags includeNonFatalGlobalErrors and includeUnhandledRejections extend the fallback to non-fatal errors and unhandled promise rejections respectively. (#​6023)
Fixes
  • Fix @sentry/expo-upload-sourcemaps publishing issue (#​6037)
  • Fix iOS UI profiling options being silently ignored (#​6012)
  • Fix _experiments.enableUnhandledCPPExceptionsV2 being silently ignored on iOS (#​6014)
  • Check captureReplay return value in iOS bridge to avoid linking error events to uncaptured replays (#​6008)
  • Report the expected properties file path and any missing keys when using flavorAware on Android, instead of failing with an opaque Illegal null value provided in this collection error (#​6031)
Dependencies

v8.9.0

Compare Source

[!WARNING]
This release has a broken workspace-protocol dependency and cannot be installed; use 8.9.1

Features
  • Add new @sentry/expo-upload-sourcemaps package for uploading JavaScript bundles and source maps from Expo builds to Sentry (#​6027)
    • The existing sentry-expo-upload-sourcemaps bin bundled with @sentry/react-native is superseded by the new package; it continues to work unchanged for now
  • Expose scope-level attributes API (setAttribute, setAttributes, removeAttribute) bridging to native SDKs (#​6009)
  • Expose screenshot masking options (screenshot.maskAllText, screenshot.maskAllImages, screenshot.maskedViewClasses, screenshot.unmaskedViewClasses) for error screenshots (#​6007)
  • Warn Expo users at Metro startup when prebuilt native projects are missing Sentry configuration (#​5984)
  • Re-export AI SDK manual instrumentation helpers (instrumentOpenAiClient, instrumentAnthropicAiClient, instrumentGoogleGenAIClient, createLangChainCallbackHandler, instrumentLangGraph, instrumentStateGraphCompile) for use in React Native apps (#​6028)
  • Add Sentry.GlobalErrorBoundary component (and withGlobalErrorBoundary HOC) that renders a fallback UI for fatal non-rendering JS errors routed through ErrorUtils in addition to the render-phase errors caught by Sentry.ErrorBoundary. Opt-in flags includeNonFatalGlobalErrors and includeUnhandledRejections extend the fallback to non-fatal errors and unhandled promise rejections respectively. (#​6023)
Fixes
  • Fix iOS UI profiling options being silently ignored (#​6012)
  • Fix _experiments.enableUnhandledCPPExceptionsV2 being silently ignored on iOS (#​6014)
  • Check captureReplay return value in iOS bridge to avoid linking error events to uncaptured replays (#​6008)
  • Report the expected properties file path and any missing keys when using flavorAware on Android, instead of failing with an opaque Illegal null value provided in this collection error (#​6031)
Dependencies

v8.8.0

Compare Source

Features
  • Enable "Open Sentry" button in Playground for Expo apps (#​5947)
  • Add attachAllThreads option to attach full stack traces for all threads to captured events on iOS (#​5960)
  • Add strictTraceContinuation and orgId options for trace continuation validation (#​5829)
  • Add deeplinkIntegration for automatic deep link breadcrumbs (#​5983)
  • Name navigation spans using dispatched action payload when useDispatchedActionData is enabled (#​5982)
Fixes
  • Fix sourcemap upload script failing when withSentry is used programmatically in app.config.ts (#​6006)
  • Retry native module resolution to prevent silent event drops in production Hermes builds (#​5981)
  • Lazy-load Metro internal modules to prevent Expo 55 import errors (#​5958)
  • Fix app start transaction profile offset by using the actual profiling start timestamp instead of the adjusted app start time (#​5962)
  • Use React componentStack as fallback when error has no stack trace on Android (#​5965)
  • Add SENTRY_PROJECT_ROOT env var to override project root in Xcode build phase scripts for monorepo setups (#​5961)
Dependencies

v8.7.0

Compare Source

Features
  • Add Sentry.appLoaded() API to explicitly signal app start end (#​5940)
  • Add frames.delay span data from native SDKs to app start, TTID/TTFD, and JS API spans (#​5907)
  • Rename FeedbackWidget to FeedbackForm and showFeedbackWidget to showFeedbackForm (#​5931)
    • The old names are deprecated but still work
  • Deprecate FeedbackButton, showFeedbackButton, and hideFeedbackButton (#​5933)
Fixes
  • Fix inflated http.client span durations on iOS when the app backgrounds during a request (#​5944)
  • Fix crash caused by nullish response in supabase PostgREST handler (#​5938)
  • Fix iOS crash (EXC_BAD_ACCESS) in time-to-initial-display when navigating between screens (#​5887)
Dependencies

v8.6.0

Compare Source

Fixes
  • Session replay will no longer start recording when an event was ignored or dropped. (#​5885)
  • Capture native exceptions consumed by Expo's bridgeless error handling on Android (#​5871)
  • Fix SIGABRT crash on launch when mobileReplayIntegration is not configured and iOS deployment target >= 16.0 (#​5858)
  • Reduce reactNavigationIntegration performance overhead (#​5840, #​5842, #​5849)
  • Fix duplicated breadcrumbs on Android (#​5841)
Dependencies

v8.5.0

Compare Source

Features
  • Support SENTRY_ENVIRONMENT in bare React Native builds (#​5823)
  • Add expoUpdatesListenerIntegration that records breadcrumbs for Expo Updates lifecycle events (#​5795)
    • Tracks update checks, downloads, errors, rollbacks, and restarts as expo.updates breadcrumbs
    • Enabled by default in Expo apps (requires expo-updates to be installed)
  • feat(android): Expose enableAnrFingerprinting option (#​5838)
  • Show feedback widget on device shake (#​5754)
    • Use Sentry.enableFeedbackOnShake() / Sentry.disableFeedbackOnShake() or set feedbackIntegration({ enableShakeToReport: true })
Fixes
  • Fix native frames measurements being dropped due to race condition (#​5813)
  • Fix app start data lost when first navigation transaction is discarded (#​5833)
Dependencies

v8.4.0

Compare Source

Fixes
  • Pass screenshotStrategy option from mobileReplayIntegration to the Android native SDK (#​5808)
Features
  • Add wrapExpoImage and wrapExpoAsset for Expo performance monitoring (#​5427)
    • wrapExpoImage instruments Image.prefetch and Image.loadAsync from expo-image
    • wrapExpoAsset instruments Asset.loadAsync from expo-asset
    import { Image } from 'expo-image';
    import { Asset } from 'expo-asset';
    import * as Sentry from '@&#8203;sentry/react-native';
    
    Sentry.wrapExpoImage(Image);
    Sentry.wrapExpoAsset(Asset);
  • Adds tags with Expo Updates context variables to make them searchable and filterable (#​5788)
  • Automatically capture a warning event when Expo Updates performs an emergency launch (#​5794)
  • Adds environment configuration in the Expo config plugin. This can be set with the SENTRY_ENVIRONMENT env variable or in sentry.options.json (#​5796)
    ["@&#8203;sentry/react-native/expo", {
      "useNativeInit": true,
      "options": {
        "environment": "staging"
      }
    }]
  • Generate sentry.options.json from the Expo config plugin options property (#​5804)
    ["@&#8203;sentry/react-native/expo", {
      "useNativeInit": true,
      "options": {
        "dsn": "https://key@sentry.io/123",
        "tracesSampleRate": 1.0
      }
    }]
Fixes
  • Defer initial navigation span creation until navigation container is registered (#​5789)
  • Exclude server-only AI/MCP modules from native bundles, reducing bundle size by ~150kb (#​5802)
Dependencies

v8.3.0

Compare Source

Features
  • Add onNativeLog callback to intercept and forward native SDK logs to JavaScript console (#​5622)
    • The callback receives native log events with level, component, and message properties
    • Only works when debug: true is enabled in Sentry.init
    • Use consoleSandbox inside the callback to prevent feedback loops with Sentry's console integration
      import * as Sentry from '@&#8203;sentry/react-native';
      
      Sentry.init({
        debug: true,
        onNativeLog: ({ level, component, message }) => {
          // Use consoleSandbox to avoid feedback loops
          Sentry.consoleSandbox(() => {
            console.log(
              `[Sentry Native] [${level.toUpperCase()}] [${component}] ${message}`
            );
          });
        }
      });
  • Add expo constants on event context (#​5748)
  • Capture dynamic route params as span attributes for Expo Router navigations (#​5750)
  • EAS Build Hooks (#​5666)
    • Capture EAS build events in Sentry. Add the following to your package.json:
      {
        "scripts": {
          "eas-build-on-complete": "sentry-eas-build-on-complete"
        }
      }
      Set SENTRY_DSN in your EAS secrets, and optionally SENTRY_EAS_BUILD_CAPTURE_SUCCESS=true to also capture successful builds.
Fixes
  • App start data not attached to sampled transactions when preceded by unsampled transactions (#​5756)
  • Resolve relative SOURCEMAP_FILE paths against the project root in the Xcode build script (#​5730)
  • Fixes the issue with unit mismatch in adjustTransactionDuration (#​5740)
  • Handle inactive state for spans (#​5742)
Dependencies

v8.2.0

Compare Source

Fixes
  • Fix AGP Artifacts API conflict caused by eager task realization in sentry.gradle (#​5714)
  • Fix Android crash on app launch caused by version mismatch between Sentry Android SDK and Sentry Android Gradle Plugin (#​5726)
Dependencies

v8.1.0

Compare Source

Features
  • Add enableTombstone option for improved native crash reporting on Android 12+ (#​5680)
    • When enabled, uses Android's ApplicationExitInfo.REASON_CRASH_NATIVE to capture native crashes with more detailed thread information
    import * as Sentry from '@&#8203;sentry/react-native';
    
    Sentry.init({
      dsn: 'YOUR_DSN',
      enableTombstone: true,
    });
  • Expose iOS options to ignore views from subtree traversa

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • 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 is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


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

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 7 times, most recently from d351de7 to 8a68c06 Compare March 21, 2026 22:17
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 6 times, most recently from a048c83 to fdfee84 Compare April 1, 2026 09:29
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 6 times, most recently from 0705d46 to 9af5ccc Compare April 9, 2026 12:54
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 7 times, most recently from 2ae0b23 to 9104925 Compare April 18, 2026 17:23
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 2 times, most recently from 890634c to 1d7f4a8 Compare April 25, 2026 13:04
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 3 times, most recently from 3b16a19 to 3d2f3a3 Compare May 2, 2026 14:04
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 3 times, most recently from 1d80072 to dc9d03b Compare May 13, 2026 20:40
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 2 times, most recently from e675c2f to 7e9fad6 Compare May 20, 2026 21:48
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 7 times, most recently from 69ac9f4 to 74bf9ef Compare May 31, 2026 00:31
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch 10 times, most recently from 2329d2b to c98498a Compare July 24, 2026 16:51
@renovate
renovate Bot force-pushed the renovate/sentry-react-native-8.x branch from c98498a to a933c83 Compare July 25, 2026 17:14
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.

0 participants