UNPKG

49.5 kBMarkdownView Raw
1# rollup changelog
2
3## 0.49.0
4
5* Completely update the treeshaking algorithm ([#1582](https://github.com/rollup/rollup/pull/1582))
6* Only flip screen buffer if appropriate ([#1574](https://github.com/rollup/rollup/pull/1574))
7* Guard against two instances creating the same dir ([#1576](https://github.com/rollup/rollup/pull/1576))
8
9## 0.48.2
10
11* Paths is an output option ([#1569](https://github.com/rollup/rollup/pull/1569))
12
13## 0.48.1
14
15* Print deprecation warnings in watch mode, and fix options when watcher restarts ([#1568](https://github.com/rollup/rollup/pull/1568))
16
17## 0.48.0
18
19* Numerous changes to the `options` object and CLI arguments ([#1479](https://github.com/rollup/rollup/issues/1479)). See [this gist](https://gist.github.com/Rich-Harris/d472c50732dab03efeb37472b08a3f32) for a rundown.
20
21## 0.47.6
22
23* Set `process.env.ROLLUP_WATCH` *before* loading config file
24
25## 0.47.5
26
27* Fix broken multi-bundle configs with `rollup.watch` ([#1532](https://github.com/rollup/rollup/issues/1532))
28
29## 0.47.4
30
31* Delete cached config file before reloading in watch mode
32
33## 0.47.3
34
35* Deshadow aliased imports ([#1550](https://github.com/rollup/rollup/issues/1550))
36
37## 0.47.2
38
39* Rebuild with dependency that npm randomly deleted
40
41## 0.47.1
42
43* Ignore external namespace imports when deshadowing ([#1547](https://github.com/rollup/rollup/issues/1547))
44
45## 0.47.0
46
47* Watch config file, restart `rollup.watch` on change ([#1535](https://github.com/rollup/rollup/issues/1535))
48* Correctly render `export { foo } from` declarations in `es` output ([#1543](https://github.com/rollup/rollup/pull/1543))
49* Reinstate missing `rollup.VERSION`
50
51## 0.46.3
52
53* init for/for-of loop section head with correct scopes ([#1538](https://github.com/rollup/rollup/issues/1538), [#1539](https://github.com/rollup/rollup/issues/1539))
54* Fix namespace imports and re-exports in `es` outpot ([#1511](https://github.com/rollup/rollup/issues/1511))
55* Deshadow indirectly imported namespaces ([#1488](https://github.com/rollup/rollup/issues/1488), [#1505](https://github.com/rollup/rollup/issues/1505))
56
57## 0.46.2
58
59* Pass options to `bundle.write` correctly in `rollup.watch` ([#1533](https://github.com/rollup/rollup/issues/1533))
60* init for-in loop section head with correct scopes ([#1480](https://github.com/rollup/rollup/issues/1480))
61* support `--no-interop` flag ([#1524](https://github.com/rollup/rollup/issues/1524))
62
63## 0.46.1
64
65* Remove `rollup.watch` from browser build ([#1530](https://github.com/rollup/rollup/issues/1530))
66* Remove `source-map-support` dependency ([#1528](https://github.com/rollup/rollup/issues/1528))
67
68## 0.46.0
69
70* `options.format` is now required ([#1491](https://github.com/rollup/rollup/pull/1491))
71* if `options.format` is `es6`, it will now throw an error (should be `es`) ([#1491](https://github.com/rollup/rollup/pull/1491))
72* Add experimental `rollup.watch` method, replacing [rollup-watch](https://github.com/rollup/rollup-watch) ([#1491](https://github.com/rollup/rollup/pull/1491))
73* Batch warnings together in CLI output ([#1491](https://github.com/rollup/rollup/pull/1491))
74* Clear screen between rebuilds in `--watch` mode ([#1491](https://github.com/rollup/rollup/pull/1491))
75* `onwarn` function's second argument is the default handler, allowing easier filtering without reimplementing any logic ([#1491](https://github.com/rollup/rollup/pull/1491))
76* Prevent semi-colon removal after variable declaration that is for loop body ([#1275](https://github.com/rollup/rollup/issues/1275))
77* Return `exports` for namespaced but non-extended IIFE bundles ([#1492](https://github.com/rollup/rollup/issues/1492))
78* Fix scoping in switch statements ([#1498](https://github.com/rollup/rollup/pull/1498))
79* Handle side-effects in tagged template expressions ([#1508](https://github.com/rollup/rollup/pull/1508))
80* More descriptive error for missing options.format ([#1510](https://github.com/rollup/rollup/pull/1510))
81* Refactor scope handling ([#1517](https://github.com/rollup/rollup/pull/1517))
82* Handle failure of a config in multi-config build ([#1513](https://github.com/rollup/rollup/issues/1513))
83
84
85## 0.45.2
86
87* Fix interop when import is a string ([#1486](https://github.com/rollup/rollup/issues/1486))
88* Separate `resolvedIds` from `resolvedExternalIds` ([#1490](https://github.com/rollup/rollup/pull/1490))
89* Add `--extend` flag to CLI ([#1482](https://github.com/rollup/rollup/pull/1482))
90
91## 0.45.1
92
93* Remove `weak` from `optionalDependencies` ([#1483](https://github.com/rollup/rollup/issues/1483))
94
95## 0.45.0
96
97* [BREAKING] `bundle.generate(...)` returns a Promise, so that `transformBundle` plugin hooks can be asynchronous ([#1474](https://github.com/rollup/rollup/issues/1474))
98
99## 0.44.0
100
101* [BREAKING] Don't extend existing globals, unless `options.extend` is true ([#827](https://github.com/rollup/rollup/issues/827))
102* Fix handling of catch clause parameters ([#1462](https://github.com/rollup/rollup/issues/1462))
103
104## 0.43.1
105
106* Fix memory leak on incremental rebuilds ([#883](https://github.com/rollup/rollup/issues/883))
107* Allow `this.warn` and `this.error` to accept a `{line, column}` object as an alternative to a character index ([#1265](https://github.com/rollup/rollup/issues/1265))
108* Print more useful error if entry module is 'external' ([#1264](https://github.com/rollup/rollup/issues/1264))
109* Catch errors in `bundle.generate` options ([#1463](https://github.com/rollup/rollup/pull/1463))
110* Fix magic-string deprecation warning ([#1445](https://github.com/rollup/rollup/pull/1445))
111
112## 0.43.0
113
114* Allow config files to import JSON ([#1426](https://github.com/rollup/rollup/issues/1426))
115* Allow undefined imports in interop block ([#1341](https://github.com/rollup/rollup/issues/1341))
116* Add `process.env.ROLLUP_WATCH = 'true'` in watch mode ([#1429](https://github.com/rollup/rollup/issues/1429))
117* Add `pureExternalModules` option ([#1352](https://github.com/rollup/rollup/issues/1352))
118* Allow plugins to specify `options.entry` ([#1270](https://github.com/rollup/rollup/issues/1270))
119* Update dependencies
120
121## 0.42.0
122
123* Deprecate `options.moduleId` in favour of `options.amd.id` ([#1365](https://github.com/rollup/rollup/pull/1365))
124* Add `options.amd.define` option to specify name of AMD `define` function ([#1365](https://github.com/rollup/rollup/pull/1365))
125* Fix incorrect class removal with `treeshake: false` ([#1375](https://github.com/rollup/rollup/pull/1375))
126* Deconflict module exports imported as namespaces ([#1384](https://github.com/rollup/rollup/issues/1384))
127* Handle bare self-imports ([#1274](https://github.com/rollup/rollup/issues/1274))
128* Allow config file to export an array of multiple configs ([#1389](https://github.com/rollup/rollup/pull/1389))
129* Handle exponentiation operator, and fail gracefully on unknown operators ([#1416](https://github.com/rollup/rollup/issues/1416))
130* Add `watch` option ([#1424](https://github.com/rollup/rollup/pull/1424))
131
132## 0.41.6
133
134* Preserve `originalSourceMap` on incremental rebuilds for loaders with sourcemaps ([#1336](https://github.com/rollup/rollup/issues/1336))
135
136## 0.41.5
137
138* Wrap ternary consequent/alternate sequences in parens ([#1273](https://github.com/rollup/rollup/issues/1273))
139* Fix erroneous warning on multiple `export * from` declarations with defaults ([#1278](https://github.com/rollup/rollup/issues/1278))
140* Prevent variable conflicts with `treeshake: false` ([#1268](https://github.com/rollup/rollup/issues/1268))
141* Allow missing `source` when collapsing sourcemaps ([#1254](https://github.com/rollup/rollup/issues/1254))
142* Allow plugins to log with strings ([#1316](https://github.com/rollup/rollup/pull/1316))
143
144## 0.41.4
145
146* Fix cases of multiple `export * from 'external'` declarations ([#1252](https://github.com/rollup/rollup/issues/1252))
147* Fix 'TODO' error message ([#1257](https://github.com/rollup/rollup/issues/1257))
148
149## 0.41.3
150
151* Don't treat `this.foo` as possible namespace ([#1258](https://github.com/rollup/rollup/issues/1258))
152
153## 0.41.2
154
155* Optimize `namespace['foo']` references ([#1240](https://github.com/rollup/rollup/pull/1240))
156
157## 0.41.1
158
159* Include `new` expressions where callee is a class with side-effects ([#980](https://github.com/rollup/rollup/issues/980) [#1233](https://github.com/rollup/rollup/issues/1233))
160
161## 0.41.0
162
163* Add `this.warn(...)` and `this.error(...)` methods to plugin `transform` hook contexts ([#1140](https://github.com/rollup/rollup/issues/1140))
164* `throw` always considered to be a side effect ([#1227](https://github.com/rollup/rollup/pull/1227))
165
166## 0.40.2
167
168* Add `file` property to sourcemaps for bundles with plugins ([#986](https://github.com/rollup/rollup/issues/986))
169* Don't require globals for empty imports ([#1217](https://github.com/rollup/rollup/issues/1217))
170
171## 0.40.1
172
173* Allow missing space between `export default` and declaration ([#1218](https://github.com/rollup/rollup/pull/1218))
174
175## 0.40.0
176
177* [BREAKING] Better, more consistent error logging ([#1212](https://github.com/rollup/rollup/pull/1212))
178* Don't use colours and emojis for non-TTY stderr ([#1201](https://github.com/rollup/rollup/issues/1201))
179
180## 0.39.2
181
182* Prevent mutation of cached ASTs (fixes stack overflow with rollup-watch) ([#1205](https://github.com/rollup/rollup/pull/1205))
183
184## 0.39.1
185
186* Ignore `var` initialisers in dead branches ([#1198](https://github.com/rollup/rollup/issues/1198))
187
188## 0.39.0
189
190* [BREAKING] Warnings are objects, rather than strings ([#1194](https://github.com/rollup/rollup/issues/1194))
191
192## 0.38.3
193
194* More informative warning for implicit external dependencies ([#1051](https://github.com/rollup/rollup/issues/1051))
195* Warn when creating browser bundle with external dependencies on Node built-ins ([#1051](https://github.com/rollup/rollup/issues/1051))
196* Statically analyse LogicalExpression nodes, for better dead code removal ([#1061](https://github.com/rollup/rollup/issues/1061))
197
198## 0.38.2
199
200* Preserve `var` declarations in dead branches ([#997](https://github.com/rollup/rollup/issues/997))
201* Warn if exporting a call expression that looks like a function declaration ([#1011](https://github.com/rollup/rollup/issues/1011))
202* Wrap function expressions in parentheses if necessary ([#1011](https://github.com/rollup/rollup/issues/1011))
203
204## 0.38.1
205
206* Fix sourcemap comment removal ([#1104](https://github.com/rollup/rollup/issues/1104))
207* Warn if empty bundle is generated ([#444](https://github.com/rollup/rollup/issues/444))
208* Support ES2017 syntax ([#492](https://github.com/rollup/rollup/issues/492))
209* Remove unused imports from external modules ([#595](https://github.com/rollup/rollup/issues/595))
210* Remove unused function and class declarations inside function bodies ([#1108](https://github.com/rollup/rollup/issues/1108), [#1178](https://github.com/rollup/rollup/issues/1178))
211* Deconflict function expression IDs ([#1176](https://github.com/rollup/rollup/issues/1176))
212
213## 0.38.0
214
215* [BREAKING] `export { foo as default }` creates live binding ([#1078](https://github.com/rollup/rollup/issues/1078))
216* Prevent sourceMappingURL removal edge case ([#988](https://github.com/rollup/rollup/issues/988))
217* Bind function expression IDs to the correct scope ([#1083](https://github.com/rollup/rollup/issues/1083))
218* Correctly deshadow destructured parameters with assignments ([#1008](https://github.com/rollup/rollup/issues/1008))
219
220## 0.37.2
221
222* Remove unused `new` expressions without side-effects ([#179](https://github.com/rollup/rollup/issues/179))
223* Only remove valid sourceMappingURL comments ([#1132](https://github.com/rollup/rollup/issues/1132))
224* Ensure blocks containing activated `var` declarations are included in output ([#1113](https://github.com/rollup/rollup/issues/1113))
225* Support plugin outros ([#1116](https://github.com/rollup/rollup/issues/1116))
226
227## 0.37.1
228
229* Follow symlinks ([#447](https://github.com/rollup/rollup/issues/447))
230* Fix tree-shaking of recursive functions and other cases ([#1120](https://github.com/rollup/rollup/issues/1120), [#1142](https://github.com/rollup/rollup/issues/1142))
231* Support module names that require quotes ([#582](https://github.com/rollup/rollup/issues/582), [#584](https://github.com/rollup/rollup/issues/584))
232* Fix [#957](https://github.com/rollup/rollup/issues/957)
233
234## 0.37.0
235
236* [BREAKING] Default exports are not included in reified namespaces ([#1028](https://github.com/rollup/rollup/issues/1028))
237* Parentheses do not defeat tree-shaking ([#1101](https://github.com/rollup/rollup/issues/1101), [#1128](https://github.com/rollup/rollup/issues/1128))
238* More `legacy` fixes: do not create getters ([#1069](https://github.com/rollup/rollup/pull/1069)), do not include `__esModule` ([#1068](https://github.com/rollup/rollup/pull/1068)), quote reserved property names ([#1057](https://github.com/rollup/rollup/pull/1057))
239* Fix missing namespace member warnings ([#1045](https://github.com/rollup/rollup/issues/1045))
240* Fix TypeError in arrow function without braces returning a function ([#1062](https://github.com/rollup/rollup/pull/1062))
241
242## 0.36.4
243
244* Only depend on program-level call expressions ([#977](https://github.com/rollup/rollup/issues/977))
245
246## 0.36.3
247
248* Add `legacy` option for IE8 support ([#989](https://github.com/rollup/rollup/pull/989))
249
250## 0.36.2
251
252* Insert semicolons where necessary to fix broken code ([#1004](https://github.com/rollup/rollup/issues/1004))
253* Include module ID and location when warning about top-level `this` ([#1012](https://github.com/rollup/rollup/pull/1012))
254* More informative error for missing exports ([#1033](https://github.com/rollup/rollup/issues/1033))
255* `options.moduleContext` for per-module context overrides ([#1023](https://github.com/rollup/rollup/pull/1023))
256
257## 0.36.1
258
259* Include naked block statements ([#981](https://github.com/rollup/rollup/issues/981))
260* Correctly include falsy alternate statements in optimised if blocks ([#973](https://github.com/rollup/rollup/issues/973))
261* Prevent omission of default exports that are only used by the exporting module ([#967](https://github.com/rollup/rollup/pull/967))
262* Prevent warning on `auto` exports with ES output ([#966](https://github.com/rollup/rollup/pull/966))
263
264## 0.36.0
265
266* `export { foo as default }` no longer creates a live binding ([#860](https://github.com/rollup/rollup/issues/860))
267
268## 0.35.15
269
270* Warn on missing unused imports in deshadowing phase ([#928](https://github.com/rollup/rollup/issues/928))
271* Always add a newline to the end of bundles ([#958](https://github.com/rollup/rollup/issues/958))
272
273## 0.35.14
274
275* Include all parent statements of expression with effects, up to function boundary ([#930](https://github.com/rollup/rollup/issues/930))
276
277## 0.35.13
278
279* Include superclasses when including their subclasses ([#932](https://github.com/rollup/rollup/issues/932))
280
281## 0.35.12
282
283* Add `interop: false` option to disable unwrapping of external imports ([#939](https://github.com/rollup/rollup/issues/939))
284
285## 0.35.11
286
287* Deconflict reified namespaces with other declarations ([#910](https://github.com/rollup/rollup/issues/910))
288
289## 0.35.10
290
291* Only remove EmptyStatement nodes directly inside blocks ([#913](https://github.com/rollup/rollup/issues/931))
292
293## 0.35.9
294
295* Support Node 0.12 ([#909](https://github.com/rollup/rollup/issues/909))
296
297## 0.35.8
298
299* Correctly deshadow re-assigned module functions ([#910](https://github.com/rollup/rollup/issues/910))
300
301## 0.35.7
302
303* Refactor `flushTime.js` ([#922](https://github.com/rollup/rollup/pull/922))
304
305## 0.35.6
306
307* Fix browser build
308
309## 0.35.5
310
311* Allow empty for loop heads ([#919](https://github.com/rollup/rollup/issues/919))
312
313## 0.35.4
314
315* Preserve effects in for-of and for-in loops ([#870](https://github.com/rollup/rollup/issues/870))
316* Remove empty statements ([#918](https://github.com/rollup/rollup/pull/918))
317
318## 0.35.3
319
320* Render identifiers inside template literals
321
322## 0.35.2
323
324* Fix broken build caused by out of date locally installed dependencies
325
326## 0.35.1
327
328* Rewrite deconflicted class identifiers ([#915](https://github.com/rollup/rollup/pull/915))
329* Include `dependencies` in `bundle.modules` objects ([#903](https://github.com/rollup/rollup/issues/903))
330* Update to Acorn 4 ([#914](https://github.com/rollup/rollup/pull/914))
331
332## 0.35.0
333
334* Rewrite analysis/tree-shaking code ([#902](https://github.com/rollup/rollup/pull/902))
335* Include conditional mutations of global objects ([#901](https://github.com/rollup/rollup/issues/901))
336* Only reify namespaces if necessary ([#898](https://github.com/rollup/rollup/issues/898))
337* Track mutations of aliased globals ([#893](https://github.com/rollup/rollup/issues/893))
338* Include duplicated var declarations ([#716](https://github.com/rollup/rollup/issues/716))
339
340## 0.34.13
341
342* Pass `{ format }` through to `transformBundle` ([#867](https://github.com/rollup/rollup/issues/867))
343
344## 0.34.12
345
346* Fix `rollup --watch` ([#887](https://github.com/rollup/rollup/issues/887))
347* Case-sensitive paths ([#862](https://github.com/rollup/rollup/issues/862))
348
349## 0.34.11
350
351* Prevent leaky state when `bundle` is reused ([#875](https://github.com/rollup/rollup/issues/875))
352* Ensure `intro` appears before interop block ([#880](https://github.com/rollup/rollup/issues/880))
353
354## 0.34.10
355
356* Allow custom `options.context` to replace top-level `this` ([#851](https://github.com/rollup/rollup/issues/851))
357* Fix `noConflict` when used via `rollup --config` ([#846](https://github.com/rollup/rollup/issues/846))
358* Place `outro` block *after* export block ([#852](https://github.com/rollup/rollup/issues/852))
359
360## 0.34.9
361
362* Disable indentation by default, for faster bundle generation ([#812](https://github.com/rollup/rollup/pull/812))
363* More helpful error on missing entry file ([#802](https://github.com/rollup/rollup/issues/802))
364* Preserve comments before import declarations ([#815](https://github.com/rollup/rollup/pull/815))
365
366## 0.34.8
367
368* Wrap UMD factory function in parens to avoid lazy parsing ([#774](https://github.com/rollup/rollup/pull/774))
369
370## 0.34.7
371
372* Leave it up to resolveId to normalize the entry path ([#835](https://github.com/rollup/rollup/pull/835))
373* Cache decoded mappings ([#834](https://github.com/rollup/rollup/pull/834))
374
375## 0.34.5
376
377* Fix circular export ([#813](https://github.com/rollup/rollup/issues/813))
378
379## 0.34.4
380
381* Module render performance tweak ([#823](https://github.com/rollup/rollup/pull/823))
382
383## 0.34.3
384
385* Avoid infinite recursion in `Bundle.sort()` ([#800](https://github.com/rollup/rollup/pull/800))
386
387## 0.34.2
388
389* resolveId calls are cached now to improve incremental build
390* Fixed error message recursion in plugins
391
392## 0.34.1
393
394* Support `paths` config ([#754](https://github.com/rollup/rollup/issues/754))
395* Allow `export *` from external module, internally
396
397## 0.34.0
398
399* Use resolved IDs for relative imports that are also external modules, to allow `options.globals` to work with them ([#763](https://github.com/rollup/rollup/issues/763))
400* Ensure reassigned exports are declared in an ES bundle, and remove empty `exports.foo;` statements ([#755](https://github.com/rollup/rollup/issues/755))
401* Add newline after sourcemap comment ([#756](https://github.com/rollup/rollup/issues/756))
402
403## 0.33.2
404
405* Add `bundle` as second argument to `ongenerate` and `onwrite` hooks ([#773](https://github.com/rollup/rollup/pull/773))
406* Warn on top-level `this` ([#770](https://github.com/rollup/rollup/issues/770))
407
408## 0.33.1
409
410* Fix `--no-strict` option ([#751](https://github.com/rollup/rollup/pull/751))
411* Fix Windows edge case with case-sensitive paths ([#760](https://github.com/rollup/rollup/pull/760))
412
413## 0.33.0
414
415* Downgrade missing transformer sourcemap to a warning, not an error, and print the name of the offending plugin if possible ([#746](https://github.com/rollup/rollup/issues/746))
416* Warn if same name is re-exported from two modules ([#722](https://github.com/rollup/rollup/issues/722))
417
418## 0.32.4
419
420* Add `ongenerate` and `onwrite` plugin hooks ([#742](https://github.com/rollup/rollup/pull/742))
421
422## 0.32.3
423
424* Generated correct sourcemaps with reified namespaces ([#668](https://github.com/rollup/rollup/issues/668))
425* Exclude plugin helper modules from sourcemaps ([#747](https://github.com/rollup/rollup/pull/747))
426
427## 0.32.2
428
429* Allow `--globals` to work with `--external` or `options.external` in whatever configuration ([#743](https://github.com/rollup/rollup/issues/743))
430
431## 0.32.1
432
433* Preserve side-effects to default exports that coincide with used named exports ([#733](https://github.com/rollup/rollup/issues/733))
434* Support `rollup -c node:pkgname` ([#736](https://github.com/rollup/rollup/issues/736))
435
436## 0.32.0
437
438* Deprecate `es6` format in favour of `es` ([#468](https://github.com/rollup/rollup/issues/468))
439* Add correct `jsnext:main` build ([#726](https://github.com/rollup/rollup/pull/726))
440
441## 0.31.2
442
443* Allow `load` plugins to provide sourcemap ([#715](https://github.com/rollup/rollup/pull/715))
444* Allow `sourceMapFile` in config options ([#717](https://github.com/rollup/rollup/issues/717))
445
446## 0.31.1
447
448* Logging for errors emitted by `rollup-watch` ([#712](https://github.com/rollup/rollup/issues/712))
449
450## 0.31.0
451
452* Rewrite top-level `this` as `undefined` ([#707](https://github.com/rollup/rollup/pull/707))
453* Pass `options.acorn` to Acorn ([#564](https://github.com/rollup/rollup/issues/564))
454
455## 0.30.0
456
457* Bundle CLI ([#700](https://github.com/rollup/rollup/issues/700))
458* Ensure absolute paths are normalised ([#704](https://github.com/rollup/rollup/issues/704))
459* Allow `rollup --watch` to work with targets
460
461## 0.29.1
462
463* Merge `target` options with main options ([#701](https://github.com/rollup/rollup/issues/701))
464* Update magic-string ([#690](https://github.com/rollup/rollup/issues/690))
465
466## 0.29.0
467
468* `rollup --watch` ([#284](https://github.com/rollup/rollup/issues/284))
469
470## 0.28.0
471
472* Experimental support for incremental rebuilds ([#658](https://github.com/rollup/rollup/pull/658))
473
474## 0.27.1
475
476* Ensure names exported from a module are not replaced with reserved words ([#696](https://github.com/rollup/rollup/pull/696))
477* Revert ([#692](https://github.com/rollup/rollup/pull/692)) – resolved IDs must be strings
478
479## 0.27.0
480
481* Use native promises instead of `es6-promise` ([#689](https://github.com/rollup/rollup/issues/689))
482* Support multiple targets in config files ([#655](https://github.com/rollup/rollup/issues/655))
483* Allow `resolveId` plugin functions to return non-strings ([#692](https://github.com/rollup/rollup/pull/692))
484
485## 0.26.7
486
487* Distinguish between default and namespace imports of external module ([#637](https://github.com/rollup/rollup/issues/637))
488* Add `__esModule` property to named exports in AMD, CJS and UMD modes ([#650](https://github.com/rollup/rollup/issues/650))
489
490## 0.26.6
491
492* Deconflict named imports from external modules in ES bundles ([#659](https://github.com/rollup/rollup/issues/659))
493* Support `options.preferConst` to generate `const` declarations for exports rather than `var` declarations ([#653](https://github.com/rollup/rollup/issues/653))
494
495## 0.26.5
496
497* Preserve `debugger` statements ([#664](https://github.com/rollup/rollup/issues/664))
498* Allow `options.external` to be a function ([#522](https://github.com/rollup/rollup/issues/522))
499
500## 0.26.4
501
502* Prevent plugin-provided external IDs being normalised ([#630](https://github.com/rollup/rollup/issues/630), [#633](https://github.com/rollup/rollup/issues/633))
503* Throw if module exports/re-exports the same name twice, or has multiple default exports ([#679](https://github.com/rollup/rollup/issues/679))
504* Warn about `eval` security issue ([#675]((https://github.com/rollup/rollup/issues/675)))
505
506
507## 0.26.3
508
509* Ensure reference is not incorrectly marked as a reassignment ([#648](https://github.com/rollup/rollup/issues/648))
510
511## 0.26.2
512
513* Sanity check output of `load` hook ([#607](https://github.com/rollup/rollup/issues/607))
514* Correct scoping for ID class expressions ([#626](https://github.com/rollup/rollup/issues/626))
515* Warn if named and default exports are used together in auto mode ([#587](https://github.com/rollup/rollup/issues/587))
516* Allow variable initialisers to be rewritten if necessary ([#632](https://github.com/rollup/rollup/issues/632))
517* Prevent double `var` with no-treeshake option ([#639](https://github.com/rollup/rollup/pull/639))
518
519## 0.26.1
520
521* Add `treeshake: false`/`--no-treeshake` option for debugging ([#505](https://github.com/rollup/rollup/issues/505))
522* Update build process to use Bublé ([#620](https://github.com/rollup/rollup/pull/620))
523
524## 0.26.0
525
526* Add `noConflict`/`--no-conflict` option for UMD builds ([#580](https://github.com/rollup/rollup/pull/580))
527* Normalise relative external paths ([#591](https://github.com/rollup/rollup/pull/591))
528* Report files causing transform errors ([#609](https://github.com/rollup/rollup/pull/609))
529* Handle sourcemap segments with a single member ([#619](https://github.com/rollup/rollup/pull/619))
530* Update dependencies
531
532## 0.25.8
533
534* Unixize entry path ([#586](https://github.com/rollup/rollup/pull/586))
535
536## 0.25.7
537
538* Expand deshadowed shorthand properties ([#575](https://github.com/rollup/rollup/issues/575))
539* Allow external files to be non-existent ([#532](https://github.com/rollup/rollup/issues/532))
540
541## 0.25.6
542
543* Fix a regression introduced by #566 ([#569](https://github.com/rollup/rollup/issues/569))
544* Prune dead conditional expressions more carefully ([#567](https://github.com/rollup/rollup/issues/567))
545
546## 0.25.5
547
548* Make sure shorthand destructuring assignments don't break ([#528](https://github.com/rollup/rollup/issues/528))
549* Allow 'exports' key ([#542](https://github.com/rollup/rollup/issues/542))
550* Ensure `foo. bar` where `foo` is a namespace import is rewritten correctly ([#566](https://github.com/rollup/rollup/issues/566))
551* Fix an edge case for exported globals (e.g. `export { document }`) ([#562](https://github.com/rollup/rollup/issues/562))
552
553## 0.25.4
554
555* Fix misnamed exports of default imports in ES bundles ([#513](https://github.com/rollup/rollup/issues/513))
556* CLI: warn on missing config ([#515](https://github.com/rollup/rollup/pull/515))
557* Detect side-effects in non-top-level member expression assignment ([#476](https://github.com/rollup/rollup/issues/476))
558* Don't remove computed property class keys ([#504](https://github.com/rollup/rollup/issues/504))
559* Augment existing global object rather than replacing ([#493](https://github.com/rollup/rollup/issues/493))
560* Don't fail on `export {}`, warn instead ([#486](https://github.com/rollup/rollup/issues/486))
561
562## 0.25.3
563
564* Handle non-objects and `null` in `_interopDefault` ([#474](https://github.com/rollup/rollup/issues/474))
565
566## 0.25.2
567
568* Skip dead branches of a conditional expression (#[465](https://github.com/rollup/rollup/pull/465))
569* Allow globals to be exported ([#472](https://github.com/rollup/rollup/pull/472))
570* Ensure reassigned exports are exported ([#484](https://github.com/rollup/rollup/issues/484))
571
572## 0.25.1
573
574* Throw error if namespace is called ([#446](https://github.com/rollup/rollup/issues/446))
575* Prevent shadowing bug in ES6 output ([#441](https://github.com/rollup/rollup/pull/441))
576* Prevent `var exports.foo` ([#426](https://github.com/rollup/rollup/issues/426))
577* Prevent double export of aliased symbols ([#438](https://github.com/rollup/rollup/issues/438))
578* Provide more informative error if Rollup is used in-browser without appropriate `resolveId`/`load` hooks ([#275](https://github.com/rollup/rollup/issues/275))
579* Use `_interopDefault` function to DRY out code with many external dependencies, in CommonJS output ([#458](https://github.com/rollup/rollup/pull/458))
580
581## 0.25.0
582
583* **breaking** Module order is determined according to spec, rather than in a way designed to prevent runtime errors. Rollup will warn if it detects runtime errors are likely ([#435](https://github.com/rollup/rollup/issues/435))
584* Prevent overly aggressive tree-shaking with complex call expressions ([#440](https://github.com/rollup/rollup/issues/440))
585
586## 0.24.1
587
588* Handle calls to default exports other that are not function expressions or references to function declarations ([#421](https://github.com/rollup/rollup/issues/421))
589* Ensure namespace blocks are created for chained imports ([#430](https://github.com/rollup/rollup/issues/430))
590* Include references in computed property keys ([#434](https://github.com/rollup/rollup/issues/434))
591* Use CLI `--external` option correctly ([#417](https://github.com/rollup/rollup/pull/417))
592* Allow relative imports to be treated as external, if absolute paths are provided in `options.external` ([#410](https://github.com/rollup/rollup/issues/410))
593* Make IIFE output adhere to Crockford style ([#415](https://github.com/rollup/rollup/pull/415))
594
595## 0.24.0
596
597* No longer attempts to resolve IDs in `options.external` ([#407](https://github.com/rollup/rollup/issues/407))
598* Fix broken sourcemap resolution in cases where some modules are transformed and others aren't ([#404](https://github.com/rollup/rollup/issues/404))
599
600## 0.23.2
601
602* Ensure `dest` or `sourceMapFile` is resolved against CWD for purposes of sourcemap generation ([#344](https://github.com/rollup/rollup/issues/344))
603* Support `banner`, `footer`, `intro` and `outro` options via CLI ([#330](https://github.com/rollup/rollup/issues/330))
604* Allow `options.global` to be a function rather than an object, and warn on missing names ([#293](https://github.com/rollup/rollup/issues/293))
605* Ensure side-effects are captured in cyclical call expressions ([#397](https://github.com/rollup/rollup/issues/397))
606* Fix parse error with body-less arrow function expressions ([#403](https://github.com/rollup/rollup/issues/403))
607
608## 0.23.1
609
610* Reinstate missing fix from ([#392](https://github.com/rollup/rollup/pull/392))
611
612## 0.23.0
613
614* Add `bundleTransform` plugin hook and option ([#387](https://github.com/rollup/rollup/pull/387))
615* Correctly store names in sourcemaps, regardless of transformers
616* Add `--environment` option to CLI ([#388](https://github.com/rollup/rollup/pull/388))
617* Handle destructuring in exports ([#374](https://github.com/rollup/rollup/issues/374))
618* Fix UMD global exports bug introduced in 0.22.1 ([#392](https://github.com/rollup/rollup/pull/392))
619
620## 0.22.2
621
622* Prevent lost `var` keywords ([#390](https://github.com/rollup/rollup/issues/390))
623
624## 0.22.1
625
626* Update expected option keys ([#379](https://github.com/rollup/rollup/issues/379))
627* Handle transformers that return stringified sourcemaps ([#377](https://github.com/rollup/rollup/issues/377))
628* Automatically create missing namespaces if `moduleName` contains dots ([#378](https://github.com/rollup/rollup/issues/378))
629* Ignore external dependency warnings coming from config file ([#333](https://github.com/rollup/rollup/issues/333))
630* Update to latest magic-string for performance boost
631
632## 0.22.0
633
634* Duplicate warnings are squelched ([#362](https://github.com/rollup/rollup/issues/362))
635* Plugins can manipulate or override the `options` object ([#371](https://github.com/rollup/rollup/pull/371))
636
637## 0.21.3
638
639* Validate option keys ([#348](https://github.com/rollup/rollup/pull/348))
640* Allow namespaces imports to sit alongside named imports ([#355](https://github.com/rollup/rollup/issues/355))
641* Count references inside destructured objects ([#364](https://github.com/rollup/rollup/issues/364))
642* Preserve top-level `delete` statements ([#352](https://github.com/rollup/rollup/issues/352))
643
644## 0.21.2
645
646* Missing relative imports are an error, not a warning ([#321](https://github.com/rollup/rollup/issues/321))
647* Fixed incorrectly renamed default exports in ES6 bundles ([#339](https://github.com/rollup/rollup/issues/339))
648* Fixed infinite recursion bug ([#341](https://github.com/rollup/rollup/issues/341))
649
650## 0.21.1
651
652* Remove `aggressive: true` (was too aggressive) ([#309](https://github.com/rollup/rollup/pull/309))
653* Handle top-level block statements ([#326](https://github.com/rollup/rollup/issues/326))
654* Optimise namespaces with default exports ([#314](https://github.com/rollup/rollup/issues/314))
655
656## 0.21.0
657
658* Only include statements whose side-effects are relevant (i.e. contribute to exports or affect global state) ([#253](https://github.com/rollup/rollup/pull/253)) ([#253](https://github.com/rollup/rollup/pull/253))
659* Exclude dead branches from analysis and inclusion ([#249](https://github.com/rollup/rollup/pull/249))
660* Add `aggressive: true` option to eliminate all side-effects outside entry module
661* More informative error when re-exporting non-existent binding ([#274](https://github.com/rollup/rollup/issues/274))
662* Fix infinite recursion bug ([#291](https://github.com/rollup/rollup/issues/291))
663* Log errors when using `rollup --config` ([#288](https://github.com/rollup/rollup/pull/288))
664* Return rejected promises on startup instead of throwing error, if options are invalid ([#303](https://github.com/rollup/rollup/pull/303))
665
666## 0.20.5
667
668* Ensure re-exports don't create a local binding ([#270](https://github.com/rollup/rollup/pull/270))
669
670## 0.20.4
671
672* Check file exists at resolve time, to allow filenames with non-extension dots in them ([#250](https://github.com/rollup/rollup/pull/250))
673* Import `Promise` where used, for Node 0.10 support ([#254](https://github.com/rollup/rollup/issues/254))
674* Allow asynchronous transformer plugins ([#260](https://github.com/rollup/rollup/issues/260))
675* Don't assume re-exported bindings are globals when deconflicting ([#267](https://github.com/rollup/rollup/issues/267))
676
677
678## 0.20.3
679
680* Fix bug where multiple `export *` declarations caused error ([#244](https://github.com/rollup/rollup/pulls/244))
681* Missing namespace exports are a warning, not an error ([#244](https://github.com/rollup/rollup/pulls/244))
682* Plugins can provide `banner` and `footer` options (string, or function that returns a string) ([#235](https://github.com/rollup/rollup/issues/235))
683* Warn on encountering `eval` ([#186](https://github.com/rollup/rollup/issues/186))
684
685## 0.20.2
686
687* Handle errors in build config file
688* More robust deconflicting, in cases where e.g. `foo$1` already exists
689* Use Rollup CLI for own build process
690
691## 0.20.1
692
693* Support `--config` file to enable plugins with CLI ([#226](https://github.com/rollup/rollup/pulls/226))
694* Prevent `default` being used as variable name ([#215](https://github.com/rollup/rollup/issues/215))
695* Update deps
696
697## 0.20.0
698
699* Support for [plugins](https://github.com/rollup/rollup/wiki/Plugins) ([#207](https://github.com/rollup/rollup/pulls/207))
700* BREAKING – `options.transform`, `options.load`, `options.resolveId`, `options.resolveExternal` and `options.external` are no longer supported, and should be handled by plugins. [More info](https://github.com/rollup/rollup/wiki/Plugins)
701* BREAKING – the .js extension is only added if it looks like there's no extension, allowing e.g. `import data from 'data.json'` (with the appropriate transformer). For safety, always include the file extension – import `./foo.js`, not `./foo`
702
703## 0.19.2
704
705* Fix exporting namespaces to include all of their exports ([#204](https://github.com/rollup/rollup/issues/204))
706* Namespace exotic objects are frozen to ensure that its properties cannot be modified, reconfigured, redefined or deleted ([#203](https://github.com/rollup/rollup/pulls/203))
707* Fix `ReferenceError: Promise is not defined` in node v0.10 ([#189](https://github.com/rollup/rollup/issues/189))
708
709## 0.19.1
710
711* Fix `module.basename()` when used with custom `resolveId` function
712* Use [rollup-babel](https://github.com/rollup/rollup-babel) to build self
713* Exposed the version string through the API: `require( 'rollup' ).VERSION`
714
715## 0.19.0
716
717* **breaking** The `transform` option is no longer passed through to custom loaders. Loaders should only concern themselves with providing source code; transformation will *always* take place
718* `options.transform` functions can return a string, or a `{code, map, ast}` object. Where possible, sourcemap chains will be flattened ([#175](https://github.com/rollup/rollup/pull/175))
719* `options.resolveId`, `options.resolveExternal` and `options.load` can each be a function or an array of functions. If an array, the first non-null/undefined return value is used. In both cases, failed resolution/loading will fall back to the defaults, unless an error is thrown. ([#174](https://github.com/rollup/rollup/pull/174))
720* New `intro` and `outro` options – similar to `banner` and `footer` except inserted *inside* any format-specific wrapper
721* Multiple var declarations in an export block (e.g. `export let a = 1, b = 2`) are split up to facilitate tree-shaking ([#171](https://github.com/rollup/rollup/issues/171))
722* More informative error when using a missing namespace property ([#169](https://github.com/rollup/rollup/pull/169))
723* Update various dependencies
724
725## 0.18.5
726
727* Allow namespaces to be assigned to variables ([#168](https://github.com/rollup/rollup/issues/168))
728* Promote `chalk` and `source-map-support` to `dependencies`, as they're used by the CLI ([#167](https://github.com/rollup/rollup/pull/167))
729
730## 0.18.4
731
732* Make external modules configurable (i.e. `external.config.foo = 'bar'`) without erroring
733
734## 0.18.3
735
736* Crop indent exclusion ranges to exclude enclosing quotes ([#166](https://github.com/rollup/rollup/issues/166))
737
738## 0.18.2
739
740* Include definitions of namespace members that are exported as defaults
741
742## 0.18.1
743
744* Include `acorn.parse` in bundle, remove `sander` from dependencies, simplify build
745
746## 0.18.0
747
748* Internal rewrite
749* Reinstate statically-analysable namespace imports
750* Avoid using getters in namespace blocks where possible ([#144](https://github.com/rollup/rollup/issues/144))
751* Track variable aliases ([#96](https://github.com/rollup/rollup/issues/96))
752* Prevent multiline strings being indented ([#164](https://github.com/rollup/rollup/issues/164))
753
754## 0.17.4
755
756* Allow imports from hidden directories (replay of [#133](https://github.com/rollup/rollup/issues/133))
757
758## 0.17.3
759
760* Handle parenthesised default exports ([#136](https://github.com/rollup/rollup/issues/136))
761
762## 0.17.2
763
764* Allow use of scoped npm packages ([#131](https://github.com/rollup/rollup/issues/131))
765
766## 0.17.1
767
768* Allow namespaces to be passed to a function ([#149](https://github.com/rollup/rollup/issues/149))
769
770## 0.17.0
771
772* Roll back to 0.15.0 and reapply subsequent fixes pending resolution of ([#132](https://github.com/rollup/rollup/issues/132)) and related issues
773
774## 0.16.4
775
776* Fix import paths with `.` ([#133](https://github.com/rollup/rollup/issues/133))
777* Prevent sourceMappingURL confusion leading to broken sourcemap
778* Add code coverage reporting [#130](https://github.com/rollup/rollup/pull/130))
779* Add `modules` property to user-facing `bundle` – an array with `{id}` objects ([#128](https://github.com/rollup/rollup/issues/128))
780
781## 0.16.3
782
783* Prevent adjacent blocks of multiple var declarations causing magic-string failure ([#105](https://github.com/rollup/rollup/issues/105))
784
785## 0.16.2
786
787* Top-level function calls and assignments to globals are treated as side-effects, and always included
788* Import files from subdirectories of external packages, e.g. `import mod from 'foo/sub/mod'` ([#126](https://github.com/rollup/rollup/issues/126))
789
790## 0.16.1
791
792* Handle assignment patterns, and destructured/rest parameters, when analysing scopes
793* Fix bug preventing project from self-building (make base `Identifier` class markable)
794
795## 0.16.0
796
797* Internal refactoring ([#99](https://github.com/rollup/rollup/pull/99))
798* Optimisation for statically-analysable namespace imports ([#99](https://github.com/rollup/rollup/pull/99))
799* Windows support (theoretically!) ([#117](https://github.com/rollup/rollup/pull/117) / [#119](https://github.com/rollup/rollup/pull/119))
800
801## 0.15.0
802
803* Load all modules specified by `import` statements, and do tree-shaking synchronously once loading is complete. This results in simpler and faster code, and enables future improvements ([#97](https://github.com/rollup/rollup/pull/97))
804* Only rewrite `foo` as `exports.foo` when it makes sense to ([#92](https://github.com/rollup/rollup/issues/92))
805* Fix bug with shadowed variables that are eventually exported ([#91](https://github.com/rollup/rollup/issues/91))
806* Exclude unused function declarations that happen to modify a used name ([#90](https://github.com/rollup/rollup/pull/90))
807* Simplify internal `Scope` model – scopes always attach to blocks, never function expressions/declarations
808
809## 0.14.1
810
811* `export { name } from './other'` does not create a local binding ([#16](https://github.com/rollup/rollup/issues/16))
812* A single binding can be exported under multiple names ([#18](https://github.com/rollup/rollup/issues/18))
813* `useStrict` option exposed to CLI as `--strict`/`--no-strict` ([#81](https://github.com/rollup/rollup/issues/81))
814* Neater exports from ES6 bundles
815
816## 0.14.0
817
818* Internal refactoring
819* Correctly deconflict generated default export names ([#72](https://github.com/rollup/rollup/issues/72))
820* Handle `export { x } from 'y'` declarations ([#74](https://github.com/rollup/rollup/issues/74))
821* Dedupe named imports from external modules in ES6 bundles ([#77](https://github.com/rollup/rollup/issues/77))
822
823## 0.13.0
824
825* Support `banner` and `footer` options ([#66](https://github.com/rollup/rollup/pull/66))
826* Remove pre-existing sourcemap comments ([#66](https://github.com/rollup/rollup/pull/66))
827* Deconflict external imports ([#66](https://github.com/rollup/rollup/pull/66))
828* Use existing AST, if provided ([#66](https://github.com/rollup/rollup/pull/66))
829* Rename internal namespace exports as appropriate ([#66](https://github.com/rollup/rollup/pull/66))
830* Remove uninitialised var declarations that get exported ([#66](https://github.com/rollup/rollup/pull/66))
831* Rename variables named `exports` to avoid conflicts ([#66](https://github.com/rollup/rollup/pull/66))
832
833## 0.12.1
834
835* Don't attempt to mark statements belonging to external modules ([#68](https://github.com/rollup/rollup/issues/68))
836* Correctly deshadow variables that conflict with imports ([#68](https://github.com/rollup/rollup/issues/68))
837
838## 0.12.0
839
840* Internal re-architecting, resulting in more efficient bundling with reduced memory usage
841* Shorthand properties are expanded if necessary ([#61](https://github.com/rollup/rollup/issues/61))
842* Fixed various bugs with bundle external dependencies, particularly when generating ES6 bundles ([#59](https://github.com/rollup/rollup/issues/59))
843* Add `--globals` option to CLI ([#60](https://github.com/rollup/rollup/pull/60))
844* Allow imports of external modules for side-effects ([#55](https://github.com/rollup/rollup/pull/55))
845* Prevent Rollup hanging on non-existent external module ([#54](https://github.com/rollup/rollup/pull/54))
846
847## 0.11.4
848
849* Side-effect preservation applies to internal default exports ([#43](https://github.com/rollup/rollup/issues/43))
850
851## 0.11.3
852
853* Class methods are not incorrectly renamed ([#42](https://github.com/rollup/rollup/issues/42))
854* External modules are assigned names before canonical names are determined ([#42](https://github.com/rollup/rollup/issues/42))
855
856## 0.11.2
857
858* Correctly handle computed properties (e.g. `foo[bar]`) when discovering dependencies ([#47](https://github.com/rollup/rollup/pull/47))
859
860## 0.11.1
861
862* Support for `export * from '..'` ([#46](https://github.com/rollup/rollup/pull/46))
863
864## 0.11.0
865
866* Experimental browser-friendly build (`dist/rollup.browser.js`) ([#25](https://github.com/rollup/rollup/issues/25))
867* Internal re-architecting to make discovery process simpler and more performant
868* Preservation of side-effects that happen in a separate module to the affected definition ([#39](https://github.com/rollup/rollup/issues/39))
869
870## 0.10.0
871
872* Better sorting algorithm – sorting happens at the module level, rather than the statement level. This avoids certain edge cases
873* IIFEs are ignored for the purposes of distinguishing between 'strong' and 'weak' dependencies
874* Empty `var` declarations for exported bindings are omitted
875
876## 0.9.1
877
878* Much faster statement insertion (fixes major 0.9.0 performance regression)
879
880## 0.9.0
881
882* BREAKING - `resolvePath` is now `resolveId`. The returned `id` (which by default is a filepath) is passed to the `load` function, which can optionally be overridden, and which is applied to all modules including the entry module. This allows custom resolver and loading logic for integration with third party systems (e.g. JSPM) or, eventually, in-browser usage ([#30](https://github.com/rollup/rollup/issues/30))
883* A statement cannot appear after later statements from the same bundle ([#34](https://github.com/rollup/rollup/issues/34))
884* Tricky cyclical dependencies are handled ([#36](https://github.com/rollup/rollup/issues/36))
885* `sourcemap` option is used by CLI (was omitted previously)
886
887## 0.8.3
888
889* Correctly rename functions that have arguments with the same name ([#32](https://github.com/rollup/rollup/issues/32))
890* Ensure unused default exports are given a legal name ([#33](https://github.com/rollup/rollup/issues/33))
891
892## 0.8.2
893
894* Support `moduleId` and `moduleName` via CLI ([#24](https://github.com/rollup/rollup/issues/24))
895
896## 0.8.1
897
898* Anonymous functions that are exported as default are converted to named function declarations for correct hoisting, rather than being bound to functions ([#29](https://github.com/rollup/rollup/issues/29))
899* Automatically-generated default export names are deconflicted with local definitions ([#29](https://github.com/rollup/rollup/issues/29))
900
901## 0.8.0
902
903* Top-level variable declarations with multiple declarators are split up, to avoid unnecessary code importing and incorrectly-ordered statements ([#26](https://github.com/rollup/rollup/issues/26))
904* `this` at the top level is `undefined` ([#28](https://github.com/rollup/rollup/issues/28))
905
906## 0.7.8
907
908* Avoid using `path.parse` - unsupported in node 0.10
909
910## 0.7.7
911
912* Promise `source-map-support` from `devDependencies` to `dependencies` ([#23](https://github.com/rollup/rollup/issues/23))
913
914## 0.7.6
915
916* Better placement of `export default` statements ([#21](https://github.com/rollup/rollup/issues/21))
917* Prevent function calls and property assignments from being treated as rebinding for sake of unbound default exports
918* Add `--external foo,bar,baz` option to CLI (equivalent to `external: ['foo', 'bar', 'baz']`)
919* Add CLI tests
920
921## 0.7.5
922
923* Prevent accidental conflicts with the global namespace ([#20](https://github.com/rollup/rollup/issues/20))
924
925## 0.7.4
926
927* More precise statement re-ordering to satisfy `export default` constraint (fixes bug introduced in 0.7.3)
928
929## 0.7.3
930
931* Default exports are not bound. To enable this, statements within a module are sorted to retain their original order ([#15](https://github.com/rollup/rollup/issues/15))
932* Better positioning of comments ([#14](https://github.com/rollup/rollup/issues/14))
933* Various fixes to get Travis-CI rigged up
934
935## 0.7.2
936
937* Fix sourcemap paths on Windows ([#6](https://github.com/rollup/rollup/pull/6))
938
939## 0.7.1
940
941* Named functions can be used as default exports from a bundle
942* Method calls are assumed to mutate the owner (i.e. `foo.bar()` mutates `foo`) ([#13](https://github.com/rollup/rollup/issues/13))
943* `options.indent` can be used to control indentation of resulting bundle. `options.true` (default) means 'auto', `options.false` means empty string. Alternatively specify whitespace e.g. `' '` or `'\t'` ([#5](https://github.com/rollup/rollup/issues/5))
944
945## 0.7.0
946
947* Ensure statements are always separated by a newline ([#9](https://github.com/rollup/rollup/pull/9))
948* Use CommonJS `exports` correctly (UMD exports)
949* Throw error if `moduleName` is required but missing (UMD exports)
950* Attach IIFE global to `this` rather than `window`
951* Allow names inside bundle to the the names of `Object.prototype` properties ([#12](https://github.com/rollup/rollup/pull/12))
952* Keep exports live ([#11](https://github.com/rollup/rollup/pull/11))
953
954## 0.6.5
955
956* Add sourceMappingURL comment to code, as appropriate
957* Higher resolution sourcemaps
958
959## 0.6.4
960
961* Fix CJS bundling with default export
962
963## 0.6.3
964
965* Fix exports and external module imports with some output formats
966* Fix endless cycle bug on Windows ([#3](https://github.com/rollup/rollup/pull/3)) - thanks @Bobris
967
968## 0.6.2
969
970* Permit assignments to properties of imported bindings
971
972## 0.6.1
973
974* Support for basic transformers
975
976## 0.6.0
977
978* BREAKING - `rollup.rollup` and `bundle.write` both take a single options argument
979* BREAKING - external modules must be declared upfront with `options.external: [...]`
980* Non-relative module paths will be resolved by looking for `jsnext:main` fields in the appropriate `package.json` files. This behaviour can be overridden by passing an alternative `resolveExternal` function
981* Fix sourcemap options
982* Include CLI files in npm package (duh)
983
984## 0.5.0
985
986* Command line interface
987* Sourcemap generation
988* Correct behaviour with `export { x as y } from 'z'`
989
990## 0.4.1
991
992* More import name deconflicting
993
994## 0.4.0
995
996* Self-hosting! `rollup.rollup` now rolls up rollup
997* Fix bug with comments inside a statement later being appended to it
998* Prevent shadowing of external modules
999* Rewrite computed property identifiers where necessary
1000* Preserve original statement order where possible
1001* Internal refactoring
1002
1003## 0.3.1
1004
1005* Saner deconflicting
1006* Rename namespace imports from external modules correctly
1007
1008## 0.3.0
1009
1010* Basic functionality present, mostly spec-compliant
1011
1012## 0.2.1
1013
1014* Include dist files in npm package (duh)
1015
1016## 0.2.0
1017
1018* First release capable of doing anything useful
1019* Still lots of basic functionality missing
1020
1021## 0.1.0
1022
1023* Initial experiment