Releases: getsentry/sentry-react-native
5.30.0
Warning
Due to a bug (getsentry/sentry-cocoa#4280) introduced in Sentry Cocoa 8.33.0, we deprecated this release and recommend upgrading to Sentry React Native SDK 5.31.0 or newer.
Features
- Add
spotlight
option (#4023)- Deprecating
enableSpotlight
andspotlightSidecarUrl
- Deprecating
Dependencies
6.0.0-alpha.0
This is an alpha version of the next major version of the Sentry React Native SDK 6.0.0.
Please read the changes listed below as well as the changes made in the underlying
Sentry Javascript SDK 8.0.0 (JS Docs).
Changes
-
Removed deprecated ReactNativeTracing option
idleTimeout
useidleTimeoutMs
instead (#3998) -
Removed deprecated ReactNativeTracing option
maxTransactionDuration
usefinalTimeoutMs
instead (#3998) -
Removed
beforeNavigate
usebeforeStartSpan
instead (#3998)beforeStartSpan
is executed before the span start, compared tobeforeNavigate
which was executed before the navigation ended (after the span was created)
-
New Native Frames Integration (#3996)
-
New Stall Tracking Integration (#3997)
-
New User Interaction Tracing Integration (#3999)
-
New App Start Integration (#3852)
By default app start spans are attached to the first created transaction.
Standalone mode creates single root span (transaction) including only app start data.import Sentry from '@sentry/react-native'; Sentry.init({ tracesSampleRate: 1.0, enableAppStartTracking: true, // default true enableNativeFramesTracking: true, // default true enableStallTracking: true, // default true enableUserInteractionTracing: true, // default false integrations: [ Sentry.reactNativeTracingIntegration({ beforeStartSpan: (startSpanOptions) => { startSpanOptions.name = 'New Name'; return startSpanOptions; }, }), Sentry.appStartIntegration({ standalone: false, // default false }), ], });
-
New React Navigation Integration interface (#4003)
import Sentry from '@sentry/react-native'; import { NavigationContainer } from '@react-navigation/native'; const reactNavigationIntegration = Sentry.reactNavigationIntegration(); Sentry.init({ tracesSampleRate: 1.0, integrations: [reactNavigationIntegration], }); function RootComponent() { const navigation = React.useRef(null); return <NavigationContainer ref={navigation} onReady={() => { reactNavigationIntegration.registerNavigationContainer(navigation); }}> </NavigationContainer>; }
-
New React Native Navigation Integration interface (#4003)
import Sentry from '@sentry/react-native'; import { Navigation } from 'react-native-navigation'; Sentry.init({ tracesSampleRate: 1.0, integrations: [ Sentry.reactNativeNavigationIntegration({ navigation: Navigation }) ], });
-
Add
spotlight
option (#4023)- Deprecating
enableSpotlight
andspotlightSidecarUrl
- Deprecating
Dependencies
5.29.0
Warning
Due to a bug (getsentry/sentry-cocoa#4280) introduced in Sentry Cocoa 8.33.0, we deprecated this release and recommend upgrading to Sentry React Native SDK 5.31.0 or newer.
Features
TimeToInitialDisplay
andTimeToFullDisplay
start the time to display spans on mount (#4020)
Fixed
- fix(ttid): End and measure TTID regardless current active span (#4019)
- Fixes possible missing TTID measurements and spans
- Fix crash when passing array as data to
Sentry.addBreadcrumb({ data: [] })
(#4021)- The expected
data
type is plain JS object, otherwise the data might be lost.
- The expected
- Fix
requireNativeComponent
missing inreact-native-web
(#3958)
Dependencies
5.28.0
Warning
Due to a bug (getsentry/sentry-cocoa#4280) introduced in Sentry Cocoa 8.33.0, we deprecated this release and recommend upgrading to Sentry React Native SDK 5.31.0 or newer.
Fixes
- Support
metro@0.80.10
newsourceMapString
export (#4004) Sentry.captureMessage
stack trace is inevent.exception
(moved fromevent.threads
) (#3635, #3988)- To revert to the old behavior (causing the stack to be unsymbolicated) use
useThreadsForMessageStack
option
- To revert to the old behavior (causing the stack to be unsymbolicated) use
Dependencies
5.27.0
5.26.0
Features
-
Session Replay Public Beta (#3830)
To enable Replay use the
replaysSessionSampleRate
orreplaysOnErrorSampleRate
options.import * as Sentry from '@sentry/react-native'; Sentry.init({ _experiments: { replaysSessionSampleRate: 1.0, replaysOnErrorSampleRate: 1.0, }, });
To add React Component Names use
annotateReactComponents
inmetro.config.js
.// For Expo const { getSentryExpoConfig } = require("@sentry/react-native/metro"); const config = getSentryExpoConfig(__dirname, { annotateReactComponents: true }); // For RN const { getDefaultConfig } = require('@react-native/metro-config'); const { withSentryConfig } = require('@sentry/react-native/metro'); module.exports = withSentryConfig(getDefaultConfig(__dirname), { annotateReactComponents: true });
To change default redaction behavior add the
mobileReplayIntegration
.import * as Sentry from '@sentry/react-native'; Sentry.init({ _experiments: { replaysSessionSampleRate: 1.0, replaysOnErrorSampleRate: 1.0, }, integrations: [ Sentry.mobileReplayIntegration({ maskAllImages: true, maskAllVectors: true, maskAllText: true, }), ], });
To learn more visit Sentry's Mobile Session Replay documentation page.
Dependencies
5.26.0-alpha.3
Features
-
Redact
react-native-svg
SVGs whenmaskAllVectors
(#3930) -
Add
annotateReactComponents
option to@sentry/react-native/metro
(#3916)// For Expo const { getSentryExpoConfig } = require("@sentry/react-native/metro"); const config = getSentryExpoConfig(__dirname, { annotateReactComponents: true }); // For RN const { getDefaultConfig } = require('@react-native/metro-config'); const { withSentryConfig } = require('@sentry/react-native/metro'); module.exports = withSentryConfig(getDefaultConfig(__dirname), { annotateReactComponents: true });
Fixes
- Add
app.foreground/background
breadcrumbs to iOS Replays (#3932)
Dependencies
5.25.0
Features
- Improved Touch Event Breadcrumb components structure (#3899)
- Set
currentScreen
on native scope (#3927)
Fixes
error.cause
chain is locally symbolicated in development builds (#3920)sentry-expo-upload-sourcemaps
no longer requires Sentry url when uploading sourcemaps tosentry.io
(#3915)- Flavor aware Android builds use
SENTRY_AUTH_TOKEN
env as fallback when token not found insentry-flavor-type.properties
. (#3917) mechanism.handled:false
should crash current session (#3900)
Dependencies
5.25.0-alpha.2
Features
- Improve touch event component info if annotated with
@sentry/babel-plugin-component-annotate
(#3899) - Add replay breadcrumbs for touch & navigation events (#3846)
- Add network data to Session Replays (#3912)
- Filter Sentry Event Breadcrumbs from Mobile Replays (#3925)
Fixes
sentry-expo-upload-sourcemaps
no longer requires Sentry url when uploading sourcemaps tosentry.io
(#3915)
Dependencies
- Bump Cocoa SDK from v8.25.0-alpha.0 to v8.30.0 (#3914)
- Bump Android SDK from v7.9.0-alpha.1 to v7.11.0-alpha.2 (#3830)
Access to Mobile Replay is limited to early access orgs on Sentry. If you're interested, sign up for the waitlist