Releases: web-infra-dev/rspack
v0.7.4
What's Changed
Highlights
LightningCSS minimizer
In v0.7.4 Rspack provides a new CSS minimizer which uses Lightning CSS under the hood, for now you can enable it by optimization.minimizer
, and in Rspack v1.0, it will be enabled by default.
And here are two very useful features powered by the new LightningCSS minimizer:
- removeUnusedLocalIdents: during minification, it removes the CSS declarations corresponding to the unused-symbols. This allows Rspack to work with CSS modules' tree shaking to remove unused CSS declarations corresponding to exports (previously, it would only remove the JS exports).
- browserslist: with this options minification will also performs downgrading. If the postcss-loader was previously used only for downgrading, it can be removed.
Checkout our docs for more details.
Compatible with worker-loader
In v0.7.4 Rspack is compatible with worker-loader, which is usually used by some older projects, so this is provided only as a temporary solution to facilitate these older projects migration to Rspack, checkout our docs for more details.
Exciting New Features 🎉
- feat: lightningcss minimizer by @ahabhgk in #6801
- feat: export FetchCompileAsyncWasmPlugin for worker loader by @ahabhgk in #6832
- feat: add more stats module properties by @LingyuCoder in #6799
- feat: add build time executed modules to stats by @LingyuCoder in #6829
- feat: upgrade webpack latest version by @SyMind in #6800
- feat(runtime): enable rspack version by @zmzlois in #6817
Bug Fixes 🐞
- fix(mf): avoid error webpack_require.f.consume after hmr by @ahabhgk in #6796
- fix: css modules composes same ident with local class by @ahabhgk in #6815
- fix: fix segmentation fault with custom loader by @h-a-n-a in #6824
- fix: basically same codegen of arco-pro by @ahabhgk in #6826
- fix: parse url dependency for minimized css by @ahabhgk in #6827
- fix: should be able to add loader resolver dependencies by @h-a-n-a in #6828
- fix: generate suggestions if api-extractor failed the test by @h-a-n-a in #6834
- fix(cli): should close compiler after building by @chenjiahan in #6835
- fix: docs ci wrong in node 16 by @SyMind in #6840
- fix: source map wrong when columns is false by @SyMind in #6841
- fix: sourceMapFilename default value by @SyMind in #6845
- fix: panic of module_graph.get_depth by @LingyuCoder in #6846
Document Updates 📖
- docs: update slogan and descriptions by @chenjiahan in #6798
- docs: name and dependencies by @SyMind in #6806
- docs: improve
module.rules.descriptionData
by @leimonio in #6797 - docs: infrastructureLogging by @SyMind in #6808
- docs: translate
Rule.descriptionData
by @chenjiahan in #6813 - docs: complete output config by @SyMind in #6814
- docs: add semver declaration by @h-a-n-a in #6825
- docs: complete experiments docs by @SyMind in #6823
- docs: complete module docs by @SyMind in #6843
Other Changes
- chore: mark defferent between webpack defaults by @SyMind in #6795
- chore: remove useless Serialize and Deserialize by @jerrykingxyz in #6809
- chore: add congcong to team member list by @LingyuCoder in #6811
- chore: remove unused lazy compilation file by @LingyuCoder in #6812
- ci: check implemented but not documented configs by @SyMind in #6810
- refactor: cleanup JavaScript API by @h-a-n-a in #6831
- chore(deps): update dependency ws to v8.17.1 [security] by @renovate in #6842
New Contributors
Full Changelog: v0.7.3...v0.7.4
v0.7.3
What's Changed
Performance Improvements ⚡
- perf: put visited_chunk_group_keys out of the loop and use FxHashMap by @SyMind in #6769
- perf: code splitter by @SyMind in #6750
Exciting New Features 🎉
- feat: support preact refresh by @LingyuCoder in #5392
- feat: the missing part of loader by @h-a-n-a in #6753
- feat: css tree shaking by @JSerFeng in #6772
- feat:
ProgressPlugin
configuration by @CPunisher in #6722 - feat: use warning for css parsing by @ahabhgk in #6777
- feat: concatenated modules stats by @LingyuCoder in #6784
- feat: allow to reference client module types by @chenjiahan in #6787
Bug Fixes 🐞
- fix: should remove correct connections by @JSerFeng in #6771
- fix: panic when resolve failed and enable concatenateModule by @LingyuCoder in #6778
- fix: panic when resolve context failed by @LingyuCoder in #6779
- fix: concatenate module with external by @ahabhgk in #6781
- fix: increase stack size limit to 4mb by @h-a-n-a in #6783
- fix: diagnostic snapshot by @h-a-n-a in #6788
- fix: diagnostic snapshot by @h-a-n-a in #6794
Document Updates 📖
- docs: fix discord badge by @chenjiahan in #6780
Other Changes
- ci: use @pnpm/exe in Node 16 CI by @chenjiahan in #6770
- chore(deps): update swc by @renovate in #6726
- chore: add interop-test to diff test by @ahabhgk in #6774
- chore: remove console.log in replacePaths by @LingyuCoder in #6792
Full Changelog: v0.7.2...v0.7.3
v0.7.2
What's Changed
Performance Improvements ⚡
Exciting New Features 🎉
Bug Fixes 🐞
- fix: extract-css should pass cacheable by @JSerFeng in #6707
- fix: code splitting won't invalidate in some cases by @JSerFeng in #6733
- fix: module-decorator-dep should be module dependency by @JSerFeng in #6732
- fix: override existing css exports by @ahabhgk in #6745
- fix: add chunks and cacheGroupKey to cacheGroups' name by @hulin32 in #6428
- fix: support lazy css using css-extract by @JSerFeng in #6747
- fix: add
strict: true
to RawModule by @colinaaa in #6755 - fix: should clear local classes for invalid composes by @ahabhgk in #6757
- fix:
Rule.descriptionData
won't match object types by @h-a-n-a in #6758 - fix: Add
in_function_scope
for walking method function by @CPunisher in #6760 - fix: has_module_graph_change miscalculation by @jerrykingxyz in #6766
Document Updates 📖
- docs: rewrite document for require.context() by @chenjiahan in #6736
- docs: update Module Federation guide by @chenjiahan in #6746
- docs: bump Rspress to improve container style by @chenjiahan in #6748
- docs: add import.meta.webpackContext by @chenjiahan in #6751
Other Changes
- test: enable jsdom runner by default by @LingyuCoder in #6724
- test: fix runtime diff cases by @LingyuCoder in #6729
- refactor: entry_modules calculate by entry_deps by @jerrykingxyz in #6730
- chore(deps): update julienkode/team-labeler-action action to v1.3.0 by @renovate in #6727
- chore: add test case for chunk graph by @SyMind in #6744
- align: webpack stats preset by @SyMind in #6708
- chore(infra): migrate to biome for import order sorting by @SoonIter in #6741
- refactor: harmony import dependency parser plugin by @ahabhgk in #6752
- test: export setup for plugin testing by @LingyuCoder in #6765
- chore: enable runtime condition webpack-test by @ahabhgk in #6764
- chore(infra): bump pnpm v9 by @chenjiahan in #6767
New Contributors
Full Changelog: v0.7.1...v0.7.2
v0.7.1
What's Changed
Highlights
Check exports presence
Now Rspack will emit warnings for using non-existent exports and conflicting re-exports, checkout docs for more details.
10%-15% performance improvement for JavaScript parsing
The old JavaScript parser performs multiple times of parsing and code generation.
In this version, Rspack refactored the current implementation. It's one time parsing now.
Check out the PR for detail.
Performance Improvements ⚡
Exciting New Features 🎉
- feat: support target in loader context by @LingyuCoder in #6640
- feat(css-extract): add defaultExport and namedExport support by @JSerFeng in #6657
- feat: support javascript.parser.exportPresence by @ahabhgk in #6660
- feat: lazy compilation ignore global entry by @JSerFeng in #6674
- feat: partial support compilation.additionalTreeRuntimeRequirements hook by @LingyuCoder in #6677
- feat: add
optimization.moduleIds: 'natural'
by @colinaaa in #6685 - feat: add
optimization.chunkIds: 'natural'
by @colinaaa in #6692 - feat: support
_module
of LoaderContext by @CPunisher in #6631
Bug Fixes 🐞
- fix: loader context target array by @LingyuCoder in #6642
- fix: css modules ident escape by @ahabhgk in #6653
- fix: should not lazy static context element dependency by @JSerFeng in #6655
- fix: replace
\0
to\u200b
by @LingyuCoder in #6656 - fix: apply js rule on module federation runtime by @ahabhgk in #6672
- fix: use numeric moduleId by @colinaaa in #6688
- fix: installedCssChunks unicode error on windows by @LingyuCoder in #6682
- fix: should insert semi after variable decl by @h-a-n-a in #6703
- fix: should error when matched alias not found by @ahabhgk in #6691
- fix: local class with charset by @ahabhgk in #6705
- fix: allow return outside functions in scripts by @h-a-n-a in #6706
- fix: should generate correct hash for assets by @LingyuCoder in #6713
- fix: lazy compilation should escape data uri and should not rely on dependency request by @JSerFeng in #6716
- fix: correct runtime condition expression by @ahabhgk in #6723
Document Updates 📖
- docs: announcing 0.7 by @9aoy in #6562
- docs: fix og image URL by @chenjiahan in #6635
- docs: improve lazy compilation document by @chenjiahan in #6638
- docs: change compatibility link by @ZLY201 in #6650
- docs: update esModule generator description & version by @leimonio in #6646
- docs: rewrite the webpack migration guide by @chenjiahan in #6669
- docs: display edit link in the footer by @chenjiahan in #6678
- docs: correct GitHub spelling by @bamboofive in #6680
- docs: exports presence by @ahabhgk in #6681
- docs: update support status of
BannerPlugin
by @colinaaa in #6693 - docs: update description for exportsOnly config by @leimonio in #6686
- docs: translate exportsOnly description by @chenjiahan in #6700
Other Changes
- chore: update swc-minifier by @JSerFeng in #6634
- chore: cleanup compilation struct by @ahabhgk in #6637
- chore(test): force colorize Jest output by @fi3ework in #6658
- test: use
toMatchFileSnapshot
by @colinaaa in #6663 - refactor: make_module_graph use immutable compilation by @jerrykingxyz in #6670
- chore: fix testDir by @JSerFeng in #6679
- refactor(cli): Reduce some additional judgments and branch conditions by @Simon-He95 in #5461
- ci: incremental patch version when release canary and nightly by @LingyuCoder in #6684
- refactor: regenerate module_graph after finish make by @jerrykingxyz in #6694
- refactor: cleanup JavaScript parsing by @h-a-n-a in #6583
- chore: ignore json named exports warnings for non-strict ESM by @ahabhgk in #6698
- refactor: cleanup JavaScript parsing 2 by @h-a-n-a in #6710
- refactor: cleanup source-map stub by @h-a-n-a in #6712
- test: add config type to css extract test cases by @LingyuCoder in #6695
New Contributors
- @ZLY201 made their first contribution in #6650
- @bamboofive made their first contribution in #6680
- @Simon-He95 made their first contribution in #5461
- @CPunisher made their first contribution in #6631
Full Changelog: v0.7.0...v0.7.1
v0.7.0
What's Changed
see Announcing Rspack v0.7 for more details
Notable Changes 🍭
- feat: lazy compilation by @JSerFeng in #5915
- refactor: analyze css dependencies with css-module-lexer by @ahabhgk in #6594
Breaking Changes 🛠
- breaking change: update swc by @JSerFeng in #6441
- breaking change: deprecate
Compiler
andMultiCompiler
API by @h-a-n-a in #6448 - breaking change: deprecate
Compilation
API by @h-a-n-a in #6505 - breaking change: remove old treeshaking by @JSerFeng in #6549
- breaking change: remove exportsConvention for css generator by @ahabhgk in #6555
- breaking change: remove new split chunks options by @ahabhgk in #6536
- breaking change: remove browserField by @ahabhgk in #6535
- breaking change: remove snapshot config by @jerrykingxyz in #6593
Performance Improvements ⚡
- perf: improve determine_export_assignments by @quininer in #6431
- perf(core): prebundle enhanced-resolve to reduce dependencies by @chenjiahan in #6585
- perf: change JS code target to ES2021 by @chenjiahan in #6628
Exciting New Features 🎉
- feat: compat chunkGroup.chunks by @ahabhgk in #6490
- feat: support performance config by @inottn in #6456
- feat: support resolve.enforceExtension / descriptionFiles / importsFields options by @9aoy in #6491
- feat: support contextModuleFactory beforeResolve hook by @SyMind in #6420
- feat: export types of CSS extract plugin by @chenjiahan in #6528
- feat: improve diagnostics if expressions passed into
DefinePlugin
are failed to parse by @shulaoda in #6382 - feat: support cjs css with css esModule generator options by @ahabhgk in #6376
- feat(create-rspack): add template-vue-ts by @cnryb in #5834
- feat: inline entry modules by @ahabhgk in #6554
- feat: support
stage
option ofBannerPlugin
by @colinaaa in #6623
Bug Fixes 🐞
- fix(rspack_plugin_mf): add chunk js matcher runtime to federation runtime by @ScriptedAlchemy in #6434
- fix: systemjs runtime extra semicolon by @LingyuCoder in #6492
- fix: make *_dependencies memory leak by @jerrykingxyz in #6498
- fix(minimizer): resolve error in minimizing esm asset file by @xc2 in #6521
- fix: make entry add include dependencies by @jerrykingxyz in #6527
- fix: make code-splitting deterministic by @JSerFeng in #6508
- fix: when comparing, cache group index should consider before modules by @JSerFeng in #6547
- fix: change the data URI type in ModuleFederationPlugin by @chenjiahan in #6567
- fix: module_executor keep make_failed_module by @jerrykingxyz in #6565
- fix: finish_module_task skip self reference connection by @jerrykingxyz in #6570
- fix: css-extract-plugin should keep file dependencies by @JSerFeng in #6576
- fix: support
"..."
in importFields by @ahabhgk in #6363 - fix: optional context dependency by @LingyuCoder in #6587
- fix: panic when update entry dependency by @jerrykingxyz in #6591
- fix: context module after resolve by @ahabhgk in #6595
- fix: fix module type export name by @JSerFeng in #6600
- fix: hmr should consider all imported members by @JSerFeng in #6612
- fix: provide plugin should support IIFE by @h-a-n-a in #6580
- fix: browserslist resolve is broken by prebundle by @chenjiahan in #6629
Document Updates 📖
- docs: check documentation coverage by @SyMind in #6468
- docs: update community plugin compatibility list by @9aoy in #6476
- docs(zh): update guide plugins by @chenjiahan in #6475
- docs: complete watchOptions configurations by @9aoy in #6479
- docs: remove inconsistent title by @SoonIter in #6484
- docs: improve compat table style by @chenjiahan in #6485
- docs: remove loader compatible page by @9aoy in #6493
- docs:
resolve plugin
not supported by @9aoy in #6495 - docs: add some links for awesome-rspack by @chenjiahan in #6497
- docs: internal plugins doc by @SyMind in #6483
- docs: add vanilla-extract supported by @9aoy in #6499
- docs: fix wrong heading by @inottn in #6507
- docs: add missing
module
option of swc minimizer plugin by @emosheeep in #6506 - docs: add webpack-aligned plugin link by @9aoy in #6511
- docs: make the cases correct by @chenjiahan in #6510
- docs: duplicated ignoreOrder option in CssExtractPlugin by @chenjiahan in #6516
- docs: move rspack dev guide to documentation site by @SoonIter in #6515
- docs: reorganize the structure of dev guide by @chenjiahan in #6518
- docs: update outdated links and contents in dev guide by @chenjiahan in #6520
- docs: rename Node.js API to JavaScript API by @chenjiahan in #6529
- docs: update documentation contribution by @hardfist in #5993
- docs: dev server docs by @SyMind in #6530
- docs: improve plugins docs by @SyMind in #6545
- docs: remove canary comment release in contribute guide by @LingyuCoder in #6566
- docs: new testing guide by @LingyuCoder in #6519
- docs: translate the dev guide by @SoonIter in #6584
- docs: fix the video component in md by @SoonIter in #6604
- docs: change Storybook migration to storybook-rsbuild by @fi3ework in #6599
- docs: example for lazy compilation with custom global entry by @JSerFeng in #6609
- docs: list more plugins compatible status by @9aoy in #6615
- docs: recommend using sass-embedded for performance by @chenjiahan in #6617
- docs(react): add guide for React Compiler by @chenjiahan in #6619
Other Changes
- ci: remove openssl-legacy-provider flag by @SyMind in #6469
- refactor: make hooks remove make_param by @jerrykingxyz in #6489
- ci: release canary by dispatch by @LingyuCoder in #6502
- ci: contribution hook by @LingyuCoder in #6503
- chore: remove Boshen from the team by @Boshen in #6509
- chore(infra): update .nvmrc by @SoonIter in #6517
- chore(deps): update crates by @renovate in #6467
- test: add type of defaults cases by @LingyuCoder in #6524
- refactor: make
make_artifact
as raw data by @jerrykingxyz in #6526 - test: add type of hook cases by @LingyuCoder in #6531
- chore: add eslint for import order sorting by @h-a-n-a in #6539
- test: use @rspack/core as config type by @LingyuCoder in https://github.com/web-infra-dev/rspack/p...
v0.7.0-beta.2
What's Changed
Performance Improvements ⚡
- perf(core): prebundle enhanced-resolve to reduce dependencies by @chenjiahan in #6585
Exciting New Features 🎉
- feat: remove snapshot config by @jerrykingxyz in #6593
Bug Fixes 🐞
- fix: support
"..."
in importFields by @ahabhgk in #6363 - fix: optional context dependency by @LingyuCoder in #6587
- fix: panic when update entry dependency by @jerrykingxyz in #6591
- fix: context module after resolve by @ahabhgk in #6595
- fix: fix module type export name by @JSerFeng in #6600
Document Updates 📖
- docs: add moment-locales-webpack-plugin support status by @9aoy in #6601
- docs: translate the dev guide by @SoonIter in #6584
- docs: fix the video component in md by @SoonIter in #6604
- docs: change Storybook migration to storybook-rsbuild by @fi3ework in #6599
Other Changes
- test: compiler type extends by @LingyuCoder in #6582
- refactor: create codegen dependencies by @ahabhgk in #6588
- release: 0.7.0-beta.1 by @9aoy in #6586
- test: fix hot snapshot recovery checker by @LingyuCoder in #6589
- test: check hot step match by @LingyuCoder in #6592
- revert: revert swc comment preserver (#6389) by @h-a-n-a in #6598
- chore: remove old treeshaking by @JSerFeng in #6549
- test: allow optional test options by @LingyuCoder in #6603
Full Changelog: v0.7.0-beta.1...v0.7.0-beta.2
v0.7.0-beta.1
What's Changed
Exciting New Features 🎉
Bug Fixes 🐞
- fix: change the data URI type in ModuleFederationPlugin by @chenjiahan in #6567
- fix: module_executor keep make_failed_module by @jerrykingxyz in #6565
- fix: finish_module_task skip self reference connection by @jerrykingxyz in #6570
- fix: css-extract-plugin should keep file dependencies by @JSerFeng in #6576
Document Updates 📖
- docs: remove canary comment release in contribute guide by @LingyuCoder in #6566
- docs: new testing guide by @LingyuCoder in #6519
- docs: list more webpack-contrib plugins compatible by @9aoy in #6578
Other Changes
- test: move normal case with rspack.config.js by @LingyuCoder in #6561
- test: snapshot directory should be snapshots by @LingyuCoder in #6564
- chore: remove exportsConvention for css generator by @ahabhgk in #6555
- test: fix dependencies of test tools by @LingyuCoder in #6575
- test: fix dependencies of test tools by @LingyuCoder in #6577
- test: pass expect in test env by @LingyuCoder in #6579
Full Changelog: v0.7.0-beta.0...v0.7.0-beta.1
v0.7.0-beta.0
What's Changed
Breaking Changes 🛠
- chore: update swc by @JSerFeng in #6441
- feat: deprecate
Compiler
andMultiCompiler
API by @h-a-n-a in #6448 - feat: deprecate
Compilation
API by @h-a-n-a in #6505
Performance Improvements ⚡
Exciting New Features 🎉
- feat: compat chunkGroup.chunks by @ahabhgk in #6490
- feat: support performance config by @inottn in #6456
- feat: support resolve.enforceExtension / descriptionFiles / importsFields options by @9aoy in #6491
- feat: support contextModuleFactory beforeResolve hook by @SyMind in #6420
- feat: export types of CSS extract plugin by @chenjiahan in #6528
- feat: improve diagnostics if expressions passed into
DefinePlugin
are failed to parse by @shulaoda in #6382 - feat: support cjs css with css esModule generator options by @ahabhgk in #6376
- feat(create-rspack): add template-vue-ts by @cnryb in #5834
Bug Fixes 🐞
- fix(rspack_plugin_mf): add chunk js matcher runtime to federation runtime by @ScriptedAlchemy in #6434
- fix: systemjs runtime extra semicolon by @LingyuCoder in #6492
- fix: make *_dependencies memory leak by @jerrykingxyz in #6498
- fix(minimizer): resolve error in minimizing esm asset file by @xc2 in #6521
- fix: make entry add include dependencies by @jerrykingxyz in #6527
- fix: make code-splitting deterministic by @JSerFeng in #6508
- fix: when comparing, cache group index should consider before modules by @JSerFeng in #6547
Document Updates 📖
- docs: check documentation coverage by @SyMind in #6468
- docs: update community plugin compatibility list by @9aoy in #6476
- docs(zh): update guide plugins by @chenjiahan in #6475
- docs: complete watchOptions configurations by @9aoy in #6479
- docs: remove inconsistent title by @SoonIter in #6484
- docs: improve compat table style by @chenjiahan in #6485
- docs: remove loader compatible page by @9aoy in #6493
- docs: add some links for awesome-rspack by @chenjiahan in #6497
- docs: internal plugins doc by @SyMind in #6483
- docs: fix wrong heading by @inottn in #6507
- docs: add missing
module
option of swc minimizer plugin by @emosheeep in #6506 - docs: add webpack-aligned plugin link by @9aoy in #6511
- docs: make the cases correct by @chenjiahan in #6510
- docs: duplicated ignoreOrder option in CssExtractPlugin by @chenjiahan in #6516
- docs: move rspack dev guide to documentation site by @SoonIter in #6515
- docs: reorganize the structure of dev guide by @chenjiahan in #6518
- docs: update outdated links and contents in dev guide by @chenjiahan in #6520
- docs: rename Node.js API to JavaScript API by @chenjiahan in #6529
- docs: update documentation contribution by @hardfist in #5993
- docs: dev server docs by @SyMind in #6530
- docs: improve plugins docs by @SyMind in #6545
Other Changes
- ci: remove openssl-legacy-provider flag by @SyMind in #6469
- refactor: make hooks remove make_param by @jerrykingxyz in #6489
- ci: release canary by dispatch by @LingyuCoder in #6502
- ci: contribution hook by @LingyuCoder in #6503
- chore: remove Boshen from the team by @Boshen in #6509
- chore(infra): update .nvmrc by @SoonIter in #6517
- chore(deps): update crates by @renovate in #6467
- test: add type of defaults cases by @LingyuCoder in #6524
- refactor: make
make_artifact
as raw data by @jerrykingxyz in #6526 - test: add type of hook cases by @LingyuCoder in #6531
- refactor: remove browserField by @ahabhgk in #6535
- chore: add eslint for import order sorting by @h-a-n-a in #6539
- test: use @rspack/core as config type by @LingyuCoder in #6538
- ci: renovate lark trigger by @LingyuCoder in #6542
- chore: remove new split chunks options by @ahabhgk in #6536
- refactor: align js render bootstrap by @ahabhgk in #6534
- chore(deps): update crates by @renovate in #6541
- chore(deps): update swc by @renovate in #6540
- chore: revert cargo lock to fix ci by @ahabhgk in #6544
- test: remove old treeshaking by @LingyuCoder in #6537
- chore: remove define plugin in rspack-cli by @LingyuCoder in #6219
- refactor: remove build & resolve_module cache by @jerrykingxyz in #6548
- chore(deps): update dependency sass-loader to v14 by @renovate in #6430
- test: config file type by @LingyuCoder in #6552
- ci: support release beta version by @9aoy in #6558
New Contributors
- @inottn made their first contribution in #6456
- @emosheeep made their first contribution in #6506
- @shulaoda made their first contribution in #6382
- @cnryb made their first contribution in #5834
Full Changelog: v0.6.5...v0.7.0-beta.0
v0.6.5
Hotfixes
- fix: template strings panic by @ahabhgk in #6473
- fix: should distinguish context for css modules local ident name by @ahabhgk in #6472
What's Changed
Performance Improvements ⚡
- perf(core): use prebundle to reduce dependencies by @chenjiahan in #6462
- perf: on-demand sourcemap generation by @h-a-n-a in #6443
Bug Fixes 🐞
- fix(cli): load
@rspack/dev-server
on demand by @xc2 in #6370 - fix: remove --force flag to fix prebundle by @chenjiahan in #6465
- fix: add trace log for module executor by @jerrykingxyz in #6451
Document Updates 📖
- docs: update guide plugins by @leimonio in #6466
- docs(html-plugin): add comparison and examples by @chenjiahan in #6471
Other Changes
- docs: fix ApiMeta component href by @Timeless0911 in #6461
- chore: add tag to docs pr and release note by @LingyuCoder in #6464
New Contributors
Full Changelog: v0.6.4...v0.6.5
v0.6.4
What's Changed
Performance Improvements ⚡
- perf(core): remove events dependency by @chenjiahan in #6329
- perf: optimize execute module by @jerrykingxyz in #6415
Exciting New Features 🎉
- feat: support context module critical by @ahabhgk in #6331
- feat: support more methods for
errors
andwarnings
inCompilation
by @coder-xiaotian in #6300 - feat: diff context module sync mode by @ahabhgk in #6354
- feat: diagnostic with labels by @h-a-n-a in #6001
- feat: support pathinfo option by @SyMind in #6326
- feat(copyRspackPlugin): support transform configuration by @9aoy in #6375
- feat: support dynamic entry by @SyMind in #6393
- feat: add message comment for block promise by @ahabhgk in #6403
- feat: export Chunk and Module types from
@rspack/core
by @chenjiahan in #6421
Bug Fixes 🐞
- fix(create-rspack): remove useless sourceMap option in templates by @chenjiahan in #6319
- fix: incremental rebuild clean module_graph.block & dependencies by @jerrykingxyz in #6298
- fix: align get_nested_exports_info with webpack by @JSerFeng in #6351
- fix: default resolve roots by @ahabhgk in #6340
- fix: errors thrown in userland callbacks should not panic by @h-a-n-a in #6082
- fix: process dependencies task remove resolve_options by @jerrykingxyz in #6377
- fix: swc minimizer extracted comments should be stable by @h-a-n-a in #6380
- fix: minify comments extract by @LingyuCoder in #6386
- fix: runtimeChunk should control all entries' runtime by @ahabhgk in #6388
- fix(mf): remove empty chunk mapping by @ahabhgk in #6394
- fix(config): snapshot.module accept
{ timestamp: true}
by @SoonIter in #6387 - fix: swc parser should always preserve comments by @h-a-n-a in #6389
- fix: wrong module source by @h-a-n-a in #6396
- fix(config): support snapshot config {timestamp: true} and {hash: true} by @SoonIter in #6399
- fix: handle unhandled scheme by @h-a-n-a in #6404
- fix: allow all characters for webpackChunkName by @xc2 in #6411
- fix: remove outdated TODOs in runtime code by @chenjiahan in #6409
- fix: comment preserver should be placed prior to inline globals by @h-a-n-a in #6423
- fix(rspack_loader_runner): char_boundary panic when debug content by @SoonIter in #6412
- fix(mf): webpack_init_sharing with empty config by @ahabhgk in #6450
- fix: consistent md4 hash in localNameIdent by @LingyuCoder in #6444
Document Updates 📖
- docs: enable cleanUrls for website by @chenjiahan in #6330
- docs: use meta.json to generate nav and sidebar configs by @chenjiahan in #6345
- docs: improve homepage style by @chenjiahan in #6365
- docs: update react doc by @h-a-n-a in #6371
- docs: sort about docs to make them more clear by @chenjiahan in #6378
- docs: fix readme.md credits links by @LingyuCoder in #6383
- docs: update outdated FAQs by @chenjiahan in #6384
- docs: improve team member list styles by @chenjiahan in #6385
- docs: css modules guides by @SyMind in #6397
- docs: add v1.0 release plan to roadmap by @chenjiahan in #6405
- docs: fix banner link by @Sunny-117 in #6401
- docs: split plugins api by @SyMind in #6400
- docs: split loader docs by @SyMind in #6442
- docs: add blogs overview page by @chenjiahan in #6446
- docs: split module methods docs by @SyMind in #6447
- docs: fix modules docs crash by @SyMind in #6449
Other Changes
- chore(deps): bump express from 4.18.1 to 4.19.2 in /packages/rspack-dev-server by @dependabot in #6316
- refactor: import context dependency param evaluate by @ahabhgk in #6321
- chore: bump oxc_resolver to v1.6.7 by @Boshen in #6320
- chore: do NOT trigger lark notification for issues from project member by @yuyutaotao in #6327
- chore: Use team.yml file to filter team member when sending notification by @yuyutaotao in #6333
- refactor: remove is_new_treeshaking in module_graph by @jerrykingxyz in #6334
- chore: add hot step runtime test by @LingyuCoder in #6318
- chore: migrate config test cases by @LingyuCoder in #6335
- chore: migrate config test cases by @LingyuCoder in #6338
- chore: migrate normal cases by @LingyuCoder in #6336
- chore: remove case sensitive case by @LingyuCoder in #6342
- chore: remove case sensitive case of webpack-test by @LingyuCoder in #6343
- chore: migrate test hot by @LingyuCoder in #6341
- chore: move config case of context module by @LingyuCoder in #6346
- chore: migrate test diagnostic by @LingyuCoder in #6348
- chore: remove repetitive words by @findmyhappy in #6347
- chore: migrate stats cases by @LingyuCoder in #6349
- test: add hook cases by @h-a-n-a in #6241
- chore(api-extractor): exclude warning and add forgotten exports to report by @h-a-n-a in #6352
- chore: migrate compat case by @LingyuCoder in #6353
- chore(deps): bump webpack-dev-middleware from 6.0.2 to 6.1.2 in /packages/rspack-dev-server by @dependabot in #6288
- chore: migrate css extract test by @LingyuCoder in #6360
- chore: move resolve roots test by @ahabhgk in #6361
- chore: migrate copy plugin cases by @LingyuCoder in #6362
- refactor: split cutout and repair step in make by @jerrykingxyz in #6364
- chore: modify cwd of test cases and refactor some case creator by @LingyuCoder in #6367
- chore: migrate test remain by @LingyuCoder in #6369
- chore: jsdom windows by @LingyuCoder in #6379
- refactor: diff context module lazy once mode by @ahabhgk in #6398
- chore: move rspack_core macro test by @ahabhgk in #6395
- refactor: weak, async-weak, eager mode context module codegen diff by @ahabhgk in #6406
- chore: test directory by @LingyuCoder in #6408
- chore(deps): fix renovate configuration by @xc2 in #6410
- chore: add type to file level cases by @LingyuCoder in #6416
- chore: add type to webpack.config.js cases by @LingyuCoder in #6417
- chore: hook case creator by @LingyuCoder in #6419
- chore(deps): update crates by @renovate in #6424
- chore: take down diff&canary release workflow temporarily by @hardfist in #6455
- chore: add x test plugin by @LingyuCoder in #6459
- chore: remove tok...