Skip to content

Upgrading eslint 6 to 7

Breaking6.8.0 → 7.32.0Breaking19Security1Platform3New16Changed153Fixed105Other285

BreakingUpgrade verdict

19 breaking changes and 3 platform requirement changes and a security fix.

  • Class default true computed-property-spacing.
  • Classes default true in accessor-pairs.
  • Check unnamed default export in func-names.
  • Use-isnan enforceForSwitchCase default true.
Top 5 of 23 that need code or config changes

Node.js requirement changed in 7.0.0-alpha.0: ^8.10.0 || ^10.13.0 || >=11.10.1 → ^10.12.0 || >=12.0.0.

Adds @eslint/eslintrc ^0.4.3, @humanwhocodes/config-array ^0.5.0, enquirer ^2.3.5, escape-string-regexp ^4.0.0, fast-deep-equal ^3.1.3, lodash.merge ^4.6.2.

Drops inquirer, lodash, mkdirp.

Installs 118 packages in all (was 132).

Also installs @babel/highlight, @humanwhocodes/object-schema, ansi-colors, fast-uri, json-buffer, keyv, lodash.truncate, require-from-string.

No longer installs ansi-escapes, chardet, cli-cursor, cli-width, external-editor, figures, iconv-lite, mimic-fn, minimist, mute-stream, nice-try, onetime, os-tmpdir, restore-cursor, run-async and 7 more.

Moves @babel/code-frame 7.29.7 → 7.12.11, ajv 6.15.0 → 6.15.0, 8.20.0, ansi-regex 4.1.1, 5.0.1 → 5.0.1, astral-regex 1.0.0 → 2.0.0, cross-spawn 6.0.6 → 7.0.6, emoji-regex 7.0.3, 8.0.0 → 8.0.0, escape-string-regexp 1.0.5 → 1.0.5, 4.0.0, eslint-utils 1.4.3 → 2.1.0, eslint-visitor-keys 1.3.0 → 1.3.0, 2.1.0, espree 6.2.1 → 7.3.1, file-entry-cache 5.0.1 → 6.0.1, flat-cache 2.0.1 → 3.2.0, flatted 2.0.2 → 3.4.4, globals 12.4.0 → 13.24.0, is-fullwidth-code-point 2.0.0, 3.0.0 → 3.0.0 and 17 more. Your build may pick other versions.

Breaking19
Class default true computed-property-spacing.
true
Classes default true in accessor-pairs.
true
Check unnamed default export in func-names.
Use-isnan enforceForSwitchCase default true.
true
Change default ignore pattern.
Espree@7.0.0.
Improve plugin resolving.
Change relative paths with --config.
Add new rules to eslint:recommended.
No-dupe-class-members checks some computed keys.
Make radix rule stricter.
radix
Lint overrides files (fixes eslint/rfcs#20).
overrides
Check assignment targets in no-extra-parens.
Check flatMap in array-callback-return.
Description in directive comments.
Some rules recognize bigint literals.
Runtime-deprecation on '~/.eslintrc'.
RuleTester Improvements.
Test with an unknown error property should fail in RuleTester.
Security1
Bump lodash to fix security issue.
Platform3
Remove Node.js and CommonJS category from build process.
Deprecate Node.js & CommonJS rules.
Drop Node.js 8 support.