rollup
Version:
Next-generation ES module bundler
1,142 lines (834 loc) • 161 kB
Markdown
# rollup changelog
## 2.7.4
*2020-04-29*
### Bug Fixes
* Fix an issue where wrong variable names were used when preserving modules (#3521)
### Pull Requests
* [#3521](https://github.com/rollup/rollup/pull/3521): Fix and improve default export alias logic (@lukastaegert)
## 2.7.3
*2020-04-27*
### Bug Fixes
* Do not access `__proto__` when running Rollup (#3518)
### Pull Requests
* [#3518](https://github.com/rollup/rollup/pull/3518): use acorn-class-fields and acorn-static-class-features from npm (@nitsky)
## 2.7.2
*2020-04-22*
### Bug Fixes
* Prevent an infinite loop when creating separate manual chunks with circular dependencies (#3510)
* Do not fail if "super" is used in the definition of a class field (#3511)
* Throw if a plugin tries to emit a file with an absolute Windows path (#3509)
### Pull Requests
* [#3509](https://github.com/rollup/rollup/pull/3509): Ban emitFile via absolute paths on Windows OS (@SASUKE40)
* [#3510](https://github.com/rollup/rollup/pull/3510): Do not fail for circular imports between manual chunks (@lukastaegert)
* [#3511](https://github.com/rollup/rollup/pull/3511): Support "super" in class fields (@lukastaegert)
## 2.7.1
*2020-04-21*
### Bug Fixes
* Use correct path for dynamic imports if `output.paths` is used (#3508)
### Pull Requests
* [#3508](https://github.com/rollup/rollup/pull/3508): Respect output.paths in dynamic imports (@lukastaegert)
## 2.7.0
*2020-04-21*
### Features
* Add `preserveEntrySignatures` option to control how exports of entry points are handled (#3498)
* Add `preserveSignature` flag to `this.emitFile` to control exports of emitted chunks (#3498)
* Add `output.minifyInternalExports` option to control if internal exports are minified (#3498)
### Pull Requests
* [#3498](https://github.com/rollup/rollup/pull/3498): Add option to configure if entry signatures are preserved (@lukastaegert)
## 2.6.1
*2020-04-12*
### Bug Fixes
* Close watch mode when stdin closes in a non-TTY environment (#3493)
### Pull Requests
* [#3493](https://github.com/rollup/rollup/pull/3493): Ensure --watch mode exits correctly when stdin is closed (@jakesgordon)
## 2.6.0
*2020-04-10*
### Features
* Allow regular expressions to declare external modules (#3482)
### Pull Requests
* [#3482](https://github.com/rollup/rollup/pull/3482): Allow regular expressions in config.external (@johannes-z)
## 2.5.0
This version is identical to 2.4.0
## 2.4.0
*2020-04-09*
### Features
* Add support for most private and public class field features (#3488)
### Bug Fixes
* Do not replace `this` with `undefined` in class field definitions (#3488)
### Pull Requests
* [#3488](https://github.com/rollup/rollup/pull/3488): Rollup class fields support (@guybedford and @lukastaegert)
## 2.3.5
*2020-04-09*
### Bug Fixes
* Never remove labels when tree-shaking is disabled (#3492)
### Pull Requests
* [#3492](https://github.com/rollup/rollup/pull/3492): Always use a new inclusion context when including declarations of variables, always inlcude labels when not treeshaking (@lukastaegert)
## 2.3.4
*2020-04-07*
### Bug Fixes
* Handle re-exporting synthetic exports from entry-points (#3319)
* Fix cross-chunk imports of synthetic exports (#3319)
* Handle namespace objects that contain re-exported synthetic namespaces (#3319)
### Pull Requests
* [#3319](https://github.com/rollup/rollup/pull/3319): Handle re-exports of synthetic named exports (@manucorporat and @lukastaegert)
## 2.3.3
*2020-04-04*
### Bug Fixes
* Add external namespaces to dynamic namespace objects (#3474)
### Pull Requests
* [#3474](https://github.com/rollup/rollup/pull/3474): Support external star exports on namespace objects (@guybedford)
## 2.3.2
*2020-03-31*
### Bug Fixes
* Only warn but do not fail build when a namespace is called as a function (#3475)
* Make sure pre-existing sourcemap comments are also removed when rebuilding using the cache (#3476)
### Pull Requests
* [#3475](https://github.com/rollup/rollup/pull/3475): Call namespace error as a warning (@guybedford)
* [#3476](https://github.com/rollup/rollup/pull/3476): Store locations for removed comments in cache (@lukastaegert)
## 2.3.1
*2020-03-30*
### Bug Fixes
* Do not fail if the config file returns an function returning a Promise (#3472)
### Pull Requests
* [#3472](https://github.com/rollup/rollup/pull/3472): Fix support for async functions as config (@lukastaegert)
## 2.3.0
*2020-03-29*
### Features
* Do not transpile config files with `.mjs` extension in Node 13+ or `.cjs` extension in any Node version and load them appropriately (#3445)
* Extract helper to load a config file the way rollup does it via `rollup/dist/loadConfigFile` (#3445)
### Bug Fixes
* Keep watching the config file if an error occurs during initial load in watch node (#3445)
* Add a helpful error message when using a transpiled config in a repository with "type": "module" (#3445)
### Pull Requests
* [#3445](https://github.com/rollup/rollup/pull/3445): Support native ESM configs in Node 13, support untranspiled configs (@lukastaegert)
* [#3468](https://github.com/rollup/rollup/pull/3468): Don't use esm output format alias in the documentation (@vsn4ik)
## 2.2.0
*2020-03-24*
### Features
* Add `renderDynamicImport` hook to rewrite dynamic import expressions (#3449)
* Add information about dynamically imported modules to `this.getModuleInfo` (#3449)
### Bug Fixes
* Make file emission work with Uin8Array sources when using Rollup in the browser (#3452)
* Fix types to allow watch to accept an array of configs (#3453)
* Do not strip `.js` extensions from AMD imports when the import is a user-supplied replacement for a non-resolvable dynamic import target (#3453)
### Pull Requests
* [#3449](https://github.com/rollup/rollup/pull/3449): Add hook to rewrite dynamic import expressions (@lukastaegert)
* [#3452](https://github.com/rollup/rollup/pull/3452): Avoid the assumption of Buffer in browser envs (@JoviDeCroock)
* [#3453](https://github.com/rollup/rollup/pull/3453): fix types since watch accepts single or array config (@lukeed)
* [#3456](https://github.com/rollup/rollup/pull/3456): fix SystemJS url in tutorial (@guybedford)
## 2.1.0
*2020-03-18*
### Features
* Allow specifying an importer when emitting files to resolve relative ids (#3442)
### Pull Requests
* [#3442](https://github.com/rollup/rollup/pull/3442): Add optional `importer` parameter to `this.emitFile` (@lukastaegert)
## 2.0.6
*2020-03-13*
### Bug Fixes
* Do not use file names from different outputs when generating sourcemaps using the `dir` option (#3440)
### Pull Requests
* [#3440](https://github.com/rollup/rollup/pull/3440): Use correct file names when writing sourcemaps for multiple outputs (@lukastaegert)
## 2.0.5
*2020-03-12*
### Bug Fixes
* Fix an issue where conditional statements would assume they have the wrong test value (#3438)
### Pull Requests
* [#3438](https://github.com/rollup/rollup/pull/3438): Make sure logical expressions always check the left argument for side-effects (@lukastaegert)
## 2.0.4
*2020-03-12*
### Bug Fixes
* Avoid conflicts between namespace imports when preserving modules (#3435)
### Pull Requests
* [#3435](https://github.com/rollup/rollup/pull/3435): Deconflict multiple `index` imports for ES format using nested export star statements (@kamranayub)
## 2.0.3
*2020-03-10*
### Bug Fixes
* Add type for this.getCombinedSourcemap to transform context (#3431)
### Pull Requests
* [#3377](https://github.com/rollup/rollup/pull/3377): Switch to yargs-parser lib (@jamesgeorge007)
* [#3426](https://github.com/rollup/rollup/pull/3426): Use strict types with PluginDriver (@NotWoods)
* [#3431](https://github.com/rollup/rollup/pull/3431): Add missing type declaration for getCombinedSourcemap (@Anidetrix)
* [#3432](https://github.com/rollup/rollup/pull/3432): Detail how return values from `augmentChunkHash` are used (@jakearchibald)
## 2.0.2
*2020-03-07*
### Bug Fixes
* Make sure the ESM import still works (#3430)
### Pull Requests
* [#3430](https://github.com/rollup/rollup/pull/3430): Fix conditional exports again (@lukastaegert)
## 2.0.1
*2020-03-07*
### Bug Fixes
* Reenable importing rollup in Node 13.0 - 13.7 (#3428)
### Pull Requests
* [#3428](https://github.com/rollup/rollup/pull/3428): Fix conditional exports in Node 13.0 - 13.7 (@lukastaegert)
## 2.0.0
*2020-03-06*
### Breaking Changes
* Rollup now requires at least Node 10 to run, or a sufficiently modern browser (#3346)
* The file structure of Rollup's ESM builds has changed:
- The main ESM entry point is now at `rollup/dist/es/rollup.js` instead of `rollup/dist/rollup.es.js`
- The ESM browser build is at `rollup/dist/es/rollup.browser.js` instead of `rollup/dist/rollup.browser.es.js`
In general, the ESM builds now follow the same naming scheme as the CJS builds but are located in the `rollup/dist/es` subfolder instead of `rollup/dist` (#3391)
* The "watch.chokidar" option no longer accepts a `boolean` value but only an object of parameters that is passed to the bundled Chokidar instance. Chokidar installations by the user will be ignored in favour of the bundled instance (#3331)
* Modules that are completely tree-shaken will no longer be listed as part of any chunks in `generateBundle`
* The `experimentalOptimizeChunks` and `chunkGroupingSize` options have been removed
* [acorn](https://github.com/acornjs/acorn) plugins can only be used if they accept a passed-in acorn instance instead of importing it themselves. See https://github.com/acornjs/acorn/pull/870#issuecomment-527339830 for what needs to be done to make plugins compatible that do not support this yet (#3391)
* Emitted chunks now have the TypeScript type `Uint8Array` instead of `Buffer`. A `Buffer` can still be used, though (#3395)
* The TypeScript types no longer use ESTree types for AST nodes but a very generic type that does not contain information specific to certain node types (#3395)
* The signature of the `writeBundle` plugin hook has been changed to match `generateBundle`: The bundle object is now passed as second parameter instead of first and the first parameter is the output options (#3361)
* The following plugin hooks have been removed:
- ongenerate: use `generateBundle` instead
- onwrite: use `writeBundle` instead
- transformBundle: use `renderChunk` instead
- transformChunk: use `renderChunk` instead
* You can no longer access `this.watcher` on the plugin context.
* The `transform` hook can no longer return `dependencies`.
* The `treeshake.pureExternalModules` option will now show a deprecation warning when used: use `treeshake.moduleSideEffects: 'no-external'` instead
* Using `import.meta.ROLLUP_ASSET_URL_<..>` and `import.meta.ROLLUP_CHUNK_URL_<..>` in code will now show warnings: use `import.meta.ROLLUP_FILE_URL_<..>` instead
* The `resolveAssetUrl` hook will now show a deprecation warning when used: use `resolveFileUrl` instead
* The following plugin context functions will show warnings when used:
- `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`
* Directly adding properties to the bundle object in the `generateBundle` is deprecated will show a warning (removing properties is allowed, though): Use `this.emitFile`
* Accessing `chunk.isAsset` on the bundle is deprecated: Use `chunk.type === 'asset'` instead
* The error code for a missing `name` property when targeting UMD has been changed to `MISSING_NAME_OPTION_FOR_IIFE_EXPORT` to emphasize this is needed for the IIFE part of UMD (#3393)
### Features
* Rollup now bundles [Chokidar](https://github.com/paulmillr/chokidar) for a better watch experience (#3331)
* Rollup now bundles [acorn](https://github.com/acornjs/acorn) again, removing its only external dependency (#3391)
* Do not consider empty imports from side-effect-free modules for chunking and hoist side-effect imports if necessary (#3369)
* Rollup can now be imported as an ES module in Node via `import {rollup} from 'rollup'`. Note that this relies on Node's experimental [conditional package exports](https://nodejs.org/dist/latest-v13.x/docs/api/esm.html#esm_conditional_exports) feature and is therefore itself experimental (#3391)
* `systemjs` can be used as format alias for `system` (#3381)
### Bug Fixes
* Unknown output options now trigger a warning when using the JavaScript API (#3352)
* Rollup will no longer introduce Node types into TypeScript projects that do not use them (#3395)
* Generate correct sourcemaps when tree-shaking occurs in a multi-file bundle (#3423)
### Pull Requests
* [#3331](https://github.com/rollup/rollup/pull/3331): Bundle Chokidar (@lukastaegert)
* [#3343](https://github.com/rollup/rollup/pull/3343): Remove experimentalOptimizeChunks (@lukastaegert)
* [#3346](https://github.com/rollup/rollup/pull/3346): Update minimum required Node version to 10 (@lukastaegert)
* [#3352](https://github.com/rollup/rollup/pull/3352): Remove active deprecations (@lukastaegert)
* [#3361](https://github.com/rollup/rollup/pull/3361): Change writeBundle signature to match generateBundle (@lukastaegert)
* [#3369](https://github.com/rollup/rollup/pull/3369): Avoid empty imports from side-effect-free chunks (@lukastaegert)
* [#3381](https://github.com/rollup/rollup/pull/3381): Rename esm to es everywhere, add systemjs alias (@lukastaegert)
* [#3391](https://github.com/rollup/rollup/pull/3391): Bundle acorn, allow importing Rollup as Node ES module, update dependencies (@lukastaegert)
* [#3393](https://github.com/rollup/rollup/pull/3393): Better error code for name-less umd bundle (@rail44)
* [#3395](https://github.com/rollup/rollup/pull/3395): Remove `@types` dependencies (@lukastaegert)
* [#3423](https://github.com/rollup/rollup/pull/3423): Update magic-string and fix sourcemaps (@lukastaegert)
## 1.32.1
*2020-03-06*
### Bug Fixes
* Handle default export detection for AMD and IIFE externals that do not have a prototype (#3420)
* Handle missing whitespace when the else branch of an if-statement is simplified (#3421)
* Mention the importing module when reporting errors for missing named exports (#3401)
* Add code to warning for missing output.name of IIFE bundles (#3372)
### Pull Requests
* [#3372](https://github.com/rollup/rollup/pull/3372): Add warning code for missing output.name of IIFE bundle that has export (@rail44)
* [#3401](https://github.com/rollup/rollup/pull/3401): Missing exports errors now print the importing module (@timiyay)
* [#3418](https://github.com/rollup/rollup/pull/3418): Structure lifecycle hooks, add links to build time hooks (@lukastaegert)
* [#3420](https://github.com/rollup/rollup/pull/3420): Update generated code of getInteropBlock() to work with null prototype objects (@jdalton)
* [#3421](https://github.com/rollup/rollup/pull/3421): Avoid invalid code when "else" branch is simplified (@lukastaegert)
## 1.32.0
*2020-02-28*
### Features
* Allow adding plugins on the command line via `--plugin <plugin>` (#3379)
### Pull Requests
* [#3379](https://github.com/rollup/rollup/pull/3379): introduce CLI --plugin support (@kzc)
* [#3390](https://github.com/rollup/rollup/pull/3390): fix typo: this.addWatchfile (@mistlog)
* [#3392](https://github.com/rollup/rollup/pull/3392): Bump codecov from 3.6.1 to 3.6.5
* [#3404](https://github.com/rollup/rollup/pull/3404): Update resolveFileUrl docs (@jakearchibald)
## 1.31.1
*2020-02-14*
### Bug Fixes
* Make sure errored files are always re-evaluated in watch mode to avoid an issue in the typescript plugin (#3388)
### Pull Requests
* [#3366](https://github.com/rollup/rollup/pull/3366): Correct spelling minifaction to minification (@VictorHom)
* [#3371](https://github.com/rollup/rollup/pull/3371): Adjust bug template to mention REPL.it (@lukastaegert)
* [#3388](https://github.com/rollup/rollup/pull/3388): Run transform hooks again in watch mode on files that errored (@lukastaegert)
## 1.31.0
*2020-01-31*
### Features
* Always disable tree-shaking for asm.js functions to maintain semantics (#3362)
### Pull Requests
* [#3362](https://github.com/rollup/rollup/pull/3362): Preserve asm.js code (@lukastaegert)
## 1.30.1
*2020-01-27*
### Bug Fixes
* Do not mistreat static entgry points as dynamic ones when chunking (#3357)
* Resolve a crash when chunking circular dynamic imports (#3357)
### Pull Requests
* [#3357](https://github.com/rollup/rollup/pull/3357): Resolve issues with circular dynamic entries (@lukastaegert)
## 1.30.0
*2020-01-27*
### Features
* Do not split chunks when dynamically imported modules import modules that are already loaded by all dynamic importers (#3354)
* Add `hoistTransitiveImports` option to disable hoisting imports of static dependencies into entry chunks (#3353)
### Bug Fixes
* Make sure polyfills are always loaded first when each static entry point contains them as first import (#3354)
### Pull Requests
* [#3353](https://github.com/rollup/rollup/pull/3353): Add option to avoid hoisting transitive imports (@lukastaegert)
* [#3354](https://github.com/rollup/rollup/pull/3354): Improve chunking algorithm for dynamic imports (@tjenkinson and @lukastaegert)
## 1.29.1
*2020-01-21*
### Bug Fixes
* Avoid crashes for circular reexports when named exports cannot be found (#3350)
### Pull Requests
* [#3335](https://github.com/rollup/rollup/pull/3335): Fix typo (@robbinworks)
* [#3342](https://github.com/rollup/rollup/pull/3342): Remove ":" from test file names for Windows and update dependencies (@lukastaegert)
* [#3350](https://github.com/rollup/rollup/pull/3350): Properly handle circular reexports (@lukastaegert)
## 1.29.0
*2020-01-08*
### Features
* Enable top-level await by default (#3089)
* Add typings for watch events (#3302)
### Bug Fixes
* Deconflict files that would conflict only on a case-insensitive OS (#3317)
* Do not fail in certain scenarios where a logical expression inside a sequence expression was being directly included (#3327)
### Pull Requests
* [#3089](https://github.com/rollup/rollup/pull/3089): Move top-level await out of experimental (@guybedford)
* [#3302](https://github.com/rollup/rollup/pull/3302): Adds type definitions for RollupWatcher events (@NotWoods)
* [#3317](https://github.com/rollup/rollup/pull/3317): Fix module id conflict on a case insensitive OS (@yesmeck)
* [#3327](https://github.com/rollup/rollup/pull/3327): Handle deoptimizations while a node is being included (@lukastaegert)
## 1.28.0
*2020-01-04*
### Features
* Allow piping in stdin via the command line interface (#3312, #3290)
* Allow plugins to mark modules as having syntheticNamedExports for e.g. better CJS interoperability (#3295)
* Ignore variable reassignments in dead code when tree-shaking to remove more unneeded code (#3212)
### Bug Fixes
* Properly respect tree-shaken code when generating sourcemaps (#3318)
### Pull Requests
* [#3212](https://github.com/rollup/rollup/pull/3212): Handle assignments in dead code (@tjenkinson)
* [#3290](https://github.com/rollup/rollup/pull/3290): Implement stdin input with optional "-" as the file name (@kzc)
* [#3295](https://github.com/rollup/rollup/pull/3295): Add syntheticNamedExports (@manucorporat)
* [#3300](https://github.com/rollup/rollup/pull/3300): Add note about setting `types` in tsconfig file (@tjenkinson)
* [#3303](https://github.com/rollup/rollup/pull/3303): Use ! to assert not-null in TypeScript (@NotWoods)
* [#3312](https://github.com/rollup/rollup/pull/3312): Implement stdin input (@lukastaegert)
* [#3318](https://github.com/rollup/rollup/pull/3318): Update magic-string and other dependencies (@lukastaegert)
## 1.27.14
*2019-12-22*
### Bug Fixes
* Update references to official rollup plugins in error messages (#3297, #3298)
### Pull Requests
* [#3286](https://github.com/rollup/rollup/pull/3286): Update link to JavaScript API documentation (@romankaravia)
* [#3294](https://github.com/rollup/rollup/pull/3294): Update deprecated references to the node-resolve plugin in the documentation (@Vlad-Shcherbina)
* [#3297](https://github.com/rollup/rollup/pull/3297): Update references to rollup-plugin-json (@cprecioso)
* [#3298](https://github.com/rollup/rollup/pull/3298): Update references to official rollup plugins (@cprecioso)
## 1.27.13
*2019-12-14*
### Bug Fixes
* Do not truncate environment variable values at the first colon when using the `--environment` option (#3283)
### Pull Requests
* [#3283](https://github.com/rollup/rollup/pull/3283): Allow environment variables to contain colons (@tlaverdure)
## 1.27.12
*2019-12-13*
### Bug Fixes
* Prevent invalid AMD or SystemJS code when accessing `import.meta` (#3282)
### Pull Requests
* [#3282](https://github.com/rollup/rollup/pull/3282): Always make "module" available for SystemJS and AMD formats if `import.meta` is accessed directly (@lukastaegert)
## 1.27.11
*2019-12-12*
### Bug Fixes
* Resolve a crash due to an infinite loop (#3280)
### Pull Requests
* [#3280](https://github.com/rollup/rollup/pull/3280): Prevent infinite deoptimizations (@lukastaegert)
## 1.27.10
*2019-12-11*
### Bug Fixes
* Keep track of function return values in more situations (#3278)
### Pull Requests
* [#3278](https://github.com/rollup/rollup/pull/3278): Avoid some unnecessary value tracking deoptimizations (@lukastaegert)
## 1.27.9
*2019-12-07*
### Bug Fixes
* Fix an issue where reexports could be missing when preserving modules (#3273)
* Allow turning of color output via NO_COLOR or FORCE_COLOR=0 environment variables (#3272)
### Pull Requests
* [#3272](https://github.com/rollup/rollup/pull/3272): Support either NO_COLOR or FORCE_COLOR=0 to turn off color (@kikonen)
* [#3273](https://github.com/rollup/rollup/pull/3273): Make sure that indirectly reexported modules also become chunk dependencies when preserving modules(@lukastaegert)
## 1.27.8
*2019-12-02*
### Bug Fixes
* Deoptimize objects when a method is called on them to make sure modifications via "this" are observed (#3266)
### Pull Requests
* [#3266](https://github.com/rollup/rollup/pull/3266): Workaround for various object literal mutation bugs (@kzc)
## 1.27.7
*2019-12-01*
### Bug Fixes
* Fix a scenario where a reassignments to computed properties were not tracked (#3267)
### Pull Requests
* [#3267](https://github.com/rollup/rollup/pull/3267): Fix incomplete computed property deoptimization (@lukastaegert)
## 1.27.6
*2019-11-30*
### Bug Fixes
* Use "auto" export mode by default for all modules when preserving modules (#3265)
* Observe "output.exports" when preserving modules and warn for mixed exports if necessary (#3265)
### Pull Requests
* [#3265](https://github.com/rollup/rollup/pull/3265): Use export mode "auto" by default when preserving modules (@lukastaegert)
## 1.27.5
*2019-11-25*
### Bug Fixes
* Make sure namespaces for inlined dynamic imports are treated as variable accesses when deconflicting (#3256)
### Pull Requests
* [#3256](https://github.com/rollup/rollup/pull/3256): Avoid name conflicts when inlining dynamic imports nested in functions (@lukastaegert)
* [#3257](https://github.com/rollup/rollup/pull/3257): Update dependencies (@lukastaegert)
## 1.27.4
*2019-11-22*
### Bug Fixes
* Aggregate circular dependency warnings in the CLI (#3249)
* Do not defer non-aggregated handlers in the CLI (#3249)
### Pull Requests
* [#3249](https://github.com/rollup/rollup/pull/3249): Fix broken Windows CLI tests (@lukastaegert)
* [#3251](https://github.com/rollup/rollup/pull/3251): Add installation as a separate header (@ashrith-kulai)
## 1.27.3
*2019-11-20*
### Bug Fixes
* Provide better warning when empty chunks are created in a code-splitting scenario (#3244)
### Pull Requests
* [#3244](https://github.com/rollup/rollup/pull/3244): Clearer empty chunk warning (@tjenkinson)
## 1.27.2
*2019-11-18*
### Bug Fixes
* Fix an issue where live bindings were not working correctly when using `+=` in SystemJS (#3242)
### Pull Requests
* [#3242](https://github.com/rollup/rollup/pull/3242): Export updated assignments when using shorthand update assignment expressions in SystemJS (@lukastaegert)
## 1.27.1
*2019-11-18*
### Bug Fixes
* Fix an issue where code after a switch-statement with removed cases was erroneously not included (#3241)
### Pull Requests
* [#3237](https://github.com/rollup/rollup/pull/3237): make `acornOptions` optional in `parse()` in docs (@tjenkinson)
* [#3240](https://github.com/rollup/rollup/pull/3240): Update dependencies and fix vulnerability (@lukastaegert)
* [#3241](https://github.com/rollup/rollup/pull/3241): Do not truncate after switch-statement with removed case (@lukastaegert)
## 1.27.0
*2019-11-12*
### Features
* Add support for output-specific plugins (#3218)
* Reenable parallel output processing when using the CLI (#3218)
* Warn if files are emitted that would overwrite previously emitted files (#3218)
### Bug Fixes
* Do not overwrite files emitted in other builds if outputs are generated in parallel (#3218)
### Pull Requests
* [#3218](https://github.com/rollup/rollup/pull/3218): Per output plugins (@lukastaegert)
## 1.26.5
*2019-11-11*
### Bug Fixes
* Fix a regression where it was no longer to pass a certain option format to generate (#3223)
### Pull Requests
* [#3223](https://github.com/rollup/rollup/pull/3223): Allow passing input options to output (@lukastaegert)
## 1.26.4
*2019-11-09*
### Bug Fixes
* Keep watching known files after a plugin error during the initial build (#3219)
### Pull Requests
* [#3216](https://github.com/rollup/rollup/pull/3216): Fix small typo (@kaisermann)
* [#3217](https://github.com/rollup/rollup/pull/3217): Update dependencies and fix security vulnerability (@lukastaegert)
* [#3219](https://github.com/rollup/rollup/pull/3219): Also recover from plugin errors during the initial build (@lukastaegert)
## 1.26.3
*2019-11-02*
### Bug Fixes
* Work around an incompatibility with rollup-plugin-dts (#3211)
### Pull Requests
* [#3211](https://github.com/rollup/rollup/pull/3211): Do no fail if the source attribute is `undefined` in an unused named export (@lukastaegert)
## 1.26.2
*2019-10-31*
### Bug Fixes
* Do not create invalid code when using `treeshake: false` and star re-exports (#3209)
### Pull Requests
* [#3209](https://github.com/rollup/rollup/pull/3209): Also remove export-all declarations when not tree-shaking (@lukastaegert)
## 1.26.1
*2019-10-31*
### Bug Fixes
* Prevent an issue where outputs would overwrite files emitted by other outputs (#3201)
* Do not throw an error if the config file does not have a .js extension (#3204)
### Pull Requests
* [#3201](https://github.com/rollup/rollup/pull/3201): Make the CLI run generate/output in serial (@marijnh)
* [#3204](https://github.com/rollup/rollup/pull/3204): support all config file extensions (.js,.mjs,...) (@arlac77)
## 1.26.0
*2019-10-27*
### Features
* Only warn when no output is provided for an IIFE bundle but still produce valid code (#3181)
* Support reexporting namespaces as a binding (#3193)
* Switch from hash.js to crypto for hashing in the Node build for better performance and support for very large assets (#3194)
### Bug Fixes
* Correctly handle chunks reexporting the same namespace as two different bindings (#3193)
### Pull Requests
* [#3181](https://github.com/rollup/rollup/pull/3181): Remove the need to provide an output name for IIFE bundles (@bterrier)
* [#3193](https://github.com/rollup/rollup/pull/3193): Add support for "export * as name from …" (@lukastaegert)
* [#3194](https://github.com/rollup/rollup/pull/3194): Add support for large assets (> 100 MB) (@SebastianNiemann)
## 1.25.2
*2019-10-23*
### Bug Fixes
* Improve performance of bundled UMD code by adding additional parentheses to enforce eager parsing (#3183)
* Improve types to tolerate passing a Rollup config with multiple outputs to `rollup.rollup` (#3184)
### Pull Requests
* [#3183](https://github.com/rollup/rollup/pull/3183): Add parentheses to factory function of UMD bundles (@ajihyf)
* [#3184](https://github.com/rollup/rollup/pull/3184): RollupOptions accept output as array (@imcotton)
## 1.25.1
*2019-10-20*
### Bug Fixes
* Handle a situation where code was not included after a switch statement (#3178)
* Handle a situation where code was not included after a do-while loop (#3180)
* Do not fail if different outputs emit the same file (#3175)
* Give access to the original acorn error for parse errors (#3176)
### Pull Requests
* [#3175](https://github.com/rollup/rollup/pull/3175): Disable errors for duplicate emitted file names (@marijnh)
* [#3176](https://github.com/rollup/rollup/pull/3176): Add original parser error to rollup error; Update tests (@gribnoysup)
* [#3178](https://github.com/rollup/rollup/pull/3178): Fix switch case not being included correctly (@lukastaegert)
* [#3179](https://github.com/rollup/rollup/pull/3179): Update dependencies (@lukastaegert)
* [#3180](https://github.com/rollup/rollup/pull/3180): Handle conditional breaks in do-while loops with unconditional return (@lukastaegert)
## 1.25.0
*2019-10-18*
### Features
* Remove try-catch if there is no side-effect in the try-block (#3166)
* Omit side-effect-free trailing cases in switch-statements (#3166)
* Remove unused labels (#3170)
### Bug Fixes
* Do not remove code after labeled statements that contain a throw or return if the label is used (#3170)
* Prevent invalid code when expressions are simplified that do not follow a white-space character (#3173)
* Do not remove continue statements inside switch statements (#3166)
* Prevent trailing empty lines when tree-shaking inside switch statements (#3166)
### Pull Requests
* [#3166](https://github.com/rollup/rollup/pull/3166): Better try statement tree shaking (@lukastaegert)
* [#3170](https://github.com/rollup/rollup/pull/3170): Handle optional control flow in labeled statements, remove unused labels (@lukastaegert)
* [#3173](https://github.com/rollup/rollup/pull/3173): Add missing spaces in certain statements and expressions to avoid invalid code (@lukastaegert)
## 1.24.0
*2019-10-15*
### Features
* Respect `break`, `continue`, `return` and `throw` when tree-shaking to detect dead code (#3153)
* Do treat treat hoisted function declarations as "unknown" when checking for call side-effects (#3153)
### Bug Fixes
* Make sure that unknown `import.meta` properties produce valid code in SystemJS (#3152)
* Make sure `treeshake.annotations: false` is respected for class instantiation (#3153)
* Check property access side-effects for class instantiation (#3153)
* Do not suppress break statements inside labeled statements (#3153)
### Pull Requests
* [#3152](https://github.com/rollup/rollup/pull/3152): Allow import.meta.* for systemjs format (@dmail)
* [#3153](https://github.com/rollup/rollup/pull/3153): Get rid of immutable.js and implement tree-shaking for broken control flow (@lukastaegert)
## 1.23.1
*2019-10-05*
### Bug Fixes
* Fix a regression where the node types had a specific minimal version (#3143)
### Pull Requests
* [#3143](https://github.com/rollup/rollup/pull/3143): Ensure that types packages have star version ranges (@lukastaegert)
## 1.23.0
*2019-10-03*
### Features
* Add placeholders for extensions when preserving modules (#3116)
### Pull Requests
* [#3116](https://github.com/rollup/rollup/pull/3116): Include extensions in preserveModules output filenames for scriptified assets (@Andarist)
* [#3142](https://github.com/rollup/rollup/pull/3142): Fix typo (@tu4mo)
## 1.22.0
*2019-09-29*
### Features
* Add a new "hidden" sourcemap type that generates the map files but omits the sourcemap comment (#3120)
* Generate more efficient code when using `namespaceToStringTag: true` (#3135)
* Make sure namespace objects do not have a prototype (#3136)
### Bug Fixes
* Do not ignore side-effectful iterators by always preserving for..of loops for now (#3132)
* Make sure `--context` is observed as a CLI option (#3134)
* Do not require specific versions for @types dependencies (#3131)
### Pull Requests
* [#3120](https://github.com/rollup/rollup/pull/3120): Generate sourcemaps but omit the comment (@rohitmohan96)
* [#3131](https://github.com/rollup/rollup/pull/3131): Use asterisk for @types/* dependencies (@frenzzy)
* [#3132](https://github.com/rollup/rollup/pull/3132): Preserve empty for...of loops (@imatlopez)
* [#3133](https://github.com/rollup/rollup/pull/3133): Update dependencies (@lukastaegert)
* [#3134](https://github.com/rollup/rollup/pull/3134): Wire up --context CLI flag (@tchetwin)
* [#3135](https://github.com/rollup/rollup/pull/3135): Remove Symbol polyfill in module namespaces (@mkubilayk)
* [#3136](https://github.com/rollup/rollup/pull/3136): Set null prototype on namespace objects (@rpamely)
## 1.21.4
*2019-09-16*
### Bug Fixes
* Recognize common browser globals (#3117)
* Do not treat "typeof <global>" as a side-effect (#3117)
### Pull Requests
* [#3117](https://github.com/rollup/rollup/pull/3117): Add browser globals to known globals and prevent "typeof" side-effects (@lukastaegert)
## 1.21.3
*2019-09-14*
### Bug Fixes
* Fix a regression where modifying a watched file did not trigger a rebuild (#3112)
### Pull Requests
* [#3112](https://github.com/rollup/rollup/pull/3112): Fix .addWatchFile() dependencies failing to invalidate in watch mode (@tivac)
## 1.21.2
*2019-09-09*
### Bug Fixes
* Fix wrong deprecation message to direct to `this.emitFile` instead of `this.emitAsset`
## 1.21.1
*2019-09-09*
### Bug Fixes
* Allow legacy plugins to still add assets directly to the bundle object (#3105)
### Pull Requests
* [#3105](https://github.com/rollup/rollup/pull/3105): Allow legacy plugins to still add assets directly to the bundle object (@lukastaegert)
## 1.21.0
*2019-09-08*
### Features
* Respect `output.entryFileNames` when preserving modules (#3088)
* Make accessing unknown globals a side-effect unless this is deactivated via `treeshake.unknownGlobalSideEffects` (#3068)
* Respect global objects when checking for pure global functions (#3068)
* Introduce a `type` to more easily distinguish chunks and assets in the output bundle (#3080)
### Bug Fixes
* Recover in watch mode when the initial build fails (#3081)
* Make sure `output.strict` is respected for SystemJS output (#3101)
### Pull Requests
* [#3068](https://github.com/rollup/rollup/pull/3068): Make accessing unknown globals a side-effect (@lukastaegert)
* [#3080](https://github.com/rollup/rollup/pull/3080): OutputBundle Tagged union with 'type = chunk|asset' (@askbeka)
* [#3081](https://github.com/rollup/rollup/pull/3081): Watch files onbuild, even if build fails (@mhkeller)
* [#3088](https://github.com/rollup/rollup/pull/3088): Add support for entryFileNames pattern used in combination with preserveModules option (@Andarist)
* [#3101](https://github.com/rollup/rollup/pull/3101): Remove 'use strict'; from systemjs when strict=false (@askbeka)
## 1.20.3
*2019-08-28*
### Bug Fixes
* Make sure file hashes change when a change of the naming pattern leads to a file name change of a dependency (#3083)
* Fix several issues where reexporting an external "default" export could lead to invalid or incorrect code (#3084)
### Pull Requests
* [#3078](https://github.com/rollup/rollup/pull/3078): Add github actions workflow config for windows (@shellscape)
* [#3083](https://github.com/rollup/rollup/pull/3083): Properly reflect dependency file names in hash (@lukastaegert)
* [#3084](https://github.com/rollup/rollup/pull/3084): Fix "default" reexport issues in non ESM/System formats (@lukastaegert)
## 1.20.2
*2019-08-25*
### Bug Fixes
* Avoid an issue where circular namespace reexports would crash Rollup (#3074)
### Pull Requests
* [#3077](https://github.com/rollup/rollup/pull/3077): Handle namespaces that reexport themselves (@lukastaegert)
## 1.20.1
*2019-08-22*
### Bug Fixes
* Fix an issue where variable names inside dynamic import expressions were not rendered correctly (#3073)
* Fix type definition to allow a single watcher config as well as an array (#3074)
### Pull Requests
* [#3073](https://github.com/rollup/rollup/pull/3073): Fix wrong variable name in import expression (@lukastaegert)
* [#3074](https://github.com/rollup/rollup/pull/3074): Fixes type definition on watch and Watcher constructor (@MicahZoltu)
## 1.20.0
*2019-08-21*
### Features
* Add augmentChunkHash plugin hook to be able to reflect changes in renderChunk in the chunk hash (#2921)
### Bug Fixes
* Do not mutate the acorn options object (#3051)
* Make sure the order of emitted chunks always reflects the order in which they were emitted (#3055)
* Do not hang when there are strings containing comment-like syntax in some scenarios (#3069)
### Pull Requests
* [#2921](https://github.com/rollup/rollup/pull/2921): Add augmentChunkHash plugin hook (@isidrok)
* [#2995](https://github.com/rollup/rollup/pull/2995): Add info on installing locally to docs (@mesqueeb)
* [#3037](https://github.com/rollup/rollup/pull/3037): Refresh pull request labels (@shellscape)
* [#3048](https://github.com/rollup/rollup/pull/3048): Document ROLLUP_WATCH environment variable (@shellscape)
* [#3051](https://github.com/rollup/rollup/pull/3051): Avoid changes to the original options (.acorn) object (@LongTengDao)
* [#3052](https://github.com/rollup/rollup/pull/3052): Minor refactoring: Remove one try-catch (@KSXGitHub)
* [#3053](https://github.com/rollup/rollup/pull/3053): Refactor to use async-await in more places (@KSXGitHub)
* [#3055](https://github.com/rollup/rollup/pull/3055): Provide consistent chunking via a consistent order of entry modules when emitting chunks (@lukastaegert)
* [#3058](https://github.com/rollup/rollup/pull/3058): Remove acorn-bigint and acorn-dynamic-import from bundle (@LongTengDao)
* [#3061](https://github.com/rollup/rollup/pull/3061): Update to acorn@7 (@lukastaegert)
* [#3063](https://github.com/rollup/rollup/pull/3063): Auto-generate license file (@lukastaegert)
* [#3069](https://github.com/rollup/rollup/pull/3069): Prevent infinite loop when scanning for line-breaks and there are comment-like strings (@lukastaegert)
## 1.19.4
*2019-08-07*
### Bug Fixes
* Prevent invalid code when exporting an external namespace (#3034)
* Prevent invalid or non-equivalent code when simplifying expressions in return and throw statements (#3035)
### Pull Requests
* [#3034](https://github.com/rollup/rollup/pull/3034): Avoid generating .* as export (@LongTengDao)
* [#3035](https://github.com/rollup/rollup/pull/3035): Prevent ASI errors for conditional expressions (@lukastaegert)
* [#3036](https://github.com/rollup/rollup/pull/3036): Fix documents to use https, not http (@giraffate)
## 1.19.3
*2019-08-06*
### Bug Fixes
* Fix wrong URLs in error messages (#3033)
### Pull Requests
* [#3033](https://github.com/rollup/rollup/pull/3033): Fix wrong URLs in error messages (@giraffate)
## 1.19.2
*2019-08-05*
### Bug Fixes
* Add bin file to package
## 1.19.1
*2019-08-05*
### Bug Fixes
* Remove wrong extension in package.json file (#3031)
### Pull Requests
* [#3031](https://github.com/rollup/rollup/pull/3031): Fix wrong extension (@lukastaegert)
## 1.19.0
*2019-08-05*
### Features
* Implement a new unified file emission API for assets and chunks with support for explicit file names (#2999)
* Use the id of the last module in a chunk as base for the chunk name if no better name is available (#3025)
* Use the id of the last module in a chunk as base for the variable name of a chunk in some formats if no better name is available (#2999)
### Bug Fixes
* Do not produce invalid variable names if an empty name is chosen for a virtual module (#3026)
* Fix an issue where a module variable name would conflict with a local variable name in some formats (#3020)
### Pull Requests
* [#2999](https://github.com/rollup/rollup/pull/2999): Unified file emission api (@lukastaegert)
* [#3020](https://github.com/rollup/rollup/pull/3020): Switch to a code-splitting build and update dependencies (@lukastaegert)
* [#3025](https://github.com/rollup/rollup/pull/3025): Use id of last module in chunk as name base for auto-generated chunks (@lukastaegert)
* [#3026](https://github.com/rollup/rollup/pull/3026): Avoid variable from empty module name be empty (@LongTengDao)
## 1.18.0
*2019-08-01*
### Features
* Add `externalLiveBindings: false` option to optimize code when live bindings are not needed (#3010)
### Pull Requests
* [#2997](https://github.com/rollup/rollup/pull/2997): Integrate coverage into CI setup (@lukastaegert)
* [#2998](https://github.com/rollup/rollup/pull/2998): Update readme badges (@lukastaegert)
* [#3010](https://github.com/rollup/rollup/pull/3010): Add option to prevent code for external live bindings (@lukastaegert)
## 1.17.0
*2019-07-15*
### Features
* Allow plugins to access current combined sourcemap in transform hook for coverage instrumentation (#2993)
### Pull Requests
* [#2987](https://github.com/rollup/rollup/pull/2987): Fix code fences for link (@johanholmerin)
* [#2989](https://github.com/rollup/rollup/pull/2989): Bump lodash from 4.17.11 to 4.17.14 (@dependabot)
* [#2993](https://github.com/rollup/rollup/pull/2993): Add getCombinedSourceMap in transform plugin context (@billowz)
## 1.16.7
*2019-07-09*
### Bug Fixes
* Fix an issue where exported import.meta properties would lead to invalid code (#2986)
### Pull Requests
* [#2985](https://github.com/rollup/rollup/pull/2985): Improve sourcemap types (@jridgewell)
* [#2986](https://github.com/rollup/rollup/pull/2986): Only overwrite content when resolving import.meta properties (@lukastaegert)
## 1.16.6
*2019-07-04*
### Bug Fixes
* Do not pass undefined to resolveDynamicImport for unresolvable template literals (#2984)
### Pull Requests
* [#2984](https://github.com/rollup/rollup/pull/2984): Always forward AST nodes for unresolvable dynamic imports (@lukastaegert)
## 1.16.5
*2019-07-04*
### Bug Fixes
* onwarn should still be called when --silent is used (#2982)
* Properly clean up watchers for files that are deleted between builds (#2982)
### Pull Requests
* [#2981](https://github.com/rollup/rollup/pull/2981): Do not skip onwarn handler when --silent is used (@lukastaegert)
* [#2982](https://github.com/rollup/rollup/pull/2982): Make tests run on Node 12, fix watcher cleanup issue (@lukastaegert)
## 1.16.4
*2019-07-02*
### Bug Fixes
* Do not show a TypeScript error when providing a location as number to this.warn and this.error (#2974)
* Use the correct TypeScript type for Sourcemap.version (#2976)
### Pull Requests
* [#2965](https://github.com/rollup/rollup/pull/2965): Use async readFile in getRollupDefaultPlugin (@kaksmet)
* [#2974](https://github.com/rollup/rollup/pull/2974): Align TS types, docs and implementation for this.warn and this.error (@lukastaegert)
* [#2976](https://github.com/rollup/rollup/pull/2976): Fix sourcemap type and update dependencies (@lukastaegert)
## 1.16.3
*2019-06-29*
### Bug Fixes
* Prevent name conflicts with unused function parameters (#2972)
### Pull Requests
* [#2972](https://github.com/rollup/rollup/pull/2972): Deconflict unused parameters (@lukastaegert)
## 1.16.2
*2019-06-22*
### Bug Fixes
* Properly wrap dynamic imports in Promises that can be caught when generating CJS output (#2958)
### Pull Requests
* [#2958](https://github.com/rollup/rollup/pull/2958): Make sure errors from dynamic imports can be caught (@lukastaegert)
## 1.16.1
*2019-06-21*
### Pull Requests
* [#2956](https://github.com/rollup/rollup/pull/2956): Add missing CLI docs for strictDeprecations (@lukastaegert)
## 1.16.0
*2019-06-21*
### Features
* Add strictDeprecations option to throw when currently or upcoming deprecated features are used (#2945)
* Keep annotations and comments when simplifying logical and conditional expressions (#2955)
### Bug Fixes
* Generate proper namespace objects when dynamically importing external dependencies for AMD or CJS formats (#2954)
* Fix dynamically imported variables not being resolved correctly when importing from an entry chunk with only a default export (#2954)
* Do not reexport default when reexporting a namespace (#2954)
### Pull Requests
* [#2945](https://github.com/rollup/rollup/pull/2945): Add option to handle use of features marked for deprecation as errors (@lukastaegert)
* [#2954](https://github.com/rollup/rollup/pull/2954): Improve dynamic import interop (@lukastaegert)
* [#2955](https://github.com/rollup/rollup/pull/2955): Keep annotations and comments when simplifying logical and conditional expressions (@lukastaegert)
## 1.15.6
*2019-06-16*
### Bug Fixes
* No longer use an alternate screen in watch mode to allow scrolling (#2942)
* Prioritize non-external imports over external ones when resolving conflicting namespace re-exports (#2893)
### Pull Requests
* [#2893](https://github.com/rollup/rollup/pull/2893): Improve handling of conflicting namespace exports (@aleclarson)
* [#2942](https://github.com/rollup/rollup/pull/2942): Get rid of alternate screen and simplify screen clearing (@lukastaegert)
## 1.15.5
*2019-06-14*
### Bug Fixes
* Do not include any comments for completely tree-shaken files so that `renderedLength === 0` is a reliable check (#2940)
* Do not cause type errors when returning `null` from `resolveId` (#2941)
### Pull Requests
* [#2940](https://github.com/rollup/rollup/pull/2940): Completely omit files that do not have any included statements (@lukastaegert)
* [#2941](https://github.com/rollup/rollup/pull/2941): Explicitly allow null as return value for various hooks (@lukastaegert)
## 1.15.4
*2019-06-14*
### Bug Fixes
* Improve how asset and chunk URLs are resolved for UMD, IIFE and CJS output (#2937)
### Pull Requests
* [#2937](https://github.com/rollup/rollup/pull/2937): Fix URL resolution to work when the current script contains query parameters (@lukastaegert)
## 1.15.3
*2019-06-13*
### Bug Fixes
* Always reemit assets and chunks from cached transform hooks (#2936)
### Pull Requests
* [#2936](https://github.com/rollup/rollup/pull/2936): Fix repeated re-emission of files emitted from a transform hook (@lukastaegert)
## 1.15.2
*2019-06-13*
### Bug Fixes
* Make sure chunks emitted from transform hooks are also emitted for incremental builds in watch mode (#2933)
### Pull Requests
* [#2933](https://github.com/rollup/rollup/pull/2933): Reemit chunks emitted from transform hooks (@lukastaegert)
## 1.15.1
*2019-06-11*
### Bug Fixes
* Do not fail when reexporting variables in dynamic entry points from other chunks (#2928)
### Pull Requests
* [#2928](https://github.com/rollup/rollup/pull/2928): Handle reexports from dynamic entries across chunk (@lukastaegert)
## 1.15.0
*2019-06-11*
### Features
* Tone down try-catch deoptimization while maintaining polyfill support (#2918)
### Bug Fixes
* Handle feature detection with "typeof" for regular expressios (#2916)
* Deoptimize `'' + variable'` type coercion as expression statement for feature detection (#2917)
* Always observe argument side-effects when tree-shaking (#2924)
### Pull Requests
* [#2916](https://github.com/rollup/rollup/pull/2916): Deoptimize typeof for regular expression literals to better support es6-shim (@lukastaegert)
* [#2917](https://github.com/rollup/rollup/pull/2917): Support implicit type coercion errors in es5-shim (@lukastaegert)
* [#2918](https://github.com/rollup/rollup/pull/2918): Deoptimize try-catch less radically (@lukastaegert)
* [#2924](https://github.com/rollup/rollup/pull/2924): Do not tree-shake arguments with side-effects (@lukastaegert)
## 1.14.6
*2019-06-10*
### Bug Fixes
* Fix an issue where call arguments were not included in try statements (#2914)
### Pull Requests
* [#2914](https://github.com/rollup/rollup/pull/2914): Properly include try statements for each pass when deoptimization is deactivated (@lukastaegert)
## 1.14.5
*2019-06-09*
### Bug Fixes
* Keep external ids unmodified when using the object form of resolveId (#2907)
* Cache dynamic import resolutions when using Rollup cache (#2908)
* Keep all necessary parentheses when tree-shaking call arguments (#2911)
### Pull Requests
* [#2906](https://github.com/rollup/rollup/pull/2906): Update dependencies (@lukastaegert)
* [#2907](https://github.com/rollup/rollup/pull/2907): Do not renormalize external ids when using the object form (@lukastaegert)
* [#2908](https://github.com/rollup/rollup/pull/2908): Cache dynamic ids if possible (@lukastaegert)
* [#2911](https://github.com/rollup/rollup/pull/2911): Fix treeshaken parameters around parentheses (@manucorporat)
## 1.14.4
*2019-06-07*
### Bug Fixes
* Do not omit external re-exports for `moduleSideEffects: false` (#2905)
### Pull Requests
* [#2905](https://github.com/rollup/rollup/pull/2905): Make sure external re-exports are included for moduleSideEffects: false (@lukastaegert)
## 1.14.3
*2019-06-06*
### Bug Fixes
* Generate correct external imports when importing from a directory that would be above the root of the current working directory (#2902)
### Pull Requests
* [#2902](https://github.com/rollup/rollup/pull/2902): Use browser relative path algorithm for chunks (@lukastaegert)
## 1.14.2
*2019-06-05*
### Bug Fixes
* Prevent unnecessary inclusion of external namespace import in certain situations (#2900)
### Pull Requests
* [#2900](https://github.com/rollup/rollup/pull/2900): Handle early bind for member expressions (@lukastaegert)
## 1.14.1
*2019-06-05*
### Bug Fixes
* Fix an issue where try-statements were not included properly when a variable declared inside the statement was accessed outside it (#2898)
* Fix an issue where `await` expressions were not included properly (#2899)
### Pull Requests
* [#2898](https://github.com/rollup/rollup/pull/2898): Properly include try-catch-statements even if they have already been included in some way (@lukastaegert)
* [#2899](https://github.com/rollup/rollup/pull/2899): Fix unintended early