Highlights 💡
Compact module factories
Rspack now generates a more compact module factory format that trims the wrapper function. Benchmarks show this reduces bundle size by about 1% before gzip.
What's Changed
Performance Improvements ⚡
- perf: disable
output.pathinfoby default by @chenjiahan in #12306
New Features 🎉
- feat: support shorthand function for module factory to reduce bundle size by @JSerFeng in #12226
- feat(loader-runner): Allow limiting worker pool size for parallel loaders by @Pablinho in #12277
- feat: do not render js output if ref module is only css source type by @JSerFeng in #12329
- feat: supports async modules for EsmLibraryPlugin by @JSerFeng in #12338
Bug Fixes 🐞
- fix(plugin): remove duplicated chunks in html scripts by @stormslowly in #12304
- fix: should generate sri hash for chunks that only have concatenated modules by @LingyuCoder in #12310
- fix: persistent cache watch context dependencies changes by @jerrykingxyz in #12309
- fix: should set interop2_used to true if namespace import default-only by @JSerFeng in #12316
- fix: check unused class names should check all conventions by @JSerFeng in #12336
Refactor 🔨
- refactor: render dependency template with runtime template by @LingyuCoder in #12280
- refactor: render
__webpack_require__in static code by runtime template by @LingyuCoder in #12284 - refactor: refactor incremental using internal mutation by @hardfist in #12288
- refactor: split module_graph_mut by @hardfist in #12295
- refactor: render HMR runtime by runtime template by @LingyuCoder in #12297
- refactor: render mf runtime by runtime template by @LingyuCoder in #12298
- refactor: render runtime root variables by runtime template by @LingyuCoder in #12308
- refactor: refactor collect_build_module_graph_effects using artifact by @hardfist in #12287
- refactor: render runtime module variables by runtime template by @LingyuCoder in #12315
Document Updates 📖
- docs: update Data URI sub-title by @9aoy in #12282
- docs: add filename placeholders documentation by @chenjiahan in #12301
- docs: update plugin support status by @chenjiahan in #12314
- docs: improve
output.environmentconfiguration by @chenjiahan in #12312 - docs: polish phrasing in code splitting guides by @chenjiahan in #12321
- docs(loader): update
Rule.use.parallelto includemaxWorkersoption by @chenjiahan in #12322 - docs: polish introduction wording by @chenjiahan in #12325
- docs: fix the misstatements in the lazy compilation documentation by @Sunny-117 in #12330
Other Changes
- chore: release v1.6.5 by @jerrykingxyz in #12278
- chore(deps): update dependency @ast-grep/napi to ^0.40.0 by @renovate[bot] in #12290
- chore(deps): update dependency @microsoft/api-extractor to v7.55.1 by @renovate[bot] in #12291
- chore(deps): update patch npm dependencies by @renovate[bot] in #12289
- chore(deps): update dependency @microsoft/api-extractor-model to v7.32.1 by @renovate[bot] in #12292
- chore: add
import_meta_property_in_destructuringparser hook by @LingyuCoder in #12255 - chore(workflow): update node version to 22 in ci and nvm configuration by @chenjiahan in #12320
- chore: add Rsdoctor diff action by @yifancong in #12264
- test: bump rstest to show relevant running tests by @9aoy in #12323
- ci: add ecosystem CI based on rstack-ecosystem-ci by @fi3ework in #12318
- ci(ecosystem): do not need to clone ecosystem ci repo to sub folder by @fi3ework in #12339
- chore(CI): replace the rspack diff demos by @yifancong in #12337
New Contributors
Full Changelog: v1.6.5...v1.6.6