What happened?
Pull request checks targeting support/6.x.x currently fail during the shared Install node_modules step, before lint, TypeScript, or Android compilation can run.
The repository's composite setup action pins Node 20:
uses: actions/setup-node@v3
with:
node-version: 20.x
With no root lockfile available in the checkout, Yarn resolves a transitive react-native@0.87.0. That release rejects Node 20:
info No lockfile found.
error react-native@0.87.0: The engine "node" is incompatible with this module.
Expected version "^22.13.0 || ^24.3.0 || >= 26.0.0". Got "20.20.2"
error Found incompatible module.
This is currently visible on unrelated PRs touching web, TypeScript, and Android code:
Because every failure occurs inside .github/actions/setup-node before the PR code is built, contributors cannot get a meaningful CI signal.
Expected behavior
The shared setup action should use a Node version compatible with the dependencies that support/6.x.x resolves, or the branch should constrain dependency resolution so its declared Node version remains supported.
Suggested direction
Updating the shared CI setup to Node 24 would satisfy React Native 0.87's engine range and GitHub Actions' own Node 20 deprecation warning. Alternatively, maintainers may prefer pinning the dependency graph for the V6 branch.
I am opening this issue first, per CONTRIBUTING.md, rather than mixing an infrastructure change into unrelated bug-fix PRs. Happy to send a focused PR once the preferred direction is confirmed and the issue is marked ready to work on.
What happened?
Pull request checks targeting
support/6.x.xcurrently fail during the shared Install node_modules step, before lint, TypeScript, or Android compilation can run.The repository's composite setup action pins Node 20:
With no root lockfile available in the checkout, Yarn resolves a transitive
react-native@0.87.0. That release rejects Node 20:This is currently visible on unrelated PRs touching web, TypeScript, and Android code:
Because every failure occurs inside
.github/actions/setup-nodebefore the PR code is built, contributors cannot get a meaningful CI signal.Expected behavior
The shared setup action should use a Node version compatible with the dependencies that
support/6.x.xresolves, or the branch should constrain dependency resolution so its declared Node version remains supported.Suggested direction
Updating the shared CI setup to Node 24 would satisfy React Native 0.87's engine range and GitHub Actions' own Node 20 deprecation warning. Alternatively, maintainers may prefer pinning the dependency graph for the V6 branch.
I am opening this issue first, per
CONTRIBUTING.md, rather than mixing an infrastructure change into unrelated bug-fix PRs. Happy to send a focused PR once the preferred direction is confirmed and the issue is marked ready to work on.