Bunchee v7.0.0
Bunchee 7 modernizes package generation around ESM, introduces a unified module graph across entries, and delivers substantial build-performance and package-validation improvements.
Important
Bunchee 7 requires Node.js 22.12 or newer and now targets ES2022 by default. The bunchee package itself is ESM, while bunchee prepare generates ESM-only packages unless --cjs is passed. The old --prepare build flag has been removed. TypeScript 7 projects must install @typescript/typescript6 for declaration generation. See the migration guide for details.
Features
- Build a full module graph across entries (#746)
- Extend package lint with publish-confidence rules (#750)
- Make
bunchee prepareESM-first (#751) - Require Node.js 22.12+, target ES2022 by default, and remove
--prepare(#752)
Improvements
- Resolve externals through set and prefix lookups (#748)
- Reduce over-sharding during declaration emit (#749)
- Remove the obsolete
getPackageTypingshelper (#754) - Stop generating the legacy
modulefield during package preparation (#753) - Keep
use cacheanduse servermodules in separate chunks and simplify chunk names (#755) - Avoid building unreachable private modules and build one graph per module set (#756)
- Publish bunchee itself as an ESM package (#757)
- Add build profiling benchmarks (#758)
- Reuse the TypeScript program across declaration subsets (#759)
- Make package lint results actionable (#762)
- Align runtime option names across the CLI and Node.js API (#761)
Misc
- Restore every test fixture directory automatically (#747)
- Run the compatibility matrix only for releases (#760)
- Add a smoke test for the packed release (#763)
- Update the migration guide, README, and website for v7
Contributors: @huozhi
Full changelog: v6.12.2...v7.0.0