Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • C Codebeispiele - examples
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 1
    • Issues 1
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 10
    • Merge requests 10
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Terraform modules
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • FIT-ConnectFIT-Connect
  • Codebeispiele - examples
  • Merge requests
  • !18

chore(deps): update dependency rollup to v3

  • Review changes

  • Download
  • Patches
  • Plain diff
Open Renovate requested to merge renovate/rollup-3.x into main Oct 11, 2022
  • Overview 1
  • Commits 1
  • Pipelines 0
  • Changes 2

This MR contains the following updates:

Package Change Age Adoption Passing Confidence
rollup (source) ^2.50.5 -> ^3.0.0 age adoption passing confidence

Release Notes

rollup/rollup

v3.21.0

Compare Source

2023-04-23

Features
  • Support tree-shaking of named exports in dynamic imports when using destructuring and similar patterns (#​4952)
Merge Requests
  • #​4952: feat: tree-shake deterministic dynamic imports (@​antfu)

v3.20.7

Compare Source

2023-04-21

Bug Fixes
  • Properly track array element mutations when iterating with a for-of loop (#​4949)
  • Handle default exporting an anonymous class that extends another class (#​4950)
Merge Requests
  • #​4943: Add a test for reserved keywords used as import/export specifiers (@​Andarist)
  • #​4949: Deoptimize right side in for-of loops (@​lukastaegert)
  • #​4950: Support default exported classes that extend other classes (@​lukastaegert)

v3.20.6

Compare Source

2023-04-18

Bug Fixes
  • Revert handling of non-JS import and export names due to regressions (#​4914)
Merge Requests
  • #​4914: feat: add locales in vitepress config (@​iDestin)
  • #​4946: Revert #​4939 for now (@​lukastaegert)

v3.20.5

Compare Source

2023-04-18

Bug Fixes
  • Handle import and export names that are not valid JavaScript identifiers (#​4939)
Merge Requests
  • #​4939: Fixed imports/exports that are illegal identifiers in the es output (@​Andarist)
  • #​4941: Reinstate global styles (@​lukastaegert)

v3.20.4

Compare Source

2023-04-17

Bug Fixes
  • Do not remove breaks statements after switch statements with conditional breaks (#​4937)
Merge Requests
  • #​4937: fix: handle conditional breaks in nested switch statement cases (@​TrickyPi and @​lukastaegert)

v3.20.3

Compare Source

2023-04-16

Bug Fixes
  • Reduce memory consumption for function call parameter analysis (#​4938)
  • Fix types for shouldTransformCachedModule (#​4932)
Merge Requests
  • #​4925: chore: repl style add scoped (@​btea)
  • #​4926: docs: Update the x_google_ignorelist url (@​jecfish)
  • #​4932: Allow shouldTransformCachedModule to return null (@​bluwy)
  • #​4935: Bump peter-evans/create-or-update-comment from 2 to 3 (@​dependabot[bot])
  • #​4936: Disable puppeteer sandbox to fix Vercel deployment (@​lukastaegert)
  • #​4938: Improve memory usage for parameter deoptimizations (@​lukastaegert)

v3.20.2

Compare Source

2023-03-24

Bug Fixes
  • Fix a crash when using a manual chunk entry that is not already included in the module graph (#​4921)
  • Fix a crash when reporting a warning with incorrect sourcemap information (#​4922)
Merge Requests
  • #​4921: Handle manual chunks where the entry is not part of the module graph (@​lukastaegert)
  • #​4922: Do not fail if the location of a warning is outside the original source (@​lukastaegert)

v3.20.1

Compare Source

2023-03-23

Bug Fixes
  • Fix returned file name from this.getFileName when assets are deduplicated (#​4919)
Merge Requests
  • #​4919: Only set asset names when finalizing (@​lukastaegert)

v3.20.0

Compare Source

2023-03-20

Features
  • Allow dynamically imported files to have synthetic named exports when preserving modules (#​4913)
Bug Fixes
  • Use deterministic file name when emitting several files with same source (#​4912)
  • Fix a crash when dynamically importing a file with synthetic named exports when preserving modules (#​4913)
Merge Requests
  • #​4912: fix: make file name deterministic in parallel emits (fix #​4909) (@​sun0day)
  • #​4913: Provide synthetic namespace for dynamic imports when perserving modules (@​lukastaegert)

v3.19.1

Compare Source

2023-03-10

Bug Fixes
  • Produce valid code when the first statement in aclass static block is tree-shaken (#​4898)
Merge Requests
  • #​4898: fix: set a correct node location for static blocks (@​TrickyPi)
  • #​4900: docs: fix table at output.sanitizeFileName section (@​0x009922)

v3.19.0

Compare Source

2023-03-09

Features
  • Make reassignment tracking of call parameters more specific to no lose information when an object is passed to a function (#​4892)
Merge Requests
  • #​4890: Fix npm run dev (@​lukastaegert)
  • #​4892: Only selectively deoptimize call parameters (@​lukastaegert)
  • #​4897: Pre-render mermaid graphs on website (@​lukastaegert)

v3.18.0

Compare Source

2023-03-01

Features
  • Add experimentalLogSideEffects to log the first detected side effect in every module (#​4871)
  • Ignore-list sourcemaps of files inside node_modules by default (#​4877)
Merge Requests
  • #​4871: Add experimental logging for side effects (@​lukastaegert)
  • #​4877: feat: mark files in a node_modules as ignore-listed by default (@​bmeurer)
  • #​4880: build: use @​rollup/plugin-replace to replace chokidar fsevents (@​dnalborczyk)
  • #​4887: Refactor (@​dnalborczyk)

v3.17.3

Compare Source

2023-02-25

Bug Fixes
  • Handle non-URL-safe characters when poly-filling import.meta.url (#​4875)
Merge Requests
  • #​4870: fix: style optimization in dark mode (@​huodoushigemi)
  • #​4875: Fix transformation of import.meta.url in CommonJS (@​fasttime)
  • #​4876: fix: wrong params of the transform hook (@​ZzqiZQute)
  • #​4878: Improve test stability (@​lukastaegert)

v3.17.2

Compare Source

2023-02-20

Bug Fixes
  • Do not omit code if a file that only re-exports a used variable has moduleSideEffects set to true (#​4867)
  • Add missing needsCodeReference property in TypeScript for asset tree-shaking (#​4868)
  • Add correct side effect configuration for additional Object and Promise methods (#​4323)
Merge Requests
  • #​4323: feat: add known globals (@​dnalborczyk)
  • #​4867: Include side effects of re-exporters unless they have moduleSideEffects: false (@​lukastaegert)
  • #​4868: Add needsCodeReference property to EmittedAsset (@​sapphi-red)

v3.17.1

Compare Source

2023-02-18

Bug Fixes
  • Add TypeScript types for loadConfigFile (#​4853)
  • Fix an issue that could include unused classes in the bundle if their super class was in a file with moduleSideEffects: false (#​4866)
Merge Requests
  • #​4853: feat: export loadConfigFile type (@​TrickyPi)
  • #​4866: Do not mark variable access in files without side effects as TDZ (@​lukastaegert)

v3.17.0

Compare Source

2023-02-18

Features
  • Deprecate experimentalDeepDynamicChunkOptimization and always run the full chunk generation algorithm (#​4862)
Bug Fixes
  • Fix an issue that caused very slow builds for projects with over 1000 dynamic imports when experimentalDeepDynamicChunkOptimization was enabled (#​4862)
Merge Requests
  • #​4862: Improve chunking performance (@​lukastaegert)

v3.16.0

Compare Source

2023-02-17

Features
  • Support output.sourcemapIgnoreList option to mark file sources as ignored in the x_google_ignoreList attribute of the resulting sourcemap (#​4848)
  • Support sourcemaps where sourcesContent contains null entries (#​4846)
  • Allow explicitly passing true for the cache option to override Vite's default (#​4859)
Bug Fixes
  • Fix an issue where unrelated side effects spilled into other chunks when using the experimentalMinChunkSize option (#​4851)
Merge Requests
  • #​4846: Update magic-string and adjust types. (@​bmeurer)
  • #​4848: Introduce sourcemapIgnoreList predicate. (@​bmeurer)
  • #​4851: Fix chunk graph update when merging chunks for minChunkSize (@​lukastaegert)
  • #​4852: docs: make api params more readable (@​cunzaizhuyi)
  • #​4856: simplify code in includeStatements (@​TrickyPi)
  • #​4859: Allow to pass "true" to InputOptions.cache (@​danielrentz)

v3.15.0

Compare Source

2023-02-10

Features
  • Do not consider instantiating a constructor a side effect if it adds properties to "this" and is instantiated elsewhere (#​4842)
Bug Fixes
  • Improve side effect detection in constructors (#​4842)
Merge Requests
  • #​4842: fix: add this option to context.ignore (@​TrickyPi)
  • #​4843: fixed the logo link (@​oMatheuss)
  • #​4844: Update index.md (@​cunzaizhuyi)
  • #​4845: docs: fix style (@​TrickyPi)

v3.14.0

Compare Source

2023-02-05

Features
  • Add experimentalDeepDynamicChunkOptimization option to produce fewer chunks from dynamic imports (#​4837)
Merge Requests
  • #​4837: Add flag to re-enable deep dynamic chunk optimization (@​lukastaegert)
  • #​4839: fix: correct incorrect assertions (@​TrickyPi)

v3.13.0

Compare Source

2023-02-03

Features
  • Prevent chunk cycles when using experimentalMinChunkSize (#​4723)
Merge Requests
  • #​4723: Improve minChunkSize algorithm (@​lukastaegert)
  • #​4833: docs: Fix typo (@​mturoci)
  • #​4835: Tables in docs (@​lukastaegert)

v3.12.1

Compare Source

2023-02-01

Bug Fixes
  • Handle self-references in class static blocks and construtors when the class is renamed (#​4827)
  • Improve warnings when creating circular chunks taht reexport variables (#​4829)
Merge Requests
  • #​4827: fix: use the original class name in the class body (@​TrickyPi)
  • #​4829: Improve and fix cross-chunk-reexport warning (@​lukastaegert)
  • #​4830: Add Algolia doc search (@​lukastaegert)
  • #​4831: Add warning not to add assets directly to the bundle (@​lukastaegert)

v3.12.0

Compare Source

2023-01-28

Features
  • Change generated external namespace reexport helper code for CommonJS to better work with NodeJS named export detection (#​4826)
Merge Requests
  • #​4825: Add and use anchors for nested options (@​lukastaegert)
  • #​4826: Use old namespace reexport code pattern for better Node support (@​lukastaegert)

v3.11.0

Compare Source

2023-01-26

Features
  • Support opt-in tree-shaking for emitted assets based on code references (#​4805)
Bug Fixes
  • Adapt documentation references in Rollup to new website (#​4807)
Merge Requests
  • #​4805: feat: add needsCodeReference field to EmittedAsset (@​TrickyPi)
  • #​4807: Rewrite website in Vitepress and merge it into the main repository (@​lukastaegert)
  • #​4816: web-publisher: Update docs/faqs/index.md (@​PuruVJ)
  • #​4819: Replace fs-extra with built-ins (@​dnalborczyk)
  • #​4820: Introduce timeout-minutes in Github actions ci (@​dnalborczyk)
  • #​4822: Tweak document landing page (@​sapphi-red)
  • #​4823: Minor migration guide improvements (@​sapphi-red)
  • #​4824: Add most options to the REPL (@​lukastaegert)

v3.10.1

Compare Source

2023-01-20

Bug Fixes
  • Fix some crashes when using optional chaining with namespaces and improve tree-shaking (#​4812)
  • Avoid wrongly removed code when using optional chaining (#​4812)
Merge Requests
  • #​4809: fix: rollup bin file is in dist folder (@​saibotsivad)
  • #​4812: Rework tree-shaking support for optional chaining (@​lukastaegert)

v3.10.0

Compare Source

2023-01-12

Features
  • Add information about the resolving plugin to resolved ids (#​4789)
  • Improve treeshaking for optional chaining when the root is nullish (#​4797)
Bug Fixes
  • Remove unnecessary internal defaults for acorn options (#​4786)
Merge Requests
  • #​4785: Use @​jridgewell/sourcemap-codec (@​bluwy)
  • #​4786: Remove default acorn options + other fixes (@​dnalborczyk)
  • #​4789: feat: add resolvedBy field to ResolvedId (@​TrickyPi)
  • #​4794: fix: import can be shortened (@​cunzaizhuyi)
  • #​4796: Update dependencies (@​lukastaegert)
  • #​4797: feat: treeshake for optional chaining (@​antfu)

v3.9.1

Compare Source

2023-01-02

Bug Fixes
  • Sort keys in generated dynamic namespace objects (#​4780)
  • Do not consider Array.group to be side effect free as the specs have changed (#​4779)
Merge Requests
  • #​4777: Import from node:fs/promises (@​dnalborczyk)
  • #​4778: Bump deps (@​dnalborczyk)
  • #​4779: Remove array grouping (web compat issue) (@​dnalborczyk)
  • #​4780: Sort namespace object keys (@​dnalborczyk)
  • #​4781: Use Set and builtin-modules package (@​dnalborczyk)
  • #​4782: Use more restrictive types (@​dnalborczyk)

v3.9.0

Compare Source

2022-12-28

Features
  • Support ES2022 arbitrary module namespace identifiers (#​4770)
  • Add optional version property to plugin type (#​4771)
Merge Requests
  • #​4768: Fix small typo in 999-big-list-of-options.md (@​ericmutta)
  • #​4769: docs: add a instruction about how to run one test on your local computer (@​TrickyPi)
  • #​4770: Add support for arbitrary module namespace identifiers (@​lukastaegert)
  • #​4771: Add version property to Plugin type (@​Septh)

v3.8.1

Compare Source

2022-12-23

Bug Fixes
  • Reduce memory footprint when explicitly passing cache: false (#​4762)
  • Fix a crash when preserving modules and reexporting namespaces (#​4766)
Merge Requests
  • #​4762: Improve AST garbage collection (@​bluwy)
  • #​4766: Fix handling of namespace reexports when preserving modules (@​lukastaegert)

v3.8.0

Compare Source

2022-12-22

Features
  • Deduplicate ESM exports and reexports when preserving modules (#​4759)
Bug Fixes
  • Handle files that are emitted as a side effect of the manualChunks option (#​4759)
Merge Requests
  • #​4759: feat: deduplicate reexports and renderedExports to simplify output (@​TrickyPi)
  • #​4761: Support emitting files via manualChunks in output (@​lukastaegert)
  • #​4763: docs: update outdated info (@​TrickyPi)

v3.7.5

Compare Source

2022-12-17

Bug Fixes
  • Avoid name shadowing when default exporting a class that matches the name of another class (#​4756)
  • Do not display the error message both in a separate line and in the stack trace in rollup CLI (#​4749)
  • Make type of RollupWarning.cause compatible with Error.cause (#​4757)
  • Do not swallow side effects when interacting with modules namespaces nested in another object (#​4758)
Merge Requests
  • #​4749: feat: simplify stack info in cli error (@​TrickyPi)
  • #​4756: Avoid name conflicts for default exported classes (@​lukastaegert)
  • #​4757: fix: RollupLog cause allow unknown (@​Shinigami92)
  • #​4758: Correctly handle side effects when a namespace is nested in an object (@​lukastaegert)

v3.7.4

Compare Source

2022-12-13

Bug Fixes
  • Do not remove calls to .exec and .test for included stateful regular expressions (#​4742)
Merge Requests
  • #​4742: fix: check whether RegExp have the global or sticky flags set (@​TrickyPi)

v3.7.3

Compare Source

2022-12-11

Bug Fixes
  • Ensure this.getFileName no longer returns a placeholder as soon as hash placeholders have been resolved (#​4747)
Merge Requests
  • #​4747: provide hashed file name when using this.getFileName in generateBundle (@​lukastaegert)

v3.7.2

Compare Source

2022-12-10

Bug Fixes
  • Improve chunk generation performance when one module is dynamically imported by many other modules (#​4736)
Merge Requests
  • #​4736: Improve chunk assignment performance (@​lukastaegert)

v3.7.1

Compare Source

2022-12-09

Bug Fixes
  • Ad a hint to use @​rollup/plugin-json when imports from a JSON file are not found (#​4741)
Merge Requests
  • #​4741: fix: provide json hint when importing a no export json file (@​TrickyPi)

v3.7.0

Compare Source

2022-12-08

Features
  • Do not treat .test and .exec on regular expressions as side effects (#​4737)
Merge Requests
  • #​4737: feat: add sutiable RegExp prototype methods (@​TrickyPi)

v3.6.0

Compare Source

2022-12-05

Features
  • extend this.getModuleInfo with information about exports (#​4731)
Merge Requests
  • #​4731: feat: add exports and exportedBindings to Module class (@​TrickyPi)

v3.5.1

Compare Source

2022-12-01

Bug Fixes
  • Accept functions returning a config in defineConfig (#​4728)
Merge Requests
  • #​4728: Overload defineConfig to accept a RollupOptionsFunction parameter (@​Septh)

v3.5.0

Compare Source

2022-11-27

Features
  • Add treeshake.manualPureFunctions to override static analysis for explicit function names (#​4718)
Bug Fixes
  • Do not throw when a plugin uses this.load without awaiting its result (#​4725)
Merge Requests
  • #​4718: Add simple way to manually declare pure functions (@​lukastaegert)
  • #​4725: Fix isIncluded error when using rollup-plugin-typescript2 (@​lukastaegert)

v3.4.0

Compare Source

2022-11-22

Features
  • Do not keep unused Object.freeze calls on object literals (#​4720)
Merge Requests
  • #​4720: Only consider Object.freeze a side effect if the argument is used (@​lukastaegert)

v3.3.0

Compare Source

2022-11-12

Features
  • Add "experimentalMinChunkSize" option to merge smaller chunks into larger ones (#​4705)
  • Automatically deduplicate assets again when the source is a Buffer (#​4712)
  • Deduplicate Buffer with string assets (#​4712)
Bug Fixes
  • Support plugins with object hooks when using perf: true (#​4707)
Merge Requests
  • #​4702: docs: add additional tips for heap out of memory (@​benmccann)
  • #​4705: Allow to define minimum chunk size limit (@​lukastaegert)
  • #​4707: Fix perf timers for object hooks (@​lukastaegert)
  • #​4710: Update terser docs (@​nikolas)
  • #​4712: feat: deduplicate assets with buffer source (@​patak-dev)

v3.2.5

Compare Source

2022-11-01

Bug Fixes
  • We deconflicting classes, ensure the original class name still does not shadow variables (#​4697)
Merge Requests
  • #​4697: Prevent class ids from shadowing other variables (@​lukastaegert)

v3.2.4

Compare Source

2022-10-31

Bug Fixes
  • Always use forward slashes in chunk ids when preserving modules, even on Windows (#​4693)
  • Escape problematic characters in ids when rewriting import.meta.url (#​4693)
Merge Requests
  • #​4685: update package-lock version (@​jerry-lllman)
  • #​4689: Update 07-tools.md (@​cokert)
  • #​4693: Use correct import.meta.url slashes on Windows (@​lukastaegert)

v3.2.3

Compare Source

2022-10-18

Bug Fixes
  • Fix an issue whre Rollup confused new.target with import.meta (#​4679)
  • Ensure that Rollup does not make assumptions about the value of unknown namespace import members (#​4684)
Merge Requests
  • #​4679: Do not rewrite new.target (@​lukastaegert)
  • #​4683: Remove typo in resolveId documentation (@​ChrispyChris)
  • #​4684: Return correct values for unknown namespace members (@​lukastaegert)

v3.2.2

Compare Source

2022-10-16

Bug Fixes
  • Do not hang/crash on hashbang comments in input modules (#​4676)
Merge Requests
  • #​4675: refactor: improve & simplify types (@​sxzz)
  • #​4676: Ignore hashhbang comments (@​lukastaegert)

v3.2.1

Compare Source

2022-10-16

Bug Fixes
  • Rewrite class declarations to preserve their .name property if necessary (#​4674)
Merge Requests
  • #​4674: Preserve rendered class names (@​lukastaegert)

v3.2.0

Compare Source

2022-10-15

Features
  • Support providing Promises as plugins like Vite (#​4671)
Merge Requests
  • #​4666: Add unicorn plugin (@​lukastaegert)
  • #​4667: refactor: improve types (@​sxzz)
  • #​4668: fix: nested plugin in options stage (@​sxzz)
  • #​4669: refactor: merge duplicate imports (@​c0dedance)
  • #​4670: docs: fix minor typo in migration documentation (@​ThisIsMissEm)
  • #​4671: feat: support async plugins (@​sxzz)

v3.1.0

Compare Source

2022-10-12

Features
  • Support using arrays of plugins as plugins like Vite (#​4657)
Merge Requests
  • #​4657: feat: support nested plugin (@​sxzz)

v3.0.1

Compare Source

2022-10-12

Bug Fixes
  • Fix installation on Windows (#​4662)
  • Avoid missing parameters that are only used in a destructuring initializer (#​4663)
Merge Requests
  • #​4661: Enforce type imports (@​lukastaegert)
  • #​4662: fix: missing "node" causes run script error (@​c0dedance)
  • #​4663: Ensure the initializer of a destructuring declaration is always included if the id is included (@​lukastaegert)
  • #​4664: fix: remove lint:js:nofix script redundancy options (@​c0dedance)

v3.0.0

Compare Source

2022-10-11

Breaking Changes
General Changes
  • Rollup now requires at least Node 14.18.0 to run (#​4548 and #​4596)
  • The browser build has been split into a separate package @rollup/browser (#​4593)
  • The node build uses the node: prefix for imports of builtin modules (#​4596)
  • Some previously deprecated features have been removed (#​4552):
    • Some plugin context functions have been removed:
      • this.emitAsset(): use this.emitFile()
      • this.emitChunk(): use this.emitFile()
      • this.getAssetFileName(): use this.getFileName()
      • this.getChunkFileName(): use this.getFileName()
      • this.isExternal(): use this.resolve()
      • this.resolveId(): use this.resolve()
    • The resolveAssetUrl plugin hook has been removed: use resolveFileUrl
    • Rollup no longer passes assetReferenceId or chunkReferenceId parameters to resolveFileUrl
    • The treeshake.pureExternalModules option has been removed: use treeshake.moduleSideEffects: 'no-external'
    • You may no longer use true or false for output.interop. As a replacement for true, you can use "compat"
    • Emitted assets no longer have an isAsset flag in the bundle
    • Rollup will no longer fix assets added directly to the bundle by adding the type: "asset" field
  • Some features that were previously marked for deprecation now show warnings when used (#​4552):
    • Some options have been deprecated:
      • inlineDynamicImports as part of the input options: use output. inlineDynamicImports
      • manualChunks as part of the input options: use output. manualChunks
      • maxParallelFileReads: use `maxParallelFileOps
      • output.preferConst: use output.generatedCode.constBindings
      • output.dynamicImportFunction: use the renderDynamicImport plugin hook
      • output.namespaceToStringTag: use output.generatedCode.symbols
      • preserveModules as part of the input options: use output. preserveModules
    • You should no longer access this.moduleIds in plugins: use this.getModuleIds()
    • You should no longer access this.getModuleInfo(...).hasModuleSideEffects in plugins: use this.getModuleInfo(...).moduleSideEffects
  • Configuration files are only bundled if either the --configPlugin or the --bundleConfigAsCjs options are used. The configuration is bundled to an ES module unless the --bundleConfigAsCjs option is used. In all other cases, configuration is now loaded using Node's native mechanisms (#​4574 and #​4621)
  • The properties attached to some errors have been changed so that there are fewer different possible properties with consistent types (#​4579)
  • Some errors have been replaced by others (ILLEGAL_NAMESPACE_REASSIGNMENT -> ILLEGAL_REASSIGNMENT, NON_EXISTENT_EXPORT -> MISSING_EXPORT) (#​4579)
  • Files in rollup/dist/* can only be required using their file extension (#​4581)
  • The loadConfigFile helper now has a named export of the same name instead of a default export (#​4581)
  • When using the API and sourcemaps, sourcemap comments are contained in the emitted files and sourcemaps are emitted as regular assets (#​4605)
  • Watch mode no longer uses Node's EventEmitter but a custom implementation that awaits Promises returned from event handlers (#​4609)
  • Assets may only be deduplicated with previously emitted assets if their source is a string (#​4644)
  • By default, Rollup will keep external dynamic imports as import(…) in commonjs output unless output.dynamicImportInCjs is set to false (#​4647)
Changes to Rollup Options
  • As functions passed to output.banner/footer/intro/outro are now called per-chunk, they should be careful to avoid performance-heavy operations (#​4543)
  • entryFileNames/chunkFileNames functions now longer have access to the rendered module information via modules, only to a list of included moduleIds (#​4543)
  • The path of a module is no longer prepended to the corresponding chunk when preserving modules (#​4565)
  • When preserving modules, the [name] placeholder (as well as the chunkInfo.name property when using a function) now includes the relative path of the chunk as well as optionally the file extension if the extension is not one of .js, .jsx, .mjs, .cjs, .ts, .tsx, .mts, or .cts (#​4565)
  • The [ext], [extName] and [assetExtName] placeholders are no longer supported when preserving modules (#​4565)
  • The perf option no longer collects timings for the asynchronous part of plugin hooks as the readings were wildly inaccurate and very misleading, and timings are adapted to the new hashing algorithm (#​4566)
  • Change the default value of makeAbsoluteExternalsRelative to "ifRelativeSource" so that absolute external imports will no longer become relative imports in the output, while relative external imports will still be renormalized (#​4567)
  • Change the default for output.generatedCode.reservedNamesAsProps to no longer quote properties like default by default (#​4568)
  • Change the default for preserveEntrySignatures to "exports-only" so that by default, empty facades for entry chunks are no longer created (#​4576)
  • Change the default for output.interop to "default" to better align with NodeJS interop (#​4611)
  • Change the default for output.esModule to "if-default-prop", which only adds __esModule when the default export would be a property (#​4611)
  • Change the default for output.systemNullSetters to true, which requires at least SystemJS 6.3.3 (#​4649)
Plugin API Changes
  • Plugins that add/change/remove imports or exports in renderChunk should make sure to update ChunkInfo.imports/importedBindings/exports accordingly (#​4543)
  • The order of plugin hooks when generating output has changed (#​4543)
  • Chunk information passed to renderChunk now contains names with hash placeholders instead of final names, which will be replaced when used in the returned code or ChunkInfo.imports/importedBindings/exports (#​4543 and #​4631)
  • Hooks defined in output plugins will now run after hooks defined in input plugins (used to be the other way around) (#​3846)
Features
  • Functions passed to output.banner/footer/intro/outro are now called per-chunk with some chunk information (#​4543)
  • Plugins can access the entire chunk graph via an additional parameter in renderChunk (#​4543)
  • Chunk hashes only depend on the actual content of the chunk and are otherwise stable against things like renamed/moved source files or changed module resolution order (#​4543)
  • The length of generated file hashes can be customized both globally and per-chunk (#​4543)
  • When preserving modules, the regular entryFileNames logic is used and the path is included in the [name] property. This finally gives full control over file names when preserving modules (#​4565)
  • output.entryFileNames now also supports the [hash] placeholder when preserving modules (#​4565)
  • The perf option will now collect (synchronous) timings for all plugin hooks, not just a small selection (#​4566)
  • All errors thrown by Rollup have name: RollupError now to make clearer that those are custom error types (#​4579)
  • Error properties that reference modules (such as id and ids) will now always contain the full ids. Only the error message will use shortened ids (#​4579)
  • Errors that are thrown in response to other errors (e.g. parse errors thrown by acorn) will now use the standardized cause property to reference the original error (#​4579)
  • If sourcemaps are enabled, files will contain the appropriate sourcemap comment in generateBundle and sourcemap files are available as regular assets (#​4605)
  • Returning a Promise from an event handler attached to a RollupWatcher instance will make Rollup wait for the Promise to resolve (#​4609)
  • There is a new value "compat" for output.interop that is similar to "auto" but uses duck-typing to determine if there is a default export (#​4611)
  • There is a new value "if-default-prop" for esModule that only adds an __esModule marker to the bundle if there is a default export that is rendered as a property (#​4611)
  • Rollup can statically resolve checks for foo[Symbol.toStringTag] to "Module" if foo is a namespace (#​4611)
  • There is a new CLI option --bundleConfigAsCjs which will force the configuration to be bundled to CommonJS (#​4621)
  • Import assertions for external imports that are present in the input files will be retained in ESM output (#​4646)
  • Rollup will warn when a module is imported with conflicting import assertions (#​4646)
  • Plugins can add, remove or change import assertions when resolving ids (#​4646)
  • The output.externalImportAssertions option allows to turn off emission of import assertions (#​4646)
  • Use output.dynamicImportInCjs to control if dynamic imports are emitted as import(…) or wrapped require(…) when generating commonjs output (#​4647)
Bug Fixes
  • Chunk hashes take changes in renderChunk, e.g. minification, into account (#​4543)
  • Hashes of referenced assets are properly reflected in the chunk hash (#​4543)
  • No longer warn about implicitly using default export mode to not tempt users to switch to named export mode and break Node compatibility (#​4624)
  • Avoid performance issues when emitting thousands of assets (#​4644)
Merge Requests
  • #​3846: [v3.0] Run output plugins last (@​aleclarson)
  • #​4543: [v3.0] New hashing algorithm that "fixes (nearly) everything" (@​lukastaegert)
  • #​4548: [v3.0] Deprecate Node 12 (@​lukastaegert)
  • #​4552: [v3.0] Remove actively deprecated features, show warnings for other deprecated features (@​lukastaegert)
  • #​4558: [v3.0] Convert build scripts to ESM, update dependencies (@​lukastaegert)
  • #​4565: [v3.0] Rework file name patterns when preserving modules (@​lukastaegert)
  • #​4566: [v3.0] Restructure timings (@​lukastaegert)
  • #​4567: [v3.0] Change default for makeAbsoluteExternalsRelative (@​lukastaegert)
  • #​4568: [v3.0] Change default for output.generatedCode.reservedNamesAsProps (@​lukastaegert)
  • #​4574: [v3.0] Better esm config file support (@​lukastaegert)
  • #​4575: [v3.0] Show deprecation warning for maxParallelFileReads (@​lukastaegert)
  • #​4576: [v3.0] Change default for preserveEntrySignatures to exports-only (@​lukastaegert)
  • #​4579: [v3.0] Refine errors and warnings (@​lukastaegert)
  • #​4581: [v3.0] Use named export for loadConfigFile (@​lukastaegert)
  • #​4592: [v3.0] Port doc changes from #​4572 and #​4583 to 3.0 (@​berniegp)
  • #​4593: [v3.0] Browser build (@​lukastaegert)
  • #​4596: [v3.0] Use "node:" prefix for imports of node builtins (@​lukastaegert)
  • #​4605: [v3.0] Better sourcemap emission (@​lukastaegert)
  • #​4609: [v3.0] Custom awaiting watch emitter (@​lukastaegert)
  • #​4611: [v3.0] Improve interop defaults (@​lukastaegert)
  • #​4621: [v3.0] Always try to load config files via Node if possible (@​lukastaegert)
  • #​4624: [v3.0] Remove warning when using implicit default export mode (@​lukastaegert)
  • #​4631: [v3.0] Use ASCII characters for hash placeholders (@​lukastaegert)
  • #​4644: [v3.0] Improve performance of asset emissions (@​lukastaegert)
  • #​4646: [v3.0] Basic support for import assertions (@​lukastaegert)
  • #​4647: [v3.0] Keep dynamic imports in CommonJS output (@​lukastaegert)
  • #​4649: [v3.0] Change default for systemNullSetters (@​lukastaegert)
  • #​4651: [v3.0] use compiler target ES2020 (@​dnalborczyk)

v2.79.1

Compare Source

2022-09-22

Bug Fixes
  • Avoid massive performance degradation when creating thousands of chunks (#​4643)
Merge Requests
  • #​4639: fix: typo docs and contributors link in CONTRIBUTING.md (@​takurinton)
  • #​4641: Update type definition of resolveId (@​ivanjonas)
  • #​4643: Improve performance of chunk naming collision check (@​lukastaegert)

v2.79.0

Compare Source

2022-08-31

Features
  • Add amd.forceJsExtensionForImports to enforce using .js extensions for relative AMD imports (#​4607)
Merge Requests
  • #​4607: add option to keep extensions for amd (@​wh1tevs)

v2.78.1

Compare Source

2022-08-19

Bug Fixes
  • Avoid inferring "arguments" as name for a default export placeholder variable (#​4613)
Merge Requests
  • #​4613: Prevent using arguments for generated variable names (@​lukastaegert)

v2.78.0

Compare Source

2022-08-14

Features
  • Support writing plugin hooks as objects with a "handler" property (#​4600)
  • Allow changing execution order per plugin hook (#​4600)
  • Add flag to execute plugins in async parallel hooks sequentially (#​4600)
Merge Requests
  • #​4600: Allow using objects as hooks to change execution order (@​lukastaegert)

v2.77.3

Compare Source

2022-08-11

Bug Fixes
  • Correctly resolve preserveModulesRoot in Vite (#​4591)
Merge Requests
  • #​4591: resolve currentPath (@​cleverpp)

v2.77.2

Compare Source

2022-07-27

Bug Fixes
  • Avoid a rendering failure when mixing outputs with inlined and non-inlined dynamic imports (#​4589)
Merge Requests
  • #​4589: Handle generating non-inlined imports after inlined ones (@​lukastaegert)

v2.77.1

Compare Source

2022-07-26

Bug Fixes
  • Ensure IIFE output generates a global variable when generating ES5 (#​4588)
Merge Requests
  • #​4577: broken link removed (@​Jawad-H)
  • #​4580: Update dependencies (@​lukastaegert)
  • #​4584: Documentation clarity and syntax improvements (@​berniegp)
  • #​4588: Use var for IIFE (@​lukastaegert)

v2.77.0

Compare Source

2022-07-15

Features
  • Introduce maxParallelFileOps to limit both read and write operations, default to 20 and replaces maxParallelFileRead (#​4570)
Bug Fixes
  • Avoid including variables referenced from return statements that are never reached (#​4573)
Merge Requests
  • #​4570: Introduce maxParallelFileOps to limit parallel writes (@​lukastaegert)
  • #​4572: Document more ways to read package.json in ESM (@​berniegp)
  • #​4573: Do not include unused return expressions (@​lukastaegert)

v2.76.0

Compare Source

2022-07-08

Features
  • Allow setting a sourcmapBaseUrl for absolute paths in sourcemaps (#​4527)
Bug Fixes
  • Support absolute CLI plugin paths on Windows (#​4533)
Merge Requests
  • #​4527: Add sourcemapBaseUrl option (@​nickgarlis)
  • #​4533: Add support for absolute plugin paths (@​ygoe)
  • #​4538: chore: Included githubactions in the dependabot config (@​naveensrinivasan)
  • #​4546: Adapt Node versions on CI to prepare for v3 (@​lukastaegert)
  • #​4556: Improve error message for invalid patterns (@​DysphoricUnicorn)
  • #​4559: Update dependencies (@​lukastaegert)
  • #​4560: Bump peter-evans/create-or-update-comment from 1 to 2 (@​dependabot)
  • #​4561: Bump peter-evans/find-comment from 1 to 2 (@​dependabot)
  • #​4562: Bump codecov/codecov-action from 1 to 3 (@​dependabot)

v2.75.7

Compare Source

2022-06-20

Bug Fixes
  • Mark Array.prototype.group/groupToMap as side effect free. (#​4531)
Merge Requests
  • #​4523: chore: remove source map workaround, bump deps (@​dnalborczyk)
  • #​4525: Add regression tests for instanceof (@​lukastaegert)
  • #​4528: chore: Set permissions for GitHub actions (@​naveensrinivasan)
  • #​4531: fix: rename Array.prototype.group/groupToMap (@​dnalborczyk)
  • #​4535: chore: bump resolve from 1.22.0 to 1.22.1 (@​pos777)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, check this box

This MR has been generated by Renovate Bot.

Edited Apr 27, 2023 by Renovate
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: renovate/rollup-3.x