Skip to content

Commit 1e0e8e0

Browse files
authored
Merge branch 'main' into antonis/rn-0.83.1
2 parents 26999bb + 61fa569 commit 1e0e8e0

File tree

14 files changed

+2677
-567
lines changed

14 files changed

+2677
-567
lines changed

.github/workflows/changelog-preview.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ permissions:
1414

1515
jobs:
1616
changelog-preview:
17-
uses: getsentry/craft/.github/workflows/changelog-preview.yml@fd370d4d54bec9ff07f909d88a3c4aec6f0ba22b # V2
17+
uses: getsentry/craft/.github/workflows/changelog-preview.yml@beea4aba589c66381258cbd131c5551ae8245b82 # V2
1818
secrets: inherit

.github/workflows/codeql-analysis.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ jobs:
4444

4545
# Initializes the CodeQL tools for scanning.
4646
- name: Initialize CodeQL
47-
uses: github/codeql-action/init@19b2f06db2b6f5108140aeb04014ef02b648f789 # pin@v4.31.11
47+
uses: github/codeql-action/init@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # pin@v4.32.0
4848
with:
4949
languages: ${{ matrix.language }}
5050
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -55,7 +55,7 @@ jobs:
5555
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
5656
# If this step fails, then you should remove it and run the build manually (see below)
5757
- name: Autobuild
58-
uses: github/codeql-action/autobuild@19b2f06db2b6f5108140aeb04014ef02b648f789 # pin@v4.31.11
58+
uses: github/codeql-action/autobuild@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # pin@v4.32.0
5959

6060
# ℹ️ Command-line programs to run using the OS shell.
6161
# 📚 https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions
@@ -66,4 +66,4 @@ jobs:
6666
# make bootstrap
6767
# make release
6868
- name: Perform CodeQL Analysis
69-
uses: github/codeql-action/analyze@19b2f06db2b6f5108140aeb04014ef02b648f789 # pin@v4.31.11
69+
uses: github/codeql-action/analyze@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # pin@v4.32.0

.github/workflows/e2e-v2.yml

Lines changed: 53 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -42,17 +42,18 @@ jobs:
4242
strategy:
4343
# we want that the matrix keeps running, default is to cancel them if it fails.
4444
fail-fast: false
45+
# Limit parallel jobs to avoid hitting Sauce Labs concurrency limits (max 3 sessions)
46+
max-parallel: 2
4547
matrix:
4648
rn-architecture: ['legacy', 'new']
4749
platform: ["ios", "android"]
4850
include:
4951
- platform: ios
50-
runs-on: macos-26
52+
runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:12"]
5153
name: iOS
5254
appPlain: performance-tests/test-app-plain.ipa
5355
- platform: android
54-
# Not using the latest version due to a known issue: https://github.com/getsentry/sentry-react-native/issues/4418
55-
runs-on: ubuntu-22.04
56+
runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:12"]
5657
name: Android
5758
appPlain: performance-tests/TestAppPlain/android/app/build/outputs/apk/release/app-release.apk
5859
steps:
@@ -61,17 +62,18 @@ jobs:
6162
- uses: ./.github/actions/disk-cleanup
6263
if: ${{ matrix.platform == 'android' }}
6364

64-
- run: sudo xcode-select -s /Applications/Xcode_26.1.1.app/Contents/Developer
65-
if: ${{ matrix.platform == 'ios' }}
66-
67-
- run: npm i -g corepack
65+
- run: corepack enable
6866
- uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6
6967
with:
7068
package-manager-cache: false
7169
node-version: 20
7270
cache: 'yarn'
7371
cache-dependency-path: yarn.lock
7472

73+
- name: Install Ninja
74+
if: ${{ matrix.platform == 'android' }}
75+
run: sudo apt-get update && sudo apt-get install -y ninja-build
76+
7577
- uses: actions/setup-java@v5
7678
with:
7779
java-version: '17'
@@ -80,6 +82,11 @@ jobs:
8082
- name: Gradle cache
8183
uses: gradle/gradle-build-action@v3
8284

85+
- uses: ruby/setup-ruby@v1
86+
if: ${{ matrix.platform == 'ios' }}
87+
with:
88+
ruby-version: '3.3.0'
89+
8390
- name: Install Global Dependencies
8491
run: npm i -g react-native-cli @sentry/cli
8592

