Skip to content

Commit 212ab8a

Browse files
author
Adam Gleitman
committed
Merge remote-tracking branch 'facebook/0.72-stable' into 0.72-rest
2 parents e7c6155 + a8ec20d commit 212ab8a

File tree

240 files changed

+6850
-2935
lines changed

Some content is hidden

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

240 files changed

+6850
-2935
lines changed

.circleci/Dockerfiles/Dockerfile.android

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,6 @@ ADD jsc /app/jsc
5555
# set workdir
5656
WORKDIR /app
5757

58-
RUN scripts/buck/buck_fetch.sh
59-
60-
RUN buck build packages/react-native/ReactAndroid/src/main/java/com/facebook/react
61-
RUN buck build packages/react-native/ReactAndroid/src/main/java/com/facebook/react/shell
62-
6358
ADD gradle /app/gradle
6459
ADD gradlew /app/gradlew
6560
ADD settings.gradle /app/settings.gradle

.circleci/config.yml

Lines changed: 52 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ references:
4646
# Dependency Anchors
4747
# -------------------------
4848
dependency_versions:
49-
xcode_version: &xcode_version "14.2.0"
49+
xcode_version: &xcode_version "14.3.0"
5050
nodelts_image: &nodelts_image "cimg/node:18.12.1"
5151
nodeprevlts_image: &nodeprevlts_image "cimg/node:16.18.1"
5252

@@ -62,7 +62,8 @@ references:
6262
hermes_workspace_cache_key: &hermes_workspace_cache_key v4-hermes-{{ .Environment.CIRCLE_JOB }}-{{ checksum "/tmp/hermes/hermesversion" }}
6363
hermes_workspace_debug_cache_key: &hermes_workspace_debug_cache_key v2-hermes-{{ .Environment.CIRCLE_JOB }}-debug-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "/tmp/react-native-version" }}
6464
hermes_workspace_release_cache_key: &hermes_workspace_release_cache_key v2-hermes-{{ .Environment.CIRCLE_JOB }}-release-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "/tmp/react-native-version" }}
65-
hermes_windows_cache_key: &hermes_windows_cache_key v3-hermes-{{ .Environment.CIRCLE_JOB }}-{{ checksum "tmp/hermes/hermesversion" }}
65+
hermes_linux_cache_key: &hermes_linux_cache_key v1-hermes-{{ .Environment.CIRCLE_JOB }}-linux-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "/tmp/react-native-version" }}
66+
hermes_windows_cache_key: &hermes_windows_cache_key v2-hermes-{{ .Environment.CIRCLE_JOB }}-windows-{{ checksum "/Users/circleci/project/tmp/hermes/hermesversion" }}-{{ checksum "/tmp/react-native-version" }}
6667
hermes_tarball_debug_cache_key: &hermes_tarball_debug_cache_key v4-hermes-tarball-debug-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "/tmp/react-native-version" }}
6768
hermes_tarball_release_cache_key: &hermes_tarball_release_cache_key v3-hermes-tarball-release-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "/tmp/react-native-version" }}
6869
pods_cache_key: &pods_cache_key v8-pods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "packages/rn-tester/Podfile.lock.bak" }}-{{ checksum "packages/rn-tester/Podfile" }}
@@ -317,11 +318,24 @@ commands:
317318
- run:
318319
name: Get React Native version
319320
command: |
320-
VERSION=$( grep '"version"' packages/react-native/package.json | cut -d '"' -f 4 | head -1)
321+
VERSION=$(cat packages/react-native/package.json | jq -r '.version')
321322
# Save the react native version we are building in a file so we can use that file as part of the cache key.
322323
echo "$VERSION" > /tmp/react-native-version
323324
echo "React Native Version is $(cat /tmp/react-native-version)"
324-
echo "Hermes commit is $(cat /tmp/hermes/hermesversion)"
325+
HERMES_VERSION="$(cat /tmp/hermes/hermesversion)"
326+
echo "Hermes commit is $HERMES_VERSION"
327+
328+
get_react_native_version_windows:
329+
steps:
330+
- run:
331+
name: Get React Native version on Windows
332+
command: |
333+
$VERSION=cat packages/react-native/package.json | jq -r '.version'
334+
# Save the react native version we are building in a file so we can use that file as part of the cache key.
335+
echo "$VERSION" > /tmp/react-native-version
336+
echo "React Native Version is $(cat /tmp/react-native-version)"
337+
$HERMES_VERSION=cat C:\Users\circleci\project\tmp\hermes\hermesversion
338+
echo "Hermes commit is $HERMES_VERSION"
325339
326340
with_hermes_tarball_cache_span:
327341
parameters:
@@ -624,7 +638,7 @@ jobs:
624638
- run:
625639
name: Run Ruby Tests
626640
command: |
627-
cd scripts
641+
cd packages/react-native/scripts
628642
sh run_ruby_tests.sh
629643
- run_yarn
630644
- *attach_hermes_workspace
@@ -723,60 +737,6 @@ jobs:
723737
- store_test_results:
724738
path: ./reports/junit
725739

