chore: bump vitest from 3.2.4 to 4.1.10 - #31
Conversation
|
@dependabot rebase |
c4e8aaf to
78a3874
Compare
|
Claude finished @dependabot[bot]'s task in 2m 41s —— View job Dependency review:
|
| before | after | |
|---|---|---|
| bundler | rollup |
rolldown 1.2.x (vite@8.2.1) |
| CSS | — | lightningcss |
| assertions | chai (check-error, deep-eql, loupe, pathval) |
vitest's own expect |
| runner | tinypool, vite-node |
folded into @vitest/* |
2. Breaking-change exposure: none found
The v4 removals that usually bite are config-level (workspace, environmentMatchGlobs, poolMatchGlobs, top-level browser.*) — there is no vitest.config.* or vite.config.* in the repo, so none apply. npm test is a bare vitest run on defaults.
The API surface across all 9 test files is just describe / it / expect / vi / beforeEach / afterEach, and every vi call is vi.fn() (13 sites in test/tools/execute-action.test.ts and test/client/kosli-client.test.ts). No mockReset/mockRestore — so v4's changed mockReset semantics (now restores the original impl rather than clearing it) can't bite. No chai-style expect(...).to.* or assert — which, given chai is gone in v4, would have been the main breakage vector.
CI passed on both matrix legs (Node 22 and 24): run 31699089853.
3. Dev-time Node floor rises to 22.12 (carried over from the last review, still open)
vitest@4.1.10 declares engines: ^20.0.0 || ^22.0.0 || >=24.0.0, but it pulls vite@8.2.1, which declares ^20.19.0 || >=22.12.0 (package-lock.json:2688). This repo declares "node": ">=22", so a contributor on Node 22.0–22.11 gets EBADENGINE on install and a likely-broken npm test.
Not consumer-facing — files: ["dist"] means vitest never ships — and I'd argue against tightening engines.node in package.json for a devDependency, since that field constrains consumers. Two cheaper options:
- document the dev floor (Node ≥ 22.12) in
CONTRIBUTING.mdnext to thenpm installblock, so it isn't found as a mystery install failure; and/or - pin the CI matrix low end explicitly —
node-version: ['22.12', '24']inci.yml:20— so the floor that's actually supported is the one that's actually tested. Today'22'resolves to latest 22.x, which quietly hides the gap.
4. @types/node range now under-shoots a peer requirement
vite@8.2.1 declares "@types/node": "^20.19.0 || >=22.12.0" as a peer (package-lock.json:2697). package.json:45 declares ^22.0.0, which permits 22.0.x — technically outside that peer range. The lockfile resolves 22.19.17, so nothing is broken today. Per CLAUDE.md, @types/node tracks the Node floor deliberately, so if you take the 22.12 floor above, moving this to ^22.12.0 keeps the two consistent. Low priority.
5. Worth knowing, not actionable
- New native binaries in the dev tree.
rolldownandlightningcssboth ship per-platform prebuilt binaries as optional deps. Only one variant installs per platform, and none reach consumers — but it is a new native-binary supply chain in CI, and worth a glance if you ever add--ignore-scriptsto the install step. vitest@4.1.10depends onstd-env: ^4.0.0-rc.1— a prerelease inside a stable release. Pinned by the lockfile, so purely informational.vitestacceptsvite: ^6 || ^7 || ^8. If the 22.12 floor were ever a problem, anoverridesentry pinning vite 7 would drop it back — but the repo's floor is already 22, so there's no reason to.
Note on verification
I could not run npm ci / npm test in this sandbox (the install command required approval that wasn't granted), so the pass/fail signal here comes from the green CI run above plus static analysis of the test sources and lockfile — not from a local run. If you'd like me to verify locally on future dependency PRs, npm ci and npm test would need to be in --allowedTools.
· dependabot/npm_and_yarn/vitest-4.1.10
| "tsx": "^4.19.0", | ||
| "typescript": "^5.7.0", | ||
| "vitest": "^3.1.0" | ||
| "vitest": "^4.1.10" |
There was a problem hiding this comment.
Effective dev-time Node floor rises to 20.19 / 22.12.
vitest@4.1.10 itself declares engines: ^20.0.0 || ^22.0.0 || >=24.0.0, but it resolves vite@8.2.1 (package-lock.json:2688), which declares ^20.19.0 || >=22.12.0. This repo declares engines: node >=20, so a contributor on Node 20.0–20.18 (or 22.0–22.11) now gets EBADENGINE on install and likely a broken npm test.
Not a consumer-facing problem — files: ["dist"] means vitest is never shipped — and CI is fine because node-version: '20' resolves to the latest 20.x. Worth documenting the dev-time floor in CONTRIBUTING.md so it isn't discovered as a mystery install failure.
78a3874 to
6196955
Compare
Bumps [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) from 3.2.4 to 4.1.10. - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md) - [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.10/packages/vitest) --- updated-dependencies: - dependency-name: vitest dependency-version: 4.1.10 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
6196955 to
deb05f5
Compare
|
@dependabot rebase |
|
Looks like this PR is already up-to-date with main! If you'd still like to recreate it from scratch, overwriting any edits, you can request |
Bumps vitest from 3.2.4 to 4.1.10.
Release notes
Sourced from vitest's releases.
... (truncated)
Commits
db616d2chore: release v4.1.10 (#10718)bae52b5fix(vm): fix external module resolve error with deps optimizer query for enco...a7a61e7chore: release v4.1.9 (#10598)934b0f5fix(pool): prevent test run hang on worker crash (#10543) [backport to v4] (#...7fb2965fix(browser): wait for orchestrator readiness before resolving browser sessio...a518019fix: fiximportOriginalwith optimizer and query import [backport to v4] (#...e61f2ddchore: release v4.1.8e4067b3fix(browser): disable clientcdpAPI whenallowWrite/allowExec: false[ba...a09d472chore: release v4.1.7a8fd24cchore: release v4.1.6Maintainer changes
This version was pushed to npm by GitHub Actions, a new releaser for vitest since your current version.