Skip to content

chore(deps): bump all-dependencies group (Zod 4, TS 6, ESLint 10, yargs 18)#75

Open
satvik007 wants to merge 2 commits into
mainfrom
chore/upgrade-major-dependencies
Open

chore(deps): bump all-dependencies group (Zod 4, TS 6, ESLint 10, yargs 18)#75
satvik007 wants to merge 2 commits into
mainfrom
chore/upgrade-major-dependencies

Conversation

@satvik007

Copy link
Copy Markdown
Collaborator

Supersedes #74, which Dependabot closed after #71 and #73 merged to main. This re-applies the all-dependencies group bump (13 updates), rebased onto current main, plus the code changes needed to adopt the major versions.

Dependency bumps

The group includes several majors: zod 3→4, typescript 5→6, @eslint/js / eslint 9→10, yargs 17→18, plus minors (chalk, dotenv, strip-ansi, @napi-rs/keyring, vitest, etc.). Also bumps typescript-eslint 8.31→8.61 so the plugin supports ESLint 10 + TypeScript 6 (Dependabot bumped ESLint and TypeScript but left the plugin behind, which broke the lint step).

Code changes required to adopt the majors

  • Zod 4: .superRefine() no longer wraps the schema in a ZodEffects, so the result stays a ZodObject — read .shape directly instead of .sourceType().shape (runs.ts, test-cases.ts).
  • TypeScript 6: readFile's Buffer<ArrayBufferLike> is no longer assignable to BlobPart; wrap it in Uint8Array (files.ts). Also set rootDir explicitly in tsconfig.json — TS 6 no longer infers it for emit (TS5011).
  • ESLint 10: the recommended config adds preserve-caught-error and no-useless-assignment. Attach { cause } when rethrowing in catch blocks, and drop dead variable initializers.
  • Tests: updated API validation assertions to match Zod 4's reworded default messages (e.g. Invalid option instead of Invalid enum value, expected number to be >=0 instead of must be greater than or equal to 0). Validation behavior is unchanged — only the message wording.

Verification

  • pnpm check (typecheck + lint + format) ✓
  • pnpm test — 510 passed, 31 skipped ✓
  • pnpm build + CLI smoke test ✓

🤖 Generated with Claude Code

dependabot Bot and others added 2 commits June 23, 2026 16:51
…13 updates

