Releases: rollup/rollup
Releases · rollup/rollup
v4.44.0
4.44.0
2025-06-19
Features
- Remove limit on
maxParallelFileOps
as this could break watch mode with the commonjs plugin (#5986)
Bug Fixes
- Provide better source mappings when coarse intermediate maps are used (#5985)
Pull Requests
- #5984: fix(deps): lock file maintenance minor/patch updates (@renovate[bot], @lukastaegert)
- #5985: Improve approximation of coarse sourcemap segments (@TrickyPi)
- #5986: Remove limit on max parallel file ops (@lukastaegert)
v4.43.0
4.43.0
2025-06-11
Features
- Provide new
fs
option andthis.fs
API to replace file system (#5944)
Pull Requests
- #5944: feat(options): Add an option for overriding the file system module in the JS API (@EggDice, @lukastaegert)
v4.42.0
4.42.0
2025-06-06
Features
- Add option to allow the input to be located in the output in watch mode (#5966)
Pull Requests
- #5966: feat: watch mode add
allowInputInsideOutputPath
option (@btea, @lukastaegert)
v4.41.2
4.41.2
2025-06-06
Bug Fixes
- Detect named export usages in dynamic imports with
then
and non-arrow function expressions (#5977) - Do not replace usages of constant variables with their values for readability (#5968)
Pull Requests
- #5968: fix: preserve constant identifiers in unary expressions instead of magic numbers (@OmkarJ13, @lukastaegert)
- #5969: chore(deps): update dependency yargs-parser to v22 (@renovate[bot], @lukastaegert)
- #5970: chore(deps): lock file maintenance minor/patch updates (@renovate[bot])
- #5971: chore(deps): lock file maintenance (@renovate[bot])
- #5976: Update README.md (@ftlno, @lukastaegert)
- #5977: fix: consider function expression in thenable when tree-shaking dynamic imports (@TrickyPi)
- #5981: fix(deps): lock file maintenance minor/patch updates (@renovate[bot])
- #5982: Debug/fix watch pipeline (@lukastaegert)
v4.41.1
4.41.1
2025-05-24
Bug Fixes
- If a plugin calls
this.resolve
withskipSelf: true
, subsequent calls when handling this by the same plugin with same parameters will returnnull
to avoid infinite recursions (#5945)
Pull Requests
- #5945: Avoid recursively calling a plugin's resolveId hook with same id and importer (@younggglcy, @lukastaegert)
- #5963: fix(deps): update swc monorepo (major) (@renovate[bot])
- #5964: fix(deps): lock file maintenance minor/patch updates (@renovate[bot])
v4.41.0
4.41.0
2025-05-18
Features
- Detect named exports in more dynamic import scenarios (#5954)
Pull Requests
- #5949: ci: use node 24 (@btea, @lukastaegert)
- #5951: chore(deps): update dependency pretty-bytes to v7 (@renovate[bot])
- #5952: fix(deps): update swc monorepo (major) (@renovate[bot], @lukastaegert)
- #5953: chore(deps): lock file maintenance minor/patch updates (@renovate[bot])
- #5954: enhance tree-shaking for dynamic imports (@TrickyPi, @renovate[bot], @lukastaegert)
- #5957: chore(deps): update dependency lint-staged to v16 (@renovate[bot], @lukastaegert)
- #5958: fix(deps): update rust crate swc_compiler_base to v20 (@renovate[bot], @lukastaegert)
- #5959: fix(deps): lock file maintenance minor/patch updates (@renovate[bot], @lukastaegert)
- #5960: Use spawn to run CLI tests (@lukastaegert)
v4.40.2
4.40.2
2025-05-06
Bug Fixes
- Create correct IIFE/AMD/UMD bundles when using a mutable default export (#5934)
- Fix execution order when using top-level await for dynamic imports with inlineDynamicImports (#5937)
- Throw when the output is watched in watch mode (#5939)
Pull Requests
- #5934: fix(exports): avoid "exports is not defined"
ReferenceError
(@dasa) - #5937: consider TLA imports have higher execution priority (@TrickyPi)
- #5939: fix: watch mode input should not be an output subpath (@btea)
- #5940: chore(deps): update dependency vite to v6.3.4 [security] (@renovate[bot])
- #5941: chore(deps): update dependency eslint-plugin-unicorn to v59 (@renovate[bot])
- #5942: fix(deps): lock file maintenance minor/patch updates (@renovate[bot])
- #5943: fix(deps): lock file maintenance minor/patch updates (@renovate[bot])
v4.40.1
4.40.1
2025-04-28
Bug Fixes
- Limit hash size for asset file names to the supported 21 (#5921)
- Do not inline user-defined entry chunks or chunks with explicit file name (#5923)
- Avoid top-level-await cycles when non-entry chunks use top-level await (#5930)
- Expose package.json via exports (#5931)
Pull Requests
- #5921: fix(assetFileNames): reduce max hash size to 21 (@shulaoda)
- #5923: fix: generate the separate chunk for the entry module with explicated chunk filename or name (@TrickyPi)
- #5926: fix(deps): update rust crate swc_compiler_base to v18 (@renovate[bot])
- #5927: fix(deps): lock file maintenance minor/patch updates (@renovate[bot])
- #5928: fix(deps): lock file maintenance minor/patch updates (@renovate[bot])
- #5930: Avoid chunks TLA dynamic import circular when TLA dynamic import used in non-entry modules (@TrickyPi)
- #5931: chore: add new
./package.json
entry (@JounQin, @lukastaegert) - #5936: fix(deps): lock file maintenance minor/patch updates (@renovate[bot])
v4.40.0
4.40.0
2025-04-12
Features
- Only show
eval
warnings on first render and only when the call is not tree-shaken (#5892) - Tree-shake non-included dynamic import members when the handler just maps to one named export (#5898)
Bug Fixes
- Consider dynamic imports nested within top-level-awaited dynamic import expressions to be awaited as well (#5900)
- Fix namespace rendering when tree-shaking is disabled (#5908)
- When using multiple transform hook filters, all of them need to be satisfied together (#5909)
Pull Requests
- #5892: Warn when eval or namespace calls are rendered, not when they are parsed (@SunsetFi, @lukastaegert)
- #5898: feat: treeshake dynamic import chained member expression (@privatenumber, @lukastaegert)
- #5900: consider the dynamic import within a TLA call expression as a TLA import (@TrickyPi)
- #5904: fix(deps): update swc monorepo (major) (@renovate[bot])
- #5905: chore(deps): lock file maintenance minor/patch updates (@renovate[bot])
- #5908: Fix
treeshake: false
breaking destructured namespace imports (@Skn0tt) - #5909: Correct the behavior when multiple transform filter options are specified (@sapphi-red)
- #5915: chore(deps): update dependency @types/picomatch to v4 (@renovate[bot])
- #5916: fix(deps): update rust crate swc_compiler_base to v17 (@renovate[bot])
- #5917: chore(deps): lock file maintenance minor/patch updates (@renovate[bot], @lukastaegert)
- #5918: chore(deps): update dependency vite to v6.2.6 [security] (@renovate[bot], @lukastaegert)
v4.39.0
4.39.0
2025-04-02
Features
- Do not create separate facade chunks if a chunk would contain several entry modules that allow export extension if there are no export name conflicts (#5891)
Bug Fixes
- Mark the
id
property as optional in the filter for theresolveId
hook (#5896)
Pull Requests
- #5891: chunk: merge allow-extension modules (@wmertens, @lukastaegert)
- #5893: chore(deps): update dependency vite to v6.2.4 [security] (@renovate[bot])
- #5896: fix: resolveId id filter is optional (@sapphi-red)