726-
# -------------------------
727-
# JOBS: Test Buck
728-
# -------------------------
729-
test_buck:
730-
executor: reactnativeandroid
731-
environment:
732-
KOTLIN_HOME=packages/react-native/third-party/kotlin
733-
steps:
734-
- checkout
735-
- setup_artifacts
736-
- run_yarn
737-
738-
- run:
739-
name: Download Dependencies Using Buck
740-
command: ./scripts/buck/buck_fetch.sh
741-
742-
- run:
743-
name: Build & Test React Native using Buck
744-
command: |
745-
buck build packages/react-native/ReactAndroid/src/main/java/com/facebook/react
746-
buck build packages/react-native/ReactAndroid/src/main/java/com/facebook/react/shell
747-
748-
- run:
749-
name: Run Tests - Android Unit Tests with Buck
750-
command: buck test packages/react-native/ReactAndroid/src/test/... --config build.threads=$BUILD_THREADS --xml ./reports/buck/all-results-raw.xml
751-
752-
- run:
753-
name: Build JavaScript Bundle for instrumentation tests
754-
working_directory: ~/react-native/packages/react-native
755-
command: node cli.js bundle --max-workers 2 --platform android --dev true --entry-file ReactAndroid/src/androidTest/js/TestBundle.js --bundle-output ReactAndroid/src/androidTest/assets/AndroidTestBundle.js
756-
757-
- run:
758-
name: Build Tests - Android Instrumentation Tests with Buck
759-
# Here, just build the instrumentation tests. There is a known issue with installing the APK to android-21+ emulator.
760-
command: |
761-
if [[ ! -e packages/react-native/ReactAndroid/src/androidTest/assets/AndroidTestBundle.js ]]; then
762-
echo "JavaScript bundle missing, cannot run instrumentation tests. Verify Build JavaScript Bundle step completed successfully."; exit 1;
763-
fi
764-
source scripts/android-setup.sh && NO_BUCKD=1 scripts/retry3 timeout 300 buck build packages/react-native/ReactAndroid/src/androidTest/buck-runner:instrumentation-tests --config build.threads=$BUILD_THREADS
765-
766-
- run:
767-
name: Collect Test Results
768-
command: |
769-
find . -type f -regex ".*/build/test-results/debug/.*xml" -exec cp {} ./reports/build/ \;
770-
find . -type f -regex ".*/outputs/androidTest-results/connected/.*xml" -exec cp {} ./reports/outputs/ \;
771-
find . -type f -regex ".*/buck-out/gen/packages/react-native/ReactAndroid/src/test/.*/.*xml" -exec cp {} ./reports/buck/ \;
772-
if [ -f ~/react-native/reports/buck/all-results-raw.xml ]; then
773-
~/react-native/scripts/circleci/buckToJunit/buckToJunit.sh ~/react-native/reports/buck/all-results-raw.xml ~/react-native/reports/junit/results.xml
774-
fi
775-
when: always
776-
777-
- store_test_results:
778-
path: ./reports/junit
779-
780740
# -------------------------
781741
# JOBS: Test Android
782742
# -------------------------
@@ -1090,9 +1050,15 @@ jobs:
10901050
name: Enable Yarn with corepack
10911051
command: corepack enable
10921052

