CARVIEW |
Navigation Menu
-
-
Notifications
You must be signed in to change notification settings - Fork 762
Releases: web-infra-dev/rspack
v1.4.10
Compare
Highlights π‘
- β¨ 30% smaller Wasm bundle (38.9MB β 27.2MB)
- β‘ 4x faster tree shaking analysis in large projects

What's Changed
Performance Improvements β‘
- perf: parallelize flag usage plugin by @LingyuCoder in #11128
- perf: parallel process exports spec by @LingyuCoder in #11110
- perf: parallel process referenced module of flag usage plugin by @LingyuCoder in #11145
- perf(wasm): use wasm-opt after building wasm by @CPunisher in #11141
- perf: napi communication by @SyMind in #11132
Bug Fixes π
- fix: add missing runtime globals in
RUNTIME_GLOBAL_MAP
by @colinaaa in #11127 - fix(parser): do not skip parsing expression inside require.resolve by @fi3ework in #11133
- fix: external resolve esm module by @SyMind in #11144
- fix(mf): should disconnect chunk for removed chunk by @ahabhgk in #11154
Other Changes
- chore: degrade napi-build to 2.2.2 by @CPunisher in #11130
- chore(deps): update dependency @ast-grep/napi to ^0.39.1 by @renovate[bot] in #11137
- chore(deps): update napi by @renovate[bot] in #11135
- chore(wasm): use release-wasi profile by @CPunisher in #11131
- chore(deps): update dependency axios to v1.11.0 [security] by @renovate[bot] in #11150
Full Changelog: v1.4.9...v1.4.10
Assets 2
v1.4.9
Compare
Highlights π‘
Reduced install size β‘οΈ
In Rspack v1.4.9, we focused on optimizing our Rust dependencies and build flags. This effort has resulted in significant reductions to Rspack's install size across all platforms. We continue to work on further size optimizations and expect additional improvements in future releases.
Platform | Rspack 1.4.8 | Rspack 1.4.9 | Diff |
---|---|---|---|
@rspack/binding-linux-x64-gnu | 59.4MB | 51.3MB | 8.1MB |
@rspack/binding-darwin-arm64 | 46.1MB | 43.2MB | 2.9MB |
@rspack/binding-win32-x64-msvc | 51.4MB | 48.5MB | 2.9MB |
What's Changed
Performance Improvements β‘
- perf(wasm): set lto=fat and cgu=1 by @CPunisher in #11071
- perf: use fxhash for HashMap in napi by @SyMind in #11080
- perf: Use build-std for release by @quininer in #11077
- perf: dedupe derive_more by @hardfist in #11092
- perf(wasm): use build-std for release-wasi by @CPunisher in #11091
- perf: napi resolve request by @SyMind in #11102
- perf: get resolve in external plugin by @SyMind in #11111
- perf: parallel set sync modules by @LingyuCoder in #11113
New Features π
- feat: upgrade swc to 33.0.0 by @hardfist in #11089
- feat(plugin_mf): Module Hoisting, Entry initialization via webpack_require.x, Custom Hooks by @ScriptedAlchemy in #10524
- feat: support SwcJsMinimizerRspackPlugin specifying ECMAScript version by @GiveMe-A-Name in #11109
- feat(rstest): strip import_call as first arg in mock function by @fi3ework in #11099
- feat: rspack_storage support reset by @jerrykingxyz in #11119
Bug Fixes π
- fix: support compilation.errors.push string by @SyMind in #11047
- fix: remove last builtin:swc-loader warning for collecting ts info by @ahabhgk in #11079
- fix: use parse meta to collect ts info by @ahabhgk in #11083
- fix: should update initial chunk style by @JSerFeng in #11096
- fix: snapshot not work for renamed files by @jerrykingxyz in #11078
- fix: works with async mock factory by @fi3ework in #11050
- fix: change request at before resolve for mf by @ahabhgk in #11098
- fix: should match
resource
instead ofidentifier
by @colinaaa in #11086 - fix: should allow
externalHelpers: false
by @colinaaa in #11108 - fix: emit error for esm duplicate export by @ahabhgk in #11112
- fix: temporarily ignore NativeWatcher tests in CI due to instability by @GiveMe-A-Name in #11122
Refactor π¨
- refactor: use import default by @CPunisher in #11066
- refactor: reexport napi binding types by @CPunisher in #11095
- refactor: remove cache from compilation and use mutable self in cache trait by @jerrykingxyz in #11120
Document Updates π
- docs: improve webpackIgnore for dynamic imports and URL syntax by @chenjiahan in #11054
- docs: add workflow guide for publishing rust crates by @h-a-n-a in #11069
Other Changes
- chore(deps): update dependency @ast-grep/napi to ^0.38.7 by @renovate[bot] in #11064
- chore(deps): update dependency @module-federation/runtime-tools to v0.17.0 by @renovate[bot] in #11065
- chore(deps): update patch npm dependencies by @renovate[bot] in #11060
- ci(paths-filter): add predicate-quantifier
"every"
by @h-a-n-a in #11070 - chore: setup rpath for sftrace by @quininer in #11094
- chore(deps): update dependency @biomejs/biome to ^2.1.2 by @renovate[bot] in #11097
- chore(deps): update dependency core-js to v3.44.0 by @renovate[bot] in #11103
- chore(deps): update dependency mermaid to ^11.9.0 by @renovate[bot] in #11105
- chore(deps): update dependency less to v4.4.0 by @renovate[bot] in #11104
- test: assert bench error by @colinaaa in #11106
- chore(linker): remove flag
--warn-unresolved-symbols
by @h-a-n-a in #11115 - chore: cleanup enter call for js parser by @ahabhgk in #11114
- test: enable tests for native watcher by @GiveMe-A-Name in #11076
- chore(wasm): bump @napi-rs/cli and @napi-rs/wasm-runtime by @CPunisher in #11118
- chore: no need to add code owner for test cases folder by @LingyuCoder in #11121
- chore(deps): update napi by @renovate[bot] in #10865
Full Changelog: v1.4.8...v1.4.9
Assets 2
v1.4.8
Compare
What's Changed
Performance Improvements β‘
Bug Fixes π
- fix: css-extract should calculate content_hash based on diagnostics as well by @JSerFeng in #11046
- fix: non-parallel code splitting incremental recover from error by @ahabhgk in #11034
- fix: chunk_graph_module maybe undefined while compiling by @GiveMe-A-Name in #11030
- fix: fix not printing backtrace when panic by @hardfist in #11042
- fix: fix regex support for regex with flags by @hardfist in #11052
Other Changes
- chore(infra): update Biome to v2 and fix all lint issues by @chenjiahan in #11028
- chore: remove pnpm patch for rollup-plugin-dts by @chenjiahan in #11033
- chore: resolve Renovate configuration error in packageRules by @Perfecto23 in #11032
New Contributors
- @Perfecto23 made their first contribution in #11032
Full Changelog: v1.4.7...v1.4.8
Assets 2
v1.4.7
8962dc0
Compare
Highlights
π Rustify Watcher
Rspack implements a Native Watcher solution rather than using the watchpack
npm package for file system observation. This architecture allows for incremental watcher system creation with every rebuild cycle.
See experiments.nativeWatcher for more details.
What's Changed
Performance Improvements β‘
- perf: napi source map serialize and deserialize by @SyMind in #10989
- perf: avoid duplicate calculations in executor task by @hardfist in #11020
New Features π
- feat: support rspack native fs watcher by @GiveMe-A-Name in #10658
Bug Fixes π
- fix: add more info for collect ts info warning by @ahabhgk in #10983
- fix: persistent cache dynamic entry contain isolated module by @jerrykingxyz in #10985
- fix: do not test version in canary builds by @h-a-n-a in #10991
- fix: compat non ascii for progress plugin by @ahabhgk in #10992
- fix: update swc to 31.1.0 by @n0th1ng-else in #10986
- fix: tree-shaking unused
RawModule
by @colinaaa in #10954 - fix: factorize hooks avoid update dependency request by @jerrykingxyz in #10999
- fix: the
--devtool
CLI flag not work as expected by @Meet-student in #10880 - fix: use regress to parse regex syntax by @hardfist in #11013
- fix(rstest): bugs by @fi3ework in #10844
- fix: should not generate SRI for empty mf chunks by @LingyuCoder in #11029
Refactor π¨
- refactor: avoid exposing
Ref
andRefMut
ofDashMap
by @CPunisher in #10982
Document Updates π
- docs: improve
splitChunks.chunks
and update glossary by @chenjiahan in #10990 - docs: add open in stacklitz button in README by @CPunisher in #11010
Other Changes
- chore: add default-feaults=false check by @hardfist in #10984
- chore(ci): size-limit ignore comment error by @stormslowly in #10995
- chore(ci): support ecosystem-ci use different npm in different repo by @stormslowly in #10962
- chore: include crate version bump in
x version
command by @h-a-n-a in #10994 - revert: "perf: napi source map serialize and deserialize (#10989)" by @SyMind in #11002
- chore(deps): update patch npm dependencies by @renovate[bot] in #10702
- chore(deps): update dependency @module-federation/runtime-tools to v0.16.0 by @renovate[bot] in #11007
- chore: support separated cargo check for crate publishing by @h-a-n-a in #11001
- ci: skip rewrite-factorize-request by @jerrykingxyz in #11014
- ci: fix rewrite-factorize-request test case by @jerrykingxyz in #11016
- chore: bump crate versions in non-debug non-snapshot releases only by @h-a-n-a in #11017
- chore: add
cargo codegen
topnpm x version
script by @h-a-n-a in #11018 - chore: renovate update lock for cargo by @quininer in #11015
New Contributors
- @Meet-student made their first contribution in #10880
Full Changelog: v1.4.6...v1.4.7
Assets 2
v1.4.6
Compare
What's Changed
Performance Improvements β‘
- perf: get mode cache in flag usage plugin by @LingyuCoder in #10952
New Features π
- feat(binding-builder): export workspace version by @h-a-n-a in #10966
- feat: replace
std::fs
andtokio::fs
withinputFileSystem
andoutputFileSystem
by @CPunisher in #10960
Bug Fixes π
- fix(wasm): abort main thread when any worker is aborted by @CPunisher in #10937
- fix(binding-builder): pre-generate workspace info by @h-a-n-a in #10948
- fix: multiRspackOptions should apply
extends
configuration by @GiveMe-A-Name in #10959 - fix: improve error message in paralelLoader by @hardfist in #10961
- fix: destructuring assignment a call expr by @ahabhgk in #10968
- fix: ensure reexport is backtracked for provided exports by @ahabhgk in #10977
- fix: getModuleChunksIterable was mistakenly deleted by @SyMind in #10976
Refactor π¨
- refactor: enfored shared dependency by @hardfist in #10947
- refactor: move chunk_artifacts occasion to artifact by @hardfist in #10953
- refactor: use symbol defined in
binding_api
to ensure the version consistency by @h-a-n-a in #10969 - refactor: move all schemas to a unified folder and fix zod bundle size by @chenjiahan in #10973
- refactor: move existing tasks to cargo-xtask by @hardfist in #10974
Document Updates π
- docs: use rspack.rs as the homepage by @stormslowly in #10957
Other Changes
- chore: check workspace duplicate version by @hardfist in #10945
- chore(build): convert build scripts into Rslib plugins by @chenjiahan in #10946
- chore: release crates v0.2.1-alpha.0 by @h-a-n-a in #10911
- chore: release v1.4.5 by @ahabhgk in #10944
- chore: release crates v0.2.1-alpha.1 by @h-a-n-a in #10949
- chore(deps): update github-actions by @renovate in #10955
- chore(deps): update babel to ^7.28.0 by @renovate in #10956
- chore(deps): update dependency webpack-sources to v3.3.3 by @renovate in #10751
- revert: port public path of module chunk loading from webpack by @LingyuCoder in #10958
- chore: disable default features by default by @hardfist in #10965
- chore: rename tasks to xtask by @hardfist in #10972
- chore: Use symbol mangling v0 by @quininer in #10979
Full Changelog: v1.4.5...v1.4.6
Assets 2
v1.4.5
Compare
What's Changed
Performance Improvements β‘
- perf: revert parallelize flag usage plugin by @LingyuCoder in #10941
- perf: improve remove_available_modules by @JSerFeng in #10832
New Features π
- feat: pass WebpackError to ignoreWarnings by @SyMind in #10890
- feat: report module file and loc for dependency diagnostic by @SyMind in #10924
Bug Fixes π
- fix: real content hash replace with slash by @ahabhgk in #10923
- fix: handle zod type error when skipLibCheck is false by @chenjiahan in #10927
- fix: clear compiled modules from active modules by @JSerFeng in #10914
- fix: remove incorrect expect by @JSerFeng in #10930
- fix: type error with the pre-bundled watchpack package by @chenjiahan in #10933
- fix: js api module readable identifier by @SyMind in #10929
- fix: update swc to 31.0.1 by @hardfist in #10938
- fix: avoid unnecessary full hash runtime for css extract by @ahabhgk in #10936
Other Changes
- chore: release v1.4.4 by @chenjiahan in #10917
- chore(workflow): skip ecosystem CI and benchmark in forked repos by @chenjiahan in #10921
- chore(workflow): update code owners by @chenjiahan in #10922
- chore: enable plugin feature for RA by @hardfist in #10926
- chore(ci): add size threadhold by @stormslowly in #10934
- chore(ci): config testing
fail-fast
to false by @stormslowly in #10869 - chore: disable wildcard version by @hardfist in #10939
- chore(ci): CI.yml failed due to size-limit skipped by @stormslowly in #10940
Full Changelog: v1.4.4...v1.4.5
Assets 2
v1.4.4
Compare
What's Changed
Performance Improvements β‘
- perf: improve parallelism of real content hash plugin by @LingyuCoder in #10888
- perf: parallelize getting full module names in the deterministic module ids plugin by @LingyuCoder in #10906
- perf: cache ordered modules ids while sorting chunks by @LingyuCoder in #10908
- perf: parallelize getting source sizes in size limit plugin by @LingyuCoder in #10910
- perf: parallelize processing chunk hashes by @LingyuCoder in #10912
Bug Fixes π
- fix: use AhoCorasick for real content hash by @ahabhgk in #10907
- fix(deps): update swc to 30.1.2 by @chenjiahan in #10916
Document Updates π
Other Changes
Full Changelog: v1.4.3...v1.4.4
Assets 2
v1.4.3
4dd0e7e
Compare
What's Changed
Performance Improvements β‘
- perf: use dashmap to reduce lock contention by @hardfist in #10878
- perf: remove visitor feature of lightningcss by @hardfist in #10884
- perf: chunk js api by @SyMind in #10502
- perf: parallel create map assets by @LingyuCoder in #10894
New Features π
- feat(binding-builder): support using custom binding by @h-a-n-a in #10857
- feat: set module.ptr to None when cleanup the module by @SyMind in #10860
- feat: support base64 hash digest for css local ident name by @ahabhgk in #10897
- feat: render css runtime module with dojang by @GiveMe-A-Name in #10896
- feat(wasm): align panic handler with native by @CPunisher in #10901
Bug Fixes π
- fix(tracing): disable emit tracing event when call cleanup by @hardfist in #10859
- fix: should union available modules when depend on multiple entry by @JSerFeng in #10342
- fix: try fix node.js 16 crash by @hardfist in #10861
- fix(core): improve ignorePlugin error report by @hardfist in #10868
- fix: rspack error communicate between js and rust by @SyMind in #10595
- fix: port public path of module chunk loading from webpack by @LingyuCoder in #10425
- fix: always rebuild error module by @jerrykingxyz in #10873
- fix: add error handling for invalid browserslist configuration by @chenjiahan in #10891
- fix(wasm): use
parking_lot
nightly to avoid panic in tests by @h-a-n-a in #10892 - fix: upgrade swc_core to 30.0.2 by @hardfist in #10895
- fix: break cycle for type reexports check by @ahabhgk in #10902
- fix: allow the
module
property of WebpackError to be null by @SyMind in #10905
Refactor π¨
- refactor: remove export info map on module graph by @LingyuCoder in #10849
- refactor: use length as id instead of module id for lazy compilation by @JSerFeng in #10855
- refactor: remove js stats warning by @SyMind in #10900
Other Changes
- chore(ci): skip cross-env in webpack-test script by @stormslowly in #10842
- chore: temporary remove tracing js api test by @hardfist in #10858
- chore: release 1.4.2 by @LingyuCoder in #10850
- chore(deps): update dependency zx to v8.6.1 by @renovate in #10866
- chore(deps): update github-actions by @renovate in #10863
- chore(deps): update dependency @playwright/test to v1.53.2 by @renovate in #10864
- chore: CI enable binary size limit by @stormslowly in #10875
- chore: Update browserslist-rs to 0.19 by @quininer in #10872
- chore: prepare for releasing crates by @h-a-n-a in #10879
- chore: add debug_tool feature to improve debug dx by @hardfist in #10899
- chore: pretty return type error by @SyMind in #10886
Full Changelog: v1.4.2...v1.4.3
Assets 2
v1.4.2
Compare
What's Changed
Performance Improvements β‘
- perf: improve flag exports plugin and flag usage plugin by @LingyuCoder in #10712
- perf: pre-allocate codegen buffer by @CPunisher in #10755
- perf: parallel drop AST of concated module infos by @LingyuCoder in #10820
- perf: parallel get chunk full name in deterministic ids plugin by @LingyuCoder in #10821
New Features π
- feat(create-rspack): update README to include resources by @chenjiahan in #10824
- feat(tracing): add tracing bench preset for benchmark by @hardfist in #10831
Bug Fixes π
- fix(tracing): remove process_chunk_hash from main phase by @hardfist in #10825
- fix: skip non-resource link tags in SRI plugin by @chenjiahan in #10829
- fix: lint error when any package.json modified by @stormslowly in #10846
- fix: fix_issuer mgm not found panic by @jerrykingxyz in #10845
- fix(tracing): support call register & cleanup multi times by @hardfist in #10851
- fix: fix_issuer compatibility with incomplete module graph by @jerrykingxyz in #10852
Refactor π¨
Document Updates π
- docs: add domain redirection back by @chenjiahan in #10812
- docs: collect typescript info related and inline const by @ahabhgk in #10811
- docs: correct hook usage in HtmlRspackPlugin documentation by @chenjiahan in #10830
- docs: remove the guideline of tailwindcss v4 in postcss-loader by @CPunisher in #10839
Other Changes
- chore: release v1.4.1 by @chenjiahan in #10817
- chore(deps): update dependency prettier to v3.6.2 by @renovate in #10788
- chore(deps): update dependency @playwright/test to v1.53.1 by @renovate in #10784
- chore(wasm): enable wasm test ci by @CPunisher in #10757
Full Changelog: v1.4.1...v1.4.2
Assets 2
v1.4.1
Compare
What's Changed
Performance Improvements β‘
- perf: improve code generation of concatenated modules by @LingyuCoder in #10760
- perf: improve concatenated modules plugin by @LingyuCoder in #10763
- perf: improve mangle plugin by @LingyuCoder in #10795
New Features π
- feat: let ignore warnings match by object by @SyMind in #10800
- feat(rstest): more mock APIs by @fi3ework in #10732
Bug Fixes π
- fix: add experiments gate for ts first feature by @ahabhgk in #10806
- fix: clean cycle isolation modules during make phase by @jerrykingxyz in #10754
- fix: add
_webpack_require_
while using SRI plugin by @LingyuCoder in #10805 - fix: should not panic in esm specifier dependency when resolve failed by @LingyuCoder in #10809
- fix(create-rspack): remove verbatimModuleSyntax by @chenjiahan in #10816
Document Updates π
Other Changes
- chore: bump swc by @bvanjoi in #10803
- chore: release v1.4.0 by @h-a-n-a in #10804
- chore: Enable allocator track for sftrace by @quininer in #10808
Full Changelog: v1.4.0...v1.4.1