Skip to content
Draft
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']
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'
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'
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']
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'
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'
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