Skip to content

Releases: getsentry/sentry-react-native

6.2.0

18 Nov 11:17
Compare
Choose a tag to compare

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 your android/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 and scripts/sentry-xcode-debug-files.sh in your
    build phases. And add the following to your ios/.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 to false on iOS kept all masked (#4257)
  • Add missing getRootSpan, withActiveSpan and suppressTracing exports from @sentry/core, and SeverityLevel export from @sentry/types (#4254, #4260)

Dependencies

5.35.0

05 Nov 17:42
1d15d81
Compare
Choose a tag to compare

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

21 Oct 15:07
Compare
Choose a tag to compare

Dependencies

5.35.0-beta.0

21 Oct 13:21
Compare
Choose a tag to compare
5.35.0-beta.0 Pre-release
Pre-release

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

16 Oct 08:41
Compare
Choose a tag to compare

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 use beforeStartSpan instead (#3998)

    • beforeStartSpan is executed before the span start, compared to beforeNavigate 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 to true to make parent of network requests predictable (#4084)

  • Remove deprecated enableSpotlight and spotlightSidecarUrl (#4086)

  • tracePropagationTargets defaults to all targets on mobile and same origin on the web (#4083)

  • Move _experiments.profilesSampleRate to profilesSampleRate root options object #3851)

  • Native Frames uses spanId to attach frames replacing traceId (#4030)

  • Removed deprecated ReactNativeTracing option idleTimeout use idleTimeoutMs instead (#3998)

  • Removed deprecated ReactNativeTracing option maxTransactionDuration use finalTimeoutMs 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

15 Oct 07:53
Compare
Choose a tag to compare

Fixes

  • Handles error with string cause (#4163)
  • Use appLaunchedInForeground to determine invalid app start data on Android (#4146)
  • Upload source maps for all release variants on Android (not only the last found) (#4125)

Dependencies

6.0.0-rc.1

08 Oct 10:36
Compare
Choose a tag to compare
6.0.0-rc.1 Pre-release
Pre-release

Fixes

  • Upload source maps for all splits on Android (not only the last found) (#4125)

Dependencies

5.33.2

07 Oct 14:11
Compare
Choose a tag to compare

Fixes

  • Emits Bridge log only in debug mode (#4145)
  • Remove unused spanName from TimeToDisplayProps (#4150)

Dependencies

6.0.0-rc.0

01 Oct 17:09
Compare
Choose a tag to compare
6.0.0-rc.0 Pre-release
Pre-release

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

Dependencies

5.33.1

23 Sep 07:19
Compare
Choose a tag to compare

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