Releases: meriyah/meriyah
Releases · meriyah/meriyah
v6.0.1
v6.0.0
Bug Fixes
- lexer: identifier starts with unicode-escape needs ID_Start check (e1d5534)
- lexer: in non-strict mode, future reserved keyword can be used as identifier (5764ad7)
- lexer: no line break is allowed in regex literal (773208b)
- lexer: private identifier can start with escaped unicode (85a39e7)
- lexer: unicode escaped "let" can not be let keyword (406d72c)
- parser: "arguments" is not allowed in class property initializer or static block (c9857c6)
- parser: "use strict" directive could be after invalid string (527ea97), closes #149
- parser: a newline may not precede the
*
token in ayield
expression (e0eeb89) - parser: add missing import-attributes support in ExportNamedDeclaration (f7864a6), closes #289
- parser: async function should not skip duplication error (94d41ae), closes #291
- parser: catch block without catch-binding should have lexical scope (db7b3ae)
- parser: class is implicit strict mode, but decorator before class is not (97f4927)
- parser: class static block disallows "await" as identifier (4c7f2c3)
- parser: class static block disllows "yield" as idenfifier (1cb0d65)
- parser: class static block has no return statement (f2b73ee)
- parser: dot property name can be escaped reserved or future reserved (eedce98)
- parser: escaped reserved keyword can be used as class element name (b8e4b3c)
- parser: fix an edge case of invalid escape in tagged template (118fdae)
- parser: fix annexB behaviour (webcompat) of catch param (359dcbe)
- parser: fix destruct pattern check (1e5e394)
- parser: fix duplicated function params check (d0aeda6)
- parser: fix duplicated proto check in async() and async() => {} (66ad497)
- parser: fix early error on escaped oct and \8 \9 (33b68df)
- parser: fix import.meta check, await check and await in static block (b269996)
- parser: fix jsx parsing on '< / >' (ad71155), closes #185
- parser: fix jsx with comments in tag (a2e4767), closes #185
- parser: fix onToken callback for template and jsx (407a2ca), closes #215 #216
- parser: fix scoped analysis for export binding and name (22509b7)
- parser: fix simple params list and strict reserved check on func (635a41b), closes #295 #296
- parser: fix unicode identifier value and check (36a5ef6)
- parser: generator function should not skip duplication error (d3c953b)
- parser: in strict mode, escaped future reserved can be used as identifier but not destructible (762f8c1)
- parser: iteration/switch cannot across class static block boundry (c832eb6)
- parser: new.target is allowed in class static block (2cec2a9)
- parser: object literal ({a b}) is invalid (c069662), closes #73
- parser: oct escape and \8 \9 are not allowed in template string if not tagged (e12d75d)
- parser: only class static non-private property cannot be named 'prototype' (03ef7bc)
- parser: partially fix duplicated proto check in parenthesis (e998b9c)
- parser: private identifier should work in optional chaining (f22f7ad)
- paser: fix strict mode check for arrow function (4ca184a)
- paser: private identifier cannot be accessed on super (15d679d)
- scanner: fix value for huge BigInt (a09b497)
chore
Features
- lexer: support regexp v flag (unicodeSets) (1d9a1ee)
- parser: expose start/end/range/loc:{start,end} to ParseError (27691df), closes #156
- parser: implement lexical analysis of private identifiers (66217a1), closes #322
- parser: support arbitrary module namespace names (e43e93c), closes #200 #214
- parser: support class auto-accessor through next option (b0d1621), closes #327
- remove option "directives" (5d941e6)
- support unicode 16 (0514c83)
BREAKING CHANGES
- remove option "directives" as directives is in
ECMA spec, and ESTree spec. No point to make it an optional feature. - parser: ParseError is changed from index,loc:{line,column}
to start,end,range:[start,end],loc:{start:{line,column},end:{line,column}}
just like what we have on AST node when options ranges and loc is
turned on. - drop support of Nodejs < 18
- only distribute following files:
dist/meriyah.cjs
dist/meriyah.mjs
dist/meriyah.min.mjs
dist/meriyah.umd.js
dist/meriyah.umd.min.js
All transpiled with target: "ES2021"
v5.0.0
v4.3.3
v4.3.2
v4.3.1
v4.3.0
v4.2.1
Bug Fixes
- lexer: fix wrong error when using regex flag s together with m or y (d757c6b), closes #202
- parser: allow regular expression in JSXExpressionContainer (a5fcb80), closes #204
- parser: allow top level await in expressions (37c6361), closes #212
- parser: fix wrong starting loc for any non-trival expression in return statement (7063af5), closes #207
- parser: super call should be allowed in private method (6de707a), closes #203