Changelog History
Page 2
-
v2.11.0-rc1 Changes
December 11, 2019๐ In addition to bug fixes and new features, this release candidate includes a ๐จ few refactorings which are not expected to influence JSHint's behavior.
๐ Bug Fixes
- ๐ฆ Expose new
typeof
value experimentally (dcef79a) - ๐ Improve parsing of
yield
(6fdb4f6) - ๐ Improve parsing of comma operator (897e035)
- Support spaces in /*global ... */ (e542f67)
๐ Features
- ๐ฆ Expose new
-
v2.10.3 Changes
November 04, 20192.10.3 (2019-11-04)
๐ Bug Fixes
- ๐ Allow more escapes with RegExp
u
flag (5ac5c46) - Correct binding power of AwaitExpression (af04b1e)
- Correct interpretation of commas (691dbdc)
- Correct restrictions on class method names (f670aeb)
- Correctly interpret class method names (82b49c4)
- Do not crash on invalid program code (b14acca)
- Interpret "object rest" ident as a binding (c0e9a5b)
- ๐ Relax
singleGroups
for async functions (c5dcd90) - Tolerate
static
as class method name (9cb3b20) - Tolerate valid assignments (0a60c9e)
- Validate lone arrow function parameter (38285cd)
- ๐ Allow more escapes with RegExp
-
v2.10.2 Changes
March 13, 20192.10.2 (2019-03-13)
๐ Bug Fixes
- ๐ Allow built-in method names in classes (b0c224b)
- ๐ Correct parsing of exported async fns (64b9dce)
- ๐ Correct parsing of RegExp character sets (668c4a3)
- ๐ Init block bindings in C-style for loop (404c9a0)
- ๐ Require const intlzr in C-style for loop (307e9fc)
- Track FutureReservedWords as idnts in ES5+ (d697ff4)
- Warn on reassignment of async functions (14384d3)
-
v2.10.1 Changes
February 05, 2019 -
v2.10.0 Changes
February 05, 20192.10.0 (2019-02-05)
๐ This release introduces support for the three most recent editions of
๐ JavaScript: ES7, ES8, and ES9. Users can enable support for any one of these
๐ via theesversion
linting option.Perhaps most notably, this includes "async functions." Since their
standardization in ES2017, no feature has been more requested. We're happy to
โ add support for this powerful new language feature. If the delay is any
๐ indication, extending JSHint's parser was no small task, and we were able to
๐ make many seemingly-unrelated corrections along the way.๐ That progress is easiest to see in JSHint's performance on Test262 (the
โ official test suite for the JavaScript programming language). Version 2.9.6
โ passed 84% of those tests. Version 2.10.0 passes 96%. We're excited to push
that number higher, especially considering that new language features and new
โ tests are being added every day. If you're curious about what needs to be done,
โ we maintain an "expectations file" describing every test JSHint is known to
fail today.๐ This release also includes brand-new parsing logic for classes. We thank Ethan
Dorta and Alex Kritchevsky, the two first-time contributors who made this
possible!๐ Bug Fixes
- Accept new RegExp flag introduced by ES6 (26b9e53)
- โ Add global variables introduced in ES2017 (aded551)
- โ Add globals for EventTarget interface (b78083a)
- โ Add globals for WindowOrWorkerGlobalScope (e0aac94)
- ๐ Allow YieldExpression as computed property (40dca82)
- Correct implementation of spread/rest (bd0ae0d)
- Correct invalid function invocation (cda02ae)
- ๐ Correct parsing of
let
token (030d6b4) - ๐ Correct parsing of arrow function (8fa6e39)
- ๐ Correct parsing of InExpression (06f54d0)
- Disallow dups in non-simple parameter list (4a5a4a5)
- Disallow fn declarations in stmt positions (a0e0305)
- Disallow YieldExpression in gnrtr params (17ca4e4)
- Enforce UniqueFormalParameters for methods (280d36b)
- Honor
globals
config in JavaScript API (0278731) - Report invalid syntax as error (5ca8b1a)
- โก๏ธ Update parsing of object "rest" property (58967ea)
๐ Features
- Enable object rest/spread via esversion (3fc9c19)
- Enforce ES2016 restriction on USD (2c2025b)
- Implement
noreturnawait
(70ab03d) - Implement
regexpu
option (962dced) - Implement ES2019 RegExp "dotall" (457d732)
- ๐ Implement support for async iteration (1af5930)
- ๐ Implement support for ES8 trailing commas (29cab1f)
- ๐ Implement support for object spread/rest (35e1b17)
- Introduce exponentiation operator (21b8731)
- ๐ Introduce linting option
leanswitch
(1f008f2) - ๐ Introduce support for async functions (bc4ae9f)
-
v2.9.7 Changes
December 07, 20182.9.7 (2018-12-07)
๐ This release corrects a packaging issue. It is not expected to modify JSHint's behavior.
-
v2.9.6 Changes
July 30, 20182.9.6 (2018-07-30)
๐ Bug Fixes
- โ Add missing global objects for browser env (badc7a4)
- โ Add other Fetch spec globals (07bb596), closes #2582
- ๐ Allow closing over immutable bindings (7091685)
- ๐ Allow computed method names in obj literal (a5ff715)
- ๐ Allow empty export and trailing comma (631327e), closes #2567
- Avoid infinite loop on invalid
for
stmt (56a4379) - ๐ Consistently ignore dot-prefixed dirs (8d4317e)
- Correct impl of built-in bindings (a11d631)
- Correct interpretation of whitespace (dd06eea)
- Correct location of reported error (1c434a3)
- Correct location reported for W043 (1d04868)
- Correct reporting of var name in list comprehensions (0ff6644)
- Correct restriction on function name (55aa54e)
- Correct spelling of Uint8ClampedArray (8df4a32)
- Create block scope for
switch
statements (aa2be10) - 0๏ธโฃ Disallow default values in rest parameters (b420aed)
- Do not create binding for illegal syntax (9fe8c94)
- Do not warn about non-ambiguous linebreaks (ab3ab85)
- ๐ Fix "is is" message typos (7993101)
- Preserve functionality in "legacy" Node.js (2f6ac13)
- recognize Jasmine global
spyOnProperty
(827237f), closes #3183 - ๐ Relax restriction on asgnmnt to arguments (0a66710)
- โ Remove warning W100 (ff71d3c)
- Report error for duplicate arrow params (506c7d5)
- Report error for redeclared generator fns (8896fa3)
- Restrict "name" of strict mode functions (a554c89)
- Restrict
super
usage to valid forms (8f3f880) - Restrict IdentifierNames in ES5 code (5995a9f)
- Tolerate division following closing brace (3aa02db)
- Tolerate RegExp as
void
operand (3f920b5) - Tolerate whitespace in inline directives (efeb0f8)
๐ Features
-
v2.9.5 Changes
June 22, 20172.9.5 (2017-06-22)
๐ Bug Fixes
- Account for hoisting of importing bindings (bd36953)
- โ Add onmessage to vars.worker (540ed85)
- โ Added missing "Storage" browser variable (8cfe5ad)
- Avoid crash when peeking past end of prog (c083866)
- Avoid false positive (44d9e0b)
- Close synthetic scope for labeled blocks (5f0f789)
- Fail gracefully on invalid
if
syntax (#3103) (8c6ac87) - ๐ Honor "ignore" file when linting STDIN (d4f83a4)
- ๐ Parse
for-in/of
head LHS as asnmt target (da52ad9) - โ Removed warning message W041 (#3115) (376fa62)
- Throw W033 instead of E058 when the ; after a do-while stmt is missing (6907cd4)
๐ Features
-
v2.9.4 Changes
October 20, 20162.9.4 (2016-10-20)
๐ Bug Fixes
- ๐ Allow RegExp literal as
yield
operand (#3011) (b646aea) - ๐ Allow W100 to be ignored during lookahead (a2b3881), closes #3013
- Avoid crashing on invalid input (#3046) (bec152c)
- Correct interpretation of ASI (#3045) (9803e11)
- โ Do not duplicate reported warnings/errors (dc4a4fe)
- Enforce TDZ within initializer of lexical declaration 8e9d406), closes #2637
- Enforce TDZ within class heritage definition 8e9d406)
- Enforce TDZ within for in/of head 8e9d406), closes #2693
- Offset line no.s of errors from eval code (2a31c94)
- โ Remove
null
value fromerrors
array (#3049) (f7eb3d7) - Report error for offending token value (3b06d01)
- ๐ Allow RegExp literal as
-
v2.9.3 Changes
August 18, 2016๐ Bug Fixes
- โ Add TypedArray globals for ES2015 (ee0acab)
- ๐ Allow Expression within for-in head (56c95d0)
- Avoid crash when peeking past end of prog (#2937) (330d429)
- Correct behavior of singleGroups (#2951) (97fefb7)
- Correct interpretation of ASI (#2977) (3ef7a03)
- Correctly recognize asi after directives (039ee2e), closes #2714
- Disallow Import declarations below top lvl (d800e44)
- ๐ Support
y
RegExp flag in ES2015 code (#2999) (a801433) - ๐ Support semicolons within arrow fn params (#3003) (179a9d6)
๐ Features