What's Changed
Performance Improvements ⚡
- perf: reduce normal module creation and rule matching overhead by @LingyuCoder in #13926
- perf: disable perfetto tracing in release binding by @hardfist in #13932
- perf: reduce parser dependency bookkeeping overhead by @LingyuCoder in #13936
- perf: reduce code splitter allocation and lookup overhead by @LingyuCoder in #13968
New Features 🎉
- feat: expose dependency import attributes by @hardfist in #13947
- feat(rsc): support configurable CSS link props by @SyMind in #13945
- feat(externals): add modern-module externals type by @JSerFeng in #13861
- feat: support import.meta.rspackRsc by @SyMind in #13840
- feat: drop inactive branch dependencies for inlined booleans by @JSerFeng in #13863
- feat(sourcemap): support relative paths in inline source maps by @SyMind in #13974
Bug Fixes 🐞
- fix(cli): use rspack-merge for config extends by @intellild in #13869
- fix(deps): revert mimalloc update by @hardfist in #13942
- fix(hash): fix base64 digest and hash salt by @intellild in #13977
- fix: align sync module rule resource matching by @LingyuCoder in #13981
- fix(ci): avoid browser e2e watcher by @hardfist in #13987
Refactor 🔨
- refactor(rstest): expose injectDynamicImportOrigin.functionName and resolve callee once by @fi3ework in #13930
- refactor: use rspack util base64 by @intellild in #13978
- refactor(core): remove unused exports final name metadata by @LingyuCoder in #14003
Document Updates 📖
- docs: replace webpack-merge references with rspack-merge by @intellild in #13933
- docs: correct terminology spelling by @chenjiahan in #13964
- docs: update HTML plugin guide by @chenjiahan in #13970
- docs(externals): add modern-module externals example by @JSerFeng in #13979
- docs: update NestJS guide by @intellild in #13976
- docs: invite @intellild to Rspack core team by @chenjiahan in #13986
- docs: add Node app guide by @intellild in #13995
Other Changes
- chore: release v2.0.2 by @SyMind in #13922
- chore(benchmark): remove swc loader from threejs case by @hardfist in #13881
- ci: upload codspeed valgrind temp files by @hardfist in #13879
- chore: bump rslint to 0.5.2 by @fansenze in #13931
- chore: enable Rslint for more packages and fix lint issues by @chenjiahan in #13934
- chore: enable Rslint JS recommended rules by @chenjiahan in #13938
- chore: disable renovate updates for mimalloc by @hardfist in #13949
- ci: remove unused team label workflow by @chenjiahan in #13950
- test: configure rayon for codspeed benchmarks by @hardfist in #13954
- chore(deps): update patch npm dependencies by @renovate[bot] in #13959
- chore(deps): update rust crate tokio to 1.52.3 by @renovate[bot] in #13961
- chore(deps): update pnpm to v10.33.4 by @renovate[bot] in #13960
- chore: enable tsgo for dts generation by @chenjiahan in #13952
- test(benchmark): disable spawn blocking for codspeed by @hardfist in #13958
- chore: use mimalloc for codspeed benchmark allocator by @hardfist in #13966
- test: split compilation stage benchmarks by @hardfist in #13969
- test: split benchmark case entrypoints by @hardfist in #13971
- test: print benchmark compilation errors by @hardfist in #13984
- chore: bump swc from 65.0.1 to 65.0.4 by @CPunisher in #13985
- chore(deps): update dependency mermaid to v11.15.0 [security] by @renovate[bot] in #13997
- chore(deps): tighten pnpm install safeguards by @chenjiahan in #14005
- security(release): drop .npmrc NPM_TOKEN write, rely on npm trusted publishing by @stormslowly in #14011
- chore(ci): pin actions/{download,upload}-artifact to immutable SHAs by @stormslowly in #14001
Full Changelog: v2.0.2...v2.0.3