-
-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Open
Copy link
Labels
Description
name: "🧹 Maintenance"
about: "Update minimum Node.js and npm version requirements due to Node 18 EOL"
labels: [type:chore, area:maintenance, status:needs-triage]
assignees: []
projects: []
milestone: ""
file_type: maintenance
Maintenance / Chore Summary
Node 18 reached End of Life (EOL) in April 2025. The project should update its minimum version requirements to Node 20 or Node 22, along with npm 11, to ensure developers use supported and secure tooling.
All development tools work correctly with Node 22 and npm 11, making this a safe update that also helps prevent future compatibility issues.
Steps / Checklist
- Update
package.jsonto add engine constraints:{ "engines": { "node": ">=22.0.0", "npm": ">=11.0.0" } } - Update
.nvmrcfile (if exists) to specify Node 22 - Update any CI/CD workflows (GitHub Actions) to use Node 22
- Update README.md development requirements section
- Update any Codespaces/DevContainer configurations to use Node 22
- Test all npm scripts with Node 22 and npm 11
- Verify build process completes successfully
- Verify all tests pass
Rationale
- Node 18 EOL: Node 18 reached End of Life in April 2025 and no longer receives security updates
- LTS Support: Node 22 is the current Active LTS (until April 2027)
- Compatibility: All project tools and dependencies work correctly with Node 22 and npm 11
- Developer Experience: Engine constraints in
package.jsonprevent developers from accidentally using incompatible versions
Acceptance Criteria
-
package.jsoncontains engine constraints for Node >=22.0.0 and npm >=11.0.0 - CI/CD workflows use Node 22
- All npm scripts execute successfully on Node 22
- Build process completes without errors
- All tests pass
- Documentation updated to reflect new requirements
- PR uses correct branch prefix (maintenance/ or chore/)
- Approved by at least one maintainer
Additional Context
Current Node.js LTS Schedule:
- Node 18: EOL April 2025 ❌
- Node 20: Maintenance LTS until April 2026
- Node 22: Active LTS until April 2027 ✅ (Recommended)
- Node 24: Current release (not recommended for production)
npm Version Notes:
- npm 11 provides improved performance and security
- npm 11 is the default package manager for Node 22
References
Definition of Ready (DoR)
- Task/goal described and scoped
- Steps/checklist listed
- Acceptance criteria listed
- Estimate added (if applicable)
Definition of Done (DoD)
- Task completed and documented
- Documentation/changelog updated if needed
- PR uses correct branch prefix (maintenance/ or chore/)
- Approved by at least one maintainer
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Needs Triage