build(deps-dev): bump vitest ecosystem to v4 and happy-dom to v20#27
build(deps-dev): bump vitest ecosystem to v4 and happy-dom to v20#27
Conversation
…-dom to 20.7.0 Combined upgrade of vitest ecosystem packages that must stay in sync.
1f937eb to
1202604
Compare
There was a problem hiding this comment.
Pull request overview
Updates the project’s dev tooling dependencies to the latest Vitest v4 ecosystem and Happy DOM v20 to keep the test stack current and aligned across related packages.
Changes:
- Bump
vitestto4.0.18 - Bump
@vitest/coverage-v8to4.0.18 - Bump
happy-domto20.7.0
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| package.json | Updates devDependency versions for Vitest + coverage provider + Happy DOM. |
| package-lock.json | Refreshes lockfile to reflect the updated Vitest/coverage/happy-dom dependency graph. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "@vitest/coverage-v8": "^4.0.18", | ||
| "concurrently": "^9.1.2", | ||
| "happy-dom": "^16.8.1", | ||
| "happy-dom": "^20.7.0", | ||
| "msw": "^2.12.10", | ||
| "supertest": "^7.2.2", | ||
| "vitest": "^3.2.4" | ||
| "vitest": "^4.0.18" |
There was a problem hiding this comment.
These upgrades introduce a Node.js >=20 requirement (happy-dom 20.x requires >=20 and Vitest 4 also drops Node 18). The repo currently doesn’t declare an engines.node constraint in package.json and the docs state Node 18+, so installs on Node 18 will now fail/confuse users. Consider adding an explicit "engines": {"node": ">=20"} (and updating the prerequisite docs accordingly) as part of this dependency bump.
| "@vitest/coverage-v8": "^4.0.18", | ||
| "concurrently": "^9.1.2", | ||
| "happy-dom": "^16.8.1", | ||
| "happy-dom": "^20.7.0", | ||
| "msw": "^2.12.10", | ||
| "supertest": "^7.2.2", | ||
| "vitest": "^3.2.4" | ||
| "vitest": "^4.0.18" |
There was a problem hiding this comment.
Vitest packages tend to require exact version alignment (e.g., @vitest/coverage-v8 declares a peer dependency on vitest 4.0.18). Using caret ranges here can allow a resolver to pick vitest 4.0.x that doesn’t have a matching @vitest/coverage-v8 4.0.x published yet, causing peer-dependency install failures. Consider pinning vitest and @vitest/coverage-v8 to the exact same version (no ^) to avoid that class of breakage.
Summary
vitestfrom 3.2.4 to 4.0.18@vitest/coverage-v8from 3.2.4 to 4.0.18happy-domfrom 16.8.1 to 20.7.0These packages must be upgraded together since vitest and @vitest/coverage-v8 need matching major versions.
Closes #16, closes #18, closes #22