Actualizacion maquina principal
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / acorn / CHANGELOG.md
1 ## 7.3.1 (2020-06-11)
2
3 ### Bug fixes
4
5 Make the string in the `version` export match the actual library version.
6
7 ## 7.3.0 (2020-06-11)
8
9 ### Bug fixes
10
11 Fix a bug that caused parsing of object patterns with a property named `set` that had a default value to fail.
12
13 ### New features
14
15 Add support for optional chaining (`?.`).
16
17 ## 7.2.0 (2020-05-09)
18
19 ### Bug fixes
20
21 Fix precedence issue in parsing of async arrow functions.
22
23 ### New features
24
25 Add support for nullish coalescing.
26
27 Add support for `import.meta`.
28
29 Support `export * as ...` syntax.
30
31 Upgrade to Unicode 13.
32
33 ## 6.4.1 (2020-03-09)
34
35 ### Bug fixes
36
37 More carefully check for valid UTF16 surrogate pairs in regexp validator.
38
39 ## 7.1.1 (2020-03-01)
40
41 ### Bug fixes
42
43 Treat `\8` and `\9` as invalid escapes in template strings.
44
45 Allow unicode escapes in property names that are keywords.
46
47 Don't error on an exponential operator expression as argument to `await`.
48
49 More carefully check for valid UTF16 surrogate pairs in regexp validator.
50
51 ## 7.1.0 (2019-09-24)
52
53 ### Bug fixes
54
55 Disallow trailing object literal commas when ecmaVersion is less than 5.
56
57 ### New features
58
59 Add a static `acorn` property to the `Parser` class that contains the entire module interface, to allow plugins to access the instance of the library that they are acting on.
60
61 ## 7.0.0 (2019-08-13)
62
63 ### Breaking changes
64
65 Changes the node format for dynamic imports to use the `ImportExpression` node type, as defined in [ESTree](https://github.com/estree/estree/blob/master/es2020.md#importexpression).
66
67 Makes 10 (ES2019) the default value for the `ecmaVersion` option.
68
69 ## 6.3.0 (2019-08-12)
70
71 ### New features
72
73 `sourceType: "module"` can now be used even when `ecmaVersion` is less than 6, to parse module-style code that otherwise conforms to an older standard.
74
75 ## 6.2.1 (2019-07-21)
76
77 ### Bug fixes
78
79 Fix bug causing Acorn to treat some characters as identifier characters that shouldn't be treated as such.
80
81 Fix issue where setting the `allowReserved` option to `"never"` allowed reserved words in some circumstances.
82
83 ## 6.2.0 (2019-07-04)
84
85 ### Bug fixes
86
87 Improve valid assignment checking in `for`/`in` and `for`/`of` loops.
88
89 Disallow binding `let` in patterns.
90
91 ### New features
92
93 Support bigint syntax with `ecmaVersion` >= 11.
94
95 Support dynamic `import` syntax with `ecmaVersion` >= 11.
96
97 Upgrade to Unicode version 12.
98
99 ## 6.1.1 (2019-02-27)
100
101 ### Bug fixes
102
103 Fix bug that caused parsing default exports of with names to fail.
104
105 ## 6.1.0 (2019-02-08)
106
107 ### Bug fixes
108
109 Fix scope checking when redefining a `var` as a lexical binding.
110
111 ### New features
112
113 Split up `parseSubscripts` to use an internal `parseSubscript` method to make it easier to extend with plugins.
114
115 ## 6.0.7 (2019-02-04)
116
117 ### Bug fixes
118
119 Check that exported bindings are defined.
120
121 Don't treat `\u180e` as a whitespace character.
122
123 Check for duplicate parameter names in methods.
124
125 Don't allow shorthand properties when they are generators or async methods.
126
127 Forbid binding `await` in async arrow function's parameter list.
128
129 ## 6.0.6 (2019-01-30)
130
131 ### Bug fixes
132
133 The content of class declarations and expressions is now always parsed in strict mode.
134
135 Don't allow `let` or `const` to bind the variable name `let`.
136
137 Treat class declarations as lexical.
138
139 Don't allow a generator function declaration as the sole body of an `if` or `else`.
140
141 Ignore `"use strict"` when after an empty statement.
142
143 Allow string line continuations with special line terminator characters.
144
145 Treat `for` bodies as part of the `for` scope when checking for conflicting bindings.
146
147 Fix bug with parsing `yield` in a `for` loop initializer.
148
149 Implement special cases around scope checking for functions.
150
151 ## 6.0.5 (2019-01-02)
152
153 ### Bug fixes
154
155 Fix TypeScript type for `Parser.extend` and add `allowAwaitOutsideFunction` to options type.
156
157 Don't treat `let` as a keyword when the next token is `{` on the next line.
158
159 Fix bug that broke checking for parentheses around an object pattern in a destructuring assignment when `preserveParens` was on.
160
161 ## 6.0.4 (2018-11-05)
162
163 ### Bug fixes
164
165 Further improvements to tokenizing regular expressions in corner cases.
166
167 ## 6.0.3 (2018-11-04)
168
169 ### Bug fixes
170
171 Fix bug in tokenizing an expression-less return followed by a function followed by a regular expression.
172
173 Remove stray symlink in the package tarball.
174
175 ## 6.0.2 (2018-09-26)
176
177 ### Bug fixes
178
179 Fix bug where default expressions could fail to parse inside an object destructuring assignment expression.
180
181 ## 6.0.1 (2018-09-14)
182
183 ### Bug fixes
184
185 Fix wrong value in `version` export.
186
187 ## 6.0.0 (2018-09-14)
188
189 ### Bug fixes
190
191 Better handle variable-redefinition checks for catch bindings and functions directly under if statements.
192
193 Forbid `new.target` in top-level arrow functions.
194
195 Fix issue with parsing a regexp after `yield` in some contexts.
196
197 ### New features
198
199 The package now comes with TypeScript definitions.
200
201 ### Breaking changes
202
203 The default value of the `ecmaVersion` option is now 9 (2018).
204
205 Plugins work differently, and will have to be rewritten to work with this version.
206
207 The loose parser and walker have been moved into separate packages (`acorn-loose` and `acorn-walk`).
208
209 ## 5.7.3 (2018-09-10)
210
211 ### Bug fixes
212
213 Fix failure to tokenize regexps after expressions like `x.of`.
214
215 Better error message for unterminated template literals.
216
217 ## 5.7.2 (2018-08-24)
218
219 ### Bug fixes
220
221 Properly handle `allowAwaitOutsideFunction` in for statements.
222
223 Treat function declarations at the top level of modules like let bindings.
224
225 Don't allow async function declarations as the only statement under a label.
226
227 ## 5.7.0 (2018-06-15)
228
229 ### New features
230
231 Upgraded to Unicode 11.
232
233 ## 5.6.0 (2018-05-31)
234
235 ### New features
236
237 Allow U+2028 and U+2029 in string when ECMAVersion >= 10.
238
239 Allow binding-less catch statements when ECMAVersion >= 10.
240
241 Add `allowAwaitOutsideFunction` option for parsing top-level `await`.
242
243 ## 5.5.3 (2018-03-08)
244
245 ### Bug fixes
246
247 A _second_ republish of the code in 5.5.1, this time with yarn, to hopefully get valid timestamps.
248
249 ## 5.5.2 (2018-03-08)
250
251 ### Bug fixes
252
253 A republish of the code in 5.5.1 in an attempt to solve an issue with the file timestamps in the npm package being 0.
254
255 ## 5.5.1 (2018-03-06)
256
257 ### Bug fixes
258
259 Fix misleading error message for octal escapes in template strings.
260
261 ## 5.5.0 (2018-02-27)
262
263 ### New features
264
265 The identifier character categorization is now based on Unicode version 10.
266
267 Acorn will now validate the content of regular expressions, including new ES9 features.
268
269 ## 5.4.0 (2018-02-01)
270
271 ### Bug fixes
272
273 Disallow duplicate or escaped flags on regular expressions.
274
275 Disallow octal escapes in strings in strict mode.
276
277 ### New features
278
279 Add support for async iteration.
280
281 Add support for object spread and rest.
282
283 ## 5.3.0 (2017-12-28)
284
285 ### Bug fixes
286
287 Fix parsing of floating point literals with leading zeroes in loose mode.
288
289 Allow duplicate property names in object patterns.
290
291 Don't allow static class methods named `prototype`.
292
293 Disallow async functions directly under `if` or `else`.
294
295 Parse right-hand-side of `for`/`of` as an assignment expression.
296
297 Stricter parsing of `for`/`in`.
298
299 Don't allow unicode escapes in contextual keywords.
300
301 ### New features
302
303 Parsing class members was factored into smaller methods to allow plugins to hook into it.
304
305 ## 5.2.1 (2017-10-30)
306
307 ### Bug fixes
308
309 Fix a token context corruption bug.
310
311 ## 5.2.0 (2017-10-30)
312
313 ### Bug fixes
314
315 Fix token context tracking for `class` and `function` in property-name position.
316
317 Make sure `%*` isn't parsed as a valid operator.
318
319 Allow shorthand properties `get` and `set` to be followed by default values.
320
321 Disallow `super` when not in callee or object position.
322
323 ### New features
324
325 Support [`directive` property](https://github.com/estree/estree/compare/b3de58c9997504d6fba04b72f76e6dd1619ee4eb...1da8e603237144f44710360f8feb7a9977e905e0) on directive expression statements.
326
327 ## 5.1.2 (2017-09-04)
328
329 ### Bug fixes
330
331 Disable parsing of legacy HTML-style comments in modules.
332
333 Fix parsing of async methods whose names are keywords.
334
335 ## 5.1.1 (2017-07-06)
336
337 ### Bug fixes
338
339 Fix problem with disambiguating regexp and division after a class.
340
341 ## 5.1.0 (2017-07-05)
342
343 ### Bug fixes
344
345 Fix tokenizing of regexps in an object-desctructuring `for`/`of` loop and after `yield`.
346
347 Parse zero-prefixed numbers with non-octal digits as decimal.
348
349 Allow object/array patterns in rest parameters.
350
351 Don't error when `yield` is used as a property name.
352
353 Allow `async` as a shorthand object property.
354
355 ### New features
356
357 Implement the [template literal revision proposal](https://github.com/tc39/proposal-template-literal-revision) for ES9.
358
359 ## 5.0.3 (2017-04-01)
360
361 ### Bug fixes
362
363 Fix spurious duplicate variable definition errors for named functions.
364
365 ## 5.0.2 (2017-03-30)
366
367 ### Bug fixes
368
369 A binary operator after a parenthesized arrow expression is no longer incorrectly treated as an error.
370
371 ## 5.0.0 (2017-03-28)
372
373 ### Bug fixes
374
375 Raise an error for duplicated lexical bindings.
376
377 Fix spurious error when an assignement expression occurred after a spread expression.
378
379 Accept regular expressions after `of` (in `for`/`of`), `yield` (in a generator), and braced arrow functions.
380
381 Allow labels in front or `var` declarations, even in strict mode.
382
383 ### Breaking changes
384
385 Parse declarations following `export default` as declaration nodes, not expressions. This means that class and function declarations nodes can now have `null` as their `id`.
386
387 ## 4.0.11 (2017-02-07)
388
389 ### Bug fixes
390
391 Allow all forms of member expressions to be parenthesized as lvalue.
392
393 ## 4.0.10 (2017-02-07)
394
395 ### Bug fixes
396
397 Don't expect semicolons after default-exported functions or classes, even when they are expressions.
398
399 Check for use of `'use strict'` directives in non-simple parameter functions, even when already in strict mode.
400
401 ## 4.0.9 (2017-02-06)
402
403 ### Bug fixes
404
405 Fix incorrect error raised for parenthesized simple assignment targets, so that `(x) = 1` parses again.
406
407 ## 4.0.8 (2017-02-03)
408
409 ### Bug fixes
410
411 Solve spurious parenthesized pattern errors by temporarily erring on the side of accepting programs that our delayed errors don't handle correctly yet.
412
413 ## 4.0.7 (2017-02-02)
414
415 ### Bug fixes
416
417 Accept invalidly rejected code like `(x).y = 2` again.
418
419 Don't raise an error when a function _inside_ strict code has a non-simple parameter list.
420
421 ## 4.0.6 (2017-02-02)
422
423 ### Bug fixes
424
425 Fix exponential behavior (manifesting itself as a complete hang for even relatively small source files) introduced by the new 'use strict' check.
426
427 ## 4.0.5 (2017-02-02)
428
429 ### Bug fixes
430
431 Disallow parenthesized pattern expressions.
432
433 Allow keywords as export names.
434
435 Don't allow the `async` keyword to be parenthesized.
436
437 Properly raise an error when a keyword contains a character escape.
438
439 Allow `"use strict"` to appear after other string literal expressions.
440
441 Disallow labeled declarations.
442
443 ## 4.0.4 (2016-12-19)
444
445 ### Bug fixes
446
447 Fix crash when `export` was followed by a keyword that can't be
448 exported.
449
450 ## 4.0.3 (2016-08-16)
451
452 ### Bug fixes
453
454 Allow regular function declarations inside single-statement `if` branches in loose mode. Forbid them entirely in strict mode.
455
456 Properly parse properties named `async` in ES2017 mode.
457
458 Fix bug where reserved words were broken in ES2017 mode.
459
460 ## 4.0.2 (2016-08-11)
461
462 ### Bug fixes
463
464 Don't ignore period or 'e' characters after octal numbers.
465
466 Fix broken parsing for call expressions in default parameter values of arrow functions.
467
468 ## 4.0.1 (2016-08-08)
469
470 ### Bug fixes
471
472 Fix false positives in duplicated export name errors.
473
474 ## 4.0.0 (2016-08-07)
475
476 ### Breaking changes
477
478 The default `ecmaVersion` option value is now 7.
479
480 A number of internal method signatures changed, so plugins might need to be updated.
481
482 ### Bug fixes
483
484 The parser now raises errors on duplicated export names.
485
486 `arguments` and `eval` can now be used in shorthand properties.
487
488 Duplicate parameter names in non-simple argument lists now always produce an error.
489
490 ### New features
491
492 The `ecmaVersion` option now also accepts year-style version numbers
493 (2015, etc).
494
495 Support for `async`/`await` syntax when `ecmaVersion` is >= 8.
496
497 Support for trailing commas in call expressions when `ecmaVersion` is >= 8.
498
499 ## 3.3.0 (2016-07-25)
500
501 ### Bug fixes
502
503 Fix bug in tokenizing of regexp operator after a function declaration.
504
505 Fix parser crash when parsing an array pattern with a hole.
506
507 ### New features
508
509 Implement check against complex argument lists in functions that enable strict mode in ES7.
510
511 ## 3.2.0 (2016-06-07)
512
513 ### Bug fixes
514
515 Improve handling of lack of unicode regexp support in host
516 environment.
517
518 Properly reject shorthand properties whose name is a keyword.
519
520 ### New features
521
522 Visitors created with `visit.make` now have their base as _prototype_, rather than copying properties into a fresh object.
523
524 ## 3.1.0 (2016-04-18)
525
526 ### Bug fixes
527
528 Properly tokenize the division operator directly after a function expression.
529
530 Allow trailing comma in destructuring arrays.
531
532 ## 3.0.4 (2016-02-25)
533
534 ### Fixes
535
536 Allow update expressions as left-hand-side of the ES7 exponential operator.
537
538 ## 3.0.2 (2016-02-10)
539
540 ### Fixes
541
542 Fix bug that accidentally made `undefined` a reserved word when parsing ES7.
543
544 ## 3.0.0 (2016-02-10)
545
546 ### Breaking changes
547
548 The default value of the `ecmaVersion` option is now 6 (used to be 5).
549
550 Support for comprehension syntax (which was dropped from the draft spec) has been removed.
551
552 ### Fixes
553
554 `let` and `yield` are now “contextual keywords”, meaning you can mostly use them as identifiers in ES5 non-strict code.
555
556 A parenthesized class or function expression after `export default` is now parsed correctly.
557
558 ### New features
559
560 When `ecmaVersion` is set to 7, Acorn will parse the exponentiation operator (`**`).
561
562 The identifier character ranges are now based on Unicode 8.0.0.
563
564 Plugins can now override the `raiseRecoverable` method to override the way non-critical errors are handled.
565
566 ## 2.7.0 (2016-01-04)
567
568 ### Fixes
569
570 Stop allowing rest parameters in setters.
571
572 Disallow `y` rexexp flag in ES5.
573
574 Disallow `\00` and `\000` escapes in strict mode.
575
576 Raise an error when an import name is a reserved word.
577
578 ## 2.6.2 (2015-11-10)
579
580 ### Fixes
581
582 Don't crash when no options object is passed.
583
584 ## 2.6.0 (2015-11-09)
585
586 ### Fixes
587
588 Add `await` as a reserved word in module sources.
589
590 Disallow `yield` in a parameter default value for a generator.
591
592 Forbid using a comma after a rest pattern in an array destructuring.
593
594 ### New features
595
596 Support parsing stdin in command-line tool.
597
598 ## 2.5.0 (2015-10-27)
599
600 ### Fixes
601
602 Fix tokenizer support in the command-line tool.
603
604 Stop allowing `new.target` outside of functions.
605
606 Remove legacy `guard` and `guardedHandler` properties from try nodes.
607
608 Stop allowing multiple `__proto__` properties on an object literal in strict mode.
609
610 Don't allow rest parameters to be non-identifier patterns.
611
612 Check for duplicate paramter names in arrow functions.