mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
* Lower minimum Node.js version to 20.19.4 (#52678) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/52678 From partner feedback, there's still appetite to support Node 20.x for the next <1y of life. Lower min version to `20.19.4` (Jul 2025) and widen test matrix in CI. Changelog: [General][Breaking] - Our new minimum Node version is Node.js 20 (Overrides #51840) Reviewed By: cortinico Differential Revision: D78494491 fbshipit-source-id: c8d9dc6250cb11f8a12ca7e761b65f4a8dae9265 * Bump Metro to ^0.83.1, lower minimum Node.js version to 20.19 Summary: Metro release notes: https://github.com/facebook/metro/releases/tag/v0.83.1 The only public-facing change is a lowering of the minimum Node.js version from 22.14 to 20.19. This will need picking to RN `0.81-stable` Changelog: [General][Changed] Metro to ^0.83.1 Reviewed By: huntie Differential Revision: D78895160 fbshipit-source-id: b9ccffe972249b73897f51c14873861e57a97161 * Do not setup-node twice in test_js (#52737) Summary: I've noticed that test_js (20) and test_js (24) are actually running on Node 22. That's because the `yarn-install` action is invoking setup-node again with the default value (22). This changes it. Also I'm cleaning up the workflows so that every `yarn-install` invocation is happening just after the `setup-node` invocation. ## Changelog: [INTERNAL] - Pull Request resolved: https://github.com/facebook/react-native/pull/52737 Test Plan: CI which will most likely be red for test_js (20) so will need a follow-up Reviewed By: cipolleschi Differential Revision: D78664671 Pulled By: cortinico fbshipit-source-id: c73390930d1511d1bf0f2d4ea92e83f50b10247f --------- Co-authored-by: Alex Hunt <huntie@meta.com> Co-authored-by: Rob Hogan <robhogan@meta.com> Co-authored-by: Nicola Corti <ncor@meta.com>
47 lines
1.5 KiB
YAML
47 lines
1.5 KiB
YAML
name: create_release
|
|
description: Creates a new React Native release
|
|
inputs:
|
|
version:
|
|
description: "The version of React Native we want to release. For example 0.75.0-rc.0"
|
|
required: true
|
|
is-latest-on-npm:
|
|
description: "Whether we want to tag this release as latest on NPM"
|
|
required: true
|
|
default: "false"
|
|
dry-run:
|
|
description: "Whether the job should be executed in dry-run mode or not"
|
|
default: "true"
|
|
runs:
|
|
using: composite
|
|
steps:
|
|
- name: Setup node.js
|
|
uses: ./.github/actions/setup-node
|
|
- name: Yarn install
|
|
uses: ./.github/actions/yarn-install
|
|
- name: Configure Git
|
|
shell: bash
|
|
run: |
|
|
git config --local user.email "bot@reactnative.dev"
|
|
git config --local user.name "React Native Bot"
|
|
- name: Creating release commit
|
|
shell: bash
|
|
run: |
|
|
node scripts/releases/create-release-commit.js \
|
|
--reactNativeVersion "${{ inputs.version }}" \
|
|
--tagAsLatestRelease "${{ inputs.is-latest-on-npm }}" \
|
|
--dryRun "${{ inputs.dry-run }}"
|
|
GIT_PAGER=cat git show HEAD
|
|
- name: Update "latest" tag if needed
|
|
shell: bash
|
|
if: ${{ inputs.is-latest-on-npm == 'true' }}
|
|
run: |
|
|
git tag -d "latest"
|
|
git push origin :latest
|
|
git tag -a "latest" -m "latest"
|
|
- name: Pushing release commit
|
|
shell: bash
|
|
if: ${{ inputs.dry-run == 'false' }}
|
|
run: |
|
|
CURR_BRANCH="$(git branch --show-current)"
|
|
git push origin "$CURR_BRANCH" --follow-tags
|