ESLint v8.3.0 released
by Brandon Mills - 21 November 2021We just pushed ESLint v8.3.0, which is a minor release upgrade of ESLint. This release adds some new features and fixes several bugs found in the previous release.
Highlights
This release supports ES2022 class static blocks in rules, the default parser, and scope analysis.
class C {
static x = ...;
static y;
static z;
static {
try {
const obj = doSomethingWith(this.x);
this.y = obj.y;
this.z = obj.z;
}
catch {
this.y = ...;
this.z = ...;
}
}
}
It also supports #x in obj
, officially known as ergonomic brand checks for private fields.
Features
60b0a29
feat: addallowProperties
option to require-atomic-updates (#15238) (Milos Djermanovic)79278a1
feat: update no-use-before-define for class static blocks (#15312) (Milos Djermanovic)ddd01dc
feat: update no-redeclare for class static blocks (#15313) (Milos Djermanovic)de69cec
feat: update no-inner-declarations for class static blocks (#15290) (Milos Djermanovic)e2fe7ef
feat: support for private-in syntax (fixes #14811) (#15060) (Yosuke Ota)34bc8d7
feat: Update espree and eslint-scope (#15338) (Brandon Mills)b171cd7
feat: update max-depth for class static blocks (#15316) (Milos Djermanovic)6487df3
feat: update padded-blocks for class static blocks (#15333) (Milos Djermanovic)194f36d
feat: update the complexity rule for class static blocks (#15328) (Milos Djermanovic)3530337
feat: update the indent rule for class static blocks (#15324) (Milos Djermanovic)f03cd14
feat: update lines-around-comment for class static blocks (#15323) (Milos Djermanovic)5c64747
feat: update brace-style for class static blocks (#15322) (Milos Djermanovic)df2f1cc
feat: update max-statements for class static blocks (#15315) (Milos Djermanovic)fd5a0b8
feat: update prefer-const for class static blocks (#15325) (Milos Djermanovic)b3669fd
feat: code path analysis for class static blocks (#15282) (Milos Djermanovic)15c1397
feat: update eslint-scope for class static blocks (#15321) (Milos Djermanovic)1a1bb4b
feat: update one-var for class static blocks (#15317) (Milos Djermanovic)9b666e0
feat: update padding-line-between-statements for class static blocks (#15318) (Milos Djermanovic)d3a267f
feat: update class-methods-use-this for class static blocks (#15298) (Milos Djermanovic)cdaa541
feat: update no-lone-blocks for class static blocks (#15295) (Milos Djermanovic)8611538
feat: update block-spacing for class static blocks (#15297) (Milos Djermanovic)7b56844
feat: update keyword-spacing for class static blocks (#15289) (Milos Djermanovic)ea18711
feat: update no-extra-semi for class static blocks (#15287) (Milos Djermanovic)0f0971f
feat: update semi rule for class static blocks (#15286) (Milos Djermanovic)abe740c
feat: add examples for block-scoped-var with class static blocks (#15302) (Milos Djermanovic)0338fd2
feat: Normalize ecmaVersion to eslint-scope when using custom parser (#15268) (Yosuke Ota)
Bug Fixes
8aa7645
fix: update vars-on-top for class static blocks (#15306) (Milos Djermanovic)479a4cb
fix: update semi-style for class static blocks (#15309) (Milos Djermanovic)6d1c666
fix: update no-invalid-this and no-eval for class static blocks (#15300) (Milos Djermanovic)
Documentation
6b85426
docs: Expand--debug
option description in the CLI documentation (#15308) (darkred)3ae5258
docs: the strict rule does not apply to class static blocks (#15314) (Milos Djermanovic)9309841
docs: Remove inconsistent colon in pull request docs (#15303) (Jordan Eldredge)da238cc
docs: remove deprecation note from lines-around-comment (#15293) (Milos Djermanovic)1055f16
docs: no-unused-expressions - class static blocks don't have directives (#15283) (Milos Djermanovic)4c55216
docs: Add variables option to no-use-before-define (#15276) (Mathias Rasmussen)