Skip to content

Releases: rollup/rollup

v4.1.5

28 Oct 09:24
Compare
Choose a tag to compare

4.1.5

2023-10-28

Bug Fixes

  • Fix an issue where actual entries that were also implicit entries could remain implicit (#5220)

Pull Requests

v4.1.4

16 Oct 04:34
Compare
Choose a tag to compare

4.1.4

2023-10-16

Bug Fixes

  • Reduce sizes @rollup/browser and @rollup/wasm-node WASM artifacts (#5204)

Pull Requests

v4.1.3

15 Oct 17:48
Compare
Choose a tag to compare

4.1.3

2023-10-15

Bug Fixes

  • Fix WASM build as hash function was not exported (#5203)

Pull Requests

v4.1.1

15 Oct 06:32
Compare
Choose a tag to compare

4.1.1

2023-10-15

Bug Fixes

  • Improve Node parsing performance (#5201)

Pull Requests

v4.1.0

14 Oct 05:52
Compare
Choose a tag to compare

4.1.0

2023-10-14

Features

  • Reduce memory usage of Rollup builds (#5133)

Pull Requests

v4.0.2

06 Oct 14:19
Compare
Choose a tag to compare

4.0.2

2023-10-06

Bug Fixes

  • Fix annotation detection logic to not fail when a non-ASCII character precedes a double underscore (#5178)

Pull Requests

v4.0.1

06 Oct 12:37
Compare
Choose a tag to compare

4.0.1

2023-10-06

Bug Fixes

  • Do not panic on trailing semicolons after class methods (#5173)
  • Add artifact for arm64 linux musl target (#5176)

Pull Requests

v4.0.0

05 Oct 15:15
Compare
Choose a tag to compare

4.0.0

2023-10-05

BREAKING CHANGES

General Changes

  • The minimal required Node version is now 18.0.0 (#5142)
  • The browser build now relies on a WASM artifact that needs to be provided as well (#5073)
  • The NodeJS build now relies on an optional native binary; for unsupported platforms, users can use the @rollup/wasm-node package that has the same interface as Rollup but relies on WASM artifacts (#5073)
  • The "with" syntax for import attributes is not yet supported, awaiting support in SWC (#5073)
  • The INVALID_IMPORT_ASSERTION error code has been replaced with INVALID_IMPORT_ATTRIBUTE (#5073)
  • Rollup will now warn for @__PURE__ and @__NO_SIDE_EFFECTS__ annotations in invalid locations (#5165)
  • If an entry module starts with a shebang comment #!..., this comment will be prepended to the output for es and cjs formats (#5163)
  • File hashes will now use url-safe base64 encoded hashes (#5155)
  • The maximum hash length has been reduced to 22 characters (#5155)
  • The RollupWarning type has been removed in favor of the RollupLog type (#5147)

Changes to Rollup Options

  • Acorn plugins are no longer supported, the acornInjectPlugins option has been removed (#5073)
  • The acorn option has been removed (#5073)
  • output.externalImportAssertions has been deprecated in favor of output.externalImportAttributes (#5073)
  • inlineDynamicImports, manualChunks and preserveModules have been removed on input option level: Please use the corresponding output options of the same names (#5143)
  • Removed output options (#5143):
    • output.experimentalDeepDynamicChunkOptimization: This option is no longer needed as Rollup now always runs the full chunking algorithm
    • output.dynamicImportFunction: Use the renderDynamicImport plugin hook instead
    • output.namespaceToStringTag: Use output.generatedCode.symbols instead
    • output.preferConst: Use output.generatedCode.constBindings instead

Plugin API Changes

  • For this.resolve, the default of the skipSelf option is now true (#5142)
  • this.parse now only supports the allowReturnOutsideFunction option for now (#5073)
  • Import assertions now use the new import attribute AST structure (#5073)
  • "assertions" have been replaced with "attributes" in various places of the plugin interface (#5073)
  • If the import of a module id is handled by the load hook of a plugin, rollup.watch no longer watches the actual file if the module id corresponds to a real path; if this is intended, then the plugin is responsible for calling this.addWatchFile for any dependency files (#5150)
  • The normalized input options provided by buildStart and other hooks no longer contain an onwarn handler; plugins should use onLog instead (#5147)
  • this.moduleIds has been removed from the plugin context: Use this.getModuleIds() instead (#5143)
  • The hasModuleSideEffects flag has been removed from the ModuleInfo returned by thi s.getModuleInfo(): Use moduleSideEffects on the ModuleInfo instead (#5143)

Features

  • Improve parsing speed by switching to a native SWC-based parser (#5073)
  • Rollup will now warn for @__PURE__ and @__NO_SIDE_EFFECTS__ annotations in invalid locations (#5165)
  • The parser is now exposed as a separate export parseAst (#5169)

Bug Fixes

  • Rollup no longer tries to watch virtual files if their name corresponds to an actual file name; instead, plugins handle watching via this.addWatchFile() (#5150)

Pull Requests

v3.29.4

28 Sep 05:00
Compare
Choose a tag to compare

3.29.4

2023-09-28

Bug Fixes

  • Fix static analysis when an exported function uses callbacks (#5158)

Pull Requests

v3.29.3

24 Sep 05:35
Compare
Choose a tag to compare

3.29.3

2023-09-24

Bug Fixes

  • Fix a bug where code was wrongly tree-shaken after mutating function parameters (#5153)

Pull Requests

  • #5145: docs: improve the docs repl appearance in the light mode (@TrickyPi)
  • #5148: chore(deps): update dependency @vue/eslint-config-typescript to v12 (@renovate[bot])
  • #5149: chore(deps): lock file maintenance minor/patch updates (@renovate[bot])
  • #5153: Fully deoptimize first level path when deoptimizing nested parameter paths (@lukastaegert)