Skip to content

chore: migrate from tsup to tsdown#555

Merged
FL4TLiN3 merged 3 commits intomainfrom
chore/migrate-tsup-to-tsdown
Feb 17, 2026
Merged

chore: migrate from tsup to tsdown#555
FL4TLiN3 merged 3 commits intomainfrom
chore/migrate-tsup-to-tsdown

Conversation

@FL4TLiN3
Copy link
Contributor

Summary

  • Replace deprecated tsup with tsdown (built on Rolldown) across all 23 packages
  • Remove manual createRequire banner hack in CLI config — tsdown auto-injects it for ESM targeting Node.js
  • Add missing engines.node to @perstack/core and @perstack/tui for tsdown target auto-detection
  • Exclude tsdown.config.ts from TypeScript compilation in packages with local configs (.ts import extension required by tsdown's config loader)

Test plan

  • pnpm install — tsdown installed, tsup removed
  • pnpm build — all 23 packages build successfully
  • pnpm typecheck — all 23 packages pass
  • pnpm test — 92 test files, 1085 tests pass
  • pnpm format-and-lint — no new errors
  • Verified createRequire auto-injected in apps/perstack/dist/chunk-*.js
  • No __require("child_process") throwing shim — uses proper createRequire(import.meta.url)

🤖 Generated with Claude Code

FL4TLiN3 and others added 3 commits February 17, 2026 07:43
tsup is deprecated and unmaintained. tsdown (built on Rolldown) is the
official successor. This migration also removes the manual createRequire
banner hack in the CLI config — tsdown auto-injects createRequire for
ESM targeting Node.js.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Spawn node with built artifacts instead of tsx source in e2e tests,
so build-related issues are caught. Remove 10 redundant tsdown configs
(9 providers + runtime) that duplicated the root baseConfig.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@FL4TLiN3 FL4TLiN3 merged commit bc33ba9 into main Feb 17, 2026
11 checks passed
@FL4TLiN3 FL4TLiN3 mentioned this pull request Feb 17, 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