Build fails on fresh clone: tsdown cannot load tsdown.config.ts because "unrun" is not installed #623
thrasher824
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Description
Following the README's from-source setup:
pnpm run buildfails at the tsdown step with:Root cause
tsdown 0.22.2 loads
tsdown.config.tsthrough a config loader. With the default--config-loader auto, on a runtime without native TS support it resolves to theunrunloader:unrunis declared by tsdown as an optional peerDependency ("unrun": "*"), so pnpm does not install it automatically. The repository's rootdevDependenciesincludes tsdown's other optional peers (tsx,publint, ...) but is missingunrun— so a fresh clone cannot build.Steps to reproduce
git clone https://github.com/deepseek-ai/deepseek-harness.gitcd deepseek-harnesspnpm install(pnpm@11.7.0, matchespackageManager)pnpm run build→ fails in tsdownEnvironment
engines: ^22.19.0 || >=24.0.0)Suggested fix
Add
"unrun"to the rootdevDependencies(e.g."unrun": "^0.3.1"), alongside the other tsdown optional peers already present.Workaround
Set
NODE_OPTIONS=--experimental-strip-typesso tsdown falls back to its native loader, or upgrade Node to>= 22.18where native TS support is enabled by default.All reactions