1 | # buble changelog
|
2 |
|
3 | ## 0.16.0
|
4 |
|
5 | * Allow truthy dash-cased props ([#2](https://github.com/Rich-Harris/buble/pull/2))
|
6 | * Make class accessors configurable ([#3](https://github.com/Rich-Harris/buble/pull/3))
|
7 | * Support JSX pragma comments ([#5](https://github.com/Rich-Harris/buble/pull/5))
|
8 | * Handle JSX with no spaces between attributes ([#6](https://github.com/Rich-Harris/buble/pull/6))
|
9 |
|
10 | ## 0.15.2
|
11 |
|
12 | * Don't create function names for object methods with `namedFunctionExpressions: false`
|
13 | * Simplify destructuring assignment statements
|
14 | * Give unique names to methods that shadow free variables ([#166](https://gitlab.com/Rich-Harris/buble/issues/166))
|
15 |
|
16 | ## 0.15.1
|
17 |
|
18 | * Fix `Object.assign` regression ([#163](https://gitlab.com/Rich-Harris/buble/issues/163))
|
19 |
|
20 | ## 0.15.0
|
21 |
|
22 | * More informative CLI errors when input comes from stdin ([#155](https://gitlab.com/Rich-Harris/buble/issues/155))
|
23 | * Prevent PhantomJS shadowing errors ([#154](https://gitlab.com/Rich-Harris/buble/issues/154))
|
24 | * Use local `register.js` in tests ([#153](https://gitlab.com/Rich-Harris/buble/issues/153))
|
25 | * Correct CLI output filename with .jsx input ([#151](https://gitlab.com/Rich-Harris/buble/issues/151))
|
26 | * Fix whitespace removal bug ([#159](https://gitlab.com/Rich-Harris/buble/issues/159))
|
27 | * Allow computed properties in object destructuring ([#146](https://gitlab.com/Rich-Harris/buble/issues/146))
|
28 | * Support rest elements in array destructuring ([#147](https://gitlab.com/Rich-Harris/buble/issues/147))
|
29 | * Fix array swap assignment expression ([#148](https://gitlab.com/Rich-Harris/buble/issues/148))
|
30 | * Allow template string as destructuring default ([#145](https://gitlab.com/Rich-Harris/buble/issues/145))
|
31 | * Support multiple returning loops with block scoping ([cbc17ad5e](https://gitlab.com/Rich-Harris/buble/commit/cbc17ad5e1dc6e8af820fee372e6fb68e475afa4))
|
32 | * Fix `super` with spread arguments ([#129](https://gitlab.com/Rich-Harris/buble/issues/129))
|
33 | * Arrow function returning computed property ([#126](https://gitlab.com/Rich-Harris/buble/issues/126))
|
34 | * Allow computed property and object spread to coexist ([#144](https://gitlab.com/Rich-Harris/buble/issues/144))
|
35 | * Add `namedFunctionExpressions` option to prevent scope leak in old browsers ([#130](https://gitlab.com/Rich-Harris/buble/issues/130))
|
36 | * Fix exponentiation assignment edge case ([#122](https://gitlab.com/Rich-Harris/buble/issues/122))
|
37 | * Allow CLI `--output` flag to work with stdin input
|
38 |
|
39 | ## 0.14.3
|
40 |
|
41 | * Prevent crashing on Node versions more recent than the latest 'supported' version ([#102](https://gitlab.com/Rich-Harris/buble/merge_requests/102))
|
42 |
|
43 | ## 0.14.2
|
44 |
|
45 | * Allow `.jsx` file extension ([#127](https://gitlab.com/Rich-Harris/buble/issues/127))
|
46 | * Handle trailing comma in spread operator ([#133](https://gitlab.com/Rich-Harris/buble/issues/133))
|
47 | * Allow empty code blocks in JSX ([#131](https://gitlab.com/Rich-Harris/buble/issues/131))
|
48 | * Allow computed shorthand function name with spread in body ([#135](https://gitlab.com/Rich-Harris/buble/issues/135))
|
49 | * Add `--objectAssign` CLI option ([#113](https://gitlab.com/Rich-Harris/buble/issues/113))
|
50 | * Allow numeric literals as shorthand method keys ([#139](https://gitlab.com/Rich-Harris/buble/issues/139))
|
51 |
|
52 | ## 0.14.1
|
53 |
|
54 | * fix initialization of block-scoped variables in for-of and for-in loops ([#124](https://gitlab.com/Rich-Harris/buble/issues/124))
|
55 |
|
56 | ## 0.14.0
|
57 |
|
58 | * Always wrap block-less bodies in curlies ([#110](https://gitlab.com/Rich-Harris/buble/issues/110), [#117](https://gitlab.com/Rich-Harris/buble/issues/117), [!80](https://gitlab.com/Rich-Harris/buble/merge_requests/80))
|
59 | * Make sure block-scoped variables in loops have an initializer ([#124](https://gitlab.com/Rich-Harris/buble/issues/124))
|
60 | * Destructuring assignments ([!82](https://gitlab.com/Rich-Harris/buble/merge_requests/82))
|
61 | * Support string literals in object destructuring ([!81](https://gitlab.com/Rich-Harris/buble/merge_requests/81))
|
62 | * Standalone arrow function expression statements ([!79](https://gitlab.com/Rich-Harris/buble/merge_requests/79))
|
63 |
|
64 | ## 0.13.2
|
65 |
|
66 | * Fix spread operator when used with `new` and `this` ([#104](https://gitlab.com/Rich-Harris/buble/issues/104), [#115](https://gitlab.com/Rich-Harris/buble/issues/115))
|
67 |
|
68 | ## 0.13.1
|
69 |
|
70 | * Handle destructuring in for/for-of loop heads ([#95](https://gitlab.com/Rich-Harris/buble/issues/95))
|
71 | * Allow early return (without value) from loops ([#103](https://gitlab.com/Rich-Harris/buble/issues/103), [#105](https://gitlab.com/Rich-Harris/buble/issues/105))
|
72 |
|
73 | ## 0.13.0
|
74 |
|
75 | * Require an `objectAssign` option to be specified if using object spread operator ([#93](https://gitlab.com/Rich-Harris/buble/issues/93))
|
76 | * Fix spread operator with expression method calls and template strings ([!74](https://gitlab.com/Rich-Harris/buble/merge_requests/74))
|
77 |
|
78 | ## 0.12.5
|
79 |
|
80 | * Prevent reserved words being used as identifiers ([#86](https://gitlab.com/Rich-Harris/buble/issues/86))
|
81 | * Use correct `this` when transpiling `super` inside arrow function ([#89](https://gitlab.com/Rich-Harris/buble/issues/89))
|
82 | * Handle body-less `for-of` loops ([#80](https://gitlab.com/Rich-Harris/buble/issues/80))
|
83 |
|
84 | ## 0.12.4
|
85 |
|
86 | * Allow references to precede declaration (inside function) in block scoping ([#87](https://gitlab.com/Rich-Harris/buble/issues/87))
|
87 |
|
88 | ## 0.12.3
|
89 |
|
90 | * Argh, npm
|
91 |
|
92 | ## 0.12.2
|
93 |
|
94 | * Files missing in 0.12.1 (???)
|
95 |
|
96 | ## 0.12.1
|
97 |
|
98 | * Don't require space before parens of shorthand computed method ([#82](https://gitlab.com/Rich-Harris/buble/issues/82))
|
99 | * Allow string keys for shorthand methods ([#82](https://gitlab.com/Rich-Harris/buble/issues/82))
|
100 |
|
101 | ## 0.12.0
|
102 |
|
103 | * Support `u` flag in regular expression literals ([!62](https://gitlab.com/Rich-Harris/buble/merge_requests/62))
|
104 | * Save `buble/register` transformations to `$HOME/.buble-cache` ([!63](https://gitlab.com/Rich-Harris/buble/merge_requests/63))
|
105 |
|
106 | ## 0.11.6
|
107 |
|
108 | * Allow shorthand methods with computed names ([#78](https://gitlab.com/Rich-Harris/buble/issues/78))
|
109 | * Include code snippet in `error.toString()` ([#79](https://gitlab.com/Rich-Harris/buble/issues/79))
|
110 |
|
111 | ## 0.11.5
|
112 |
|
113 | * Preserve whitespace between JSX tags on single line ([#65](https://gitlab.com/Rich-Harris/buble/issues/65))
|
114 |
|
115 | ## 0.11.4
|
116 |
|
117 | * Allow computed class methods, except accessors ([!56](https://gitlab.com/Rich-Harris/buble/merge_requests/56))
|
118 | * Compound destructuring ([!58](https://gitlab.com/Rich-Harris/buble/merge_requests/58))
|
119 |
|
120 | ## 0.11.3
|
121 |
|
122 | * Ensure inserted statements follow use strict pragma ([#72](https://gitlab.com/Rich-Harris/buble/issues/72))
|
123 |
|
124 | ## 0.11.2
|
125 |
|
126 | * Ensure closing parenthesis is in correct place when transpiling inline computed property object expressions ([#73](https://gitlab.com/Rich-Harris/buble/issues/73))
|
127 |
|
128 | ## 0.11.1
|
129 |
|
130 | * Fix computed property followed by non-computed property in inline expression
|
131 |
|
132 | ## 0.11.0
|
133 |
|
134 | * Computed properties ([#67](https://gitlab.com/Rich-Harris/buble/issues/67))
|
135 | * Allow `super(...)` to use rest arguments ([#69](https://gitlab.com/Rich-Harris/buble/issues/69))
|
136 |
|
137 | ## 0.10.7
|
138 |
|
139 | * Allow customisation of `Object.assign` (used in object spread) ([!51](https://gitlab.com/Rich-Harris/buble/merge_requests/51))
|
140 |
|
141 | ## 0.10.6
|
142 |
|
143 | * Handle sparse arrays ([#62](https://gitlab.com/Rich-Harris/buble/issues/62))
|
144 | * Handle spread expressions in JSX ([#64](https://gitlab.com/Rich-Harris/buble/issues/64))
|
145 |
|
146 | ## 0.10.5
|
147 |
|
148 | * Create intermediate directories when transforming via CLI ([#63](https://gitlab.com/Rich-Harris/buble/issues/63))
|
149 | * Update README ([#57](https://gitlab.com/Rich-Harris/buble/issues/57))
|
150 |
|
151 | ## 0.10.4
|
152 |
|
153 | * Support spread operator in object literals ([!45](https://gitlab.com/Rich-Harris/buble/merge_requests/45)) and JSX elements ([!46](https://gitlab.com/Rich-Harris/buble/merge_requests/46))
|
154 |
|
155 | ## 0.10.3
|
156 |
|
157 | * Disable intelligent destructuring, temporarily ([#53](https://gitlab.com/Rich-Harris/buble/issues/53))
|
158 | * Fix whitespace in JSX literals ([!39](https://gitlab.com/Rich-Harris/buble/merge_requests/39))
|
159 | * Add `: true` to value-less JSX attributes ([!40](https://gitlab.com/Rich-Harris/buble/merge_requests/40))
|
160 | * Quote invalid attribute names ([!41](https://gitlab.com/Rich-Harris/buble/merge_requests/41))
|
161 |
|
162 | ## 0.10.2
|
163 |
|
164 | * Don't add closing quote to JSX component without attributes ([#58](https://gitlab.com/Rich-Harris/buble/issues/58))
|
165 |
|
166 | ## 0.10.1
|
167 |
|
168 | * Fix handling of literals inside JSX
|
169 |
|
170 | ## 0.10.0
|
171 |
|
172 | * Basic JSX support
|
173 |
|
174 | ## 0.9.3
|
175 |
|
176 | * Better spread operator support, including with `arguments` ([#40](https://gitlab.com/Rich-Harris/buble/issues/40))
|
177 | * Fix indentation of inserted statements in class constructors ([#39](https://gitlab.com/Rich-Harris/buble/issues/39))
|
178 |
|
179 | ## 0.9.2
|
180 |
|
181 | * Allow class to have accessors and no constructor ([#48](https://gitlab.com/Rich-Harris/buble/issues/48))
|
182 | * Fix help message in CLI
|
183 |
|
184 | ## 0.9.1
|
185 |
|
186 | * Prevent confusion over `Literal` node keys
|
187 |
|
188 | ## 0.9.0
|
189 |
|
190 | * More complete and robust destructuring support ([#37](https://gitlab.com/Rich-Harris/buble/issues/37), [#43](https://gitlab.com/Rich-Harris/buble/issues/43))
|
191 | * Correct `this`/`arguments` references inside for-of loop
|
192 |
|
193 | ## 0.8.5
|
194 |
|
195 | * Allow destructured parameter to have default ([#43](https://gitlab.com/Rich-Harris/buble/issues/43))
|
196 | * Allow `continue`/`break` statements inside a for-of loop
|
197 |
|
198 | ## 0.8.4
|
199 |
|
200 | * Allow class body to follow ID/superclass without whitespace ([#46](https://gitlab.com/Rich-Harris/buble/issues/46))
|
201 |
|
202 | ## 0.8.3
|
203 |
|
204 | * Performance enhancements ([!23](https://gitlab.com/Rich-Harris/buble/merge_requests/23))
|
205 |
|
206 | ## 0.8.2
|
207 |
|
208 | * More robust version of ([!22](https://gitlab.com/Rich-Harris/buble/merge_requests/22))
|
209 |
|
210 | ## 0.8.1
|
211 |
|
212 | * Fix `export default class A extends B` (broken in 0.8.0) ([!22](https://gitlab.com/Rich-Harris/buble/merge_requests/22))
|
213 |
|
214 | ## 0.8.0
|
215 |
|
216 | * Subclasses inherit static methods ([#33](https://gitlab.com/Rich-Harris/buble/issues/33))
|
217 | * Performance enhancements ([!21](https://gitlab.com/Rich-Harris/buble/merge_requests/21))
|
218 |
|
219 | ## 0.7.1
|
220 |
|
221 | * Prevent omission of closing paren in template string ([#42](https://gitlab.com/Rich-Harris/buble/issues/42))
|
222 | * Separate variable declarations for each name in destructured declaration ([#18](https://gitlab.com/Rich-Harris/buble/merge_requests/18))
|
223 |
|
224 | ## 0.7.0
|
225 |
|
226 | * Allow arrow functions to be used as default parameter values ([#36](https://gitlab.com/Rich-Harris/buble/issues/36))
|
227 |
|
228 | ## 0.6.7
|
229 |
|
230 | * Support `static get` and `set` in classes ([#34](https://gitlab.com/Rich-Harris/buble/issues/34))
|
231 | * Support spread operator in expression method call ([!14](https://gitlab.com/Rich-Harris/buble/merge_requests/14))
|
232 | * Fix `for-of` loops with no space after opening paren ([#35](https://gitlab.com/Rich-Harris/buble/issues/35))
|
233 |
|
234 | ## 0.6.6
|
235 |
|
236 | * Fix another subclass `super()` bug ([#32](https://gitlab.com/Rich-Harris/buble/issues/32))
|
237 |
|
238 | ## 0.6.5
|
239 |
|
240 | * Fix `super()` call in subclass expression ([#32](https://gitlab.com/Rich-Harris/buble/issues/32))
|
241 | * Less defensive template string parenthesising ([!9](https://gitlab.com/Rich-Harris/buble/merge_requests/9))
|
242 |
|
243 | ## 0.6.4
|
244 |
|
245 | * Add Node 6 to support matrix
|
246 |
|
247 | ## 0.6.3
|
248 |
|
249 | * Handle empty template strings ([#28](https://gitlab.com/Rich-Harris/buble/issues/28))
|
250 |
|
251 | ## 0.6.2
|
252 |
|
253 | * Handle body-less do-while blocks ([#27](https://gitlab.com/Rich-Harris/buble/issues/27))
|
254 |
|
255 | ## 0.6.1
|
256 |
|
257 | * Always remember to close parens in template strings
|
258 |
|
259 | ## 0.6.0
|
260 |
|
261 | * Strip unnecessary empty strings from template literals
|
262 | * Intelligent destructuring for object patterns in parameters ([#17](https://gitlab.com/Rich-Harris/buble/issues/17))
|
263 |
|
264 | ## 0.5.8
|
265 |
|
266 | * Fix exponentiation assignment operator edge case
|
267 |
|
268 | ## 0.5.7
|
269 |
|
270 | * Exponentiation operator support ([#24](https://gitlab.com/Rich-Harris/buble/issues/24))
|
271 | * More informative error messages for for-of and tagged template strings
|
272 |
|
273 | ## 0.5.6
|
274 |
|
275 | * Add `dangerousTaggedTemplateString` ([!2](https://gitlab.com/Rich-Harris/buble/merge_requests/2)) and `dangerousForOf` ([!3](https://gitlab.com/Rich-Harris/buble/merge_requests/3)) transforms
|
276 | * Prevent deindentation causing errors with removed whitespace in class methods
|
277 | * Use correct identifier with default destructured function parameters ([#23](https://gitlab.com/Rich-Harris/buble/issues/23))
|
278 |
|
279 |
|
280 | ## 0.5.5
|
281 |
|
282 | * Ensure `return` is in correct place when creating bodies for arrow functions ([#21](https://gitlab.com/Rich-Harris/buble/issues/21))
|
283 | * Prevent deindentation of class methods causing breakage with destructuring statements ([#22](https://gitlab.com/Rich-Harris/buble/issues/22))
|
284 |
|
285 | ## 0.5.4
|
286 |
|
287 | * Install missing `chalk` dependency
|
288 | * Informative error messages when `buble/register` fails
|
289 |
|
290 | ## 0.5.3
|
291 |
|
292 | * Add `register.js` to package. Yes I'm an idiot
|
293 |
|
294 | ## 0.5.2
|
295 |
|
296 | * Add `buble/register` for use with e.g. Mocha
|
297 |
|
298 | ## 0.5.1
|
299 |
|
300 | * Remove unused dependency
|
301 |
|
302 | ## 0.5.0
|
303 |
|
304 | * Support `--target`, `--yes` and `--no` in CLI
|
305 | * Compile entire directory of files via CLI
|
306 | * Sourcemap support in CLI
|
307 | * All transforms can be disabled (or errors suppressed) with the `transforms` option (or `--yes` and `--no`, in the CLI)
|
308 | * `import` and `export` will throw an error unless `--no modules` transform is specified
|
309 | * Fix bug with destructuring
|
310 | * Fix bug with block scoping and loops
|
311 |
|
312 |
|
313 | ## 0.4.24
|
314 |
|
315 | * Throw if `let`/`const` is redeclared, or `var` is redeclared with a `let`/`const` (0.4.22 regression)
|
316 |
|
317 | ## 0.4.23
|
318 |
|
319 | * Add `buble.VERSION`
|
320 | * Tidy up build process (don't bundle Acorn incorrectly)
|
321 |
|
322 | ## 0.4.22
|
323 |
|
324 | * Allow double `var` declarations (only throw if `let` or `const` is redeclared)
|
325 |
|
326 | ## 0.4.21
|
327 |
|
328 | * Add `find` and `findIndex` helpers for 0.12 support
|
329 |
|
330 | ## 0.4.20
|
331 |
|
332 | * Bump to resolve unknown npm issue
|
333 |
|
334 | ## 0.4.19
|
335 |
|
336 | * Fix block scoping bug with for loops that don't need to be rewritten as functions
|
337 |
|
338 | ## 0.4.18
|
339 |
|
340 | * Fix break-inside-switch bug
|
341 |
|
342 | ## 0.4.17
|
343 |
|
344 | * Support `for...in` loops and block scoping
|
345 |
|
346 | ## 0.4.16
|
347 |
|
348 | * Add `ie` and `edge` to support matrix
|
349 |
|
350 | ## 0.4.15
|
351 |
|
352 | * Rewrite reserved properties if specified ([#9](https://gitlab.com/Rich-Harris/buble/issues/9))
|
353 |
|
354 | ## 0.4.14
|
355 |
|
356 | * Allow classes to extend expressions ([#15](https://gitlab.com/Rich-Harris/buble/issues/15))
|
357 | * Experimental (partially implemented) API for disabling transforms based on target environment or custom requirements
|
358 |
|
359 | ## 0.4.13
|
360 |
|
361 | * Fix return statement bug
|
362 |
|
363 | ## 0.4.12
|
364 |
|
365 | * More complete and robust transpilation of loops that need to be rewritten as functions to simulate block scoping ([#11](https://gitlab.com/Rich-Harris/buble/issues/11), [#12](https://gitlab.com/Rich-Harris/buble/issues/12), [#13](https://gitlab.com/Rich-Harris/buble/issues/13))
|
366 |
|
367 | ## 0.4.11
|
368 |
|
369 | * Remove source-map-support from CLI (only useful during development)
|
370 |
|
371 | ## 0.4.10
|
372 |
|
373 | * Basic support for spread operator
|
374 |
|
375 | ## 0.4.9
|
376 |
|
377 | * Support getters and setters on subclasses
|
378 | * Disallow unsupported features e.g. generators
|
379 |
|
380 | ## 0.4.8
|
381 |
|
382 | * Support getters and setters on classes
|
383 | * Allow identifiers to be renamed in block-scoped destructuring ([#8](https://gitlab.com/Rich-Harris/buble/issues/8))
|
384 | * Transpile body-less arrow functions correctly ([#9](https://gitlab.com/Rich-Harris/buble/issues/4))
|
385 |
|
386 | ## 0.4.7
|
387 |
|
388 | * Add browser version
|
389 |
|
390 | ## 0.4.6
|
391 |
|
392 | * Report locations of parse/compile errors ([#4](https://gitlab.com/Rich-Harris/buble/issues/4))
|
393 |
|
394 | ## 0.4.5
|
395 |
|
396 | * Sourcemap support
|
397 |
|
398 | ## 0.4.4
|
399 |
|
400 | * Support for class expressions
|
401 | * More robust deconflicting
|
402 | * Various bugfixes
|
403 |
|
404 | ## 0.4.3
|
405 |
|
406 | * Handle arbitrary whitespace inside template literals
|
407 |
|
408 | ## 0.4.2
|
409 |
|
410 | * Fix bug-inducing typo
|
411 |
|
412 | ## 0.4.1
|
413 |
|
414 | * Rest parameters
|
415 |
|
416 | ## 0.4.0
|
417 |
|
418 | * Self-hosting!
|
419 |
|
420 | ## 0.3.4
|
421 |
|
422 | * Class inheritance
|
423 |
|
424 | ## 0.3.3
|
425 |
|
426 | * Handle quote marks in template literals
|
427 |
|
428 | ## 0.3.2
|
429 |
|
430 | * Handle empty `class` declarations
|
431 |
|
432 | ## 0.3.1
|
433 |
|
434 | * Add `bin` to package
|
435 |
|
436 | ## 0.3.0
|
437 |
|
438 | * (Very) basic CLI
|
439 | * Handle `export default class ...`
|
440 |
|
441 | ## 0.2.2
|
442 |
|
443 | * Initialise children of Property nodes
|
444 | * Prevent false positives with reference detection
|
445 |
|
446 | ## 0.2.1
|
447 |
|
448 | * Add missing files
|
449 |
|
450 | ## 0.2.0
|
451 |
|
452 | * Support for a bunch more ES2015 features
|
453 |
|
454 | ## 0.1.0
|
455 |
|
456 | * First (experimental) release
|