Skip to content

chore: dependency upgrades (description + in-range + CJS-compatible majors)#28

Merged
riglar merged 3 commits into
devfrom
chore/improve-package-description
Jun 22, 2026
Merged

chore: dependency upgrades (description + in-range + CJS-compatible majors)#28
riglar merged 3 commits into
devfrom
chore/improve-package-description

Conversation

@riglar

@riglar riglar commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

What

Housekeeping on dependencies + package metadata. No runtime behaviour changes.

1. Improved package description

Run Maestro mobile UI tests in the cloud — upload an iOS/Android build, execute flows across real devices, and stream results. Ships the dcd CLI and a dcd-mcp MCP server.

2. In-range (minor/patch) bumps

@clack/prompts 1.6.0 · @supabase/supabase-js 2.108.2 · plist 3.1.1 · mocha 11.7.6 · prettier 3.8.4 · tsx 4.22.4 · typescript-eslint 8.61.1 · @types/node 25.9.4

3. Major bumps (CJS-compatible)

  • typescript 5.9 → 6.0
  • eslint 9 → 10, @eslint/js 9 → 10, eslint-plugin-unicorn 64 → 68
  • chai 4 → 6, @types/chai 4 → 5 (test-only; runs under tsx/ESM)
  • js-yaml 4 → 5 (ships a CJS export condition)

Fallout fixed:

  • metadata-extractor: node-stream-zip is export =; TS 6 no longer treats import * as of an export-assigned class as constructable → switched to import = require(...).
  • eslint-plugin-unicorn 68 adds preserve-caught-error: attached cause to errors rethrown inside catch blocks (gateways/services/utils).
  • methods.ts: removed a dead supabaseResult initializer flagged by the new no-useless-assignment rule.

Held back — ESM-only majors

The CLI compiles to CommonJS, and these majors are ESM-only (require() throws ERR_PACKAGE_PATH_NOT_EXPORTED):

  • chalk stays 4.1.2 (v5 ESM-only)
  • plist stays 3.1.1 (v5 ESM-only)
  • citty stays 0.1.6 (v0.2 ESM-only)

These are intentionally deferred to a dedicated ESM-migration PR (planned after the in-flight UI refactor lands), which will convert the package to ESM and bump all three together.

Verification

Validated in an isolated git worktree at the tip commit (clean of unrelated WIP):

  • pnpm build
  • pnpm typecheck
  • pnpm lint ✓ (0 errors)
  • pnpm test ✓ (147 passing)
  • node dist/index.js --version / --help

🤖 Generated with Claude Code

riglar and others added 2 commits June 22, 2026 14:14
Replace the terse description with one that conveys the actual workflow
(upload build → run flows on real devices → stream results) and notes
both the dcd CLI and dcd-mcp MCP server bins for npm discoverability.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Refresh in-range dependency versions and lockfile:
- @clack/prompts 1.2.0 → 1.6.0
- @supabase/supabase-js 2.103.3 → 2.108.2
- plist 3.1.0 → 3.1.1
- mocha 11.7.5 → 11.7.6
- prettier 3.8.3 → 3.8.4
- tsx 4.21.0 → 4.22.4
- typescript-eslint 8.59.0 → 8.61.1
- @types/node 25.6.0 → 25.9.4

Held js-yaml at ^4.2.0 (5.0.0 is a breaking major). Major bumps
(chalk 5, chai 6, eslint 10, typescript 6, citty 0.2, plist 5, etc.)
are intentionally deferred — they need separate review. typecheck,
lint (0 errors), build, and all 147 tests pass.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@riglar riglar changed the title chore: improve package.json description chore: improve package.json description + bump in-range deps Jun 22, 2026
@claude

claude Bot commented Jun 22, 2026

Copy link
Copy Markdown

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

Take on the available major upgrades that work with our CommonJS build
(CLI not yet released, so safe to absorb breakage):
- typescript 5.9 → 6.0
- eslint 9 → 10, @eslint/js 9 → 10, eslint-plugin-unicorn 64 → 68
- chai 4 → 6, @types/chai 4 → 5 (test-only; runs under tsx/ESM)
- @types/node 25 → 26
- js-yaml 4 → 5 (ships a CJS export condition)

Fallout fixed:
- metadata-extractor: node-stream-zip is `export =`; TS 6 no longer
  treats `import * as` of an export-assigned class as constructable, so
  switch to `import StreamZip = require(...)`.
- eslint-plugin-unicorn 68 adds preserve-caught-error: attach `cause`
  to errors rethrown inside catch blocks across gateways/services/utils.
- methods.ts: drop a dead `supabaseResult` initializer flagged by the
  new no-useless-assignment rule.

Held back — ESM-only majors incompatible with our CommonJS output
(would each require migrating the CLI to ESM):
- chalk stays 4.1.2 (v5 ESM-only)
- plist stays 3.1.1 (v5 ESM-only)
- citty stays 0.1.6 (v0.2 ESM-only)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@riglar riglar changed the title chore: improve package.json description + bump in-range deps chore: dependency upgrades (description + in-range + CJS-compatible majors) Jun 22, 2026
@riglar riglar merged commit 6a30d26 into dev Jun 22, 2026
6 checks passed
@riglar riglar deleted the chore/improve-package-description branch June 24, 2026 07:39
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