Skip to content

Commit c26618b

Browse files
Merge 806e787 into d43b056
2 parents d43b056 + 806e787 commit c26618b

File tree

205 files changed

+3290
-1012
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

205 files changed

+3290
-1012
lines changed

CHANGELOG.md

Lines changed: 259 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,203 @@
22

33
<!-- prettier-ignore-start -->
44
> [!IMPORTANT]
5-
> If you are upgrading to the `6.x` versions of the Sentry React Native SDK from `5.x` or below,
5+
> If you are upgrading to the `7.x` versions of the Sentry React Native SDK from `6.x` or below,
66
> make sure you follow our [migration guide](https://docs.sentry.io/platforms/react-native/migration/) first.
77
<!-- prettier-ignore-end -->
88
9+
## 7.0.0-rc.1
10+
11+
### Various fixes & improvements
12+
13+
- fix(sdk): Set `{{auto}}` if `user.ip_address` is `undefined` and `sendDefaultPii: true` (#4466) by @krystofwoldrich
14+
- fix(appStart): Align span description with other platforms (#4636) by @krystofwoldrich
15+
16+
## 7.0.0-beta.2
17+
18+
### Features
19+
20+
- Automatically detect Release name and version for Expo Web ([#4967](https://github.com/getsentry/sentry-react-native/pull/4967))
21+
22+
### Changes
23+
24+
- Expose `featureFlagsIntegration` ([#4984](https://github.com/getsentry/sentry-react-native/pull/4984))
25+
26+
### Breaking changes
27+
28+
- Tags formatting logic updated ([#4965](https://github.com/getsentry/sentry-react-native/pull/4965))
29+
Here are the altered/unaltered types, make sure to update your UI filters and alerts.
30+
31+
Unaltered: string, null, number, and undefined values remain unchanged.
32+
33+
Altered: Boolean values are now capitalized: true -> True, false -> False.
34+
35+
### Fixes
36+
37+
- tags with symbol are now logged ([#4965](https://github.com/getsentry/sentry-react-native/pull/4965))
38+
- ignoreError now filters Native errors ([#4948](https://github.com/getsentry/sentry-react-native/pull/4948))
39+
40+
You can use strings to filter errors or RegEx for filtering with a pattern.
41+
42+
example:
43+
44+
```typescript
45+
ignoreErrors: [
46+
'1234', // Will filter any error message that contains 1234.
47+
'.*1234', // Will not filter as regex, instead will filter messages that contains '.*1234"
48+
/.*1234/, // Regex will filter any error message that ends with 1234
49+
/.*1234.*/ // Regex will filter any error message that contains 1234.
50+
]
51+
```
52+
53+
### Dependencies
54+
55+
- Bump Android SDK from v8.14.0 to v8.17.0 ([#4953](https://github.com/getsentry/sentry-react-native/pull/4953), [#4955](https://github.com/getsentry/sentry-react-native/pull/4955), [#4987](https://github.com/getsentry/sentry-react-native/pull/4987))
56+
- [changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8170)
57+
- [diff](https://github.com/getsentry/sentry-java/compare/8.14.0...8.17.0)
58+
59+
## 7.0.0-beta.1
60+
61+
### Upgrading from 6.x to 7.0
62+
63+
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.
64+
65+
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.
66+
67+
### Major Changes
68+
69+
- Set `{{auto}}` if `user.ip_address` is `undefined` and `sendDefaultPii: true` ([#4466](https://github.com/getsentry/sentry-react-native/pull/4466))
70+
- `Sentry.captureUserFeedback` removed, use `Sentry.captureFeedback` instead ([#4855](https://github.com/getsentry/sentry-react-native/pull/4855))
71+
72+
### Major Changes from Sentry JS SDK v9
73+
74+
- Exceptions from `captureConsoleIntegration` are now marked as handled: true by default
75+
- `shutdownTimeout` moved from `core` to `@sentry/react-native`
76+
- `hasTracingEnabled` was renamed to `hasSpansEnabled`
77+
- You can no longer drop spans or return null on `beforeSendSpan` hook
78+
- Fork `scope` if custom scope is passed to `startSpanManual` or `startSpan`
79+
80+
#### Removed types
81+
82+
- TransactionNamingScheme
83+
- Request
84+
- Scope (prefer using the Scope class)
85+
86+
#### Other removed items.
87+
88+
- `autoSessionTracking` from options.
89+
To enable session tracking, ensure that `enableAutoSessionTracking` is enabled.
90+
- `enableTracing`. Instead, set `tracesSampleRate` to a value greater than `zero` to `enable tracing`, `0` to keep tracing integrations active without sampling, or `undefined` to disable the performance integration.
91+
- `getCurrentHub()`, `Hub`, and `getCurrentHubShim()`
92+
- `spanId` from propagation `context`
93+
- metrics API
94+
- `transactionContext` from `samplingContext`
95+
- `@sentry/utils` package, the exports were moved to `@sentry/core`
96+
- Standalone `Client` interface & deprecate `BaseClient`
97+
98+
### Features
99+
100+
- Add experimental support for Log tracing ([#4827](https://github.com/getsentry/sentry-react-native/pull/4827))
101+
102+
To enable it add the following code to your Sentry Options:
103+
104+
```typescript
105+
Sentry.init({
106+
// other options...
107+
_experiments: {
108+
enableLogs: true,
109+
},
110+
});
111+
```
112+
113+
You can also filter the logs being collected by adding beforeSendLogs into `_experiments`
114+
115+
```typescript
116+
Sentry.init({
117+
// other options...
118+
_experiments: {
119+
enableLogs: true,
120+
beforeSendLog: (log) => {
121+
return log;
122+
},
123+
}
124+
});
125+
```
126+
127+
### Changes
128+
129+
- Expose `logger` and `consoleLoggingIntegration` ([#4930](https://github.com/getsentry/sentry-react-native/pull/4930))
130+
- Remove deprecated `appOwnership` constant use in Expo Go detection ([#4893](https://github.com/getsentry/sentry-react-native/pull/4893))
131+
- Disable AppStart and NativeFrames in unsupported environments (web, Expo Go) ([#4897](https://github.com/getsentry/sentry-react-native/pull/4897))
132+
133+
### Self Hosted
134+
135+
- It is recommended to use Sentry Self Hosted version `25.2.0` or new for React Native V7 or newer
136+
137+
### Dependencies
138+
139+
- Bump Android SDK from v8.13.2 to v8.14.0 ([#4929](https://github.com/getsentry/sentry-react-native/pull/4929), [#4934](https://github.com/getsentry/sentry-react-native/pull/4934))
140+
- [changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8140)
141+
- [diff](https://github.com/getsentry/sentry-java/compare/8.13.2...8.14.0)
142+
143+
## 7.0.0-beta.0
144+
145+
### Upgrading from 6.x to 7.0
146+
147+
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.
148+
149+
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.
150+
151+
### Major Changes
152+
153+
- Set `{{auto}}` if `user.ip_address` is `undefined` and `sendDefaultPii: true` ([#4466](https://github.com/getsentry/sentry-react-native/pull/4466))
154+
- `Sentry.captureUserFeedback` removed, use `Sentry.captureFeedback` instead ([#4855](https://github.com/getsentry/sentry-react-native/pull/4855))
155+
156+
### Major Changes from Sentry JS SDK v9
157+
158+
- Exceptions from `captureConsoleIntegration` are now marked as handled: true by default
159+
- `shutdownTimeout` moved from `core` to `@sentry/react-native`
160+
- `hasTracingEnabled` was renamed to `hasSpansEnabled`
161+
- You can no longer drop spans or return null on `beforeSendSpan` hook
162+
- Fork `scope` if custom scope is passed to `startSpanManual` or `startSpan`
163+
164+
#### Removed types
165+
166+
- TransactionNamingScheme
167+
- Request
168+
- Scope (prefer using the Scope class)
169+
170+
#### Other removed items.
171+
172+
- `autoSessionTracking` from options.
173+
To enable session tracking, ensure that `enableAutoSessionTracking` is enabled.
174+
- `enableTracing`. Instead, set `tracesSampleRate` to a value greater than `zero` to `enable tracing`, `0` to keep tracing integrations active without sampling, or `undefined` to disable the performance integration.
175+
- `getCurrentHub()`, `Hub`, and `getCurrentHubShim()`
176+
- `spanId` from propagation `context`
177+
- metrics API
178+
- `transactionContext` from `samplingContext`
179+
- `@sentry/utils` package, the exports were moved to `@sentry/core`
180+
- Standalone `Client` interface & deprecate `BaseClient`
181+
182+
### Changes
183+
184+
- Use `Replay` interface for `browserReplayIntegration` return type ([#4858](https://github.com/getsentry/sentry-react-native/pull/4858))
185+
- Allow using `browserReplayIntegration` without `isWeb` guard ([#4858](https://github.com/getsentry/sentry-react-native/pull/4858))
186+
- The integration returns noop in non-browser environments
187+
- Use single `encodeUTF8` implementation through the SDK ([#4885](https://github.com/getsentry/sentry-react-native/pull/4885))
188+
- Use global `TextEncoder` (available with Hermes in React Native 0.74 or higher) to improve envelope encoding performance. ([#4874](https://github.com/getsentry/sentry-react-native/pull/4874))
189+
- `breadcrumbsIntegration` disables React Native incompatible options automatically ([#4886](https://github.com/getsentry/sentry-react-native/pull/4886))
190+
- On React Native Web, `browserSessionIntegration` is added when `enableAutoSessionTracking` is set to `True` ([#4732](https://github.com/getsentry/sentry-react-native/pull/4732))
191+
- Change `Cold/Warm App Start` span description to `Cold/Warm Start` ([#4636](https://github.com/getsentry/sentry-react-native/pull/4636))
192+
193+
### Dependencies
194+
195+
- Bump JavaScript SDK from v8.54.0 to v9.22.0 ([#4568](https://github.com/getsentry/sentry-react-native/pull/4568), [#4752](https://github.com/getsentry/sentry-react-native/pull/4752), [#4860](https://github.com/getsentry/sentry-react-native/pull/4860))
196+
- [changelog](https://github.com/getsentry/sentry-javascript/blob/9.22.0/CHANGELOG.md)
197+
- [diff](https://github.com/getsentry/sentry-javascript/compare/8.54.0...9.22.0)
198+
- Bump Android SDK from v7.20.1 to v8.13.2 ([#4490](https://github.com/getsentry/sentry-react-native/pull/4490), [#4847](https://github.com/getsentry/sentry-react-native/pull/4847))
199+
- [changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8132)
200+
- [diff](https://github.com/getsentry/sentry-java/compare/7.20.1...8.13.2)
201+
9202
## 6.19.0
10203

11204
### Fixes
@@ -194,6 +387,71 @@
194387
- [changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#2460)
195388
- [diff](https://github.com/getsentry/sentry-cli/compare/2.45.0...2.46.0)
196389

390+
## 7.0.0-alpha.0
391+
392+
### Upgrading from 6.x to 7.0
393+
394+
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.
395+
396+
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.
397+
398+
### Fixes
399+
400+
- Expo Updates Context is passed to native after native init to be available for crashes ([#4808](https://github.com/getsentry/sentry-react-native/pull/4808))
401+
- Expo Updates Context values should all be lowercase ([#4809](https://github.com/getsentry/sentry-react-native/pull/4809))
402+
- Avoid duplicate network requests (fetch, xhr) by default ([#4816](https://github.com/getsentry/sentry-react-native/pull/4816))
403+
- `traceFetch` is disabled by default on mobile as RN uses a polyfill which will be traced by `traceXHR`
404+
405+
### Major Changes
406+
407+
- Set `{{auto}}` if `user.ip_address` is `undefined` and `sendDefaultPii: true` ([#4466](https://github.com/getsentry/sentry-react-native/pull/4466))
408+
- Exceptions from `captureConsoleIntegration` are now marked as handled: true by default
409+
- `shutdownTimeout` moved from `core` to `@sentry/react-native`
410+
- `hasTracingEnabled` was renamed to `hasSpansEnabled`
411+
- You can no longer drop spans or return null on `beforeSendSpan` hook
412+
413+
### Removed types
414+
415+
- TransactionNamingScheme
416+
- Request
417+
- Scope (prefer using the Scope class)
418+
419+
### Other removed items.
420+
421+
- `autoSessionTracking` from options.
422+
To enable session tracking, ensure that `enableAutoSessionTracking` is enabled.
423+
- `enableTracing`. Instead, set `tracesSampleRate` to a value greater than `zero` to `enable tracing`, `0` to keep tracing integrations active without sampling, or `undefined` to disable the performance integration.
424+
- `getCurrentHub()`, `Hub`, and `getCurrentHubShim()`
425+
- `spanId` from propagation `context`
426+
- metrics API
427+
- `transactionContext` from `samplingContext`
428+
- `@sentry/utils` package, the exports were moved to `@sentry/core`
429+
- Standalone `Client` interface & deprecate `BaseClient`
430+
431+
### Other Changes
432+
433+
- Fork `scope` if custom scope is passed to `startSpanManual` or `startSpan`
434+
- On React Native Web, `browserSessionIntegration` is added when `enableAutoSessionTracking` is set to `True` ([#4732](https://github.com/getsentry/sentry-react-native/pull/4732))
435+
- Change `Cold/Warm App Start` span description to `Cold/Warm Start` ([#4636](https://github.com/getsentry/sentry-react-native/pull/4636))
436+
437+
### Dependencies
438+
439+
- Bump JavaScript SDK from v8.54.0 to v9.12.0 ([#4568](https://github.com/getsentry/sentry-react-native/pull/4568), [#4752](https://github.com/getsentry/sentry-react-native/pull/4752))
440+
- [changelog](https://github.com/getsentry/sentry-javascript/blob/9.12.0/CHANGELOG.md)
441+
- [diff](https://github.com/getsentry/sentry-javascript/compare/8.54.0...9.12.0)
442+
- Bump Android SDK from v7.20.1 to v8.11.1 ([#4490](https://github.com/getsentry/sentry-react-native/pull/4490))
443+
- [changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8111)
444+
- [diff](https://github.com/getsentry/sentry-java/compare/7.20.1...8.11.1)
445+
- Bump CLI from v2.43.1 to v2.45.0 ([#4804](https://github.com/getsentry/sentry-react-native/pull/4804), [#4818](https://github.com/getsentry/sentry-react-native/pull/4818))
446+
- [changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#2450)
447+
- [diff](https://github.com/getsentry/sentry-cli/compare/2.43.1...2.45.0)
448+
- Bump Bundler Plugins from v3.3.1 to v3.4.0 ([#4805](https://github.com/getsentry/sentry-react-native/pull/4805))
449+
- [changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md#340)
450+
- [diff](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.3.1...3.4.0)
451+
- Bump Cocoa SDK from v8.49.2 to v8.50.0 ([#4807](https://github.com/getsentry/sentry-react-native/pull/4807))
452+
- [changelog](https://github.com/getsentry/sentry-cocoa/blob/main/CHANGELOG.md#8500)
453+
- [diff](https://github.com/getsentry/sentry-cocoa/compare/8.49.2...8.50.0)
454+
197455
## 6.14.0
198456

199457
### Fixes

dev-packages/e2e-tests/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "sentry-react-native-e2e-tests",
3-
"version": "6.19.0",
3+
"version": "7.0.0-rc.1",
44
"private": true,
55
"description": "Sentry React Native End to End Tests Library",
66
"main": "dist/index.js",
@@ -13,8 +13,8 @@
1313
"devDependencies": {
1414
"@babel/preset-env": "^7.25.3",
1515
"@babel/preset-typescript": "^7.18.6",
16-
"@sentry/core": "8.55.0",
17-
"@sentry/react-native": "6.19.0",
16+
"@sentry/core": "9.22.0",
17+
"@sentry/react-native": "7.0.0-rc.1",
1818
"@types/node": "^20.9.3",
1919
"@types/react": "^18.2.64",
2020
"appium": "2.4.1",

dev-packages/type-check/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "sentry-react-native-type-check",
33
"private": true,
4-
"version": "6.19.0",
4+
"version": "7.0.0-rc.1",
55
"scripts": {
66
"type-check": "./run-type-check.sh"
77
}

dev-packages/type-check/ts3.8-test/index.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ declare global {
33
interface IDBObjectStore {}
44
interface Window {
55
fetch: any;
6+
setTimeout: any;
7+
document: any;
68
}
79
interface ShadowRoot {}
810
interface BufferSource {}
@@ -19,6 +21,8 @@ declare global {
1921
redirectCount: number;
2022
}
2123
interface PerformanceEntry {}
24+
interface Performance {}
25+
interface PerformanceNavigationTiming {}
2226
}
2327

2428
declare module 'react-native' {

dev-packages/utils/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "sentry-react-native-samples-utils",
3-
"version": "6.19.0",
3+
"version": "7.0.0-rc.1",
44
"description": "Internal Samples Utils",
55
"main": "index.js",
66
"license": "MIT",

lerna.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "node_modules/lerna/schemas/lerna-schema.json",
3-
"version": "6.19.0",
3+
"version": "7.0.0-rc.1",
44
"packages": [
55
"packages/*",
66
"dev-packages/*",

packages/core/.eslintrc.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ module.exports = {
4040
'@typescript-eslint/no-empty-function': 'off',
4141
'@typescript-eslint/no-explicit-any': 'off',
4242
'@typescript-eslint/unbound-method': 'off',
43+
'import/first': 'off',
4344
},
4445
},
4546
{

0 commit comments

Comments
 (0)