JSHint v2.10.0 Release Notes
Release Date: 2019-02-05 // about 5 years ago-
2.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)