1053+
# it looks like that, last week, envinfo released version 7.9.0 which does not works
1054+
# with Windows. I have opened an issue here: https://github.com/tabrindle/envinfo/issues/238
1055+
# TODO: T156811874 - Revert this to npx envinfo@latest when the issue is addressed
10931056
- run:
10941057
name: Display Environment info
1095-
command: npx envinfo@latest
1058+
command: |
1059+
npm install -g envinfo
1060+
envinfo -v
1061+
envinfo
10961062
10971063
- restore_cache:
10981064
keys:
@@ -1176,7 +1142,7 @@ jobs:
11761142
- image: debian:11
11771143
environment:
11781144
- HERMES_WS_DIR: *hermes_workspace_root
1179-
- HERMES_VERSION_FILE: "sdks/.hermesversion"
1145+
- HERMES_VERSION_FILE: "packages/react-native/sdks/.hermesversion"
11801146
- BUILD_FROM_SOURCE: true
11811147
steps:
11821148
- run:
@@ -1195,8 +1161,10 @@ jobs:
11951161
mkdir -p "/tmp/hermes" "/tmp/hermes/download" "/tmp/hermes/hermes"
11961162
11971163
if [ -f "$HERMES_VERSION_FILE" ]; then
1164+
echo "Hermes version file found. Using the latest commit"
11981165
cat $HERMES_VERSION_FILE > /tmp/hermes/hermesversion
11991166
else
1167+
echo "No hermes version file found. Using the latest commit"
12001168
HERMES_TAG_SHA=$(git ls-remote https://github.com/facebook/hermes main | cut -f 1 | tr -d '[:space:]')
12011169
echo $HERMES_TAG_SHA > /tmp/hermes/hermesversion
12021170
fi
@@ -1228,17 +1196,18 @@ jobs:
12281196
- image: debian:bullseye
12291197
# [macOS] Change resource_class to large as we're on the free CircleCI plan
12301198
resource_class: "large"
1231-
working_directory: /root
12321199
steps:
1200+
- checkout_code_with_cache
12331201
- run:
12341202
name: Install dependencies
12351203
command: |
12361204
apt update
12371205
apt install -y git openssh-client cmake build-essential \
1238-
libreadline-dev libicu-dev zip python3
1206+
libreadline-dev libicu-dev jq zip python3
12391207
- *attach_hermes_workspace
1208+
- get_react_native_version
12401209
- restore_cache:
1241-
key: *hermes_workspace_cache_key
1210+
key: *hermes_linux_cache_key
12421211
- run:
12431212
name: Set up workspace
12441213
command: |
@@ -1257,7 +1226,7 @@ jobs:
12571226
cp /tmp/hermes/build/bin/hermesc /tmp/hermes/linux64-bin/.
12581227
fi
12591228
- save_cache:
1260-
key: *hermes_workspace_cache_key
1229+
key: *hermes_linux_cache_key
12611230
paths:
12621231
- /tmp/hermes/linux64-bin/
12631232
- /tmp/hermes/hermes/destroot/
@@ -1378,7 +1347,9 @@ jobs:
13781347
- MSBUILD_DIR: 'C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin'
13791348
- CMAKE_DIR: 'C:\Program Files\CMake\bin'
13801349
steps:
1350+
- checkout_code_with_cache
13811351
- *attach_hermes_workspace
1352+
- get_react_native_version_windows
13821353
- restore_cache:
13831354
key: *hermes_windows_cache_key
13841355
- run:
@@ -1595,6 +1566,19 @@ jobs:
15951566
-d "{\"event_type\": \"publish\", \"client_payload\": { \"version\": \"${CIRCLE_TAG:1}\" }}"
15961567
# END: Stable releases
15971568

1569+
poll_maven:
1570+
docker:
1571+
- image: cimg/node:current
1572+
resource_class: small
1573+
steps:
1574+
- checkout_code_with_cache
1575+
- run_yarn
1576+
- run:
1577+
name: Poll Maven for Artifacts
1578+
command: |
1579+
node scripts/circleci/poll-maven.js
1580+
1581+
15981582
# -------------------------
15991583
# JOBS: Nightly
16001584
# -------------------------
@@ -1702,7 +1686,6 @@ workflows:
17021686
# jsengine: ["Hermes", "JSC"]
17031687
# flavor: ["Debug", "Release"]
17041688
# macOS]
1705-
- test_buck
17061689
- test_ios_template:
17071690
requires:
17081691
- build_npm_package
@@ -1938,6 +1921,9 @@ workflows:
19381921
- build_hermesc_linux
19391922
- build_hermes_macos
19401923
- build_hermesc_windows
1924+
- poll_maven:
1925+
requires:
1926+
- build_and_publish_npm_package
19411927

19421928
package_and_publish_release_dryrun:
19431929
when:

Gemfile.lock

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,23 @@ GEM
33
specs:
44
CFPropertyList (3.0.6)
55
rexml
6-
activesupport (6.1.7.5)
6+
activesupport (7.0.7)
77
concurrent-ruby (~> 1.0, >= 1.0.2)
88
i18n (>= 1.6, < 2)
99
minitest (>= 5.1)
1010
tzinfo (~> 2.0)
1111
zeitwerk (~> 2.3)
12-
addressable (2.8.1)
12+
addressable (2.8.5)
1313
public_suffix (>= 2.0.2, < 6.0)
1414
algoliasearch (1.27.5)
1515
httpclient (~> 2.8, >= 2.8.3)
1616
json (>= 1.5.1)
1717
atomos (0.1.3)
1818
claide (1.1.0)
19-
cocoapods (1.12.0)
19+
cocoapods (1.12.1)
2020
addressable (~> 2.8)
2121
claide (>= 1.0.2, < 2.0)
22-
cocoapods-core (= 1.12.0)
22+
cocoapods-core (= 1.12.1)
2323
cocoapods-deintegrate (>= 1.0.3, < 2.0)
2424
cocoapods-downloader (>= 1.6.0, < 2.0)
2525
cocoapods-plugins (>= 1.0.0, < 2.0)
@@ -34,7 +34,7 @@ GEM
3434
nap (~> 1.0)
3535
ruby-macho (>= 2.3.0, < 3.0)
3636
xcodeproj (>= 1.21.0, < 2.0)
37-
cocoapods-core (1.12.0)
37+
cocoapods-core (1.12.1)
3838
activesupport (>= 5.0, < 8)
3939
addressable (~> 2.8)
4040
algoliasearch (~> 1.0)
@@ -72,7 +72,7 @@ GEM
7272
nap (1.1.0)
7373
netrc (0.11.0)
7474
public_suffix (4.0.7)
75-
rexml (3.2.5)
75+
rexml (3.2.6)
7676
ruby-macho (2.5.1)
7777
typhoeus (1.4.0)
7878
ethon (>= 0.9.0)
@@ -95,7 +95,7 @@ DEPENDENCIES
9595
cocoapods (~> 1.12)
9696

9797
RUBY VERSION
98-
ruby 3.2.0p0
98+
ruby 3.0.6p216
9999

100100
BUNDLED WITH
101101
2.3.22

package.json

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
"test-typescript": "dtslint packages/react-native/types",
4444
"test-typescript-offline": "dtslint --localTs node_modules/typescript/lib packages/react-native/types",
4545
"bump-all-updated-packages": "node ./scripts/monorepo/bump-all-updated-packages",
46-
"align-package-versions": "node ./scripts/monorepo/align-package-versions.js"
46+
"trigger-react-native-release": "node ./scripts/trigger-react-native-release.js"
4747
},
4848
"workspaces": [
4949
"packages/*"
@@ -53,16 +53,17 @@
5353
},
5454
"devDependencies": {
5555
"@babel/core": "^7.20.0",
56-
"@babel/eslint-parser": "^7.19.0",
56+
"@babel/eslint-parser": "^7.20.0",
5757
"@babel/generator": "^7.20.0",
58-
"@babel/plugin-transform-regenerator": "^7.0.0",
58+
"@babel/plugin-transform-regenerator": "^7.20.0",
5959
"@definitelytyped/dtslint": "^0.0.127",
6060
"@jest/create-cache-key-function": "^29.2.1",
6161
"@reactions/component": "^2.0.2",
62+
"@react-native/metro-config": "^0.72.11",
6263
"@types/react": "^18.0.18",
6364
"@typescript-eslint/parser": "^5.30.5",
6465
"async": "^3.2.2",
65-
"babel-plugin-transform-flow-enums":"^0.0.2",
66+
"babel-plugin-transform-flow-enums": "^0.0.2",
6667
"clang-format": "^1.8.0",
6768
"connect": "^3.6.5",
6869
"coveralls": "^3.1.1",
@@ -86,9 +87,9 @@
8687
"jest": "^29.2.1",
8788
"jest-junit": "^10.0.0",
8889
"jscodeshift": "^0.14.0",
89-
"metro-babel-register": "0.75.1",
90-
"metro-memory-fs": "0.75.1",
91-
"metro-react-native-babel-transformer": "0.75.1",
90+
"metro-babel-register": "0.76.7",
91+
"metro-memory-fs": "0.76.7",
92+
"metro-react-native-babel-transformer": "0.76.7",
9293
"mkdirp": "^0.5.1",
9394
"mock-fs": "^5.1.4",
9495
"prettier": "^2.4.1",

packages/eslint-config-react-native-community/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@react-native/eslint-config",
3-
"version": "0.72.1",
3+
"version": "0.72.2",
44
"description": "ESLint config for React Native",
55
"main": "index.js",
66
"license": "MIT",
@@ -12,7 +12,7 @@
1212
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/eslint-config-react-native-community#readme",
1313
"dependencies": {
1414
"@babel/core": "^7.20.0",
15-
"@babel/eslint-parser": "^7.19.0",
15+
"@babel/eslint-parser": "^7.20.0",
1616
"@react-native/eslint-plugin": "^0.72.0",
1717
"@typescript-eslint/eslint-plugin": "^5.30.5",
1818
"@typescript-eslint/parser": "^5.30.5",

packages/eslint-plugin-specs/package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@react-native/eslint-plugin-specs",
3-
"version": "0.72.2",
3+
"version": "0.72.4",
44
"description": "ESLint rules to validate NativeModule and Component Specs",
55
"main": "index.js",
66
"repository": {
@@ -14,11 +14,11 @@
1414
},
1515
"dependencies": {
1616
"@babel/core": "^7.20.0",
17-
"@babel/eslint-parser": "^7.19.0",
18-
"@babel/plugin-transform-flow-strip-types": "^7.0.0",
19-
"@babel/preset-flow": "^7.18.0",
17+
"@babel/eslint-parser": "^7.20.0",
18+
"@babel/plugin-transform-flow-strip-types": "^7.20.0",
19+
"@babel/preset-flow": "^7.20.0",
2020
"@react-native/codegen": "*",
21-
"flow-parser": "^0.185.0",
21+
"flow-parser": "^0.206.0",
2222
"make-dir": "^2.1.0",
2323
"pirates": "^4.0.1",
2424
"source-map-support": "0.5.0"

packages/hermes-inspector-msggen/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@
1717
"yargs": "^17.6.2"
1818
},
1919
"devDependencies": {
20-
"@babel/cli": "^7.19.0",
20+
"@babel/cli": "^7.20.0",
2121
"@babel/core": "^7.20.0",
2222
"@babel/preset-env": "^7.20.0",
23-
"@babel/preset-flow": "^7.18.0",
23+
"@babel/preset-flow": "^7.20.0",
2424
"jest": "^29.2.1"
2525
},
2626
"jest": {

0 commit comments

Comments
 (0)