Bumps the all-dependencies group with 13 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@napi-rs/keyring](https://github.com/Brooooooklyn/keyring-node) | `1.2.0` | `1.3.0` |
| [chalk](https://github.com/chalk/chalk) | `5.4.1` | `5.6.2` |
| [dotenv](https://github.com/motdotla/dotenv) | `16.5.0` | `17.4.2` |
| [strip-ansi](https://github.com/chalk/strip-ansi) | `7.1.2` | `7.2.0` |
| [yargs](https://github.com/yargs/yargs) | `17.7.2` | `18.0.0` |
| [zod](https://github.com/colinhacks/zod) | `3.24.3` | `4.4.3` |
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.4` | `10.0.1` |
| [@types/yargs](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/yargs) | `17.0.33` | `17.0.35` |
| [eslint](https://github.com/eslint/eslint) | `9.39.4` | `10.5.0` |
| [msw](https://github.com/mswjs/msw) | `2.7.5` | `2.14.6` |
| [prettier](https://github.com/prettier/prettier) | `3.7.4` | `3.8.4` |
| [typescript](https://github.com/microsoft/TypeScript) | `5.8.3` | `6.0.3` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.0` | `4.1.9` |

Updates `@napi-rs/keyring` from 1.2.0 to 1.3.0
- [Release notes](https://github.com/Brooooooklyn/keyring-node/releases)
- [Commits](Brooooooklyn/keyring-node@v1.2.0...v1.3.0)

Updates `chalk` from 5.4.1 to 5.6.2
- [Release notes](https://github.com/chalk/chalk/releases)
- [Commits](chalk/chalk@v5.4.1...v5.6.2)

Updates `dotenv` from 16.5.0 to 17.4.2
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](motdotla/dotenv@v16.5.0...v17.4.2)

Updates `strip-ansi` from 7.1.2 to 7.2.0
- [Release notes](https://github.com/chalk/strip-ansi/releases)
- [Commits](chalk/strip-ansi@v7.1.2...v7.2.0)

Updates `yargs` from 17.7.2 to 18.0.0
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/main/CHANGELOG.md)
- [Commits](yargs/yargs@v17.7.2...v18.0.0)

Updates `zod` from 3.24.3 to 4.4.3
- [Release notes](https://github.com/colinhacks/zod/releases)
- [Commits](colinhacks/zod@v3.24.3...v4.4.3)

Updates `@eslint/js` from 9.39.4 to 10.0.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/commits/v10.0.1/packages/js)

Updates `@types/yargs` from 17.0.33 to 17.0.35
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/yargs)

Updates `eslint` from 9.39.4 to 10.5.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v9.39.4...v10.5.0)

Updates `msw` from 2.7.5 to 2.14.6
- [Release notes](https://github.com/mswjs/msw/releases)
- [Changelog](https://github.com/mswjs/msw/blob/main/CHANGELOG.md)
- [Commits](mswjs/msw@v2.7.5...v2.14.6)

Updates `prettier` from 3.7.4 to 3.8.4
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](prettier/prettier@3.7.4...3.8.4)

Updates `typescript` from 5.8.3 to 6.0.3
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v5.8.3...v6.0.3)

Updates `vitest` from 4.1.0 to 4.1.9
- [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.9/packages/vitest)

---
updated-dependencies:
- dependency-name: "@napi-rs/keyring"
  dependency-version: 1.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
- dependency-name: chalk
  dependency-version: 5.6.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
- dependency-name: dotenv
  dependency-version: 17.4.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: all-dependencies
- dependency-name: strip-ansi
  dependency-version: 7.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
- dependency-name: yargs
  dependency-version: 18.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: all-dependencies
- dependency-name: zod
  dependency-version: 4.4.3
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: all-dependencies
- dependency-name: "@eslint/js"
  dependency-version: 10.0.1
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: all-dependencies
- dependency-name: "@types/yargs"
  dependency-version: 17.0.35
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: all-dependencies
- dependency-name: eslint
  dependency-version: 10.5.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: all-dependencies
- dependency-name: msw
  dependency-version: 2.14.6
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
- dependency-name: prettier
  dependency-version: 3.8.4
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
- dependency-name: typescript
  dependency-version: 6.0.3
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: all-dependencies
- dependency-name: vitest
  dependency-version: 4.1.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: all-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
The all-dependencies bump includes several majors that broke the build:

- Zod 3→4: .superRefine() no longer wraps in ZodEffects, so the schema
  stays a ZodObject; read .shape directly instead of .sourceType().shape.
- TypeScript 6: readFile's Buffer<ArrayBufferLike> is no longer a valid
  BlobPart; wrap in Uint8Array. Also set rootDir explicitly (TS6 no longer
  infers it for emit, TS5011).
- ESLint 10 recommended adds preserve-caught-error and no-useless-assignment;
  attach { cause } when rethrowing and drop dead initializers.
- typescript-eslint 8.31→8.61 for ESLint 10 / TS 6 peer support (Dependabot
  bumped ESLint and TypeScript but left the plugin behind).
- Update API validation tests to Zod 4's reworded default messages.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@claude

claude Bot commented Jun 23, 2026

Copy link
Copy Markdown

Claude finished @satvik007's task in 1m 56s —— View job


PR Review: Major Dependency Upgrades

  • Gather PR context and diff
  • Launch specialized review subagents
  • Aggregate findings and post review
  • Clean up outdated bot comments

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5c23bfdb82

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread package.json
"xml2js": "^0.6.2",
"yargs": "^17.7.2",
"zod": "^3.24.3"
"yargs": "^18.0.0",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Raise Node floor before shipping yargs 18

With this dependency bump, the CLI still advertises support for Node >=22.0.0 in package.json and REQUIRED_NODE_VERSION, but the resolved yargs@18.0.0 in pnpm-lock.yaml declares engines: {node: ^20.19.0 || ^22.12.0 || >=23}. Users on Node 22.0–22.11 are therefore inside our supported range but outside a production dependency's supported range; engine-strict installs can reject the package, and the bin imports yargs before our version warning can run. Either keep yargs 17 or raise the package/config minimum to at least 22.12.0.

Useful? React with 👍 / 👎.

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