Repository navigation
build: migrate from unbuild to obuild - #24
Conversation
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes
- Build config —
build.config.tsnow importsdefineBuildConfigfromobuild/configand replacesrollup.inlineDependencieswith an explicittype: 'bundle'entry forbinplus the two presets,minifyLibs: true, anddts: { sourcemap: false }. - Scripts and dependencies —
unbuildis replaced byobuildin the rootcheckscript, in root devDependencies, and in the packageprepack. - Source and tsconfig — relative imports gained explicit
.tsextensions,cli.tsimportspackage.jsonwithwith { type: 'json' }, and the package tsconfig addsmodule: ESNext. - Tests — the
register.tsloader is removed and the harness now runssrc/bin.tsdirectly under Node's native type stripping.
I rebuilt the package with obuild@0.4.43 against this checkout: --stub emits exactly dist/bin.mjs and dist/presets/{oxfmt,oxlint}.mjs (entry names are derived relative to src/), and both the stubbed and fully bundled CLIs run standalone. The real build bundles the devDependencies into dist/_chunks/libs/* while leaving the peer dependencies external, so the published package stays self-contained. tsc --noEmit -p packages/uncheck/tsconfig.json passes and tests/uncheck/tsc.test.ts passes through the updated harness.
deepseek-v4.1-flash (free via Pullfrog for OSS) | 𝕏
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |

Replaces unbuild with obuild (rolldown) and enables
minifyLibs.build.config.tslists thebinand preset entries explicitly and turns off declaration sourcemapssrcnow end in.ts, andpackage.jsonis imported withwith { type: 'json' }, soobuild --stubruns the source natively on Node (module: ESNextin the package tsconfig). The test-onlyregister.tsloader is no longer needed and is removed.distNote
This PR was generated with an AI assistant.
🤖 Generated with AI assistant