Releases: getsentry/sentry-react-native
6.18.1 (Stable)
Fixes
- Fixed Sentry CLI executable path resolution that was causing iOS build script failures (#5003)
6.18.0
Fixes
Dependencies
7.0.0-beta.2
Features
- Automatically detect Release name and version for Expo Web (#4967)
Changes
- Expose
featureFlagsIntegration(#4984)
Breaking changes
-
Tags formatting logic updated (#4965)
Here are the altered/unaltered types, make sure to update your UI filters and alerts.Unaltered: string, null, number, and undefined values remain unchanged.
Altered: Boolean values are now capitalized: true -> True, false -> False.
Fixes
You can use strings to filter errors or RegEx for filtering with a pattern.
example:
ignoreErrors: [
'1234', // Will filter any error message that contains 1234.
'.*1234', // Will not filter as regex, instead will filter messages that contains '.*1234"
/.*1234/, // Regex will filter any error message that ends with 1234
/.*1234.*/ // Regex will filter any error message that contains 1234.
]Dependencies
6.17.0
Features
-
Add experimental flag
enableUnhandledCPPExceptionsV2on iOS (#4975)import * as Sentry from '@sentry/react-native'; Sentry.init({ _experiments: { enableUnhandledCPPExceptionsV2: true, }, });
Dependencies
6.16.1 (Stable)
7.0.0-beta.1
Upgrading from 6.x to 7.0
Version 7 of the Sentry React Native SDK primarily introduces API cleanup and version support changes based on the Sentry Javascript SDK version 9. This update contains behavioral changes that will not be caught by type checkers, linters, or tests, so we recommend carefully reading through the entire migration guide instead of relying on automatic tooling.
Version 7 of the SDK is compatible with Sentry self-hosted versions 24.4.2 or higher (unchanged from v6). Lower versions may continue to work, but may not support all features.
Major Changes
- Set
{{auto}}ifuser.ip_addressisundefinedandsendDefaultPii: true(#4466) Sentry.captureUserFeedbackremoved, useSentry.captureFeedbackinstead (#4855)
Major Changes from Sentry JS SDK v9
- Exceptions from
captureConsoleIntegrationare now marked as handled: true by default shutdownTimeoutmoved fromcoreto@sentry/react-nativehasTracingEnabledwas renamed tohasSpansEnabled- You can no longer drop spans or return null on
beforeSendSpanhook - Fork
scopeif custom scope is passed tostartSpanManualorstartSpan
Removed types
- TransactionNamingScheme
- Request
- Scope (prefer using the Scope class)
Other removed items.
autoSessionTrackingfrom options.
To enable session tracking, ensure thatenableAutoSessionTrackingis enabled.enableTracing. Instead, settracesSampleRateto a value greater thanzerotoenable tracing,0to keep tracing integrations active without sampling, orundefinedto disable the performance integration.getCurrentHub(),Hub, andgetCurrentHubShim()spanIdfrom propagationcontext- metrics API
transactionContextfromsamplingContext@sentry/utilspackage, the exports were moved to@sentry/core- Standalone
Clientinterface & deprecateBaseClient
Features
- Add experimental support for Log tracing (#4827)
To enable it add the following code to your Sentry Options:
Sentry.init({
// other options...
_experiments: {
enableLogs: true,
},
});You can also filter the logs being collected by adding beforeSendLogs into _experiments
Sentry.init({
// other options...
_experiments: {
enableLogs: true,
beforeSendLog: (log) => {
return log;
},
}
});Changes
- Expose
loggerandconsoleLoggingIntegration(#4930) - Remove deprecated
appOwnershipconstant use in Expo Go detection (#4893) - Disable AppStart and NativeFrames in unsupported environments (web, Expo Go) (#4897)
Self Hosted
- It is recommended to use Sentry Self Hosted version
25.2.0or new for React Native V7 or newer
Dependencies
6.16.0
Features
-
Introducing
@sentry/react-native/playground(#4916)The new
withSentryPlaygroundcomponent allows developers to verify
that the SDK is properly configured and reports errors as expected.import * as Sentry from '@sentry/react-native'; import { withSentryPlayground } from '@sentry/react-native/playground'; function App() { return <View>...</View>; } export default withSentryPlayground( Sentry.wrap(App) );
Fixes
6.15.1 (Stable)
7.0.0-beta.0
Upgrading from 6.x to 7.0
Version 7 of the Sentry React Native SDK primarily introduces API cleanup and version support changes based on the Sentry Javascript SDK version 9. This update contains behavioral changes that will not be caught by type checkers, linters, or tests, so we recommend carefully reading through the entire migration guide instead of relying on automatic tooling.
Version 7 of the SDK is compatible with Sentry self-hosted versions 24.4.2 or higher (unchanged from v6). Lower versions may continue to work, but may not support all features.
Major Changes
- Set
{{auto}}ifuser.ip_addressisundefinedandsendDefaultPii: true(#4466) Sentry.captureUserFeedbackremoved, useSentry.captureFeedbackinstead (#4855)
Major Changes from Sentry JS SDK v9
- Exceptions from
captureConsoleIntegrationare now marked as handled: true by default shutdownTimeoutmoved fromcoreto@sentry/react-nativehasTracingEnabledwas renamed tohasSpansEnabled- You can no longer drop spans or return null on
beforeSendSpanhook - Fork
scopeif custom scope is passed tostartSpanManualorstartSpan
Removed types
- TransactionNamingScheme
- Request
- Scope (prefer using the Scope class)
Other removed items.
autoSessionTrackingfrom options.
To enable session tracking, ensure thatenableAutoSessionTrackingis enabled.enableTracing. Instead, settracesSampleRateto a value greater thanzerotoenable tracing,0to keep tracing integrations active without sampling, orundefinedto disable the performance integration.getCurrentHub(),Hub, andgetCurrentHubShim()spanIdfrom propagationcontext- metrics API
transactionContextfromsamplingContext@sentry/utilspackage, the exports were moved to@sentry/core- Standalone
Clientinterface & deprecateBaseClient
Changes
- Use
Replayinterface forbrowserReplayIntegrationreturn type (#4858) - Allow using
browserReplayIntegrationwithoutisWebguard (#4858)- The integration returns noop in non-browser environments
- Use single
encodeUTF8implementation through the SDK (#4885) - Use global
TextEncoder(available with Hermes in React Native 0.74 or higher) to improve envelope encoding performance. (#4874) breadcrumbsIntegrationdisables React Native incompatible options automatically (#4886)- On React Native Web,
browserSessionIntegrationis added whenenableAutoSessionTrackingis set toTrue(#4732) - Change
Cold/Warm App Startspan description toCold/Warm Start(#4636)
Dependencies
6.15.0
Features
-
User Feedback Widget Updates
FeedbackButtonfor easy access to the widget (#4378)ScreenshotButtonfor capturing the application visuals (#4714)- Theming support to better align with the application styles (#4677)
Sentry.init({ integrations: [ Sentry.feedbackIntegration({ enableTakeScreenshot: true, // Enables `ScreenshotButton` themeDark: { // Add dark theme styles here }, themeLight: { // Add light theme styles here }, }), ], }); Sentry.showFeedbackButton(); Sentry.hideFeedbackButton();
To learn more visit the documentation.
-
Re-export
ErrorEventandTransactionEventtypes (#4859)
Fixes
- crashedLastRun now returns the correct value (#4829)
- Use engine-specific promise rejection tracking (#4826)
- Fixes Feedback Widget accessibility issue on iOS (#4739)
- Measuring TTID or TTFD could cause a crash when
parentSpanIdwas removed (#4881)