Skip to content

chore(deps-dev): take vitest 5 and coverage-v8 5 together - #68

Merged
kkdev92 merged 1 commit into
mainfrom
chore/vitest-5
Sep 14, 2026
Merged

kkdev92 merged 1 commit into
mainfrom
chore/vitest-5

Conversation

@kkdev92

@kkdev92 kkdev92 commented Sep 14, 2026

Copy link
Copy Markdown
Owner

Supersedes #65 and #66, which cannot merge separately.

Why one pull request

@vitest/coverage-v8 pins vitest exactly, so either bump alone fails npm ci:

npm error Conflicting peer dependency: vitest@4.1.11
npm error   peer vitest@"4.1.11" from @vitest/coverage-v8@4.1.11

That is the only thing wrong with either of them. Together they resolve cleanly.

Why passing here is not enough

This package publishes a Vitest surface — ./testing/vitest, ./testing/vitest-config — and declares peerDependencies: { vitest: ">=4" }. That declaration is a claim about what consumers get, so it was measured on both sides.

Inside: quality (format, five typecheck projects, lint, 1087 tests with coverage, knip, TypeDoc), verify:package against the packed tarball, and both real-host contract lanes — desktop and web.

Outside: this tree was packed and installed into the consumer that merges the kit's Vitest config, with vitest 5 alongside it. Its 236 unit tests — the ones that go through the alias this package ships — all pass.

What still fails, and why it is not this

That consumer's integration project fails six tests on vitest 5. It patches Module._load to hand a built CJS bundle the mock and merges the kit's alias into the same project; the two together stop sharing one module instance under vitest 5. The sibling extensions that do only one of those things pass.

Nothing here changes that, and nothing here needs to. The hold stays in that repository with that exit condition, and vitest >=4 remains accurate.

🤖 Generated with Claude Code

Dependabot opened these as two pull requests, and neither could merge alone:
`@vitest/coverage-v8` pins `vitest` exactly, so bumping either on its own fails
`npm ci` with ERESOLVE. That is the whole of why both were red -- the logs show
`Conflicting peer dependency: vitest@4.1.11` and nothing else.

This package publishes a Vitest surface (`./testing/vitest` and
`./testing/vitest-config`) and declares `peerDependencies: { vitest: ">=4" }`,
so passing here is not enough on its own: the claim is about what consumers
get. Measured both sides. Inside: quality (format, five typecheck projects,
lint, 1087 tests with coverage, knip, TypeDoc), `verify:package` against the
packed tarball, and both real-host contract lanes. Outside: this tree was
packed and installed into the one consumer that merges the kit's Vitest config,
with vitest 5 alongside it -- its 236 unit tests, which go through the alias
this package ships, all pass.

That consumer's integration project still fails six tests on vitest 5, and
still for its own reason: it patches `Module._load` to hand a built CJS bundle
the mock *and* merges the alias into the same project. Nothing here changes
that, and nothing here needs to -- the hold lives there, with that exit
condition, and `vitest >=4` remains accurate.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NeGat1Bq4vzkzFBgtuc46G
@kkdev92
kkdev92 merged commit c909737 into main Sep 14, 2026
10 checks passed
@kkdev92
kkdev92 deleted the chore/vitest-5 branch September 14, 2026 04:48
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.

1 participant