Skip to content

chore(deps): bump @types/node to 26, replace chalk and commander, move tsx to devDeps#47

Merged
kboshold merged 5 commits into
mainfrom
feat/optimize-deps
Jul 3, 2026
Merged

chore(deps): bump @types/node to 26, replace chalk and commander, move tsx to devDeps#47
kboshold merged 5 commits into
mainfrom
feat/optimize-deps

Conversation

@kboshold

@kboshold kboshold commented Jul 3, 2026

Copy link
Copy Markdown
Member

What

Trims and modernizes the runtime dependency set without changing CLI behavior:

  • chalk removed; terminal colors now use node:util styleText. Output is byte-identical, including NO_COLOR and non-TTY auto-disable.
  • commander replaced with cleye (smaller, zero transitive deps). All commands, flags, exit codes, hidden commands, variadic args, and the global -s/--session option behave the same. Help layout differs slightly in formatting (alphabetized flags); semantics are unchanged.
  • @types/node bumped to ^26.0.0. It stays in dependencies because the published config-builder declarations reference NodeJS types; engines.node stays >=22.
  • tsx moved to devDependencies. Nothing in src/ imports it (config loading is jiti); only the dev/build scripts and the unbuilt-clone fallback use it.

Parity is locked in by new tests: byte-exact ANSI assertions for every glyph/color path, a --help sweep over all 22 root and 5 daemon commands, and a strict typecheck of a sample .zaps.mts against the published dist/config/index.d.ts.

Why

Two runtime dependencies duplicated what Node now ships or what a lighter library does with less, and one was never a runtime dependency to begin with. Fewer packages means a smaller install and less supply-chain surface for npm consumers.

@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown

Coverage Report for Unit Tests

Status Category Percentage Covered / Total
🔵 Lines 92.08% (🎯 85%) 4784 / 5195
🔵 Statements 91.96% (🎯 85%) 4942 / 5374
🔵 Functions 89.38% (🎯 85%) 1103 / 1234
🔵 Branches 86.71% (🎯 85%) 2605 / 3004
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
src/cli/errors.ts 100% 100% 100% 100%
src/config/helpers/cli.ts 100% 100% 100% 100%
Generated in workflow #160 for commit ec3ad8a by the Vitest Coverage Report Action

@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown

Coverage Report for Integration Tests

Status Category Percentage Covered / Total
🔵 Lines 40.8% (🎯 85%) 2398 / 5877
🔵 Statements 40.46% (🎯 85%) 2458 / 6075
🔵 Functions 38.68% (🎯 85%) 516 / 1334
🔵 Branches 33.53% (🎯 85%) 1107 / 3301
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
src/cli.tsx 0% 0% 0% 0% 41-1572
src/cli/errors.ts 0% 0% 0% 0% 5-38
src/config/helpers/cli.ts 25% 0% 25% 25% 14-17, 27-28, 42-51
Generated in workflow #160 for commit ec3ad8a by the Vitest Coverage Report Action

@kboshold
kboshold merged commit 6a585b6 into main Jul 3, 2026
6 checks passed
@kboshold
kboshold deleted the feat/optimize-deps branch July 3, 2026 15:27
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