Upgrading eslint 3 to 4
Breaking3.19.0 → 4.19.1Breaking18Security1New22Changed94Fixed109Other307
BreakingUpgrade verdict
18 breaking changes and a security fix.
In plain terms
- Remove array-callback-return from recommended.
- Tweak space-before-function-paren default option.
- Remove ecmaFeatures from eslint:recommended.
- Change defaults for padded-blocks.
Must act Top 4 of 19 that need code or config changes
Adds ajv ^5.3.0, cross-spawn ^5.1.0, eslint-scope ^3.7.1, eslint-visitor-keys ^1.0.0, functional-red-black-tree ^1.0.1, json-stable-stringify-without-jsonify ^1.0.1, minimatch ^3.0.2, regexpp ^1.0.1, semver ^5.3.0, strip-ansi ^4.0.0.
Drops escope, estraverse, is-my-json-valid, json-stable-stringify, shelljs, strip-bom, user-home.
Installs 130 packages in all (was 158).
What you must change
Breaking18
Remove array-callback-return from recommended.
Tweak space-before-function-paren default option.
Remove ecmaFeatures from eslint:recommended.
ecmaFeatureseslint:recommendedChange defaults for padded-blocks.
New Linter API.
Validate eslintrc properties.
Log number of fixable problems.
Rewrite indent (fixes,,,, ...16 more).
Calculate leading/trailing comments in core.
Traverse into type annotations.
Resolve patterns from .eslintignore directory.
Convert SourceCode to ES6 class.
Update eslint:recommended for 4.0.0.
Infer endLine and endColumn from a reported node.
No-multi-spaces check around inline comments.
Convert CLIEngine to ES6 class.
Disallow scoped plugin references without scope.
Convert RuleTester to ES6 class.
Security1
Remove catastrophic backtracking vulnerability.