@@ -115,9 +122,11 @@ jobs:
115122
if [[ ${{ matrix.rn-architecture }} == 'new' ]]; then
116123
export RCT_NEW_ARCH_ENABLED=1
117124
fi
118-
pod install
125+
bundle install
126+
bundle exec pod install
119127
cd ../..
120-
fastlane build_perf_test_app_plain
128+
bundle install
129+
bundle exec fastlane build_perf_test_app_plain
121130
fi
122131
env:
123132
APP_STORE_CONNECT_KEY_ID: ${{ secrets.APP_STORE_CONNECT_KEY_ID }}
@@ -143,9 +152,11 @@ jobs:
143152
if [[ ${{ matrix.rn-architecture }} == 'new' ]]; then
144153
export RCT_NEW_ARCH_ENABLED=1
145154
fi
146-
pod install
155+
bundle install
156+
bundle exec pod install
147157
cd ../..
148-
fastlane build_perf_test_app_sentry
158+
bundle install
159+
bundle exec fastlane build_perf_test_app_sentry
149160
cd TestAppSentry
150161
fi
151162
env:
@@ -189,15 +200,23 @@ jobs:
189200
# Use Xcode 16 for older RN versions
190201
- platform: ios
191202
rn-version: '0.71.19'
203+
<<<<<<< antonis/rn-0.83.1
192204
xcode-version: '16.4'
193205
runs-on: macos-15
194206
# Use Xcode 26 for newer RN versions (0.84.0-rc.3)
195207
- platform: ios
196208
rn-version: '0.84.0-rc.3'
197209
xcode-version: '26.1.1'
198210
runs-on: macos-26
211+
=======
212+
runs-on: ["ghcr.io/cirruslabs/macos-sequoia-xcode:16.4", "runner_group_id:12"]
213+
# Use Xcode 26 for newer RN versions (0.83.0)
214+
- platform: ios
215+
rn-version: '0.83.0'
216+
runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:12"]
217+
>>>>>>> main
199218
- platform: android
200-
runs-on: ubuntu-latest
219+
runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:12"]
201220
exclude:
202221
# exclude JSC for new RN versions (keeping the matrix manageable)
203222
- rn-version: '0.84.0-rc.3'
@@ -247,17 +266,18 @@ jobs:
247266
echo "SENTRY_RELEASE=$SENTRY_RELEASE"
248267
echo "SENTRY_DIST=$SENTRY_DIST"
249268
250-
- run: sudo xcode-select -s /Applications/Xcode_${{ matrix.xcode-version }}.app/Contents/Developer
251-
if: ${{ matrix.platform == 'ios' }}
252-
253-
- run: npm i -g corepack
269+
- run: corepack enable
254270
- uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6
255271
with:
256272
package-manager-cache: false
257273
node-version: 20
258274
cache: 'yarn'
259275
cache-dependency-path: yarn.lock
260276

277+
- name: Install Ninja
278+
if: ${{ matrix.platform == 'android' }}
279+
run: sudo apt-get update && sudo apt-get install -y ninja-build
280+
261281
- uses: actions/setup-java@v5
262282
with:
263283
java-version: '17'
@@ -322,10 +342,15 @@ jobs:
322342
engine: ['hermes']
323343
include:
324344
- platform: ios
345+
<<<<<<< antonis/rn-0.83.1
325346
rn-version: '0.84.0-rc.3'
326347
runs-on: macos-26
348+
=======
349+
rn-version: '0.83.0'
350+
runs-on: macos-26
351+
>>>>>>> main
327352
- platform: android
328-
runs-on: ubuntu-latest
353+
runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:12"]
329354

330355
steps:
331356
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
@@ -354,14 +379,19 @@ jobs:
354379
path: dev-packages/e2e-tests
355380

356381
- name: Enable Corepack
357-
run: npm i -g corepack
382+
run: corepack enable
383+
358384
- uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6
359385
with:
360386
package-manager-cache: false
361387
node-version: 20
362388
cache: 'yarn'
363389
cache-dependency-path: yarn.lock
364390

391+
- name: Install Ninja
392+
if: ${{ matrix.platform == 'android' }}
393+
run: sudo apt-get update && sudo apt-get install -y ninja-build
394+
365395
- uses: actions/setup-java@v5
366396
with:
367397
java-version: '17'
@@ -417,11 +447,15 @@ jobs:
417447

418448
- name: Run tests on iOS
419449
if: ${{ matrix.platform == 'ios' }}
450+
env:
451+
# Increase timeout for Maestro iOS driver startup (default is 60s, some CI runners need more time)
452+
MAESTRO_DRIVER_STARTUP_TIMEOUT: 120000
420453
run: ./dev-packages/e2e-tests/cli.mjs ${{ matrix.platform }} --test
421454

