Features
-
Capture errors that hit Expo Router's per-route
ErrorBoundary(#6318)Wrap the boundary with
Sentry.wrapExpoRouterErrorBoundaryin 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 behindsendDefaultPii.
Fixes
- Fix fatal
NSInvalidArgumentExceptioncrash inRNSentryReplayBreadcrumbConverterwhen a touch breadcrumb path contains a non-dictionary element (#6346) - Apply
SENTRY_ENVIRONMENT,SENTRY_RELEASEandSENTRY_DISTbuild-time overrides to the JS bundled options to match the native SDKs (#6330) - Fix user
geobeing dropped from the native scope by forwarding it as a structured object instead of a JSON string (#6309) - Remove unused
React/RCTTextView.himport 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
dataCollectionoption until it is fully supported in React Native. It is exposed by@sentry/corebut is not yet honored by the native SDKs (iOS/Android) nor by the RN-specificsendDefaultPiigates, so setting it would silently have no effect. UsesendDefaultPiiinstead. (#6345)