Skip to content

fix: preserve .js output extension with tsdown 0.20#571

Merged
FL4TLiN3 merged 1 commit intomainfrom
fix/tsdown-fixed-extension
Feb 18, 2026
Merged

fix: preserve .js output extension with tsdown 0.20#571
FL4TLiN3 merged 1 commit intomainfrom
fix/tsdown-fixed-extension

Conversation

@FL4TLiN3
Copy link
Contributor

Summary

  • tsdown 0.20 changed fixedExtension default to true for platform: "node", causing output files to use .mjs instead of .js
  • This breaks E2E tests (e2e/lib/runner.ts) and publishConfig.bin paths that reference dist/bin/cli.js
  • Fix: set fixedExtension: false in the shared base tsdown config so extensions follow package.json "type": "module" convention

Test plan

  • pnpm build --force — all 23 packages build, CLI outputs dist/bin/cli.js
  • pnpm typecheck — passes
  • pnpm test — 1098 tests pass

🤖 Generated with Claude Code

tsdown 0.20 defaults fixedExtension to true for node platform, which
outputs .mjs instead of .js. This breaks E2E tests and publishConfig
bin paths that reference dist/bin/cli.js.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@FL4TLiN3 FL4TLiN3 force-pushed the fix/tsdown-fixed-extension branch from 809cc16 to 3f36726 Compare February 18, 2026 07:46
@FL4TLiN3 FL4TLiN3 merged commit d1f4747 into main Feb 18, 2026
11 checks passed
@FL4TLiN3 FL4TLiN3 deleted the fix/tsdown-fixed-extension branch February 18, 2026 07:47
@FL4TLiN3 FL4TLiN3 mentioned this pull request Feb 18, 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