Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions .github/workflows/e2e-v2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -164,15 +164,15 @@ jobs:
strategy:
fail-fast: false # keeps matrix running if one fails
matrix:
rn-version: ['0.65.3', '0.81.0']
rn-version: ['0.65.3', '0.82.0-rc.1']
rn-architecture: ['legacy', 'new']
platform: ['android', 'ios']
build-type: ['production']
ios-use-frameworks: ['no', 'static', 'dynamic']
engine: ['hermes', 'jsc']
include:
- platform: ios
rn-version: '0.81.0'
rn-version: '0.82.0-rc.1'
xcode-version: '16.2'
runs-on: macos-14
- platform: ios
Expand All @@ -183,7 +183,7 @@ jobs:
runs-on: ubuntu-latest
exclude:
# exclude JSC for new RN versions (keeping the matrix manageable)
- rn-version: '0.81.0'
- rn-version: '0.82.0-rc.1'
engine: 'jsc'
# exclude all rn versions lower than 0.70.0 for new architecture
- rn-version: '0.65.3'
Expand Down Expand Up @@ -304,15 +304,15 @@ jobs:
strategy:
fail-fast: false # keeps matrix running if one fails
matrix:
rn-version: ['0.65.3', '0.81.0']
rn-version: ['0.65.3', '0.82.0-rc.1']
rn-architecture: ['legacy', 'new']
platform: ['android', 'ios']
build-type: ['production']
ios-use-frameworks: ['no'] # test only no framworks
engine: ['hermes', 'jsc']
include:
- platform: ios
rn-version: '0.81.0'
rn-version: '0.82.0-rc.1'
runs-on: macos-14
- platform: ios
rn-version: '0.65.3'
Expand All @@ -326,7 +326,7 @@ jobs:
# e2e test only the default combinations
- rn-version: '0.65.3'
engine: 'hermes'
- rn-version: '0.81.0'
- rn-version: '0.82.0-rc.1'
engine: 'jsc'

steps:
Expand Down
6 changes: 5 additions & 1 deletion dev-packages/e2e-tests/patch-scripts/rn.patch.xcode.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ if (!args['rn-version']) {
debug.log('Patching Xcode project', args.project, 'for RN version', args['rn-version']);

const newBundleScriptRNVersion = '0.69.0-rc.0';
const quotesFixRNVersion = '0.81.1'; // Version where quotes break the script

let bundleScript;
let bundleScriptRegex;
Expand All @@ -38,11 +39,14 @@ export NODE_BINARY=node
bundlePatchRegex = /sentry-cli\s+react-native[\s-]xcode/;
} else if (semver.satisfies(args['rn-version'], `>= ${newBundleScriptRNVersion}`, { includePrerelease: true })) {
debug.log('Applying new bundle script patch');
const useQuotes = semver.lt(args['rn-version'], quotesFixRNVersion);
const quoteChar = useQuotes ? '\\"' : '';

bundleScript = `
WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"

/bin/sh -c "$WITH_ENVIRONMENT \\"/bin/sh ../node_modules/@sentry/react-native/scripts/sentry-xcode.sh $REACT_NATIVE_XCODE\\""
/bin/sh -c "$WITH_ENVIRONMENT ${quoteChar}/bin/sh ../node_modules/@sentry/react-native/scripts/sentry-xcode.sh $REACT_NATIVE_XCODE${quoteChar}"
`;
bundleScriptRegex = /\/scripts\/react-native-xcode\.sh/i;
bundlePatchRegex = /sentry-cli\s+react-native\s+xcode/i;
Expand Down
Loading