422455
- name: Upload logs
423456
if: ${{ always() }}
424457
uses: actions/upload-artifact@v6
425458
with:
426459
name: ${{ matrix.rn-version }}-${{ matrix.rn-architecture }}-${{ matrix.engine }}-${{ matrix.platform }}-${{ matrix.build-type }}-${{ matrix.ios-use-frameworks }}-logs
427-
path: ./dev-packages/e2e-tests/maestro-logs
460+
path: |
461+
./dev-packages/e2e-tests/maestro-logs

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ jobs:
4343
cache-dependency-path: yarn.lock
4444

4545
- name: Prepare release
46-
uses: getsentry/craft@fd370d4d54bec9ff07f909d88a3c4aec6f0ba22b # v2
46+
uses: getsentry/craft@beea4aba589c66381258cbd131c5551ae8245b82 # v2
4747
env:
4848
GITHUB_TOKEN: ${{ steps.token.outputs.token }}
4949
with:

.github/workflows/sample-application-expo.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ jobs:
6161
- uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6
6262
with:
6363
package-manager-cache: false
64-
node-version: 18
64+
node-version: 20
6565
cache: 'yarn'
6666
cache-dependency-path: yarn.lock
6767

@@ -106,12 +106,17 @@ jobs:
106106
[[ "${{ matrix.build-type }}" == "production" ]] && ENABLE_PROD=1 || ENABLE_PROD=0
107107
[[ "${{ matrix.ios-use-frameworks }}" == "dynamic-frameworks" ]] && export USE_FRAMEWORKS=dynamic
108108
echo "ENABLE_PROD=$ENABLE_PROD"
109+
# Monorepo fix: Point Sentry SDK to correct React Native version (0.81 vs 0.80)
110+
export REACT_NATIVE_NODE_MODULES_DIR="$(cd ../node_modules/react-native && pwd)"
109111
PRODUCTION=$ENABLE_PROD pod install
110112
cat Podfile.lock | grep $RN_SENTRY_POD_NAME
111113
112114
- name: Build Android App
113115
if: ${{ matrix.platform == 'android' }}
114116
working-directory: samples/expo/android
117+
env:
118+
# Increase memory for Expo SDK 54 lint tasks
119+
GRADLE_OPTS: "-Dorg.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g"
115120
run: |
116121
[[ "${{ matrix.build-type }}" == "production" ]] && CONFIG='Release' || CONFIG='Debug'
117122
echo "Building $CONFIG"

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,9 @@ node_modules.bak
9595
# SwiftLint
9696
swiftlint/*
9797

98-
# Sample app
98+
# Environment variables
9999
samples/*/.env
100+
.env
100101

101102
# Local Claude Code settings that should not be committed
102103
.claude/settings.local.json

.vscode/tasks.json

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,25 @@
1313
"kind": "build",
1414
"isDefault": true
1515
}
16+
},
17+
{
18+
"label": "Claude",
19+
"type": "shell",
20+
"command": "CLAUDE_PATH=$(grep '^CLAUDE_PATH=' .env | cut -d '=' -f2 | tr -d '\"') && $CLAUDE_PATH",
21+
"icon": {
22+
"color": "terminal.ansiRed",
23+
"id": "robot"
24+
},
25+
"presentation": {
26+
"reveal": "always",
27+
"panel": "new",
28+
"focus": true
29+
},
30+
"group": {
31+
"kind": "none",
32+
"isDefault": true
33+
},
34+
"problemMatcher": []
1635
}
1736
]
1837
}

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313
- Bump JavaScript SDK from v10.37.0 to v10.38.0 ([#5596](https://github.com/getsentry/sentry-react-native/pull/5596))
1414
- [changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md#10380)
1515
- [diff](https://github.com/getsentry/sentry-javascript/compare/10.37.0...10.38.0)
16+
- Bump Bundler Plugins from v4.8.0 to v4.9.0 ([#5608](https://github.com/getsentry/sentry-react-native/pull/5608))
17+
- [changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md#490)
18+
- [diff](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.8.0...4.9.0)
1619

1720
## 7.11.0
1821

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,8 @@
6161
"resolutions": {
6262
"appium-chromedriver@npm:5.6.73/@xmldom/xmldom": "0.8.10",
6363
"form-data": "4.0.4",
64-
"tar-fs": "^3.1.1"
64+
"tar-fs": "^3.1.1",
65+
"tar": "^7.5.7"
6566
},
6667
"version": "0.0.0",
6768
"name": "sentry-react-native",

packages/core/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868
"react-native": ">=0.65.0"
6969
},
7070
"dependencies": {
71-
"@sentry/babel-plugin-component-annotate": "4.8.0",
71+
"@sentry/babel-plugin-component-annotate": "4.9.0",
7272
"@sentry/browser": "10.38.0",
7373
"@sentry/cli": "2.58.4",
7474
"@sentry/core": "10.38.0",

0 commit comments

Comments
 (0)