Releases: getsentry/sentry-react-native
6.2.0
Features
-
Enables Spotlight in Android and iOS SDKs (#4211)
-
Add env flag
SENTRY_DISABLE_NATIVE_DEBUG_UPLOAD
to allow disabling the debug file upload (#4223)How to use in Android project? It works by default, just set
export SENTRY_DISABLE_NATIVE_DEBUG_UPLOAD=true
in your build environment. For Sentry Android Gradle Plugin add the following to yourandroid/app/build.gradle
.apply from: "../../../sentry.gradle" sentry { autoUploadProguardMapping = shouldSentryAutoUpload() uploadNativeSymbols = shouldSentryAutoUpload() }
How to use in Xcode? Make sure you are using
scripts/sentry-xcode.sh
andscripts/sentry-xcode-debug-files.sh
in your
build phases. And add the following to yourios/.xcode.env.local
file.export SENTRY_DISABLE_NATIVE_DEBUG_UPLOAD=true
Fixes
- Ignore JavascriptException to filter out obfuscated duplicate JS Errors on Android (#4232)
- Skips ignoring require cycle logs for RN 0.70 or newer (#4214)
- Enhanced accuracy of time-to-display spans. (#4189)
- Fix Replay redacting of RN Classes on iOS (#4243)
- Speed up getBinaryImages for finishing transactions and capturing events (#4194)
- Remove duplicate HTTP Client Errors on iOS (#4250)
- Replay
maskAll*
set tofalse
on iOS kept all masked (#4257) - Add missing
getRootSpan
,withActiveSpan
andsuppressTracing
exports from@sentry/core
, andSeverityLevel
export from@sentry/types
(#4254, #4260)
Dependencies
5.35.0
Fixes
- Enhanced accuracy of time-to-display spans. (#4042)
- TimeToDisplay correctly warns about not supporting the new React Native architecture (#4160)
- Native Wrapper method
setContext
ensures only values convertible to NativeMap are passed (#4168) - Native Wrapper method
setExtra
ensures only stringified values are passed (#4168) setContext('key', null)
removes the key value also from platform context (#4168)
6.1.0
5.35.0-beta.0
Fixes
- Enhanced accuracy of time-to-display spans. (#4042)
- TimeToDisplay correctly warns about not supporting the new React Native architecture (#4160)
- Native Wrapper method
setContext
ensures only values convertible to NativeMap are passed (#4168) - Native Wrapper method
setExtra
ensures only stringified values are passed (#4168) setContext('key', null)
removes the key value also from platform context (#4168)
6.0.0
This is a new major version 6.0.0 of the Sentry React Native SDK.
To upgrade from the SDK version 5, please follow our migration guide.
Major Changes
-
React Native Tracing options were moved to the root options
import * as 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 * as 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>; }
-
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)
Other Changes
-
Add
sentry.origin
to SDK spans to indicated if spans are created by a part of the SDK or manually (#4066) -
Xcode Debug Files upload completes in foreground by default (#4090)
-
Set
parentSpanIsAlwaysRootSpan
totrue
to make parent of network requests predictable (#4084) -
Remove deprecated
enableSpotlight
andspotlightSidecarUrl
(#4086) -
tracePropagationTargets
defaults to all targets on mobile and same origin on the web (#4083) -
Move
_experiments.profilesSampleRate
toprofilesSampleRate
root options object #3851) -
Native Frames uses
spanId
to attach frames replacingtraceId
(#4030) -
Removed deprecated ReactNativeTracing option
idleTimeout
useidleTimeoutMs
instead (#3998) -
Removed deprecated ReactNativeTracing option
maxTransactionDuration
usefinalTimeoutMs
instead (#3998) -
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.
-
New React Native Navigation Integration interface (#4003)
import * as Sentry from '@sentry/react-native'; import { Navigation } from 'react-native-navigation'; Sentry.init({ tracesSampleRate: 1.0, integrations: [ Sentry.reactNativeNavigationIntegration({ navigation: Navigation }) ], });
Fixes
- TimeToDisplay correctly warns about not supporting the new React Native architecture (#4160)
- Native Wrapper method
setContext
ensures only values convertible to NativeMap are passed (#4168) - Native Wrapper method
setExtra
ensures only stringified values are passed (#4168) setContext('key', null)
removes the key value also from platform context (#4168)- Upload source maps for all splits on Android (not only the last found) (#4125)
Dependencies
5.34.0
6.0.0-rc.1
5.33.2
6.0.0-rc.0
This is a release candidate version of the next major version of the Sentry React Native SDK 6.0.0.
This version includes all the changes from the previous 6.0.0-beta.0 and the latest 5.33.1 version.
Changes
- Xcode Debug Files upload completes in foreground by default (#4090)
- Use
SENTRY_FORCE_FOREGROUND=false
for background upload
- Use
Dependencies
5.33.1
Internal
This is re-release of 5.33.0 with no changes to ensure that 5.33.1 is tagged as latest release on npmjs.com