Skip to content

Update dependency tsdown to ^0.22.0#636

Merged
RobinTail merged 3 commits into
masterfrom
renovate/tsdown-0.x
May 8, 2026
Merged

Update dependency tsdown to ^0.22.0#636
RobinTail merged 3 commits into
masterfrom
renovate/tsdown-0.x

Conversation

@renovate

@renovate renovate Bot commented May 7, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
tsdown (source) ^0.21.0^0.22.0 age confidence

Release Notes

rolldown/tsdown (tsdown)

v0.22.0

Compare Source

   🚨 Breaking Changes
  • Drop Node.js < 22.18.0 support, make unrun optional, add tsx config loader  -  by @​sxzz (a1042)
  • dts: Auto-enable dts when tsconfig declaration is true  -  by @​sxzz in #​872 (085f0)
  • publint: Use pkg from publint results, require publint v0.3.8+  -  by @​sxzz (413bb)
   🚀 Features
   🐞 Bug Fixes

🔄 Migration Guide

Node.js version

Upgrade to Node.js 22.18.0 or later. Bun and Deno remain supported (experimental).

unrun is no longer bundled

If your environment relies on the unrun config loader (i.e. you're on a Node version without native TypeScript support and use the default auto loader), install it manually:

npm i -D unrun

# or, alternatively, the new tsx loader:
npm i -D tsx

If you use Node.js 22.18.0+ with native TypeScript support, no change is needed — the auto loader will pick native.

dts auto-enabled from tsconfig

If your tsconfig.json has compilerOptions.declaration: true but you do not want tsdown to emit .d.ts files, opt out explicitly:

// tsdown.config.ts
export default defineConfig({
  dts: false,
})
exports.bin auto-detection

Any entry chunk containing a shebang (e.g. #!/usr/bin/env node) now causes tsdown to write a bin field in package.json automatically. The semantics differ slightly from explicit bin: true:

Value Single shebang Multiple shebangs No shebangs
(unset) Auto-set bin Warn, skip Silent
true Auto-set bin Throw Warn
false No bin No bin No bin

To opt out entirely:

export default defineConfig({
  exports: { bin: false },
})
Links

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@github-actions

github-actions Bot commented May 7, 2026

Copy link
Copy Markdown
Contributor

Performance benchmark

ea0c151

┌─────────────┬─────────┬─────────┬────────┬───────┐
│             │ 10      │ 100     │ 1000   │ 10000 │
├─────────────┼─────────┼─────────┼────────┼───────┤
│ Performance │ 8900988 │ 1661923 │ 147607 │ 18676 │
└─────────────┴─────────┴─────────┴────────┴───────┘

@renovate

renovate Bot commented May 8, 2026

Copy link
Copy Markdown
Contributor Author

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

@RobinTail RobinTail merged commit d276bce into master May 8, 2026
9 checks passed
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