Skip to content

chore(deps): Group B major upgrades (glob 13, test-electron 3, vue-tsc 3, vue-router 5, csv-parse 7, js-yaml 5, inquirer 14)#162

Merged
jung-thomas merged 3 commits into
mainfrom
chore/deps-group-b-majors
Jul 11, 2026
Merged

chore(deps): Group B major upgrades (glob 13, test-electron 3, vue-tsc 3, vue-router 5, csv-parse 7, js-yaml 5, inquirer 14)#162
jung-thomas merged 3 commits into
mainfrom
chore/deps-group-b-majors

Conversation

@jung-thomas

Copy link
Copy Markdown
Contributor

Summary

Works through the deferred Group B majors from #161. Each was individually reviewed at its usage sites and verified with builds/tests. Two items stayed deferred for hard upstream blockers (documented below), not risk-aversion.

Refs #161

Landed

vscode-extension dev tooling (Group 1 — lowest risk)

  • glob ^11 → ^13.0.6 (test-only, test/suite/index.ts; async glob() API unchanged)
  • @vscode/test-electron ^2.3 → ^3.0.0 (test/runTests.ts)
  • @types/node ^25.8 → ^26.1.1 (types only)

app/vue (Group 2)

  • vue-tsc ^2.2 → ^3.3.7
  • vue-router ^4.5 → ^5.1.0 (peers satisfied: Vue 3.5.39, vite 8; all call sites use stable API — createRouter, createWebHashHistory, useRouter/useRoute, router.push({name}), getRoutes())

root source-imported libs (Group 3)

  • csv-parse ^6.2.1 → ^7.0.1 (bin/import.js; streaming parse({...}) API stable)
  • js-yaml ^4.1 → ^5.2.1 (inspectTable/inspectView). v5 dropped its default export, but both sites use namespace import (const yaml = await import('js-yaml')yaml.dump(...)) and dump is a named export → unaffected (verified at runtime)
  • inquirer ^13.4 → ^14.0.2 (mass* ops; inquirer.prompt([{...}]) stable; v14 needs Node ≥20.17/22.13, satisfied by engines >=22)

Deferred (upstream blockers — updated in #161)

  • TypeScript 7 for app/vue — my Deferred major dependency upgrades (Group B) #161 assumption was wrong: no current vue-tsc (incl. 3.3.7) supports TS 7. TS 7's native compiler removed ./lib/tsc from package exports; vue-tsc still does require('typescript/lib/tsc')ERR_PACKAGE_PATH_NOT_EXPORTED. app/vue stays on TS 5.9 (within ^5.7) until vue-tsc ships native-TS support. (vscode-extension + mcp-server remain on TS 7 from chore(deps): consolidated dependency update + CAP 10 upgrade #160.)
  • marked 17 → 18marked-terminal (used in changeLog/readMe/viewDocs) peer-caps at marked >=1 <16; even its latest 7.3.0 rejects marked 18. Left at ^17 until marked-terminal supports it.

Verification

  • ✅ Root test:ci 550 passing; eslint clean
  • ✅ app/vue 46 vitest pass; build + build:vscode green (vue-tsc 3, vue-router 5)
  • ✅ Extension compile + pretest + bundle + vsce package: 352 webview assets, 0 native binaries
  • ✅ mcp-server tsc build green
  • ✅ Runtime smoke: csv-parse parse(), js-yaml yaml.dump(), inquirer prompt()

The 6 massExport E2E/wdio failures seen locally are pre-existing (fail identically on main with these changes stashed — ANSI-color assertions / no browser); they're excluded from test:ci by design.

…ron 3, @types/node 26)

Group 1 of #161 (lowest risk — dev/test tooling, no runtime code):
- glob ^11 -> ^13.0.6 (used only in test/suite/index.ts; async glob() API unchanged)
- @vscode/test-electron ^2.3 -> ^3.0.0 (test harness; used in test/runTests.ts)
- @types/node ^25.8 -> ^26.1.1 (types only)

Verified: compile + pretest (test/ tsconfig) typecheck clean, esbuild bundle
+ vsce package succeed (352 webview assets, 0 native binaries).
…cked)

Group 2 of #161:
- vue-tsc ^2.2 -> ^3.3.7
- vue-router ^4.5 -> ^5.1.0 (peers satisfied: Vue 3.5.39, vite 8)

TypeScript 7 for app/vue remains DEFERRED. My earlier assumption in #161 —
that vue-tsc@3 would unblock TS 7 — was wrong: TS 7's native compiler removed
`./lib/tsc` from its package `exports`, and even vue-tsc@3.3.7 (latest) still
does `require('typescript/lib/tsc')` -> ERR_PACKAGE_PATH_NOT_EXPORTED. No
current vue-tsc supports the native TS compiler. app/vue stays on TS 5.9
(within its ^5.7 range) until vue-tsc ships native-TS support.

vue-router 5 API usage reviewed — all call sites use stable API
(createRouter, createWebHashHistory, useRouter/useRoute, router.push({name}),
getRoutes()); none touch v5's changed internals.

Verified: vue-tsc 3 typecheck clean on TS 5.9, 46 vitest pass, build and
build:vscode green.
…ferred)

Group 3 of #161 — source-imported libraries, each usage reviewed:
- csv-parse ^6.2.1 -> ^7.0.1 (bin/import.js; streaming parse({...}) API stable —
  verified with bom/trim/skip_empty_lines/relax_column_count options)
- js-yaml ^4.1.0 -> ^5.2.1 (inspectTable/inspectView). NOTE: v5 dropped its
  default export, but both sites use namespace import (`const yaml = await
  import('js-yaml')` then `yaml.dump(...)`) and `dump` is a named export, so
  the pattern is unaffected — verified at runtime.
- inquirer ^13.4.2 -> ^14.0.2 (mass* ops; inquirer.prompt([{...}]) API stable;
  v14 needs Node >=20.17/22.13, satisfied by engines >=22)

marked 17 -> 18 DEFERRED: marked-terminal (used in changeLog/readMe/viewDocs)
peer-caps at `marked >=1 <16` — even its latest (7.3.0) does not allow marked
18. Bumping would break terminal rendering. Left at ^17 until marked-terminal
supports marked 18.

Verified: root test:ci 550 passing, lint clean; runtime smoke of
csv-parse parse(), js-yaml yaml.dump(), inquirer prompt().
@jung-thomas
jung-thomas merged commit 07ba7f0 into main Jul 11, 2026
17 checks passed
@jung-thomas
jung-thomas deleted the chore/deps-group-b-majors branch July 11, 2026 19:25
jung-thomas added a commit that referenced this pull request Jul 11, 2026
Version bump + changelog for the 4.202607.0 release. Done via PR because the
release workflow's workflow_dispatch path pushes the bump commit directly to
main, which the branch-protection rulesets reject (GH013). After this merges,
pushing the v4.202607.0 tag triggers the workflow's tag path (resolve-version
-> publish), which does not push to main and publishes cleanly.

Includes: self-contained OS-portable VS Code .vsix (#159), CAP 10 + cds-10
drivers (#160), TypeScript 7 for extension/mcp-server + consolidated deps
(#160, #162), Group B majors (#162), i18n key fixes (#163).

Co-authored-by: Thomas Jung <12159356+jung-thomas@users.noreply.github.com>
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