Skip to content

ESM-only, and refresh monolib dependencies#129

Merged
kvz merged 1 commit into
mainfrom
deps-refresh
May 28, 2026
Merged

ESM-only, and refresh monolib dependencies#129
kvz merged 1 commit into
mainfrom
deps-refresh

Conversation

@kvz
Copy link
Copy Markdown
Member

@kvz kvz commented May 28, 2026

Why:
We can use this dependency refresh as the major-release moment where monolib becomes ESM-only. That lets @transloadit/format-duration-ms move to the current pretty-ms release instead of holding back on the last CommonJS-compatible major, and it keeps the whole internal dependency graph consistent.

What:

  • Marked every published workspace package as type: module.
  • Raised the supported Node.js floor to 22 in the root and published package metadata.
  • Added explicit package exports for published packages while keeping source files on relative .ts imports via TypeScript rewriteRelativeImportExtensions.
  • Expanded CI to test Node 22 and Node 24.
  • Enabled stricter cheap TypeScript checks: noImplicitOverride, noImplicitReturns, and noFallthroughCasesInSwitch.
  • Upgraded root tooling to TypeScript 6.0.3, @types/node 25.9.1, and Biome 2.4.15, including the Biome schema URL.
  • Removed unused root dependencies; package-level ownership remains in the workspaces that actually use them.
  • Upgraded @transloadit/format-duration-ms to pretty-ms 9.3.0.
  • Upgraded @transloadit/post to inquirer 14 using the package's built-in types.
  • Replaced remaining substr() usage with slice().
  • Fixed the template package tsconfig/import/test so it is built and checked with the repo.
  • Refreshed and deduped the Yarn lockfile.
  • Added a Changesets major entry for all published monolib packages.

Breaking change:

  • Monolib packages are ESM-only and require Node.js 22 or newer. CommonJS consumers should switch to ESM imports or use dynamic import().

Validation:

  • corepack yarn install --immutable
  • corepack yarn dedupe --check
  • corepack yarn check
  • corepack yarn npm audit --recursive --all
  • package export smoke imports through node_modules
  • git diff --check

@kvz kvz self-assigned this May 28, 2026
@kvz kvz changed the title Refresh monolib dependencies ESM-only, and refresh monolib dependencies May 28, 2026
@kvz kvz force-pushed the deps-refresh branch 4 times, most recently from ce6158a to df06cdb Compare May 28, 2026 14:37
@kvz kvz merged commit 8efa1e5 into main May 28, 2026
2 checks passed
@kvz kvz deleted the deps-refresh branch May 28, 2026 15:00
@kvz kvz mentioned this pull request May 28, 2026
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