v2.20.2
This release fixes a regression in some edge case introduced in v2.18.1.
- fix(vanilla): subscriber not notified after nested store.set and sub/unsub inside a write by @dai-shi in https://github.com/pmndrs/jotai/pull/3354
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.20.1...v2.20.2
v2.1.4
Building with output.module is now much faster. A lodash-es production build went from 503.8 ms to 161.6 ms (-67.9%).
module.parser.javascript.importMeta now accepts an object so each known import.meta property can be configured independently, on top of the existing true / false / 'preserve-unknown' values. Properties set to false are preserved for runtime evaluation, omitted properties keep their default behavior, and unknown properties are preserved. Both webpack-compatible keys (dirname, filename, main, url, webpack, webpackContext) and Rspack-specific keys (rspackHash, rspackPublicPath, glob, ...) are supported.
export default {
module: {
parser: {
javascript: {
importMeta: {
// keep `import.meta.url` for runtime evaluation
url: false,
// keep the compile-time replacement of `import.meta.webpack`
webpack: true,
},
},
},
},
};
module.parser.javascript.worker now accepts an object form with alias and url, alongside the existing boolean and string[] forms. With url: 'new-url-relative' and output.module enabled, Rspack emits a static new URL() expression for new Worker(new URL(..., import.meta.url)) instead of runtime code, honoring output.publicPath and output.workerPublicPath.
export default {
output: {
module: true,
chunkFilename: '[name].bundle.js',
},
module: {
parser: {
javascript: {
worker: {
url: 'new-url-relative',
},
},
},
},
};
new Worker(new URL('./worker.js', import.meta.url));
// would become 👇
new Worker(new URL('./worker.bundle.js', import.meta.url));
- feat(runtime): support logical assignment for chunk loading global by @fireairforce in https://github.com/web-infra-dev/rspack/pull/14655
- feat: support persistent cache for module hashes by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/14717
- feat: support static worker new URL output by @intellild in https://github.com/web-infra-dev/rspack/pull/14728
- feat: support fine-grained import.meta parser options by @intellild in https://github.com/web-infra-dev/rspack/pull/14631
- perf(swc): enable parallel wasmtime compilation by @hardfist in https://github.com/web-infra-dev/rspack/pull/14716
- perf(hook): reduce hook macro expansion size and optimize performance by @intellild in https://github.com/web-infra-dev/rspack/pull/14633
- perf: optimize ESM linking passes by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/14758
- perf: deduplicate repeated dynamic reexport code by @JSerFeng in https://github.com/web-infra-dev/rspack/pull/14748
- fix(ci): pick binary-size base by build-triggering commit by @stormslowly in https://github.com/web-infra-dev/rspack/pull/14715
- fix: clean up runtime global rendering by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/14735
- fix(binding): clean up chunk wrappers when compiler is GCed by @SyMind in https://github.com/web-infra-dev/rspack/pull/14736
- fix: enable runtime mode esm context imports by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/14740
- fix: revert Module Federation runtime identifiers by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/14761
- fix(fs): include paths in native filesystem errors by @hardfist in https://github.com/web-infra-dev/rspack/pull/14760
- fix: respect RSPACK_BINDING in loader workers by @hardfist in https://github.com/web-infra-dev/rspack/pull/14775
- fix: invalidate the target compiler for lazy compilation by @Kanary-channelio in https://github.com/web-infra-dev/rspack/pull/14781
- refactor(binding): avoid unsafe compilation access in chunk and module by @SyMind in https://github.com/web-infra-dev/rspack/pull/14671
- refactor: avoid runtime module iife in rspack mode by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/14700
- refactor: colocate rspack runtime lexical globals by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/14703
- refactor: rename empty context helpers by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/14733
- refactor(cli): use @rstackjs/load-config by @chenjiahan in https://github.com/web-infra-dev/rspack/pull/14738
- refactor: use rspack runtime identifiers by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/14739
- refactor: unify runtime globals render modes by @LingyuCoder in https://github.com/web-infra-dev/rspack/pull/14762
- chore(ci): surface Windows Defender status after disable attempt by @stormslowly in https://github.com/web-infra-dev/rspack/pull/14711
- chore(ci): read binary-size data via authenticated API by @stormslowly in https://github.com/web-infra-dev/rspack/pull/14730
- chore(deps): update patch npm dependencies by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/14751
- chore(deps): update dependency @rslint/core to v0.6.5 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/14749
- chore(deps): update dependency @module-federation/runtime-tools to v2.7.0 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/14752
- chore(deps): update dependency webpack-sources to v3.5.1 by @renovate[bot] in https://github.com/web-infra-dev/rspack/pull/14750
- revert: "feat: support persistent cache for module hashes" by @ahabhgk in https://github.com/web-infra-dev/rspack/pull/14763
- @Kanary-channelio made their first contribution in https://github.com/web-infra-dev/rspack/pull/14781
Full Changelog: https://github.com/web-infra-dev/rspack/compare/v2.1.3...v2.1.4
v5.2.1
5.2.1 (2026-07-14)
- Restore correct playhead position after MediaSource reload (#10335) (97327d5)
- Transmux: Add device registration to the web worker (#10348) (cc75dbc)
- Transmux: Fall back to main thread on worker transmux timeout (#10349) (2add6a8)
- UI: Fix thumbnail preview not scaling with player size (#10333) (d865be8)
- UI: Prevent playback rate menu from being cut off on narrow screens (#10343) (88d0519)
- UI: Scope form element font inheritance to the player container (#10353) (9aa04be)
v5.1.14
5.1.14 (2026-07-14)
- Restore correct playhead position after MediaSource reload (#10335) (827fad6)
- Retry the stall-breaking action when a stall persists (#10327) (374966b)
- Support negative playback rate (reverse trick play) correctly (#10323) (f151b1c)
- TS: Fix timestamps when a segment straddles the 33-bit PTS/DTS rollover (#10324) (c64ee0f)
v5.0.26
5.0.26 (2026-07-14)
- Restore correct playhead position after MediaSource reload (#10335) (e0be373)
- Retry the stall-breaking action when a stall persists (#10327) (134d29e)
- Support negative playback rate (reverse trick play) correctly (#10323) (6e2bb04)
- TS: Fix timestamps when a segment straddles the 33-bit PTS/DTS rollover (#10324) (92e3bb2)