sentry-react-native

Official Sentry SDK for React-Native

MIT License

Downloads
1.6M
Stars
1.5K
Committers
141

Bot releases are visible (Hide)

sentry-react-native - 5.16.0-alpha.1

Published by getsentry-bot 11 months ago

Features

  • Add @sentry/react-native/expo Expo config plugin (#3429)

    This Release introduces the first alpha version of our new SDK for Expo.
    At this time, the SDK is considered experimental and things might break and change in future versions.

    The core of the SDK is Expo plugin which you can easily add to your App config:

    const { withSentry } = require('@sentry/react-native/expo');
    
    const config = {...};
    
    module.exports = withSentry(config, {
      url: 'https://www.sentry.io/',
      authToken: 'example-token', // Or use SENTRY_AUTH_TOKEN env
      project: 'project-slug', // Or use SENTRY_PROJECT env
      organization: 'org-slug', // Or use SENTRY_ORG env
    });
    
    • And Sentry.init in App.js
    import * as Sentry from '@sentry/react-native';
    
    Sentry.init({
      dsn: '__DSN__',
    });
    
  • Update sentry-xcode.sh scripts with Node modules resolution (#3450)

    • RN SDK and Sentry CLI are dynamically resolved if override is not supplied

Fixes

  • Transform shipped JSX for both react-native and web (#3428)
    • Removes builds errors when using react-native-web with Webpack
sentry-react-native - 5.15.0

Published by getsentry-bot 11 months ago

Features

  • New simplified Sentry Metro Serializer export (#3450)

    const { createSentryMetroSerializer } = require('@sentry/react-native/metro');
    

Fixes

  • Encode envelopes using Base64, fix array length limit when transferring over Bridge. (#2852)
    • This fix requires a rebuild of the native app
  • Symbolicate message and non-Error stacktraces locally in debug mode (#3420)
  • Remove Sentry SDK frames from rejected promise SyntheticError stack (#3423)
  • Fix path from Xcode scripts to Collect Modules (#3451)

Dependencies

sentry-react-native - 5.14.1

Published by getsentry-bot 11 months ago

Fixes

  • Add hermes to Pod dependencies to fix profiling with use_frameworks (#3416)
  • Define SentryCurrentDateProvider in RNSentry (#3418)
sentry-react-native - 5.14.0

Published by getsentry-bot 11 months ago

Features

  • Add iOS profiles to React Native Profiling (#3349)

Fixes

  • Conditionally use Set or CountingSet in Sentry Metro plugin (#3409)
    • This makes sentryMetroSerializer compatible with Metro 0.66.2 and newer
  • Fix SIGSEV, SIGABRT and SIGBUS crashes happening after/around the August Google Play System update, see #2955 for more details

Dependencies

sentry-react-native - 5.13.1-beta.1

Published by getsentry-bot 11 months ago

Fixes

  • Fix SIGSEV, SIGABRT and SIGBUS crashes happening after/around the August Google Play System update, see #2955 for more details

Dependencies

sentry-react-native - 5.13.0

Published by getsentry-bot 11 months ago

Features

Fixes

  • Remove platform: node from Debug Builds Events (#3377)

Dependencies

sentry-react-native - 5.12.0

Published by getsentry-bot 12 months ago

Features

  • Automatically detect environment if not set (#3362)
  • Send Source Maps Debug ID for symbolicated Profiles (#3343)

Fixes

  • Add actual activeThreadId to Profiles (#3338)
  • Parse Hermes Profiling Bytecode Frames (#3342)

Dependencies

sentry-react-native - 5.11.1

Published by getsentry-bot about 1 year ago

Fixes

  • Waif for has-sourcemap-debugid process to exit (#3336)
sentry-react-native - 5.11.0

Published by getsentry-bot about 1 year ago

Features

  • Add buildFeatures.buildConfig=true to support AGP 8 (#3298)

  • Add Debug IDs support (#3164)

    This is optional. Your current setup will keep working as is.

    Add Sentry Metro Serializer to metro.config.js to generate Debug ID for the application bundle and source map.

    const {createSentryMetroSerializer} = require('@sentry/react-native/dist/js/tools/sentryMetroSerializer');
    const config = {serializer: createSentryMetroSerializer()};
    

    On iOS update Bundle React Native Code and Images and Upload Debug Symbols to Sentry build phases.

    set -e
    WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
    REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
    
    /bin/sh -c "$WITH_ENVIRONMENT \"/bin/sh ../scripts/sentry-xcode.sh $REACT_NATIVE_XCODE\""
    
    /bin/sh ../../scripts/sentry-xcode-debug-files.sh
    

    More information about the new setup can be found here.

  • Add SENTRY_DISABLE_AUTO_UPLOAD flag (#3323)

    How to use in Android project? It works by default, just set export SENTRY_DISABLE_AUTO_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_AUTO_UPLOAD=true
    

Fixes

  • App start time span no longer created if too long (#3299)
  • Change log output to show what paths are considered when collecting modules (#3316)
  • Sentry.wrap doesn't enforce any keys on the wrapped component props (#3332)
  • Ignore defaults when warning about duplicate definition of trace propagation targets (#3327)
  • Screenshots are not taken when the SDK is disabled (#3333)
  • Use deprecated ReactNativeTracingOptions.tracingOrigins if set in the options (#3331)

Dependencies

sentry-react-native - 5.10.0

Published by getsentry-bot about 1 year ago

Features

  • Add Hermes Debug Info flag to React Native Context (#3290)
    • This flag equals true when Hermes Bundle contains Debug Info (Hermes Source Map was not emitted)
  • Add enableNdk property to ReactNativeOptions for Android. (#3304)
sentry-react-native - 5.9.2

Published by getsentry-bot about 1 year ago

Fixes

  • Create profiles for start up transactions (#3281)
  • Fix Hermes Bytecode Symbolication one line off (#3283)

Dependencies

sentry-react-native - 5.9.1

Published by getsentry-bot about 1 year ago

  • Bump Cocoa SDK from v8.9.4 to v8.10.0 (#3250)
    • This fixes a compile error for projects that use CocoaPods with use_frameworks! option.
    • changelog
    • diff
sentry-react-native - 5.9.0

Published by getsentry-bot about 1 year ago

Features

  • Add support for React Native mixed stacktraces (#3201)

    In the current react-native@nightly (0.73.0-nightly-20230809-cb60e5c67) JS errors from native modules can
    contain native JVM or Objective-C exception stack trace. Both JS and native stack trace
    are processed by default no configuration needed.

  • Add tracePropagationTargets option (#3230)

    This release adds support for distributed tracing
    without requiring performance monitoring to be active on the React Native SDK.
    This means even if there is no sampled transaction/span, the SDK will still propagate traces to downstream services.
    Distributed Tracing can be configured with the tracePropagationTargets option,
    which controls what requests to attach the sentry-trace and baggage HTTP headers to (which is what propagates tracing information).

      Sentry.init({
        tracePropagationTargets: ["third-party-site.com", /^https:\/\/yourserver\.io\/api/],
      });
    

Fixes

  • Sentry.init must be called before Sentry.wrap(#3227)
    • The SDK now shows warning if incorrect order is detected
  • Stall Time is no longer counted when App is in Background. (#3211)
  • Use application variant instead of variant output to hook to correct package task for modules cleanup (#3161)
  • Fix isNativeAvailable after SDK reinitialization (#3200)

Dependencies

sentry-react-native - 5.8.1

Published by getsentry-bot about 1 year ago

Dependencies

sentry-react-native - 5.8.0

Published by getsentry-bot about 1 year ago

Features

  • Alpha support for Hermes JavaScript Profiling (#3057)

    Profiling is disabled by default. To enable it, configure both
    tracesSampleRate and profilesSampleRate when initializing the SDK:

      Sentry.init({
        dsn: '__DSN__',
        tracesSampleRate: 1.0,
        _experiments: {
          // The sampling rate for profiling is relative to TracesSampleRate.
          // In this case, we'll capture profiles for 100% of transactions.
          profilesSampleRate: 1.0,
        },
      });
    

    More documentation on profiling and current limitations can be found here.

Fixes

  • Warn users about multiple versions of promise package which can cause unexpected behavior like undefined Promise.allSettled (#3162)
  • Event is enriched with all the Android context on the JS layer and you can filter/modify all the data in the beforeSend callback similarly to iOS. (#3170)

Dependencies

sentry-react-native - 5.7.1

Published by getsentry-bot over 1 year ago

Dependencies

sentry-react-native - 5.7.0

Published by getsentry-bot over 1 year ago

Fixes

  • Filter beforeSendTransaction from the Native SDK (#3140)

Features

  • Use android.namespace for AGP 8 and RN 0.73 (#3133)

Dependencies

sentry-react-native - 5.6.0

Published by getsentry-bot over 1 year ago

Features

  • Overwrite Expo bundle names in stack frames (#3115)
    • This enables source maps to resolve correctly without using sentry-expo package

Fixes

  • Disable enableNative if Native SDK is not available (#3099)
  • Dynamically resolve collectModulesScript path to support monorepos (#3092)
  • Native wrapper methods don't throw disabled error after re-initializing (#3093)

Dependencies

sentry-react-native - 5.5.0

Published by getsentry-bot over 1 year ago

Features

  • Add expo, react_native_version and hermes_version to React Native Context (#3050)

Dependencies

sentry-react-native - 5.4.2

Published by getsentry-bot over 1 year ago

Fixes

  • Fix event.origin and event.environment on unhandled exception (#3041)
  • Don't pass enableTracing from RN to sentry-cocoa options (#3042)
  • Only store envelopes of fatal crashes on iOS (#3051)

Dependencies