v1.5.4
- perf: fix drop regression by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11649
- perf: introduce pre-computed hashing for ArcPath by @SyMind in https://github.com/web-infra-dev/rspack/pull/11651
- feat: add inline value condition for reexport by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11628
- feat: throw specified error to indicate undefined factory case in HMR by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11584
- fix: e2e lazy-compialtion/default-prefix flasky by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11610
- fix: no mangle for enum member value by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11629
- fix: revert "fix(rslib): treat
module
identifier as normal (#11588)" by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11630 - fix: webpackexports comment by @zhangyuang in https://github.com/web-infra-dev/rspack/pull/11597
- fix: mark import.meta.webpackHot type as optional by @yf-yang in https://github.com/web-infra-dev/rspack/pull/11638
- fix: persistent cache update issuer is updated modules by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11633
- fix: using tokens from parser to handle asi by @hardfist in https://github.com/web-infra-dev/rspack/pull/11577
- fix: ensure resource data always have resource path by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11632
- refactor: remove expect for lazy barrel pending forwarded ids by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11646
- refactor: use temporary data to replace unsupported Module by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11652
- docs: remove
Preview with stackblitz
section by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11614 - docs(browser): update
BrowserHttpImportEsmPlugin
and add "Using Module Federation" by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11640 - docs: correct dynamic call to writeModule example by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11650
- test: move rspack test cases to
tests/rspack-test
by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11617 - test: fix concurrent of config cases by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11618
- chore(deps): update dependency @rslib/core to v0.13.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11624
- chore(deps): update github-actions by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11623
- chore(deps): update dependency postcss-loader to ^8.2.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11604
- chore(deps): update dependency create-rstack to v1.6.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11625
- chore(deps): update dependency emnapi to ^1.5.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11626
- chore: enable canary nightly release by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11627
- chore: make @rspack/tests private by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11636
- chore(ci): add fallback value for scheduled workflow run by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11641
- chore(deps): update dependency axios to v1.12.0 [security] by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11653
- chore(deps): update pnpm to v10.16.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11605
- test: run webpack config test cases with rspack test tools by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11645
- chore(ci): add rstest to ecosystem-ci by @9aoy in https://github.com/web-infra-dev/rspack/pull/11657
- @zhangyuang made their first contribution in https://github.com/web-infra-dev/rspack/pull/11597
- @yf-yang made their first contribution in https://github.com/web-infra-dev/rspack/pull/11638
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.5.3...v1.5.4
v1.5.3
Rspack v1.5.3 ships advanced tree-shaking for dynamic imports via member expression analysis.
Ongoing improvements are in progress, and upcoming releases will continue to improve static analysis to cover more syntax patterns, such as dynamic import
with a subsequent .then()
.
- perf: improve bundle splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11556
- perf: improve for each runtime by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11573
- perf: improve exports info by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11524
- perf: improve deterministic chunk ids by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11575
- perf: improve get chunk modules by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11579
- perf: improve create hash by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11598
- perf: drop some big data in rayon by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11611
- feat(browser): support
ModuleFederationPlugin
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11558 - feat: simplify mock logic, dynamic import based hoist by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11521
- feat: add css field support in Experiments configuration by @ityuany in https://github.com/web-infra-dev/rspack/pull/11548
- feat: add start time parameter to NativeWatcher by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11570
- feat: tree shake statically analyse-able dynamic import by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11457
- feat: static analyze in operator for esm import specifier by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11613
- feat(browser): add
postprocess
andResolvedRequest
toBrowserHttpImportEsmPlugin
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11571
- fix: don't throw error when browserslist config is resolved from env var by @Themezv in https://github.com/web-infra-dev/rspack/pull/11528
- fix: use stable swc lexer for correct asi by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11555
- fix: mf hoist should record mutation by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11560
- fix: respect to
jsc.output.charset
in swc loader by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11568 - fix: BuildDependencies resolve exports_fields incorrectly by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11576
- fix(types): correct the source map type for loaders by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11574
- fix: only enable inline const in production by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11591
- fix(rslib): treat
module
identifier as normal by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11588 - fix: css-chunking-plugin for global css by @SyMind in https://github.com/web-infra-dev/rspack/pull/11592
- fix: flaky css chunking test case by @SyMind in https://github.com/web-infra-dev/rspack/pull/11608
- fix: swc wasmtime cache corruption by @quininer in https://github.com/web-infra-dev/rspack/pull/11607
- refactor: use for_name for cjs import parser plugin by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11569
- refactor: rspack error by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11500
- refactor: Dependency remove source_map field by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11582
- refactor: private javascript parser dependencies by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11587
- refactor: lazy compilation stop cache create_data by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11612
- refactor: remove wasm plugin useless code by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11615
- docs: add tree shaking blog to the blog list by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11561
- docs(loader-api): add new sections for handling source maps by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11585
- docs: fix esm syntax error by @lzxb in https://github.com/web-infra-dev/rspack/pull/11601
- chore(deps): update dependency @rsbuild/plugin-sass to ^1.4.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11564
- chore(deps): update dependency @shikijs/transformers to ^3.12.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11566
- chore(deps): update dependency @rspack/plugin-react-refresh to ^1.5.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11565
- chore: use pnpm in package.json scripts by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11520
- chore: use local package for scripts by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11572
- chore(workflow): allow renovate to update SWC related crates by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11580
- chore(deps): update crate swc_core to v38.0.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11586
- chore: update Rspress to beta.31 to use JSON schemas by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11596
- chore(deps): update dependency memfs to v4.38.2 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11603
- chore(deps): update swc (major) by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11606
- @Themezv made their first contribution in https://github.com/web-infra-dev/rspack/pull/11528
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.5.2...v1.5.3
v1.5.2
- perf: revert runtime key to string by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11522
- feat(wasm): add webcontainer fallback by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11526
- fix: enhance PathManager to handle relative paths and set base directory by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11516
- fix: import.meta.prop with define plugin by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11525
- fix: incremental not update exports info when lazyBarrel enabled by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11539
- fix: css infinite reload when module chunk enabled by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11536
- fix: should handle import.meta.webpackHot in production by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11546
- fix: should update initial css link with correct url by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11544
- fix: should check http url using
link.href
for extract-css runtime by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11547 - fix: extend modify event handling to include metadata changes by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11519
- fix: should not lazy-barrel import-then-export by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11550
- refactor: disable incremental buildChunkGraph by default by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11533
- refactor: use real_hi for evaluation range by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11549
- docs(browser): add docs for response header settings and known issues by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11523
- chore(deps): update rust crate tracing-subscriber to v0.3.20 [security] by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11542
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.5.1...v1.5.2
v1.5.1
- perf(browser): disable
ProgressPlugin
,RsdoctorPlugin
andRstestPlugin
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11484 - perf: improve data structures of bundle splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11506
- fix: build chunk graph when dynamic entry with depend-on chain by @SyMind in https://github.com/web-infra-dev/rspack/pull/11486
- fix: wrong match object logic in
SwcJsMinimizerRspackPlugin
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11496 - fix: asset info related source map can set null by @SyMind in https://github.com/web-infra-dev/rspack/pull/11497
- fix: source map sources in node modules should convert to absolute path by @SyMind in https://github.com/web-infra-dev/rspack/pull/11501
- fix: add tsEnumIsMutable option to SWC loader schema by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11499
- fix: inline value with properties access by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11508
- fix(types): allow async loader to return void by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11511
- fix: code splitting incremental missing module to update by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11510
- refactor: commonjs export parser plugin by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11488
- refactor: use Module.needBuild to trigger lazy modules compile by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11507
- docs: 1.5.0 announcement blog by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11448
- docs: update TypeScript config file guide by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11495
- docs(config): update
Rule.type
with more details by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11503
- chore: release 1.5.0 by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11485
- chore(deps): update github-actions by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11489
- chore(deps): update SWC related crates to v37.0.0 by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11505
- chore(deps): update dependency @playwright/test to v1.55.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11492
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.5.0...v1.5.1
v1.5.0
🎉 See Announcing Rspack 1.5 for more details.
- feat!: update minimum Node.js version to 18.12.0 by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11338
- perf: align number hash algorithm with webpack by @nilptr in https://github.com/web-infra-dev/rspack/pull/10643
- perf: improve bundle splitting part 2 by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11233
- perf: improve process runtime requirements by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11259
- perf: improve process concatenated configurations by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11264
- perf: improve
try_to_add
of module concatenation by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11279 - perf: improve add concatenated modules by parallelizing conneciton modifications by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11286
- perf: parallel mangle exports by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/10877
- perf: Update swc and switch to wasmtime by @quininer in https://github.com/web-infra-dev/rspack/pull/11303
- perf: cache concatenated imports by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11334
- perf: Replace hot regex with parser by @quininer in https://github.com/web-infra-dev/rspack/pull/11341
- perf: use new swc lexer for asi by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11357
- perf: improve bundle splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11364
- perf(browser): remove tracing by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11436
- perf(browser): set
fmt_debug
tonone
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11439 - perf: improve concatenated plugin by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11434
- perf: reuse plugin hooks by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11449
- perf: not to call module graph modules multiple times by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11455
- perf: improve bundle splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11465
- perf: add fast path for
get_scheme
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11475 - perf: replace
Mutex<Option<T>>
withOnceLock<T>
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11480
- feat(cli): use SWC to do TS config transformamation by @hardfist in https://github.com/web-infra-dev/rspack/pull/11411
- feat: add resolver JavaScript API by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11211
- feat(wasm): support
@rspack/browser
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/10870 - feat: lazy make for reexport in side effects free barrel file by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11117
- feat: support persistent cache for lazy barrel by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11285
- feat: rspack cli add config path to build dependencies by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11288
- feat: expose
experiments.swc
in parallel loader context by @jbroma in https://github.com/web-infra-dev/rspack/pull/11300 - feat: propagate const for inline const by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11311
- feat: module chunk HMR by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11160
- feat: move experiments.lazyCompilation to configuration toplevel by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11337
- feat: add VirtualModulesPlugin by @nilptr in https://github.com/web-infra-dev/rspack/pull/11021
- feat: lazy compilation with persistent cache by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11235
- feat: define plugin use value dependencies by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11339
- feat(rslib): do not hoist
import
externalized module to webpack modules by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11358 - feat: port normal module replacement plugin to builtin plugin by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11362
- feat: support
[folder]
template string inlocalIdentName
option by @mochiya98 in https://github.com/web-infra-dev/rspack/pull/11356 - feat: provide plugin use value dependencies by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11380
- feat: support using declaration by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11395
- feat: should rebuild all entries if there are entry removals by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11381
- feat(rslib): intercept more APIPlugin expressions by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11418
- feat(browser): add
BrowserImportEsmPlugin
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11431 - feat(loader): merge identifier to loader trait by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11453
- feat: allow external modules placed in async chunks by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11421
- feat(browser): introduce
BrowserRequirePlugin
and removenonWebpackRequire
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11470
- fix(types): change HotUpdateStatus from enum to union type by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11238
- fix: JsResolverFactory should cache Resolver instance based on different options by @SyMind in https://github.com/web-infra-dev/rspack/pull/11245
- fix: lifetime error by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11260
- fix: avoid render weak import dependency by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11262
- fix: buildDependencies skip resolve nodejs builtin module by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11256
- fix: handle unwatch errors gracefully and improve native watcher integration by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11210
- fix: get resolve in externals should return query by @SyMind in https://github.com/web-infra-dev/rspack/pull/11276
- fix: CssGetFilenameRuntime should detect runtime requirements correctly by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11271
- fix: update lazy compilation middleware order to apply devServer Middleware by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11157
- fix: not changed related source-map when rename asset by @SyMind in https://github.com/web-infra-dev/rspack/pull/11293
- fix: swc transform api output sourcemaps by @jbroma in https://github.com/web-infra-dev/rspack/pull/11299
- fix: pass actual root context to parallel loader context by @jbroma in https://github.com/web-infra-dev/rspack/pull/11301
- fix: missing code generation report by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11308
- fix: split chunks min chunks config with enforce by @SyMind in https://github.com/web-infra-dev/rspack/pull/11294
- fix: should not render export in modern-module when iife enabled by @Timeless0911 in https://github.com/web-infra-dev/rspack/pull/11317
- fix: export the missing
PathData
type by @colinaaa in https://github.com/web-infra-dev/rspack/pull/11315 - fix: rsdoctor multi compiler data scope by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11310
- fix: batch rename_asset with parallel optimization by @SyMind in https://github.com/web-infra-dev/rspack/pull/11325
- fix: should synchronously bind html plugin hooks in sri plugin by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11342
- fix: add unknown_context_critical option for unknown require as expression by @PeterCardenas in https://github.com/web-infra-dev/rspack/pull/10329
- fix(incremental): LimitChunkCountPlugin panic with incremental turned on by @pgoldberg in https://github.com/web-infra-dev/rspack/pull/11360
- fix(loader): fix JS loader type detection for issue #11129 by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11361
- fix(cli): resolve port conflicts in parallel test execution by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11363
- fix: modify lazy compilation tests by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11349
- fix: should use specific runtime to get target url by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11372
- fix(wasm): remove cjs loader support by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11283
- fix: cache concatenated module imports is not safe by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11385
- fix: add query to avoid browser cache the link by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11394
- fix: fix identifier typo by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11403
- fix: correct export alias for json by @inottn in https://github.com/web-infra-dev/rspack/pull/11402
- fix: NormalModuleReplacementPlugin doesn't update path, query and fragment by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11407
- fix(browser): fix @rspack/browser building by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11417
- fix: bailout optimize if there are external modules in other concate scope by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11430
- fix: native watcher fails to work correctly with persistent cache by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11420
- fix: define plugin can rename by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11435
- fix(ci): should check package name in pre-release check by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11438
- fix: update node inspector import and remove workaround by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11444
- fix: lazy compilation with only loader module by @SyMind in https://github.com/web-infra-dev/rspack/pull/11443
- fix(create-rspack): remove ts-node from templates by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11458
- fix: check force_build_deps target module is isolated by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11461
- fix: update event handling to support batch processing of FsEvents by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11460
- fix: should recompile correctly when a shared entry specified in 'dependOn' is modified during watch mode by @SyMind in https://github.com/web-infra-dev/rspack/pull/11464
- fix(browser): rename and ignore requests with match resource and inline loaders by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11469
- fix: unstable render dependency template by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11473
- fix: unstable bundle splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11474
- fix: build chunk graph incremental logic when dynamic entry with depend on by @SyMind in https://github.com/web-infra-dev/rspack/pull/11481
- refactor: remove features that are not supported in stable Rust by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11243
- refactor: move make dir by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11244
- refactor: bench external getResolve & remove ResolveClosureContext by @SyMind in https://github.com/web-infra-dev/rspack/pull/11171
- refactor: move builtin loader registration to plugin by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11258
- refactor: limit exported symbols in
rspack_binding_api
by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11263 - refactor: remove redundant
PluginContext
andasync_trait
from traitPlugin
by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11272 - refactor: streamline native watcher path management and API design by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11282
- refactor: remove __rust_probestack workaround by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11326
- refactor: move builtin virtual module plugin to experiments by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11353
- refactor: inline const parser plugin by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11359
- refactor: distinguish free variable and tagged variable by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11389
- refactor: rspack error remove useless code by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11406
- refactor: add module pre walk by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11416
- refactor: only collect destructuring assignment properties for specific expression by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11433
- refactor: clean paren ast for analyzing dependencies by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11447
- refactor: run_loaders always return loader result by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11463
- refactor(browser): remove
esm.sh
default domain inBrowserHttpImportEsmPlugin
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11482 - refactor: use Atom for parser variable name by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11483
- docs: add docs for lazy barrel by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11274
- docs: add docs for custom binding crates by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11290
- docs(rspress): upgrade to 2.0.0-beta.25 by @SoonIter in https://github.com/web-infra-dev/rspack/pull/11312
- docs: add Rslint to the list of Rstack tools by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11318
- docs: add version badges to Rstack tools table by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11321
- docs(quick-start): update runtime installation instructions by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11327
- docs(config): output.filename link fix by @vsn4ik in https://github.com/web-infra-dev/rspack/pull/11369
- docs: update examples and terminology by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11374
- docs: fix typos in asset modules by @colinaaa in https://github.com/web-infra-dev/rspack/pull/11382
- docs: add playground to navbar by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11384
- docs(website): restructure navigation and update sidebar config by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11386
- docs: remove outdated Node version requirements from quick start by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11393
- docs: update ts config guide by @hardfist in https://github.com/web-infra-dev/rspack/pull/11409
- docs: add building and testing guide for rspack wasm by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11414
- docs(ESM): add ESM guide by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11344
- docs: some minor documentation updates for branding by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11459
- docs: improve virtual-modules-plugin documentation by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11467
- docs: add guide for the
@rspack/browser
package by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11472
- chore: bump rust toolchain to
2025-07-28
by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11217 - chore: release v1.4.11 by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11215
- chore(releasing): should not publish testing crates by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11248
- chore: add crates.io badge by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11250
- chore: upgrade rslint@0.1.0 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11253
- chore: upgrade rslint to 0.1.1 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11261
- chore: ignore moduleFederationDefaultRuntime.js in rslint by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11269
- chore(wasm): release
@rspack/browser
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11254 - chore: supporting linux cache compressing with zstd by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11270
- chore: upgrade rslint to 0.1.3 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11267
- chore(deps): update github-actions by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11295
- chore(deps): update napi by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11296
- chore: deprecated
experiments.topLevelAwait
config by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11284 - chore(deps): update dependency @playwright/test to v1.54.2 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11298
- chore: remove from
rspack_binding_api
in CODEOWNERS by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11307 - chore: upgrade rslint@0.1.5 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11316
- chore(ci): update test node matrix by @stormslowly in https://github.com/web-infra-dev/rspack/pull/10871
- chore(deps): update dependency prebundle to ^1.4.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11348
- chore(deps): update dependency memfs to v4.36.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11347
- chore(deps): update dependency typescript to ^5.9.2 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11323
- chore(ci): use npm trusted publish by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11343
- chore(deps): update dependency @module-federation/runtime-tools to v0.18.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11322
- chore(ci): fix flaky serve test by @quininer in https://github.com/web-infra-dev/rspack/pull/11352
- chore(ci): fix flaky serve test (take 2) by @quininer in https://github.com/web-infra-dev/rspack/pull/11355
- chore(deps): update dependency @shikijs/transformers to ^3.9.2 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11367
- chore(deps): update github-actions by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11365
- chore(deps): update dependency @types/babel__traverse to v7.28.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11368
- chore(deps): update dependency core-js to v3.45.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11370
- chore: build http test case avoid send http request by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11375
- chore: Use macro instead of runtime debug_assert by @quininer in https://github.com/web-infra-dev/rspack/pull/11379
- chore: remove
@rsbuild/core
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11383 - chore: upgrade rslint to 0.1.11 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11396
- chore(browser): fix generated types by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11388
- chore(deps): update pnpm to v10.14.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11399
- chore(deps): update dependency @rslib/core to v0.12.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11397
- chore(deps): update dependency rsbuild-plugin-open-graph to v1.1.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11398
- chore(deps): update lightningcss crate to 1.0.0-alpha.67 by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11405
- chore: release v1.5.0-beta.0 by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11340
- chore: bump
swc_core
from 35.0.0 to 36.0.0 by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11419 - chore: update swc types and docs by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11423
- chore: release 1.5.0-beta.1 by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11415
- chore(deps): update dependency mermaid to v11.10.0 [security] by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11428
- chore(deps): update dependency @shikijs/transformers to ^3.11.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11429
- chore(ci): prevent prerelease published to lastest by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11424
- test: remove legacy Node version helpers by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11442
- docs: fix various documentation errors including grammar, terminology and typos by @Copilot in https://github.com/web-infra-dev/rspack/pull/11445
- chore: add Claude local config to gitignore by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11452
- ci: enable parallel execution of npm and crates releases by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11450
- revert: "fix: lazy compilation with only loader module (#11443)" by @SyMind in https://github.com/web-infra-dev/rspack/pull/11456
- chore: release 1.5.0-rc.0 by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11446
- chore: set up Copilot instructions for Rspack repository by @Copilot in https://github.com/web-infra-dev/rspack/pull/11336
- chore(deps): update dependency @biomejs/biome to ^2.2.2 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11426
- revert: Revert "perf: improve bundle splitting" by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11468
- @PeterCardenas made their first contribution in https://github.com/web-infra-dev/rspack/pull/10329
- @vsn4ik made their first contribution in https://github.com/web-infra-dev/rspack/pull/11369
- @mochiya98 made their first contribution in https://github.com/web-infra-dev/rspack/pull/11356
- @Copilot made their first contribution in https://github.com/web-infra-dev/rspack/pull/11445
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.4.11...v1.5.0
v1.5.0-rc.0
- feat(cli): use SWC to do TS config transformamation by @hardfist in https://github.com/web-infra-dev/rspack/pull/11411
- perf(browser): remove tracing by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11436
- perf(browser): set
fmt_debug
tonone
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11439 - perf: improve concatenated plugin by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11434
- perf: reuse plugin hooks by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11449
- feat(rslib): intercept more APIPlugin expressions by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11418
- feat(browser): add
BrowserImportEsmPlugin
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11431
- fix: NormalModuleReplacementPlugin doesn't update path, query and fragment by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11407
- fix(browser): fix @rspack/browser building by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11417
- fix: bailout optimize if there are external modules in other concate scope by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11430
- fix: native watcher fails to work correctly with persistent cache by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11420
- fix: define plugin can rename by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11435
- fix(ci): should check package name in pre-release check by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11438
- fix: update node inspector import and remove workaround by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11444
- fix: lazy compilation with only loader module by @SyMind in https://github.com/web-infra-dev/rspack/pull/11443
- refactor: add module pre walk by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11416
- refactor: only collect destructuring assignment properties for specific expression by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11433
- refactor: clean paren ast for analyzing dependencies by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11447
- docs: add building and testing guide for rspack wasm by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11414
- docs(ESM): add ESM guide by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11344
- chore: bump
swc_core
from 35.0.0 to 36.0.0 by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11419 - chore: update swc types and docs by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11423
- chore: release 1.5.0-beta.1 by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11415
- chore(deps): update dependency mermaid to v11.10.0 [security] by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11428
- chore(deps): update dependency @shikijs/transformers to ^3.11.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11429
- chore(ci): prevent prerelease published to lastest by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11424
- test: remove legacy Node version helpers by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11442
- docs: fix various documentation errors including grammar, terminology and typos by @Copilot in https://github.com/web-infra-dev/rspack/pull/11445
- chore: add Claude local config to gitignore by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11452
- ci: enable parallel execution of npm and crates releases by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11450
- @Copilot made their first contribution in https://github.com/web-infra-dev/rspack/pull/11445
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.5.0-beta.1...v1.5.0-rc.0
v1.5.0-beta.1
Rspack now supports the "using" declaration.
This enables the explicit resource management feature in ECMAScript, making resource cleanup more straightforward ✨
Learn more: using - MDN
- perf: Replace hot regex with parser by @quininer in https://github.com/web-infra-dev/rspack/pull/11341
- perf: use new swc lexer for asi by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11357
- perf: improve bundle splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11364
- feat: lazy compilation with persistent cache by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11235
- feat: define plugin use value dependencies by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11339
- feat(rslib): do not hoist
import
externalized module to webpack modules by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11358 - feat: port normal module replacement plugin to builtin plugin by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11362
- feat: support
[folder]
template string inlocalIdentName
option by @mochiya98 in https://github.com/web-infra-dev/rspack/pull/11356 - feat: provide plugin use value dependencies by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11380
- feat: support using declaration by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11395
- feat: should rebuild all entries if there are entry removals by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11381
- fix: add unknown_context_critical option for unknown require as expression by @PeterCardenas in https://github.com/web-infra-dev/rspack/pull/10329
- fix(incremental): LimitChunkCountPlugin panic with incremental turned on by @pgoldberg in https://github.com/web-infra-dev/rspack/pull/11360
- fix(loader): fix JS loader type detection for issue #11129 by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11361
- fix(cli): resolve port conflicts in parallel test execution by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11363
- fix: modify lazy compilation tests by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11349
- fix: should use specific runtime to get target url by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11372
- fix(wasm): remove cjs loader support by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11283
- fix: cache concatenated module imports is not safe by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11385
- fix: add query to avoid browser cache the link by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11394
- fix: fix identifier typo by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11403
- fix: correct export alias for json by @inottn in https://github.com/web-infra-dev/rspack/pull/11402
- refactor: move builtin virtual module plugin to experiments by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11353
- refactor: inline const parser plugin by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11359
- refactor: distinguish free variable and tagged variable by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11389
- refactor: rspack error remove useless code by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11406
- docs(config): output.filename link fix by @vsn4ik in https://github.com/web-infra-dev/rspack/pull/11369
- docs: update examples and terminology by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11374
- docs: fix typos in asset modules by @colinaaa in https://github.com/web-infra-dev/rspack/pull/11382
- docs: add playground to navbar by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11384
- docs(website): restructure navigation and update sidebar config by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11386
- docs: remove outdated Node version requirements from quick start by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11393
- docs: update ts config guide by @hardfist in https://github.com/web-infra-dev/rspack/pull/11409
- chore(deps): update dependency @module-federation/runtime-tools to v0.18.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11322
- chore(ci): fix flaky serve test by @quininer in https://github.com/web-infra-dev/rspack/pull/11352
- chore(ci): fix flaky serve test (take 2) by @quininer in https://github.com/web-infra-dev/rspack/pull/11355
- chore(deps): update dependency @shikijs/transformers to ^3.9.2 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11367
- chore(deps): update github-actions by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11365
- chore(deps): update dependency @types/babel__traverse to v7.28.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11368
- chore(deps): update dependency core-js to v3.45.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11370
- chore: build http test case avoid send http request by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11375
- chore: Use macro instead of runtime debug_assert by @quininer in https://github.com/web-infra-dev/rspack/pull/11379
- chore: remove
@rsbuild/core
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11383 - chore: upgrade rslint to 0.1.11 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11396
- chore(browser): fix generated types by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11388
- chore(deps): update pnpm to v10.14.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11399
- chore(deps): update dependency @rslib/core to v0.12.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11397
- chore(deps): update dependency rsbuild-plugin-open-graph to v1.1.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11398
- chore(deps): update lightningcss crate to 1.0.0-alpha.67 by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11405
- @PeterCardenas made their first contribution in https://github.com/web-infra-dev/rspack/pull/10329
- @vsn4ik made their first contribution in https://github.com/web-infra-dev/rspack/pull/11369
- @mochiya98 made their first contribution in https://github.com/web-infra-dev/rspack/pull/11356
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.5.0-beta.0...v1.5.0-beta.1
1.5.0-beta.0
Here's a sneak peek at the exciting new features coming in Rspack 1.5.0.
https://github.com/web-infra-dev/rspack/pull/10524
This update introduces a runtime module that initializes federation during Rspack's runtime phase—similar to Webpack v1's Module Federation. The federation runtime is hoisted into runtime chunks, bypassing normal code-splitting rules, so it's eagerly available at startup.
Impact: In multi-entry applications using Module Federation, this can reduce bundle size by ~60%.
More details: https://gist.github.com/ScriptedAlchemy/a71ccbdfb933e8a4cd0131801a2c26b5#file-hoisted-runtime-internal-md
https://github.com/web-infra-dev/rspack/pull/10658
We've implemented a Rust-based file system watcher to improve performance in large-scale file change scenarios. Moving file watching into Rust also cuts down on overhead across the NAPI boundary.
https://github.com/web-infra-dev/rspack/pull/10857
Want to build high-performance plugins for Rspack? This feature makes it easier. If writing a Rust plugin feels daunting, check out The Rspack Book—the first section covers customizing a Rspack binding step-by-step.
https://github.com/web-infra-dev/rspack/pull/10870
Yes, you can now run Rspack directly in the browser! We've even built a web REPL so you can try it instantly: repl.rspack.rs 🚀
https://github.com/web-infra-dev/rspack/pull/11021
Thanks to @nilptr's contribution, Rspack now includes a built-in Virtual Modules plugin. If you work with a large number of virtual modules, this plugin helps Rspack maintain top performance even at scale.
https://github.com/web-infra-dev/rspack/pull/11338
@rspack/core
v1.5 will no longer support Node 16, as Node.js reached end-of-life on September 11th, 2023. Many npm packages in the ecosystem have also dropped support for Node 16 (such as webpack-dev-server
, css-loader
, sass-loader
, etc.), making it increasingly difficult to maintain compatibility.
Package | v1.4 | v1.5 |
---|---|---|
@rspack/core | >=16.0.0 | >=18.12.0 |
@rspack/cli | >=18.12.0 | >=18.12.0 |
@rspack/dev-server | >=18.12.0 | >=18.12.0 |
@rsbuild/core | >=16.10.0 | >=18.12.0 |
- Stabilized
LazyCompilation
feature—experiments.lazyCompilation
is now available at the top level of Rspack's config. - Deprecating
experiments.topLevelAwait
—setting it tofalse
will now show a deprecation warning. This feature will be enabled by default and the config option removed in the next major release.
- perf: align number hash algorithm with webpack by @nilptr in https://github.com/web-infra-dev/rspack/pull/10643
- perf: improve bundle splitting part 2 by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11233
- perf: improve process runtime requirements by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11259
- perf: improve process concatenated configurations by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11264
- perf: improve
try_to_add
of module concatenation by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11279 - perf: improve add concatenated modules by parallelizing conneciton modifications by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11286
- perf: parallel mangle exports by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/10877
- perf: Update swc and switch to wasmtime by @quininer in https://github.com/web-infra-dev/rspack/pull/11303
- perf: cache concatenated imports by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11334
- feat: add resolver JavaScript API by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11211
- feat(wasm): support
@rspack/browser
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/10870 - feat: lazy make for reexport in side effects free barrel file by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11117
- feat: support persistent cache for lazy barrel by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11285
- feat: rspack cli add config path to build dependencies by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11288
- feat: expose
experiments.swc
in parallel loader context by @jbroma in https://github.com/web-infra-dev/rspack/pull/11300 - feat: propagate const for inline const by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11311
- feat!: update minimum Node.js version to 18.12.0 by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11338
- feat: module chunk HMR by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11160
- feat: move experiments.lazyCompilation to configuration toplevel by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11337
- feat: add VirtualModulesPlugin by @nilptr in https://github.com/web-infra-dev/rspack/pull/11021
- fix(types): change HotUpdateStatus from enum to union type by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11238
- fix: JsResolverFactory should cache Resolver instance based on different options by @SyMind in https://github.com/web-infra-dev/rspack/pull/11245
- fix: lifetime error by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11260
- fix: avoid render weak import dependency by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11262
- fix: buildDependencies skip resolve nodejs builtin module by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11256
- fix: handle unwatch errors gracefully and improve native watcher integration by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11210
- fix: get resolve in externals should return query by @SyMind in https://github.com/web-infra-dev/rspack/pull/11276
- fix: CssGetFilenameRuntime should detect runtime requirements correctly by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11271
- fix: update lazy compilation middleware order to apply devServer Middleware by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11157
- fix: not changed related source-map when rename asset by @SyMind in https://github.com/web-infra-dev/rspack/pull/11293
- fix: swc transform api output sourcemaps by @jbroma in https://github.com/web-infra-dev/rspack/pull/11299
- fix: pass actual root context to parallel loader context by @jbroma in https://github.com/web-infra-dev/rspack/pull/11301
- fix: missing code generation report by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11308
- fix: split chunks min chunks config with enforce by @SyMind in https://github.com/web-infra-dev/rspack/pull/11294
- fix: should not render export in modern-module when iife enabled by @Timeless0911 in https://github.com/web-infra-dev/rspack/pull/11317
- fix: export the missing
PathData
type by @colinaaa in https://github.com/web-infra-dev/rspack/pull/11315 - fix: rsdoctor multi compiler data scope by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11310
- fix: batch rename_asset with parallel optimization by @SyMind in https://github.com/web-infra-dev/rspack/pull/11325
- fix: should synchronously bind html plugin hooks in sri plugin by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11342
- refactor: remove features that are not supported in stable Rust by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11243
- refactor: move make dir by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11244
- refactor: bench external getResolve & remove ResolveClosureContext by @SyMind in https://github.com/web-infra-dev/rspack/pull/11171
- refactor: move builtin loader registration to plugin by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11258
- refactor: limit exported symbols in
rspack_binding_api
by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11263 - refactor: remove redundant
PluginContext
andasync_trait
from traitPlugin
by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11272 - refactor: streamline native watcher path management and API design by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11282
- refactor: remove __rust_probestack workaround by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11326
- docs: add docs for lazy barrel by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11274
- docs: add docs for custom binding crates by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11290
- docs(rspress): upgrade to 2.0.0-beta.25 by @SoonIter in https://github.com/web-infra-dev/rspack/pull/11312
- docs: add Rslint to the list of Rstack tools by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11318
- docs: add version badges to Rstack tools table by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11321
- docs(quick-start): update runtime installation instructions by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11327
- chore: bump rust toolchain to
2025-07-28
by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11217 - chore: release v1.4.11 by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11215
- chore(releasing): should not publish testing crates by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11248
- chore: add crates.io badge by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11250
- chore: upgrade rslint@0.1.0 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11253
- chore: upgrade rslint to 0.1.1 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11261
- chore: ignore moduleFederationDefaultRuntime.js in rslint by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11269
- chore(wasm): release
@rspack/browser
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11254 - chore: supporting linux cache compressing with zstd by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11270
- chore: upgrade rslint to 0.1.3 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11267
- chore(deps): update github-actions by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11295
- chore(deps): update napi by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11296
- chore: deprecated
experiments.topLevelAwait
config by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11284 - chore(deps): update dependency @playwright/test to v1.54.2 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11298
- chore: remove from
rspack_binding_api
in CODEOWNERS by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11307 - chore: upgrade rslint@0.1.5 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11316
- chore(ci): update test node matrix by @stormslowly in https://github.com/web-infra-dev/rspack/pull/10871
- chore(deps): update dependency prebundle to ^1.4.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11348
- chore(deps): update dependency memfs to v4.36.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11347
- chore(deps): update dependency typescript to ^5.9.2 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11323
- chore(ci): use npm trusted publish by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11343
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.4.11...v1.5.0-beta.0
v1.4.11
- perf: parallelize analyze module graph by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11153
- perf: enhance native watcher with customizable ignore patterns by @GiveMe-A-Name in https://github.com/web-infra-dev/rspack/pull/11140
- perf: improve ensure min size fit by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11181
- perf: improve prepare group by used exports by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11180
- perf: improve calculate relation of code splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11159
- perf: replace rwlock with
atomic_refcell
by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11177 - perf: improve calculate order index of code splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11195
- perf: improve code splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11179
- perf: improve process chunk groups for merging by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11199
- perf: improve merge duplicate chunks plugin by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11197
- perf: improve code splitting part 2 by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11214
- perf: prepare module sizes for bundle splitting by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11219
- feat: support moduleLayer for css-extract by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11193
- feat: build dependencies recursively collect dependencies by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11182
- feat: use zstd to cache compress by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11176
- feat: implement Default trait for ExtendedStatsOptions struct by @ityuany in https://github.com/web-infra-dev/rspack/pull/11022
- feat(binding-builder): use full path to
napi
bindgen preludes by @h-a-n-a in https://github.com/web-infra-dev/rspack/pull/11212 - feat: rsdoctor native plugin calls the sourcemap plugin by @easy1090 in https://github.com/web-infra-dev/rspack/pull/11192
- feat: preserve all comments if user use externalize dynamic import by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11218
- fix: should not enable
exportedEnum
by default by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11169 - fix: correct cache option in tests by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11163
- fix(code-splitting): should add incoming blocks for async entrypoint by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11173
- fix(types): multi compiler can accept multiple watch options by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11174
- fix: persistent cache lose module build error by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11178
- fix: should return
resource
instead ofpath
in resolve by @colinaaa in https://github.com/web-infra-dev/rspack/pull/11194 - fix: should return
resource
inresolver.resolveSync
by @colinaaa in https://github.com/web-infra-dev/rspack/pull/11203 - fix(pnp): add yarn pnp support to read_dir by @elbywan in https://github.com/web-infra-dev/rspack/pull/11124
- fix: fix_issuers not clean cycled modules children by @jerrykingxyz in https://github.com/web-infra-dev/rspack/pull/11204
- fix: sri plugin should process async chunk in async entrypoints by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11207
- fix!: should abort the compilation when throwing error in make hook by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11213
- fix: do not use user_request to match external module by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11229
- fix: don't test
JAVASCRIPT_ASSET_REGEXP
iftest
is provided by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11231 - fix: should invalidate if there is new entry modules by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11234
- refactor: disable parallel code splitting by default by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/11067
- refactor(webpack-test): use webpack runner for hot test cases by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11158
- docs: improve
resolve.conditionNames
documentation by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11216
- chore: release v1.4.10 by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11156
- revert: perf: napi communication (#11132) by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11162
- chore: check lint warning in ci by @hardfist in https://github.com/web-infra-dev/rspack/pull/11167
- chore(deps): update Rspress to v2.0.0-beta.22 by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/11165
- revert: "revert: perf: napi communication (#11132) (#11162)" by @SyMind in https://github.com/web-infra-dev/rspack/pull/11166
- chore(deps): update patch npm dependencies by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11136
- chore: upgrade rspack_resolver to 0.6.1 by @stormslowly in https://github.com/web-infra-dev/rspack/pull/11175
- chore: use rslint to do typed linting by @hardfist in https://github.com/web-infra-dev/rspack/pull/11146
- chore(deps): update dependency zx to v8.7.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11188
- chore(deps): update dependency @swc/plugin-remove-console to v9 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11189
- chore(deps): update dependency memfs to v4.20.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11187
- chore: upgrade rslint to 0.0.9 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11190
- chore: ignore rustc ice reports by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11200
- chore: update binding js by @quanquan2100 in https://github.com/web-infra-dev/rspack/pull/11206
- chore(deps): update github-actions by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11223
- chore(deps): update dependency @biomejs/biome to ^2.1.3 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11222
- chore: upgrade rslint to v0.0.15 by @hardfist in https://github.com/web-infra-dev/rspack/pull/11196
- chore(deps): update dependency @rslib/core to v0.11.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11186
- test: optimize the test for the rsdoctorPlugin's sourcemap tool by @easy1090 in https://github.com/web-infra-dev/rspack/pull/11227
- @elbywan made their first contribution in https://github.com/web-infra-dev/rspack/pull/11124
- @quanquan2100 made their first contribution in https://github.com/web-infra-dev/rspack/pull/11206
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.4.10...v1.4.11
v1.4.10
- ✨ 30% smaller Wasm bundle (38.9MB → 27.2MB)
- ⚡ 4x faster tree shaking analysis in large projects
- perf: parallelize flag usage plugin by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11128
- perf: parallel process exports spec by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11110
- perf: parallel process referenced module of flag usage plugin by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/11145
- perf(wasm): use wasm-opt after building wasm by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11141
- perf: napi communication by @SyMind in https://github.com/web-infra-dev/rspack/pull/11132
- fix: add missing runtime globals in
RUNTIME_GLOBAL_MAP
by @colinaaa in https://github.com/web-infra-dev/rspack/pull/11127 - fix(parser): do not skip parsing expression inside require.resolve by @fi3ework in https://github.com/web-infra-dev/rspack/pull/11133
- fix: external resolve esm module by @SyMind in https://github.com/web-infra-dev/rspack/pull/11144
- fix(mf): should disconnect chunk for removed chunk by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/11154
- chore: degrade napi-build to 2.2.2 by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11130
- chore(deps): update dependency @ast-grep/napi to ^0.39.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11137
- chore(deps): update napi by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11135
- chore(wasm): use release-wasi profile by @CPunisher in https://github.com/web-infra-dev/rspack/pull/11131
- chore(deps): update dependency axios to v1.11.0 [security] by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/11150
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v1.4.9...v1.4.10