2023-01-28
Features2023-01-26
Features2023-01-20
Bug Fixes2023-01-12
FeaturesresolvedBy
field to ResolvedId
(@TrickyPi)2023-01-02
Bug Fixes2022-12-28
Featuresversion
property to plugin type (#4771)2022-12-23
Bug Fixescache: false
(#4762)2022-12-22
Features2022-12-17
Bug FixesRollupWarning.cause
compatible with Error.cause
(#4757)2022-12-13
Bug Fixes.exec
and .test
for included stateful regular expressions (#4742)2022-12-11
Bug Fixesthis.getFileName
no longer returns a placeholder as soon as hash placeholders have been resolved (#4747)2022-12-10
Bug Fixes2022-12-09
Bug Fixes2022-12-08
Features.test
and .exec
on regular expressions as side effects (#4737)2022-12-05
Featuresthis.getModuleInfo
with information about exports (#4731)exports
and exportedBindings
to Module
class (@TrickyPi)2022-12-01
Bug Fixes2022-11-27
Featurestreeshake.manualPureFunctions
to override static analysis for explicit function names (#4718)this.load
without awaiting its result (#4725)2022-11-22
FeaturesObject.freeze
calls on object literals (#4720)2022-11-12
FeaturesBuffer
(#4712)Buffer
with string
assets (#4712)perf: true
(#4707)2022-11-01
Bug Fixes2022-10-31
Bug Fixesimport.meta.url
(#4693)2022-10-18
Bug Fixesnew.target
with import.meta
(#4679)2022-10-16
Bug Fixes2022-10-15
Features2022-10-12
Features2022-10-12
Bug Fixes2022-10-11
Breaking Changes General Changes@rollup/browser
(#4593)node:
prefix for imports of builtin modules (#4596)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()
resolveAssetUrl
plugin hook has been removed: use resolveFileUrl
assetReferenceId
or chunkReferenceId
parameters to resolveFileUrl
treeshake.pureExternalModules
option has been removed: use treeshake.moduleSideEffects: 'no-external'
true
or false
for output.interop
. As a replacement for true
, you can use "compat"isAsset
flag in the bundletype: "asset"
fieldinlineDynamicImports
as part of the input options: use output. inlineDynamicImports
manualChunks
as part of the input options: use output. manualChunks
maxParallelFileReads
: use `maxParallelFileOpsoutput.preferConst
: use output.generatedCode.constBindings
output.dynamicImportFunction
: use the renderDynamicImport
plugin hookoutput.namespaceToStringTag
: use output.generatedCode.symbols
preserveModules
as part of the input options: use output. preserveModules
this.moduleIds
in plugins: use this.getModuleIds()
this.getModuleInfo(...).hasModuleSideEffects
in plugins: use this.getModuleInfo(...).moduleSideEffects
--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)rollup/dist/*
can only be required using their file extension (#4581)loadConfigFile
helper now has a named export of the same name instead of a default export (#4581)string
(#4644)import(…)
in commonjs output unless output.dynamicImportInCjs
is set to false (#4647)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)[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)[ext]
, [extName]
and [assetExtName]
placeholders are no longer supported when preserving modules (#4565)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)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)output.generatedCode.reservedNamesAsProps
to no longer quote properties like default
by default (#4568)preserveEntrySignatures
to "exports-only" so that by default, empty facades for entry chunks are no longer created (#4576)output.interop
to "default" to better align with NodeJS interop (#4611)output.esModule
to "if-default-prop", which only adds __esModule when the default export would be a property (#4611)output.systemNullSetters
to true
, which requires at least SystemJS 6.3.3 (#4649)renderChunk
should make sure to update ChunkInfo.imports/importedBindings/exports
accordingly (#4543)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)output.banner/footer/intro/outro
are now called per-chunk with some chunk information (#4543)renderChunk
(#4543)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)perf
option will now collect (synchronous) timings for all plugin hooks, not just a small selection (#4566)name: RollupError
now to make clearer that those are custom error types (#4579)generateBundle
and sourcemap files are available as regular assets (#4605)__esModule
marker to the bundle if there is a default export that is rendered as a property (#4611)foo[Symbol.toStringTag]
to "Module" if foo is a namespace (#4611)--bundleConfigAsCjs
which will force the configuration to be bundled to CommonJS (#4621)output.externalImportAssertions
option allows to turn off emission of import assertions (#4646)output.dynamicImportInCjs
to control if dynamic imports are emitted as import(…)
or wrapped require(…)
when generating commonjs output (#4647)renderChunk
, e.g. minification, into account (#4543)2022-09-22
Bug Fixes2022-08-31
Featuresamd.forceJsExtensionForImports
to enforce using .js
extensions for relative AMD imports (#4607)2022-08-19
Bug Fixes2022-08-14
Features2022-08-11
Bug Fixes2022-07-27
Bug Fixes2022-07-26
Bug Fixes2022-07-15
FeaturesmaxParallelFileOps
to limit both read and write operations, default to 20 and replaces maxParallelFileRead
(#4570)2022-07-08
FeaturessourcmapBaseUrl
for absolute paths in sourcemaps (#4527)2022-06-20
Bug Fixes2022-06-07
Bug Fixes2022-06-01
Bug Fixes2022-05-31
Bug Fixes2022-05-29
Bug Fixes2022-05-28
Pull Requests2022-05-27
Features.trim()
on template literals a side effect (#4511)2022-05-19
Bug Fixes2022-05-19
Features2022-05-13
Features2022-05-07
Bug Fixes2022-05-05
Features2022-04-30
Bug Fixes2022-04-30
FeaturesObject.hasOwn
as pure (#4482)git.io
in the issue template (@SukkaW)2022-04-15
Bug Fixes2022-03-14
Bug Fixes2022-03-07
FeatureswatchChange
and closeWatcher
hooks asynchronous and make Rollup wait for these hooks before continuing (#4427)watchChange
but display them properly (#4427)2022-03-06
Bug FixesObject.entries
and Object.fromEntries
as pure (#4429)2022-03-04
Bug Fixes2022-03-02
Featuresoutput.generatedCode.symbols
to control the usage of Symbols in Rollup-generated code (#4378)output.namespaceToStringTag
in favor of output.generatedCode.symbols
(#4378)./
and ../
as external dependencies (#4419)2022-02-22
FeaturesshouldTransformCachedModule
(#4414)2022-02-18
Bug Fixes2022-02-10
Bug Fixes2022-02-07
Bug Fixes2022-02-02
FeaturesmoduleSideEffects
at any time during the build (#4379)ModuleInfo.hasModuleSideEffects
in favour of ModuleInfo.moduleSideEffects
(#4379)2022-01-25
Bug Fixes2022-01-22
Featuresthis.load
(#4358)2022-01-21
Featuresthis.load
(#4354)perf: true
(#4357)2022-01-14
Featuresmeta
from the resolveId hook (#4347)2022-01-04
Featuresthis.load
(#4320)--watch
is missing (#4335)2021-12-24
Features2021-11-30
Bug Fixes2021-11-22
Bug Fixes2021-11-11
Featuresthis.load
context function to load, transform and parse modules without adding them to the graph (#4234)2021-11-01
Features