Skip to content

Require Node.js 22 for local development#385

Merged
BorisTyshkevich merged 1 commit into
mainfrom
fix/node22-development-requirement
Jul 22, 2026
Merged

Require Node.js 22 for local development#385
BorisTyshkevich merged 1 commit into
mainfrom
fix/node22-development-requirement

Conversation

@BorisTyshkevich

Copy link
Copy Markdown
Collaborator

Summary

  • declare Node.js 22 as the minimum supported development runtime
  • enforce the requirement during npm ci with npm's strict engine check
  • align the existing .nvmrc, package lock, contributor guidance, deployment docs, and changelog

Root cause

The Vitest 4 toolchain depends on Node APIs unavailable in Node 18, while the repository only selected Node 22 in CI and .nvmrc. Without package engine metadata, local installs could complete on Node 18 and then fail inside Rolldown before tests started.

Impact

Developers on unsupported Node versions now receive an immediate EBADENGINE error with the required version. Node 22 and newer continue to install normally.

Validation

  • npm ci
  • npm test (4,998 tests; 100% statements and lines)
  • npm run build
  • Node 18.19.1 install smoke test (expected EBADENGINE)

Closes #383

@BorisTyshkevich
BorisTyshkevich merged commit 2188981 into main Jul 22, 2026
12 checks passed
@BorisTyshkevich
BorisTyshkevich deleted the fix/node22-development-requirement branch July 22, 2026 17:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Declare the Node 22 local-development requirement

1 participant