Skip to content

Commit 17717b8

Browse files
authored
Merge 486f25e into a9dc61e
2 parents a9dc61e + 486f25e commit 17717b8

File tree

166 files changed

+20464
-58
lines changed

Some content is hidden

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

166 files changed

+20464
-58
lines changed

.eslintignore

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
# Ignore build generated dir
22
dist
33

4-
# Ignore sample folder
4+
# Ignore standalone apps
55
sample
6+
test/perf/TestApp*
67

78
# Ignore dangerfile
8-
dangerfile.js
9+
dangerfile.js

.github/workflows/e2e.yml

+137-2
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ jobs:
3131
path: |
3232
node_modules
3333
sample/node_modules
34-
key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
34+
key: ${{ github.workflow }}-${{ github.job }}-${{ hashFiles('yarn.lock', 'sample/yarn.lock') }}
3535
- name: Install Dependencies
3636
if: steps.deps-cache.outputs['cache-hit'] != 'true'
3737
run: yarn install
@@ -89,7 +89,7 @@ jobs:
8989
path: |
9090
node_modules
9191
sample/node_modules
92-
key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
92+
key: ${{ github.workflow }}-${{ github.job }}-${{ hashFiles('yarn.lock', 'sample/yarn.lock') }}
9393
- uses: actions/cache@v3
9494
id: pods-cache
9595
with:
@@ -150,3 +150,138 @@ jobs:
150150
with:
151151
name: appium.ios.log
152152
path: ./sample/appium.log
153+
154+
android-metrics:
155+
runs-on: ubuntu-latest
156+
steps:
157+
- uses: actions/checkout@v3
158+
- uses: actions/setup-node@v3
159+
with:
160+
node-version: "12"
161+
- uses: actions/setup-java@v3
162+
with:
163+
java-version: "11"
164+
distribution: "adopt"
165+
- name: Install Global Dependencies
166+
run: yarn global add react-native-cli @sentry/cli yalc
167+
- uses: actions/cache@v3
168+
id: deps-cache
169+
with:
170+
path: |
171+
node_modules
172+
test/perf/TestAppSentry/node_modules
173+
key: ${{ github.workflow }}-${{ github.job }}-${{ hashFiles('yarn.lock', 'test/perf/TestAppSentry/yarn.lock') }}
174+
- name: Install Dependencies
175+
if: steps.deps-cache.outputs['cache-hit'] != 'true'
176+
run: yarn install
177+
- name: Build SDK
178+
run: yarn build
179+
- name: Package SDK
180+
run: yalc publish
181+
- uses: actions/setup-node@v3
182+
with:
183+
node-version: "16"
184+
- name: Install Dependencies - app sentry
185+
if: steps.deps-cache.outputs['cache-hit'] != 'true'
186+
working-directory: ./test/perf/TestAppSentry
187+
run: yarn install
188+
- uses: actions/cache@v3
189+
id: app-plain-cache
190+
with:
191+
path: test/perf/TestAppPlain/android/app/build/outputs/apk/release/app-release.apk
192+
key: ${{ github.workflow }}-${{ github.job }}-appplain-${{ hashFiles('test/perf/TestAppPlain/**') }}
193+
- name: Build app plain
194+
if: steps.app-plain-cache.outputs['cache-hit'] != 'true'
195+
working-directory: ./test/perf/TestAppPlain
196+
run: |
197+
yarn install
198+
(cd android ; ./gradlew assembleRelease)
199+
- name: Build app with Sentry
200+
working-directory: ./test/perf/TestAppSentry
201+
run: |
202+
yalc add @sentry/react-native
203+
yarn install
204+
(cd android ; ./gradlew assembleRelease)
205+
# Remove after build so that the cache isn't invaldiated due to the changes in yarn.lock.
206+
yarn remove @sentry/react-native
207+
- name: Collect apps metrics
208+
uses: getsentry/action-app-sdk-overhead-metrics@v1
209+
with:
210+
name: Android
211+
config: ./test/perf/metrics-android.yml
212+
sauce-user: ${{ secrets.SAUCE_USERNAME }}
213+
sauce-key: ${{ secrets.SAUCE_ACCESS_KEY }}
214+
215+
ios-metrics:
216+
runs-on: macos-latest
217+
steps:
218+
- uses: actions/checkout@v3
219+
- uses: actions/setup-node@v3
220+
with:
221+
node-version: "12"
222+
- uses: actions/setup-java@v3
223+
with:
224+
java-version: "11"
225+
distribution: "adopt"
226+
- name: Install Global Dependencies
227+
run: yarn global add react-native-cli @sentry/cli yalc
228+
- uses: actions/cache@v3
229+
id: deps-cache
230+
with:
231+
path: |
232+
node_modules
233+
test/perf/TestAppSentry/node_modules
234+
key: ${{ github.workflow }}-${{ github.job }}-${{ hashFiles('yarn.lock', 'test/perf/TestAppSentry/yarn.lock') }}
235+
- name: Install Dependencies
236+
if: steps.deps-cache.outputs['cache-hit'] != 'true'
237+
run: yarn install
238+
- name: Build SDK
239+
run: yarn build
240+
- name: Package SDK
241+
run: yalc publish
242+
- uses: actions/setup-node@v3
243+
with:
244+
node-version: "16"
245+
- uses: actions/cache@v3
246+
id: app-plain-cache
247+
with:
248+
path: test/perf/test-app-plain.ipa
249+
key: ${{ github.workflow }}-${{ github.job }}-appplain-${{ hashFiles('test/perf/TestAppPlain/**') }}
250+
- name: Build app plain
251+
if: steps.app-plain-cache.outputs['cache-hit'] != 'true'
252+
working-directory: ./test/perf
253+
run: |
254+
(cd TestAppPlain ; yarn install)
255+
(cd TestAppPlain/ios ; pod install)
256+
fastlane build_perf_test_app_plain
257+
env:
258+
APP_STORE_CONNECT_KEY_ID: ${{ secrets.APP_STORE_CONNECT_KEY_ID }}
259+
APP_STORE_CONNECT_ISSUER_ID: ${{ secrets.APP_STORE_CONNECT_ISSUER_ID }}
260+
APP_STORE_CONNECT_KEY: ${{ secrets.APP_STORE_CONNECT_KEY }}
261+
FASTLANE_KEYCHAIN_PASSWORD: ${{ secrets.FASTLANE_KEYCHAIN_PASSWORD }}
262+
MATCH_GIT_PRIVATE_KEY: ${{ secrets.MATCH_GIT_PRIVATE_KEY }}
263+
MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}
264+
MATCH_USERNAME: ${{ secrets.MATCH_USERNAME }}
265+
- name: Build app with Sentry
266+
working-directory: ./test/perf
267+
run: |
268+
(cd TestAppSentry ; yalc add @sentry/react-native; yarn install)
269+
(cd TestAppSentry/ios ; pod install)
270+
fastlane build_perf_test_app_sentry
271+
# Remove after build so that the cache isn't invaldiated due to the changes in yarn.lock.
272+
(cd TestAppSentry ; yarn remove @sentry/react-native)
273+
env:
274+
APP_STORE_CONNECT_KEY_ID: ${{ secrets.APP_STORE_CONNECT_KEY_ID }}
275+
APP_STORE_CONNECT_ISSUER_ID: ${{ secrets.APP_STORE_CONNECT_ISSUER_ID }}
276+
APP_STORE_CONNECT_KEY: ${{ secrets.APP_STORE_CONNECT_KEY }}
277+
FASTLANE_KEYCHAIN_PASSWORD: ${{ secrets.FASTLANE_KEYCHAIN_PASSWORD }}
278+
MATCH_GIT_PRIVATE_KEY: ${{ secrets.MATCH_GIT_PRIVATE_KEY }}
279+
MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}
280+
MATCH_USERNAME: ${{ secrets.MATCH_USERNAME }}
281+
- name: Collect apps metrics
282+
uses: getsentry/action-app-sdk-overhead-metrics@v1
283+
with:
284+
name: iOS
285+
config: ./test/perf/metrics-ios.yml
286+
sauce-user: ${{ secrets.SAUCE_USERNAME }}
287+
sauce-key: ${{ secrets.SAUCE_ACCESS_KEY }}

