fix: allow Node newer than 20 - #614
Merged
Merged
Conversation
engines.node was pinned to the single major "20", so any consumer on a newer runtime fails an --engine-strict install even though nothing here requires that exact version. This repository's own CI builds and tests on Node 24, so the pin contradicts what is actually verified. Relaxed to ">=20", which keeps the existing floor and stops the package rejecting runtimes it already supports. This unblocks consumers moving to Node 22: decentraland-dapps peers decentraland-ui ^7.1.0, and @dcl/crypto-middleware has required Node >=22 since v5, so no Node version satisfied both while this pin stood.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
decentraland-bot
approved these changes
Aug 20, 2026
decentraland-bot
left a comment
Contributor
There was a problem hiding this comment.
Approved. I found no blocking issues.
- P2:
package.jsonnow allowsnode >=20, but the root entry inpackage-lock.jsonstill recordsengines.node: "20". This should be regenerated for consistency, although it does not appear to block the current CI/publish flow. - Security: no security issues found in this package metadata-only change.
- CI: Vercel, audit, and build checks are passing.
Reviewed by Jarvis 🤖 · Requested by Lautaro Petaccio (<@U025WCHLMN3>) via Slack
|
🎉 This PR is included in version 7.2.1 🎉 The release is available on: Your semantic-release bot 📦🚀 |
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The problem
engines.nodeis pinned to the single major"20":That is not a floor — it rejects every newer runtime. Any consumer on Node 22 or 24 fails an
--engine-strictinstall:This repository's own CI builds and tests on Node 24 (
.github/workflows/pr.yml,master.yml), so the declared engine contradicts what is actually verified. Nothing in the package requires exactly Node 20.The change
Same floor, no longer rejecting runtimes the package already supports.
Why it matters downstream
decentraland-dappspeersdecentraland-ui@^7.1.0, and@dcl/crypto-middlewarehas requirednode >= 22since v5. While this pin stands, no Node version satisfies both — 20 fails crypto-middleware, 22+ fails this package — so consumers of both cannot run--engine-strictat all, on any runtime.It surfaced in
decentraland/decentraland-gatsby#1329, which raises its floor to Node 22 to match@dcl/crypto-middleware@6. Every stabledecentraland-uirelease (7.0.0 through 7.2.0) carries the same pin, so there is no version to upgrade into and the fix has to happen here.Scope
One line,
enginesonly. No source, dependency or build changes, and it loosens rather than tightens the constraint — no existing consumer on Node 20 is affected.🤖 Generated with Claude Code