Skip to content

chore: upgrade recast, vitest, @vitest/coverage-v8 - #113

Merged
dprevost-LMI merged 2 commits into
webdriverio:mainfrom
dprevost-LMI:upgrade-deps
Sep 22, 2026
Merged

dprevost-LMI merged 2 commits into
webdriverio:mainfrom
dprevost-LMI:upgrade-deps

Conversation

@dprevost-LMI

Copy link
Copy Markdown
Collaborator
  • recast ^0.23.11 -> ^0.24.0 (cddl2java, cddl2ts)
  • vitest ^4.1.0 -> ^5.0.1, @vitest/coverage-v8 matching (root)

release-it stays at 19.2.4 (already the highest version compatible with release-it-pnpm@4.6.6's peer range of ^17-19; 21.1.0 would break the release pipeline this repo's automation depends on - not touched here).

recast 0.24.0 fixed a real parenthesization bug: a group-choice-in-array type like [ (int // tstr) ] was rendering as Int | string[], which TypeScript parses as Int | (string[]) - not what the CDDL means at all. Now correctly emits (Int | string)[]. Updated the one snapshot this affects; verified the fix against the actual CDDL source (examples/commons/group_choice.cddl) rather than just accepting the diff.

Full checks:all passes.

- recast ^0.23.11 -> ^0.24.0 (cddl2java, cddl2ts)
- vitest ^4.1.0 -> ^5.0.1, @vitest/coverage-v8 matching (root)

release-it stays at 19.2.4 (already the highest version compatible with
release-it-pnpm@4.6.6's peer range of ^17-19; 21.1.0 would break the
release pipeline this repo's automation depends on - not touched here).

recast 0.24.0 fixed a real parenthesization bug: a group-choice-in-array
type like `[ (int // tstr) ]` was rendering as `Int | string[]`, which
TypeScript parses as `Int | (string[])` - not what the CDDL means at
all. Now correctly emits `(Int | string)[]`. Updated the one snapshot
this affects; verified the fix against the actual CDDL source
(examples/commons/group_choice.cddl) rather than just accepting the diff.

Full checks:all passes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@greptile-apps

greptile-apps Bot commented Sep 22, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

The PR appears safe to merge, with the previous Node compatibility mismatch fully resolved and no new actionable defects identified.

Summary

This PR upgrades Recast to 0.24.0 and Vitest with its V8 coverage provider to 5.0.1.

  • Corrects generated TypeScript parenthesization for an array containing a group choice.
  • Updates the snapshot to expect (Int | string)[].
  • Constrains the declared Node versions to releases compatible with the upgraded toolchain.
  • Refreshes the pnpm lockfile for the dependency upgrades.

Reviews (2) · Last reviewed commit: "fix: align engines.node with the stricte..."

Comment thread package.json
Checked every direct dependency across the whole workspace (not just
vitest) for its own engines.node, since the vitest-only fix could easily
have missed something stricter:

  vitest@5.0.1                              ^22.12.0 || ^24.0.0 || >=26.0.0
  @release-it/conventional-changelog@12.0.2 ^22.22.2 || ^24.15.0 || >=26.0.0
  npm-run-all2@9.0.3                        ^22.22.2 || ^24.15.0 || >=26.0.0
  conventional-changelog-conventionalcommits@10.4.0  >=22
  release-it@19.2.4                         ^20.12.0 || >=22.0.0
  rimraf@6.1.3                              20 || >=22
  typescript@7.0.2                          >=16.20.0

@release-it/conventional-changelog and npm-run-all2 both need newer
patches than vitest does. Our engines.node was ">=22.0.0", then briefly
just matched vitest's range - neither was the real combined floor.
^22.22.2 || ^24.15.0 || >=26.0.0 is the actual intersection: the
strictest 22.x/24.x requirement across every direct dependency. Verified
against the npm registry directly for each package, not just the local
install.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@dprevost-LMI
dprevost-LMI merged commit 6880b96 into webdriverio:main Sep 22, 2026
4 checks passed
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