.github/workflows/release.yml

+5-1
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,14 @@ on:
88
force:
99
description: Force a release even when there are release-blockers (optional)
1010
required: false
11+
merge_target:
12+
description: Target branch to merge into. Uses the default branch as a fallback (optional)
13+
required: false
1114

1215
jobs:
1316
job_release:
1417
runs-on: ubuntu-latest
15-
name: 'Release a new version'
18+
name: "Release a new version"
1619
steps:
1720
- name: Check out current commit (${{ github.sha }})
1821
uses: actions/checkout@v3
@@ -28,3 +31,4 @@ jobs:
2831
with:
2932
version: ${{ github.event.inputs.version }}
3033
force: ${{ github.event.inputs.force }}
34+
merge_target: ${{ github.event.inputs.merge_target }}

CHANGELOG.md

+28
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# Changelog
22

3+
## Unreleased
4+
5+
- Latest changes from 4.5.0
6+
7+
### Breaking changes
8+
9+
- New ReactNativeTracingOptions idleTimeoutMs and finalTimeoutMs replacing idleTimeout and maxTransactionDuration respectively ([#2481](https://github.com/getsentry/sentry-react-native/pull/2481))
10+
311
## 4.5.0
412

513
### Features
@@ -40,6 +48,16 @@
4048
- [changelog](https://github.com/getsentry/sentry-cocoa/blob/master/CHANGELOG.md#7251)
4149
- [diff](https://github.com/getsentry/sentry-cocoa/compare/7.24.1...7.25.1)
4250

51+
## 5.0.0-alpha.3
52+
53+
- Latest changes from 4.3.x
54+
55+
### Dependencies
56+
57+
- Bump Wizard from v2.0.0 to v2.2.0 ([#2460](https://github.com/getsentry/sentry-react-native/pull/2460))
58+
- [changelog](https://github.com/getsentry/sentry-wizard/blob/master/CHANGELOG.md#v220)
59+
- [diff](https://github.com/getsentry/sentry-wizard/compare/v2.0.0...v2.2.0)
60+
4361
## 4.3.0
4462

4563
### Features
@@ -64,6 +82,16 @@
6482

6583
- ReactNativeTracing wrongly marks transactions as deadline_exceeded when it reaches the idleTimeout ([#2427](https://github.com/getsentry/sentry-react-native/pull/2427))
6684

85+
## 5.0.0-alpha.2
86+
87+
- Latest changes from 4.2.x
88+
89+
## 5.0.0-alpha.1
90+
91+
### Fixes
92+
93+
- Auto linking for RN >= 0.69 ([#2332](https://github.com/getsentry/sentry-react-native/pull/2332))
94+
6795
## 4.2.3
6896

6997
### Fixes

package.json

+7-13
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "@sentry/react-native",
33
"homepage": "https://github.com/getsentry/sentry-react-native",
44
"repository": "https://github.com/getsentry/sentry-react-native",
5-
"version": "4.5.0",
5+
"version": "5.0.0-alpha.3",
66
"description": "Official Sentry SDK for react-native",
77
"typings": "dist/js/index.d.ts",
88
"types": "dist/js/index.d.ts",
@@ -48,13 +48,13 @@
4848
"@sentry/react": "7.13.0",
4949
"@sentry/tracing": "7.13.0",
5050
"@sentry/types": "7.13.0",
51-
"@sentry/utils": "7.13.0",
52-
"@sentry/wizard": "1.2.17"
51+
"@sentry/utils": "7.13.0"
5352
},
5453
"devDependencies": {
5554
"@sentry-internal/eslint-config-sdk": "7.13.0",
5655
"@sentry-internal/eslint-plugin-sdk": "7.13.0",
5756
"@sentry/typescript": "^5.20.1",
57+
"@sentry/wizard": "2.2.0",
5858
"@types/jest": "^26.0.15",
5959
"@types/react": "^16.9.49",
6060
"@types/react-native": "^0.66.11",
@@ -72,18 +72,12 @@
7272
"typescript": "3.8.3"
7373
},
7474
"rnpm": {
75-
"commands": {
76-
"postlink": "node node_modules/@sentry/wizard/dist/bin.js -i reactNative -p ios android",
77-
"postunlink": "node node_modules/@sentry/wizard/dist/bin.js -i reactNative -p ios android --uninstall"
78-
},
75+
"commands": {},
7976
"android": {
80-
"packageInstance": "new RNSentryPackage()"
77+
"packageInstance": "new RNSentryPackage()",
78+
"packageImportPath": "import io.sentry.react.RNSentryPackage;"
8179
},
82-
"ios": {
83-
"sharedLibraries": [
84-
"libz"
85-
]
86-
}
80+
"ios": {}
8781
},
8882
"jest": {
8983
"collectCoverage": true,

react-native.config.js

+3-10
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,11 @@
11
module.exports = {
22
dependency: {
33
platforms: {
4-
ios: {
5-
sharedLibraries: ['libz']
6-
},
4+
ios: {},
75
android: {
8-
packageInstance: 'new RNSentryPackage()'
6+
packageInstance: 'new RNSentryPackage()',
7+
packageImportPath: 'import io.sentry.react.RNSentryPackage;'
98
}
10-
},
11-
hooks: {
12-
postlink:
13-
'node node_modules/@sentry/wizard/dist/bin.js -i reactNative -p ios android',
14-
postunlink:
15-
'node node_modules/@sentry/wizard/dist/bin.js -i reactNative -p ios android --uninstall'
169
}
1710
}
1811
};

0 commit comments

Comments
 (0)