diff --git a/.eslintignore b/.eslintignore index 0d996a525..dabb31606 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,6 +1,17 @@ +# Ignore node_modules node_modules -test/** + +# Ignore not support files +!.*.js +.eslintrc.js *.d.ts + +# Ignore some test files +test/**/*.js +!test/*.js +!test/*Cases/**/webpack.config.js + +# Ignore some examples files examples/**/*.js !examples/*/webpack.config.js -!.*.js + diff --git a/.eslintrc.js b/.eslintrc.js index 4533d48fe..69f411216 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -11,10 +11,7 @@ module.exports = { es6: true }, parserOptions: { - ecmaVersion: 2017, - ecmaFeatures: { - experimentalObjectRestSpread: true - } + ecmaVersion: 2017 }, rules: { "prettier/prettier": "error", @@ -58,7 +55,6 @@ module.exports = { jsdoc: { // supported tags https://github.com/microsoft/TypeScript-wiki/blob/master/JSDoc-support-in-JavaScript.md tagNamePreference: { - // eslint-disable-next-line node/no-unsupported-features,node/no-unsupported-features/es-syntax ...["implements", "const", "memberof", "readonly", "yields"].reduce( (acc, tag) => { acc[tag] = { diff --git a/_SETUP.md b/_SETUP.md index 99b88760a..654dbef08 100644 --- a/_SETUP.md +++ b/_SETUP.md @@ -67,7 +67,7 @@ yarn pretty This performs linting on: -* eslint (eslint script) +* eslint (code-lint script) * schema + dependencies (jest-lint script) * types (type-lint script) * format + generated files (special-lint script) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index a80a2f58a..9a573c30e 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -71,7 +71,7 @@ jobs: - script: | set -e export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH" - yarn -s run eslint --format junit > junit.xml + yarn -s run code-lint --format junit > junit.xml yarn jest-lint yarn type-lint yarn special-lint diff --git a/package.json b/package.json index b7c9376b0..72cdee413 100644 --- a/package.json +++ b/package.json @@ -119,12 +119,12 @@ "build:examples": "cd examples && node buildAll.js", "pretest": "yarn lint", "prelint": "yarn setup", - "lint": "yarn eslint && yarn jest-lint && yarn type-lint && yarn special-lint", - "eslint": "eslint . --ext '.js'", + "lint": "yarn code-lint && yarn jest-lint && yarn type-lint && yarn special-lint", + "code-lint": "eslint . --ext '.js' --cache", "type-lint": "tsc --pretty", "special-lint": "node tooling/inherit-types && node tooling/format-schemas && node tooling/compile-to-definitions", "special-lint-fix": "node tooling/inherit-types --write --override && node tooling/format-schemas --write && node tooling/compile-to-definitions --write", - "fix": "yarn eslint --fix && yarn special-lint-fix", + "fix": "yarn code-lint --fix && yarn special-lint-fix", "pretty": "prettier --loglevel warn --write \"*.{ts,js,json,yml,yaml}\" \"{setup,lib,bin,hot,buildin,benchmark,tooling,schemas}/**/*.{js,json}\" \"test/*.js\" \"test/{configCases,watchCases,statsCases,hotCases}/**/webpack.config.js\" \"examples/**/webpack.config.js\"", "jest-lint": "node --max-old-space-size=4096 node_modules/jest-cli/bin/jest --testMatch \"/test/*.lint.js\" --no-verbose", "benchmark": "node --max-old-space-size=4096 --trace-deprecation node_modules/jest-cli/bin/jest --testMatch \"/test/*.benchmark.js\" --runInBand",