Releases: getsentry/sentry-react-native
6.17.0
Features
-
Add experimental flag
enableUnhandledCPPExceptionsV2
on iOS (#4975)import * as Sentry from '@sentry/react-native'; Sentry.init({ _experiments: { enableUnhandledCPPExceptionsV2: true, }, });
Dependencies
6.16.1
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_address
isundefined
andsendDefaultPii: true
(#4466) Sentry.captureUserFeedback
removed, useSentry.captureFeedback
instead (#4855)
Major Changes from Sentry JS SDK v9
- Exceptions from
captureConsoleIntegration
are now marked as handled: true by default shutdownTimeout
moved fromcore
to@sentry/react-native
hasTracingEnabled
was renamed tohasSpansEnabled
- You can no longer drop spans or return null on
beforeSendSpan
hook - Fork
scope
if custom scope is passed tostartSpanManual
orstartSpan
Removed types
- TransactionNamingScheme
- Request
- Scope (prefer using the Scope class)
Other removed items.
autoSessionTracking
from options.
To enable session tracking, ensure thatenableAutoSessionTracking
is enabled.enableTracing
. Instead, settracesSampleRate
to a value greater thanzero
toenable tracing
,0
to keep tracing integrations active without sampling, orundefined
to disable the performance integration.getCurrentHub()
,Hub
, andgetCurrentHubShim()
spanId
from propagationcontext
- metrics API
transactionContext
fromsamplingContext
@sentry/utils
package, the exports were moved to@sentry/core
- Standalone
Client
interface & 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
logger
andconsoleLoggingIntegration
(#4930) - Remove deprecated
appOwnership
constant 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.0
or new for React Native V7 or newer
Dependencies
6.16.0
Features
-
Introducing
@sentry/react-native/playground
(#4916)The new
withSentryPlayground
component 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_address
isundefined
andsendDefaultPii: true
(#4466) Sentry.captureUserFeedback
removed, useSentry.captureFeedback
instead (#4855)
Major Changes from Sentry JS SDK v9
- Exceptions from
captureConsoleIntegration
are now marked as handled: true by default shutdownTimeout
moved fromcore
to@sentry/react-native
hasTracingEnabled
was renamed tohasSpansEnabled
- You can no longer drop spans or return null on
beforeSendSpan
hook - Fork
scope
if custom scope is passed tostartSpanManual
orstartSpan
Removed types
- TransactionNamingScheme
- Request
- Scope (prefer using the Scope class)
Other removed items.
autoSessionTracking
from options.
To enable session tracking, ensure thatenableAutoSessionTracking
is enabled.enableTracing
. Instead, settracesSampleRate
to a value greater thanzero
toenable tracing
,0
to keep tracing integrations active without sampling, orundefined
to disable the performance integration.getCurrentHub()
,Hub
, andgetCurrentHubShim()
spanId
from propagationcontext
- metrics API
transactionContext
fromsamplingContext
@sentry/utils
package, the exports were moved to@sentry/core
- Standalone
Client
interface & deprecateBaseClient
Changes
- Use
Replay
interface forbrowserReplayIntegration
return type (#4858) - Allow using
browserReplayIntegration
withoutisWeb
guard (#4858)- The integration returns noop in non-browser environments
- Use single
encodeUTF8
implementation through the SDK (#4885) - Use global
TextEncoder
(available with Hermes in React Native 0.74 or higher) to improve envelope encoding performance. (#4874) breadcrumbsIntegration
disables React Native incompatible options automatically (#4886)- On React Native Web,
browserSessionIntegration
is added whenenableAutoSessionTracking
is set toTrue
(#4732) - Change
Cold/Warm App Start
span description toCold/Warm Start
(#4636)
Dependencies
6.15.0
Features
-
User Feedback Widget Updates
FeedbackButton
for easy access to the widget (#4378)ScreenshotButton
for 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
ErrorEvent
andTransactionEvent
types (#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
parentSpanId
was removed (#4881)
Dependencies
6.14.0
Fixes
- Expo Updates Context is passed to native after native init to be available for crashes (#4808)
- Expo Updates Context values should all be lowercase (#4809)
- Avoid duplicate network requests (fetch, xhr) by default (#4816)
traceFetch
is disabled by default on mobile as RN uses a polyfill which will be traced bytraceXHR
Changes
- Renames
enableExperimentalViewRenderer
toenableViewRendererV2
which is enabled by default for up to 5x times more performance in Session Replay on iOS (#4815)
Dependencies
7.0.0-alpha.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.
Fixes
- Expo Updates Context is passed to native after native init to be available for crashes (#4808)
- Expo Updates Context values should all be lowercase (#4809)
- Avoid duplicate network requests (fetch, xhr) by default (#4816)
traceFetch
is disabled by default on mobile as RN uses a polyfill which will be traced bytraceXHR
Major Changes
- Set
{{auto}}
ifuser.ip_address
isundefined
andsendDefaultPii: true
(#4466) - Exceptions from
captureConsoleIntegration
are now marked as handled: true by default shutdownTimeout
moved fromcore
to@sentry/react-native
hasTracingEnabled
was renamed tohasSpansEnabled
- You can no longer drop spans or return null on
beforeSendSpan
hook
Removed types
- TransactionNamingScheme
- Request
- Scope (prefer using the Scope class)
Other removed items.
autoSessionTracking
from options.
To enable session tracking, ensure thatenableAutoSessionTracking
is enabled.enableTracing
. Instead, settracesSampleRate
to a value greater thanzero
toenable tracing
,0
to keep tracing integrations active without sampling, orundefined
to disable the performance integration.getCurrentHub()
,Hub
, andgetCurrentHubShim()
spanId
from propagationcontext
- metrics API
transactionContext
fromsamplingContext
@sentry/utils
package, the exports were moved to@sentry/core
- Standalone
Client
interface & deprecateBaseClient
Other Changes
- Fork
scope
if custom scope is passed tostartSpanManual
orstartSpan
- On React Native Web,
browserSessionIntegration
is added whenenableAutoSessionTracking
is set toTrue
(#4732)
ChangeCold/Warm App Start
span description toCold/Warm Start
(#4636)