
Highlights
This is a summary of the major changes you need to know about for this version of ESLint.
Deprecated Rules
In continuing our work towards JSCS compatibility and reviewing the current rules list, we decided to deprecate several rules and replace them with new rules. In some cases there was just confusion about the existing rule and in others there were changes necessary for JSCS compatibility. Per our rule deprecation policy, the deprecated rules will remain as part of ESLint until at least May 2017, at which point we will evaluate removing those rules.
We recommend you upgrade your configurations to use the new rules.
| Deprecated Rule | Replaced By |
|---|---|
no-native-reassign |
`no-global-assign’ |
no-negated-in-lhs |
`no-unsafe-negation’ |
no-spaced-func |
`func-call-spacing’ |
New Rules
Features
- e456fd3 New:
sort-keysrule (fixes #6076) (#6800) (Toru Nagashima) - f8ab8f1 New: func-call-spacing rule (fixes #6080) (#6749) (Brandon Mills)
- be68f0b New: no-template-curly-in-string rule (fixes #6186) (#6767) (Jeroen Engels)
- 5ef839e New: Add consistent and …-as-needed to object-shorthand (fixes #5438) (#5439) (Martijn de Haan)
- aef18b4 New:
no-unsafe-negationrule (fixes #2716) (#6789) (Toru Nagashima) - 2b17459 New:
no-global-assignrule (fixes #6586) (#6746) (alberto)
Enhancements
- ebf8441 Update:
prefer-rest-paramsrelax for member accesses (fixes #5990) (#6871) (Toru Nagashima) - df01c4f Update: Add regex support for exceptions (fixes #5187) (#6883) (Annie Zhang)
- 3e879fc Update: Rule “eqeqeq” to have more specific null handling (fixes #6543) (#6849) (Simon Sturmer)
- 1ecd2a3 Update: improve error message in
no-control-regex(#6839) (Jordan Harband) - d610d6c Update: make
max-linesreport the actual number of lines (fixes #6766) (#6764) (Jarek Rencz) - bf0afcb Update: validate void operator in no-constant-condition (fixes #5726) (#6837) (Vitor Balocco)
- 90f78f4 Update: add
propsoption tono-self-assignrule (fixes #6718) (#6721) (Toru Nagashima) - 30d71d6 Update: ‘requireForBlockBody’ modifier for ‘arrow-parens’ (fixes #6557) (#6558) (Nicolas Froidure)
- e524d16 Update: camelcase rule fix for import declarations (fixes #6755) (#6784) (Lorenzo Zottar)
- 8f3509d Update: make
eslint:allexcluding deprecated rules (fixes #6734) (#6756) (Toru Nagashima)
Bug Fixes
- 055742c Fix:
no-dupe-keystype errors (fixes #6886) (#6889) (Toru Nagashima) - 11395ca Fix:
no-dupe-keysfalse negative (fixes #6801) (#6863) (Toru Nagashima) - d47c505 Fix:
newline-after-varfalse positive (fixes #6834) (#6847) (Toru Nagashima) - 7e1bf01 Fix: update peerDependencies of airbnb option for
--init(fixes #6843) (#6846) (Vitor Balocco) - 8581f4f Fix:
no-invalid-thisfalse positive (fixes #6824) (#6827) (Toru Nagashima)
Documentation
- e37bbd8 Docs: Remove duplicate statement (#6878) (Richard Käll)
- 117e7aa Docs: Remove incorrect “constructor” statement from
no-new-symboldocs (#6830) (Jarek Rencz) - d94e945 Docs: Update Getting Started w/ Readme installation instructions (#6823) (Kai Cataldo)
Dependency Upgrades
Build Related
Chores
- e8cb7f9 Chore: use eslint-plugin-node (refs #6407) (#6862) (Toru Nagashima)
- b256c50 Chore: Fix glob for core js files for lint (fixes #6870) (#6872) (Gyandeep Singh)
- 80789ab Chore: don’t throw if rule is in old format (fixes #6848) (#6850) (Vitor Balocco)
- cdded07 Chore: use native
Object.assign(refs #6407) (#6832) (Gyandeep Singh) - 579ec49 Chore: Add link to rule change guidelines in “needs info” template (fixes #6829) (#6831) (Kevin Partington)
- 4c5e911 Chore: enable
prefer-constand apply it to our codebase (refs #6407) (#6805) (Toru Nagashima)

