ESLint v7.5.0 released

We just pushed ESLint v7.5.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

Optional Chaining Support

Support for optional chaining has landed in ESLint!

const maybeProp = obj.first?.second;

The default parser and built-in rules will support this syntax when you enable parserOptions.ecmaVersion: 2020 in your configuration:

{
    "parserOptions": {
        "ecmaVersion": 2020
    }
}

Deprecating id-blacklist

id-blacklist has been deprecated and replaced with id-denylist. We renamed id-blacklist to id-denylist in the previous release (v7.4.0), which unfortunately led to some unintended breakages in the ESLint ecosystem. In this release, we have added back the id-blacklist rule and have marked it as deprecated. If you are currently using id-blacklist, we recommend switching to id-denylist to ensure you receive bug fixes and updates to the rule in future releases.

Enhancements

Bug Fixes

Documentation

  • 885a145 Docs: clarify behavior if meta.fixable is omitted (refs #13349) (#13493) (Milos Djermanovic)
  • 1a01b42 Docs: Update technology sponsors in README (#13478) (Nicholas C. Zakas)
  • f1cc725 Docs: fix linebreaks between versions in changelog (#13488) (Milos Djermanovic)
  • 61097fe Docs: Update int rule level to string (#13483) (Brandon Mills)
  • e951457 Docs: fix wording in configuring.md (#13469) (Piper)

Dependency Upgrades

  • f2e68ec Build: update webpack resolve.mainFields to match website config (#13457) (Milos Djermanovic)

Chores

  • 540b1af Chore: enable consistent-meta-messages internal rule (#13487) (Milos Djermanovic)
  • e14a645 Chore: use espree.latestEcmaVersion in fuzzer (#13484) (Milos Djermanovic)