Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade React Native 0.71.11 #5874

Merged
merged 64 commits into from
Jul 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
a1e8cde
Update Gutenberg ref
fluiddot Jun 5, 2023
994512c
Upgrade `@babel` dependencies
fluiddot Jun 5, 2023
54a5af6
Upgrade `metro-react-native-babel-preset` and `metro-resolver` depend…
fluiddot Jun 5, 2023
cdde67a
Update Gutenberg ref
fluiddot Jun 5, 2023
d626813
Update Gutenberg ref
fluiddot Jun 9, 2023
e0a6a41
Upgrade `metro-react-native-babel-preset` and `metro-resolver` depend…
fluiddot Jun 16, 2023
e1ee3ff
Update Gutenberg ref
fluiddot Jun 16, 2023
55f3720
Update Gutenberg ref
fluiddot Jun 16, 2023
b7b7ca7
Merge branch 'trunk' into upgrade/react-native-0.71.8
fluiddot Jun 16, 2023
f79971e
Fix issue with UUID library in Jest
fluiddot Jun 16, 2023
b123334
Mock API requests in VideoPress tests
fluiddot Jun 16, 2023
2f89a3b
Fix `generateFetchMocks` util import
fluiddot Jun 16, 2023
884ef76
build: Upgrade @react-native-community/cli to ^1.10.0
dcalhoun Jun 22, 2023
0cdf825
build: Upgrade eslint to ^8.19.0
dcalhoun Jun 22, 2023
a94ab25
Update Gutenberg ref
fluiddot Jun 29, 2023
edae1d3
build: Catpure iOS XCFramework Podfile changes
dcalhoun Jun 29, 2023
4662b08
Fix VideoPress block test cases (#5916)
fluiddot Jun 29, 2023
50e6344
Revert "build: Upgrade eslint to ^8.19.0"
fluiddot Jun 29, 2023
4349216
Fix `isPrivate` value used in `generatePrivacySettings` function
fluiddot Jun 29, 2023
5305372
Fix ESLint issues in VideoPress test utils
fluiddot Jun 29, 2023
0713af5
Upgrade React Native `0.71.11` - Android changes (#5872)
fluiddot Jul 3, 2023
0b280a7
Upgrade React Native `0.71.11` - iOS changes (#5881)
Jul 4, 2023
864b3c7
Update Gutenberg ref
fluiddot Jul 4, 2023
5fa1197
Merge branch 'trunk' into upgrade/react-native-0.71.8
fluiddot Jul 4, 2023
ceaef0d
Update bundle
fluiddot Jul 4, 2023
43c8d54
Update localization strings
fluiddot Jul 4, 2023
77c45ed
Update Android bundle assets
fluiddot Jul 4, 2023
b65314d
Enable Hermes in podspec generation
fluiddot Jul 4, 2023
f4d2319
Update React-Codegen podspec
fluiddot Jul 4, 2023
628f596
Update FBReactNativeSpec podspec
fluiddot Jul 4, 2023
30a4548
Update XCFramework setup to work with React Native 0.71.11 (#5924)
mokagio Jul 6, 2023
e13bcbf
Update Gutenberg ref
fluiddot Jul 5, 2023
3c89bdb
Generate iOS bundle with bytecode
fluiddot Jul 7, 2023
d04ce17
Update bundle (using bytecode)
fluiddot Jul 7, 2023
7d8b4f9
Update Gutenberg ref
fluiddot Jul 14, 2023
b6df921
WIP – Link against Hermes, but do not embed it
mokagio Jul 18, 2023
a5f1d5f
WIP – Use Hermes directly from the RN pods when creating the tar.gz
mokagio Jul 18, 2023
9fb9062
Do not copy the 1GB worth of Catalyst Hermest XCFramework
mokagio Jul 19, 2023
500bf6b
Update Gutenberg ref
fluiddot Jul 14, 2023
30bc7d7
Update release notes
fluiddot Jul 19, 2023
1f1f103
Merge branch 'upgrade/react-native-0.71.8' into mokagio/use-hermes-fr…
fluiddot Jul 19, 2023
c089c2e
Update Gutenberg ref
fluiddot Jul 19, 2023
826a616
Merge branch 'trunk' into upgrade/react-native-0.71.8
fluiddot Jul 19, 2023
6d46310
Fix entry in release notes
fluiddot Jul 19, 2023
d2eab79
Merge branch 'upgrade/react-native-0.71.8' into mokagio/use-hermes-fr…
fluiddot Jul 19, 2023
4c49d6c
Update Gutenberg ref
fluiddot Jul 19, 2023
c6fb2a5
Merge branch 'trunk' into upgrade/react-native-0.71.8
fluiddot Jul 19, 2023
378e233
Do not embed Hermes in the Gutenberg XCFramework (#5973)
mokagio Jul 20, 2023
136c90e
Merge branch 'trunk' into upgrade/react-native-0.71.8
Jul 20, 2023
f54468c
Update Gutenberg reference
Jul 20, 2023
9ec350b
Update Gutenberg ref
fluiddot Jul 21, 2023
77f2c68
Merge branch 'trunk' into upgrade/react-native-0.71.8
fluiddot Jul 21, 2023
366724e
Update Gutenberg reference
Jul 21, 2023
7f5e9c1
Update appender button's XPATH for Android
Jul 21, 2023
275bd36
Ensure top column block is selected before removal
Jul 21, 2023
c9aa893
Simplify XPATH for appender button selection
Jul 21, 2023
ee7d4c3
Merge pull request #5986 from wordpress-mobile/fix/sanity-test-1-errors
Jul 24, 2023
8f244f9
Merge branch 'trunk' of github.com:wordpress-mobile/gutenberg-mobile …
dcalhoun Jul 26, 2023
be8917c
build: Update Gutenberg ref
dcalhoun Jul 26, 2023
4bad28c
Update Gutenberg ref with merge commit
fluiddot Jul 27, 2023
e3d14fa
Update release notes
fluiddot Jul 27, 2023
23d9fbd
Remove deprecated inline comment
fluiddot Jul 27, 2023
4f16c6d
Fix iOS bundle folder path creation
fluiddot Jul 27, 2023
b837251
Update XCFramework `Podfile.lock` file
fluiddot Jul 27, 2023
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
2 changes: 1 addition & 1 deletion .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,4 +74,4 @@ steps:
agents:
queue: mac
env:
IMAGE_ID: xcode-14.3
IMAGE_ID: xcode-14.3.1
15 changes: 15 additions & 0 deletions .buildkite/publish-react-native-ios-artifacts.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,21 @@
echo "--- :arrow_down: Download iOS JS bundle"
buildkite-agent artifact download bundle/ios/App.js .

echo '--- :node: Setup node_modules for RNReanimated'
echo '--- :node: 1. Install nvm'
brew install nvm

echo '--- :node: 2. Load nvm in the current shell'
export NVM_DIR="$HOME/.nvm"
mkdir -p "$NVM_DIR"
[ -s "$HOMEBREW_PREFIX/opt/nvm/nvm.sh" ] && \. "$HOMEBREW_PREFIX/opt/nvm/nvm.sh" --install

echo '--- :node: 3. Install node version from .nvmrc'
nvm install "$(cat .nvmrc)" && nvm use

echo '--- :node: 4. nmp ci'
npm ci

echo "--- :rubygems: Setting up Gems"
cd ./ios-xcframework

Expand Down
1 change: 1 addition & 0 deletions RELEASE-NOTES.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Unreleased
---
* [**] Upgrade React Native to 0.71.11 [https://github.com/wordpress-mobile/gutenberg-mobile/pull/5874]

1.100.1
---
Expand Down
15 changes: 8 additions & 7 deletions __device-tests__/gutenberg-editor-sanity-test-1-visual.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ const {
} = e2eUtils;
import { NESTED_COLUMNS_3_LEVELS } from './test-editor-data';

const ANDROID_COLUMN_APPENDER_BUTTON_XPATH =
'//android.widget.Button[@content-desc="Column Block. Row 1"]/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.widget.Button';

describe( 'Gutenberg Editor - Test Suite 1', () => {
describe( 'Columns block', () => {
it( 'displays placeholders when unselected', async () => {
Expand Down Expand Up @@ -47,8 +50,8 @@ describe( 'Gutenberg Editor - Test Suite 1', () => {
);
await columnsBlock.click();

// Navigate upwards in block hierarchy
await editorPage.moveBlockSelectionUp( { toRoot: true } );

await editorPage.removeBlock();
} );

Expand All @@ -67,7 +70,7 @@ describe( 'Gutenberg Editor - Test Suite 1', () => {
.elementByAccessibilityId( 'Column Block. Row 1' )
.click();
const appenderButton = await editorPage.waitForElementToBeDisplayedByXPath(
'//android.widget.Button[@content-desc="Column Block. Row 1"]/android.view.ViewGroup[1]/android.view.ViewGroup/android.widget.Button/android.view.ViewGroup/android.view.ViewGroup'
ANDROID_COLUMN_APPENDER_BUTTON_XPATH
);
await appenderButton.click();
} else {
Expand Down Expand Up @@ -124,7 +127,7 @@ describe( 'Gutenberg Editor - Test Suite 1', () => {
.elementByAccessibilityId( 'Column Block. Row 1' )
.click();
const appenderButton = await editorPage.waitForElementToBeDisplayedByXPath(
'//android.widget.Button[@content-desc="Column Block. Row 1"]/android.view.ViewGroup[1]/android.view.ViewGroup/android.widget.Button/android.view.ViewGroup/android.view.ViewGroup'
ANDROID_COLUMN_APPENDER_BUTTON_XPATH
);
await appenderButton.click();
} else {
Expand Down Expand Up @@ -194,7 +197,7 @@ describe( 'Gutenberg Editor - Test Suite 1', () => {
.elementByAccessibilityId( 'Column Block. Row 1' )
.click();
const appenderButton = await editorPage.waitForElementToBeDisplayedByXPath(
'//android.widget.Button[@content-desc="Column Block. Row 1"]/android.view.ViewGroup[1]/android.view.ViewGroup/android.widget.Button/android.view.ViewGroup/android.view.ViewGroup'
ANDROID_COLUMN_APPENDER_BUTTON_XPATH
);
await appenderButton.click();
} else {
Expand Down Expand Up @@ -252,9 +255,7 @@ describe( 'Gutenberg Editor - Test Suite 1', () => {
// Wait for the modal to open
await editorPage.driver.sleep( 3000 );

const cellId = isAndroid()
? 'Column 1. Width is 50 Percent (%)., double-tap to change unit'
: 'Column 1. Width is 50 Percent (%).';
const cellId = 'Column 1. Width is 50 Percent (%).';
const cell = await editorPage.driver.elementByAccessibilityId(
cellId
);
Expand Down
29 changes: 19 additions & 10 deletions bin/generate-podspecs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -102,8 +102,10 @@ RN_DIR="./"
SCRIPTS_PATH="./scripts/"
CODEGEN_REPO_PATH="../packages/react-native-codegen"
CODEGEN_NPM_PATH="../react-native-codegen"
PACKAGE_JSON_PATH="./package.json"
SRCS_DIR=${SRCS_DIR:-$(cd "./Libraries" && pwd)}
RN_VERSION=$(cat ./package.json | grep -m 1 version | sed 's/[^0-9.]//g')
HERMES_ENABLED="true"

RN_PODSPECS=$(find * -type f -name "*.podspec" -not -name "React-rncore.podspec" -not -path "third-party-podspecs/*" -not -path "*Fabric*" -print)
TMP_DEST=$(mktemp -d)
Expand Down Expand Up @@ -161,23 +163,30 @@ do
fi

# Generate React-Codegen
# A copy of react_native_pods is done to modify the content within get_react_codegen_spec
# A copy of codegen_utils.rb is done to modify the content within get_react_codegen_spec
# this enables getting the schema for React-Codegen in runtime by printing the content.
echo "Generating React-Codegen"
REACT_NATIVE_PODS_PATH="$SCRIPTS_PATH/react_native_pods.rb"
REACT_NATIVE_PODS_MODIFIED_PATH="$SCRIPTS_PATH/react_native_pods_modified.rb"
# Making a temp copy of react_native_pods.rb
cp $REACT_NATIVE_PODS_PATH $REACT_NATIVE_PODS_MODIFIED_PATH
REACT_NATIVE_CODEGEN_UTILS_PATH="$SCRIPTS_PATH/cocoapods/codegen_utils.rb"
REACT_NATIVE_CODEGEN_UTILS_MODIFIED_PATH="$SCRIPTS_PATH/cocoapods/codegen_utils_modified.rb"
# Making a temp copy of codegen_utils.rb
cp $REACT_NATIVE_CODEGEN_UTILS_PATH $REACT_NATIVE_CODEGEN_UTILS_MODIFIED_PATH
# Manually add the min_ios_version_supported variable to the CodegenUtils class
# The modified script won't be able to detect min_ios_version_supported otherwise
echo "
def min_ios_version_supported
'12.4'
end
" >> "$REACT_NATIVE_CODEGEN_UTILS_MODIFIED_PATH"
# Modify the get_react_codegen_spec method to return the result using print and JSON.pretty
sed -i '' -e "s/:git => ''/:git => 'https:\/\/github.com\/facebook\/react-native.git', :tag => 'v$RN_VERSION'/" "$REACT_NATIVE_PODS_MODIFIED_PATH"
sed -i '' -e 's/return spec/print JSON.pretty_generate(spec)/' "$REACT_NATIVE_PODS_MODIFIED_PATH"
sed -i '' -e "s/:git => ''/:git => 'https:\/\/github.com\/facebook\/react-native.git', :tag => 'v$RN_VERSION'/" "$REACT_NATIVE_CODEGEN_UTILS_MODIFIED_PATH"
sed -i '' -e 's/return spec/print JSON.pretty_generate(spec)/' "$REACT_NATIVE_CODEGEN_UTILS_MODIFIED_PATH"
# Run get_react_codegen_spec and generate React-Codegen.podspec.json
ruby -r "./scripts/react_native_pods_modified.rb" -e "get_react_codegen_spec" > "$DEST/React-Codegen.podspec.json"
ruby -r "./scripts/cocoapods/codegen_utils_modified.rb" -e "CodegenUtils.new.get_react_codegen_spec('$PACKAGE_JSON_PATH', hermes_enabled:$HERMES_ENABLED)" > "$DEST/React-Codegen.podspec.json"
TMP_ReactCodeGenSpec=$(mktemp)
jq '.source_files = "third-party-podspecs/FBReactNativeSpec/**/*.{c,h,m,mm,cpp}"' "$DEST/React-Codegen.podspec.json" > "$TMP_ReactCodeGenSpec"
mv "$TMP_ReactCodeGenSpec" "$DEST/React-Codegen.podspec.json"
# Remove temp copy of react_native_pods.rb
rm $REACT_NATIVE_PODS_MODIFIED_PATH
# Remove temp copy of codegen_utils.rb
rm $REACT_NATIVE_CODEGEN_UTILS_MODIFIED_PATH

echo "Generating schema from Flow types"
"$NODE_BINARY" "$CODEGEN_PATH/lib/cli/combine/combine-js-to-schema-cli.js" "$SCHEMA_FILE" "$SRCS_DIR"
Expand Down
Binary file modified bundle/ios/App.js
Binary file not shown.
2 changes: 1 addition & 1 deletion bundle/ios/App.js.map

Large diffs are not rendered by default.

Loading