fix(engines): lower Node.js minimum to 22
Node 22 is still in Active LTS until October 2026 and Maintenance LTS until April 2027. Raising the engines floor to >=24.0.0 unnecessarily locked out a fully-supported LTS version and produced EBADENGINE warnings on install. Restore Node 22 support, add Node 22 to the CI matrix, and update CONTRIBUTING.md to match. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -88,7 +88,7 @@ PRs that arrive without a properly-labeled linked issue are closed automatically
|
||||
- **Link with a closing keyword** — use `Closes #123`, `Fixes #123`, or `Resolves #123` in the PR body. The CI check will fail and the PR will be auto-closed if no valid issue reference is found.
|
||||
- **One concern per PR** — bug fixes, enhancements, and features must be separate PRs
|
||||
- **No drive-by formatting** — don't reformat code unrelated to your change
|
||||
- **CI must pass** — all matrix jobs (Ubuntu, macOS × Node 24) must be green
|
||||
- **CI must pass** — all matrix jobs (Ubuntu × Node 22, 24; macOS × Node 24) must be green
|
||||
- **Scope matches the approved issue** — if your PR does more than what the issue describes, the extra changes will be asked to be removed or moved to a new issue
|
||||
|
||||
## Testing Standards
|
||||
@@ -231,17 +231,17 @@ const content = `
|
||||
|
||||
### Node.js Version Compatibility
|
||||
|
||||
**Node 24 is the minimum and primary CI target.** All tests must pass on Node 24.
|
||||
**Node 22 is the minimum supported version.** Node 24 is the primary CI target. All tests must pass on both.
|
||||
|
||||
| Version | Status |
|
||||
|---------|--------|
|
||||
| Node 22 | EOL April 2027 — no longer a CI target; may still work but unsupported |
|
||||
| **Node 24** | Minimum required — primary CI target, all tests must pass |
|
||||
| **Node 22** | Minimum required — Active LTS until October 2026, Maintenance LTS until April 2027 |
|
||||
| **Node 24** | Primary CI target — current Active LTS, all tests must pass |
|
||||
| Node 26 | Forward-compatible target — avoid deprecated APIs |
|
||||
|
||||
Do not use:
|
||||
- Deprecated APIs
|
||||
- APIs not available in Node 24
|
||||
- APIs not available in Node 22
|
||||
|
||||
Safe to use:
|
||||
- `node:test` — stable since Node 18, fully featured in 24
|
||||
|
||||
Reference in New Issue
Block a user