You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@echarts.apache.org by su...@apache.org on 2020/10/14 08:10:15 UTC

[incubator-echarts] 05/08: lint: sort eslint for both src, extension-src, test/ut

This is an automated email from the ASF dual-hosted git repository.

sushuang pushed a commit to branch fix-ut
in repository https://gitbox.apache.org/repos/asf/incubator-echarts.git

commit 212f3cf172ec7294b463d12f54f4a5b9b1852ea6
Author: 100pah <su...@gmail.com>
AuthorDate: Tue Oct 13 16:58:13 2020 +0800

    lint: sort eslint for both src, extension-src, test/ut
---
 src/.eslintrc.yaml => .eslintrc-common.yaml |  16 ---
 extension-src/.eslintrc.yaml                | 207 +++------------------------
 src/.eslintrc.yaml                          | 193 +------------------------
 test/ut/.eslintrc.yaml                      | 212 ++++------------------------
 test/ut/tsconfig.json                       |   9 +-
 5 files changed, 53 insertions(+), 584 deletions(-)

diff --git a/src/.eslintrc.yaml b/.eslintrc-common.yaml
similarity index 92%
copy from src/.eslintrc.yaml
copy to .eslintrc-common.yaml
index 36b63c8..1c63140 100644
--- a/src/.eslintrc.yaml
+++ b/.eslintrc-common.yaml
@@ -10,22 +10,6 @@
 # ```
 # Note that it should be "workingDirectories" rather than "WorkingDirectories".
 
-parser: "@typescript-eslint/parser"
-parserOptions:
-    ecmaVersion: 6
-    sourceType: module
-    ecmaFeatures:
-        modules: true
-    project: "tsconfig.json"
-plugins: ["@typescript-eslint"]
-env:
-    browser: true
-    node: true
-    es6: false
-globals:
-    jQuery: true
-    Promise: true
-    __DEV__: true
 rules:
     # Check the rules in: node_modules/@typescript-eslint/eslint-plugin/README.md
     no-console:
diff --git a/extension-src/.eslintrc.yaml b/extension-src/.eslintrc.yaml
index 5667b9c..55b3af0 100644
--- a/extension-src/.eslintrc.yaml
+++ b/extension-src/.eslintrc.yaml
@@ -1,3 +1,15 @@
+# Note:
+# If eslint does not work in VSCode, please check:
+# (1) Whether "@typescript-eslint/eslint-plugin" and "@typescript-eslint/parser"
+# are npm installed locally. Should better in the same version.
+# (2) Whether "VSCode ESlint extension" is installed.
+# (3) If the project folder is not the root folder of your working space, please
+# config the "VSCode ESlint extension" in "settings":
+# ```json
+# "eslint.workingDirectories": [{"mode": "auto"}]
+# ```
+# Note that it should be "workingDirectories" rather than "WorkingDirectories".
+
 parser: "@typescript-eslint/parser"
 parserOptions:
     ecmaVersion: 6
@@ -11,194 +23,7 @@ env:
     node: true
     es6: false
 globals:
-    jQuery: true
-    Promise: true
-rules:
-    # Check the rules in: node_modules/@typescript-eslint/eslint-plugin/README.md
-    no-console:
-        - 2
-        -
-            allow:
-                - "warn"
-                - "error"
-    no-constant-condition: 0
-    comma-dangle: 2
-    no-debugger: 2
-    prefer-const: 1
-    no-dupe-keys: 2
-    no-empty-character-class: 2
-    no-ex-assign: 2
-    no-extra-boolean-cast: 0
-    no-func-assign: 2
-    no-inner-declarations: 2
-    no-invalid-regexp: 2
-    no-negated-in-lhs: 2
-    no-obj-calls: 2
-    no-sparse-arrays: 2
-    no-unreachable: 2
-    use-isnan: 2
-    valid-typeof: 2
-    block-scoped-var: 2
-    curly:
-        - 2
-        - "all"
-    eqeqeq:
-        - 2
-        - "allow-null"
-    guard-for-in: 2
-    no-else-return: 0
-    no-labels:
-        - 2
-        -
-            allowLoop: true
-    no-eval: 2
-    no-extend-native: 2
-    no-extra-bind: 0
-    no-implied-eval: 2
-    no-iterator: 2
-    no-irregular-whitespace: 2
-    no-lone-blocks: 2
-    no-loop-func: 2
-    no-multi-str: 2
-    no-native-reassign: 2
-    no-new-wrappers: 2
-    no-octal: 2
-    no-octal-escape: 2
-    no-proto: 2
-    no-redeclare: 2
-    no-self-compare: 2
-    no-unneeded-ternary: 2
-    no-with: 2
-    radix: 2
-    wrap-iife:
-        - 2
-        - "any"
-    no-delete-var: 2
-    no-dupe-args: 2
-    no-duplicate-case: 2
-    no-label-var: 2
-    no-shadow-restricted-names: 2
-    no-undef: 2
-    no-undef-init: 2
-    "no-use-before-define": "off"
-    "@typescript-eslint/no-use-before-define": 0
-    brace-style:
-        - 2
-        - "stroustrup"
-        - {}
-    comma-spacing:
-        - 2
-        -
-            before: false
-            after: true
-    comma-style:
-        - 2
-        - "last"
-    new-parens: 2
-    no-array-constructor: 2
-    no-multi-spaces:
-        - 1
-        -
-            ignoreEOLComments: true
-            exceptions:
-                Property: true
-    no-new-object: 2
-    no-spaced-func: 2
-    no-trailing-spaces: 2
-    no-extra-parens:
-        - 2
-        - "functions"
-    no-mixed-spaces-and-tabs: 2
-    one-var:
-        - 2
-        - "never"
-    operator-linebreak:
-        - 2
-        - "before"
-        -
-            overrides:
-                "=": "after"
-    "quotes": "off"
-    "@typescript-eslint/quotes":
-        - 2
-        - "single"
-    "semi": "off"
-    "@typescript-eslint/semi":
-        - 2
-        - "always"
-    semi-spacing: 2
-    keyword-spacing: 2
-    key-spacing:
-        - 2
-        -
-            beforeColon: false
-            afterColon: true
-    "space-before-function-paren": "off"
-    "@typescript-eslint/space-before-function-paren":
-        - 2
-        -
-            anonymous: "always"
-            named: "never"
-    space-before-blocks:
-        - 2
-        - "always"
-    computed-property-spacing:
-        - 2
-        - "never"
-    space-in-parens:
-        - 2
-        - "never"
-    space-unary-ops: 2
-    spaced-comment: 0
-
-    max-nested-callbacks:
-        - 1
-        - 5
-    max-depth:
-        - 1
-        - 6
-    max-len:
-        - 2
-        - 120
-        - 4
-        -
-            ignoreUrls: true
-            ignoreComments: true
-    max-params:
-        - 1
-        - 15
-
-    space-infix-ops: 2
-    dot-notation:
-        - 2
-        -
-            allowKeywords: true
-            allowPattern: "^catch$"
-
-    arrow-spacing: 2
-    constructor-super: 2
-    no-confusing-arrow:
-        - 2
-        -
-            allowParens: true
-    no-class-assign: 2
-    no-const-assign: 2
-    # no-dupe-class-members: 2
-    no-this-before-super: 0
-    no-var: 2
-    no-duplicate-imports: 2
-    prefer-rest-params: 0
-    unicode-bom: 2
-    max-statements-per-line: 2
-
-    no-useless-constructor: 0
-
-    "func-call-spacing": "off"
-    "@typescript-eslint/func-call-spacing": "error"
-
-    "no-unused-vars": "off"
-    "@typescript-eslint/no-unused-vars":
-        - 1
-        -
-            vars: "local"
-            args: "none"
\ No newline at end of file
+    jQuery: false
+    Promise: false
+    __DEV__: true
+extends: '../.eslintrc-common.yaml'
diff --git a/src/.eslintrc.yaml b/src/.eslintrc.yaml
index 36b63c8..55b3af0 100644
--- a/src/.eslintrc.yaml
+++ b/src/.eslintrc.yaml
@@ -23,194 +23,7 @@ env:
     node: true
     es6: false
 globals:
-    jQuery: true
-    Promise: true
+    jQuery: false
+    Promise: false
     __DEV__: true
-rules:
-    # Check the rules in: node_modules/@typescript-eslint/eslint-plugin/README.md
-    no-console:
-        - 2
-        -
-            allow:
-                - "warn"
-                - "error"
-    prefer-const: 1
-    no-constant-condition: 0
-    comma-dangle: 2
-    no-debugger: 2
-    no-dupe-keys: 2
-    no-empty-character-class: 2
-    no-ex-assign: 2
-    no-extra-boolean-cast: 0
-    no-func-assign: 2
-    no-inner-declarations: 2
-    no-invalid-regexp: 2
-    no-negated-in-lhs: 2
-    no-obj-calls: 2
-    no-sparse-arrays: 2
-    no-unreachable: 2
-    use-isnan: 2
-    valid-typeof: 2
-    block-scoped-var: 2
-    curly:
-        - 2
-        - "all"
-    eqeqeq:
-        - 2
-        - "allow-null"
-    guard-for-in: 2
-    no-else-return: 0
-    no-labels:
-        - 2
-        -
-            allowLoop: true
-    no-eval: 2
-    no-extend-native: 2
-    no-extra-bind: 0
-    no-implied-eval: 2
-    no-iterator: 2
-    no-irregular-whitespace: 2
-    no-lone-blocks: 2
-    no-loop-func: 2
-    no-multi-str: 2
-    no-native-reassign: 2
-    no-new-wrappers: 2
-    no-octal: 2
-    no-octal-escape: 2
-    no-proto: 2
-    no-redeclare: 2
-    no-self-compare: 2
-    no-unneeded-ternary: 2
-    no-with: 2
-    radix: 2
-    wrap-iife:
-        - 2
-        - "any"
-    no-delete-var: 2
-    no-dupe-args: 2
-    no-duplicate-case: 2
-    no-label-var: 2
-    no-shadow-restricted-names: 2
-    no-undef: 2
-    no-undef-init: 2
-    "no-use-before-define": "off"
-    "@typescript-eslint/no-use-before-define": 0
-    brace-style:
-        - 2
-        - "stroustrup"
-        - {}
-    comma-spacing:
-        - 2
-        -
-            before: false
-            after: true
-    comma-style:
-        - 2
-        - "last"
-    new-parens: 2
-    no-array-constructor: 2
-    no-multi-spaces:
-        - 1
-        -
-            ignoreEOLComments: true
-            exceptions:
-                Property: true
-    no-new-object: 2
-    no-trailing-spaces: 2
-    no-extra-parens:
-        - 2
-        - "functions"
-    no-mixed-spaces-and-tabs: 2
-    one-var:
-        - 2
-        - "never"
-    operator-linebreak:
-        - 2
-        - "before"
-        -
-            overrides:
-                "=": "after"
-    "quotes": "off"
-    "@typescript-eslint/quotes":
-        - 2
-        - "single"
-    "semi": "off"
-    "@typescript-eslint/semi":
-        - 2
-        - "always"
-    semi-spacing: 2
-    keyword-spacing: 2
-    key-spacing:
-        - 2
-        -
-            beforeColon: false
-            afterColon: true
-    "space-before-function-paren": "off"
-    "@typescript-eslint/space-before-function-paren":
-        - 2
-        -
-            anonymous: "always"
-            named: "never"
-    space-before-blocks:
-        - 2
-        - "always"
-    computed-property-spacing:
-        - 2
-        - "never"
-    space-in-parens:
-        - 2
-        - "never"
-    space-unary-ops: 2
-    spaced-comment: 0
-
-    max-nested-callbacks:
-        - 1
-        - 5
-    max-depth:
-        - 1
-        - 6
-    max-len:
-        - 2
-        - 120
-        - 4
-        -
-            ignoreUrls: true
-            ignoreComments: true
-    max-params:
-        - 1
-        - 15
-
-    space-infix-ops: 2
-    dot-notation:
-        - 2
-        -
-            allowKeywords: true
-            allowPattern: "^catch$"
-
-    arrow-spacing: 2
-    constructor-super: 2
-    no-confusing-arrow:
-        - 2
-        -
-            allowParens: true
-    no-class-assign: 2
-    no-const-assign: 2
-    # no-dupe-class-members: 2
-    no-this-before-super: 0
-    no-var: 2
-    no-duplicate-imports: 2
-    prefer-rest-params: 0
-    unicode-bom: 2
-    max-statements-per-line: 2
-
-    no-useless-constructor: 0
-
-    "func-call-spacing": "off"
-    "@typescript-eslint/func-call-spacing": "error"
-
-    "no-unused-vars": "off"
-    "@typescript-eslint/no-unused-vars":
-        - 1
-        -
-            vars: "local"
-            args: "none"
\ No newline at end of file
+extends: '../.eslintrc-common.yaml'
diff --git a/test/ut/.eslintrc.yaml b/test/ut/.eslintrc.yaml
index 2f25b76..eadd55a 100644
--- a/test/ut/.eslintrc.yaml
+++ b/test/ut/.eslintrc.yaml
@@ -1,190 +1,34 @@
+# Note:
+# If eslint does not work in VSCode, please check:
+# (1) Whether "@typescript-eslint/eslint-plugin" and "@typescript-eslint/parser"
+# are npm installed locally. Should better in the same version.
+# (2) Whether "VSCode ESlint extension" is installed.
+# (3) If the project folder is not the root folder of your working space, please
+# config the "VSCode ESlint extension" in "settings":
+# ```json
+# "eslint.workingDirectories": [{"mode": "auto"}]
+# ```
+# Note that it should be "workingDirectories" rather than "WorkingDirectories".
+
+parser: "@typescript-eslint/parser"
 parserOptions:
-    # If using ES Module, ecmaVersion have to be set as `2015`.
-    ecmaVersion: 2015
-    sourceType: "module"
+    ecmaVersion: 6
+    sourceType: module
+    ecmaFeatures:
+        modules: true
+    project: "test/ut/tsconfig.json"
+plugins: ["@typescript-eslint"]
 env:
-    browser: true
+    browser: false
     node: true
-    jest: true
     es6: false
 globals:
-    jQuery: true
+    jQuery: false
     Promise: true
-rules:
-    no-console:
-        - 2
-        -
-            allow:
-                - "warn"
-                - "error"
-    no-constant-condition: 0
-    comma-dangle: 2
-    no-debugger: 2
-    no-dupe-keys: 2
-    no-empty-character-class: 2
-    no-ex-assign: 2
-    no-extra-boolean-cast: 0
-    no-func-assign: 2
-    no-inner-declarations: 2
-    no-invalid-regexp: 2
-    no-negated-in-lhs: 2
-    no-obj-calls: 2
-    no-sparse-arrays: 2
-    no-unreachable: 2
-    use-isnan: 2
-    valid-typeof: 2
-    block-scoped-var: 0
-    curly:
-        - 2
-        - "all"
-    eqeqeq:
-        - 2
-        - "allow-null"
-    guard-for-in: 2
-    no-else-return: 0
-    no-labels:
-        - 2
-        -
-            allowLoop: true
-    no-eval: 2
-    no-extend-native: 2
-    no-extra-bind: 0
-    no-implied-eval: 2
-    no-iterator: 2
-    no-irregular-whitespace: 2
-    no-lone-blocks: 2
-    no-loop-func: 2
-    no-multi-str: 2
-    no-native-reassign: 2
-    no-new-wrappers: 2
-    no-octal: 2
-    no-octal-escape: 2
-    no-proto: 2
-    no-redeclare: 0
-    no-self-compare: 2
-    no-unneeded-ternary: 2
-    no-with: 2
-    radix: 2
-    wrap-iife:
-        - 2
-        - "any"
-    no-delete-var: 2
-    no-dupe-args: 2
-    no-duplicate-case: 2
-    no-label-var: 2
-    no-shadow-restricted-names: 2
-    no-undef: 2
-    no-undef-init: 2
-    no-unused-vars:
-        - 2
-        -
-            vars: "local"
-            args: "none"
-    no-use-before-define: 0
-    brace-style:
-        - 2
-        - "stroustrup"
-        - {}
-    comma-spacing:
-        - 2
-        -
-            before: false
-            after: true
-    comma-style:
-        - 2
-        - "last"
-    new-parens: 2
-    no-array-constructor: 2
-    no-multi-spaces:
-        - 2
-        -
-            ignoreEOLComments: true
-            exceptions:
-                Property: true
-    no-new-object: 2
-    no-spaced-func: 2
-    no-trailing-spaces: 2
-    no-extra-parens:
-        - 2
-        - "functions"
-    no-mixed-spaces-and-tabs: 2
-    one-var:
-        - 2
-        - "never"
-    operator-linebreak:
-        - 2
-        - "before"
-        -
-            overrides:
-                "=": "after"
-    quotes:
-        - 2
-        - "single"
-    semi:
-        - 2
-        - "always"
-    semi-spacing: 2
-    keyword-spacing: 2
-    key-spacing:
-        - 2
-        -
-            beforeColon: false
-            afterColon: true
-    space-before-function-paren:
-        - 2
-        -
-            anonymous: "always"
-            named: "never"
-    space-before-blocks:
-        - 2
-        - "always"
-    computed-property-spacing:
-        - 2
-        - "never"
-    space-in-parens:
-        - 2
-        - "never"
-    space-unary-ops: 2
-    spaced-comment: 0
-
-    max-nested-callbacks:
-        - 1
-        - 5
-    max-depth:
-        - 1
-        - 6
-    max-len:
-        - 2
-        - 120
-        - 4
-        -
-            ignoreUrls: true
-            ignoreComments: true
-    max-params:
-        - 1
-        - 15
-
-    space-infix-ops: 2
-    dot-notation:
-        - 2
-        -
-            allowKeywords: true
-            allowPattern: "^catch$"
-
-    arrow-spacing: 2
-    constructor-super: 2
-    no-confusing-arrow:
-        - 2
-        -
-            allowParens: true
-    no-class-assign: 2
-    no-const-assign: 2
-    no-dupe-class-members: 2
-    no-this-before-super: 0
-    no-var: 0
-    no-duplicate-imports: 2
-    prefer-rest-params: 0
-    unicode-bom: 2
-    max-statements-per-line: 2
-
-    no-useless-constructor: 0
\ No newline at end of file
+    __DEV__: true
+    describe: true
+    beforeEach: true
+    afterEach: true
+    it: true
+    expect: true
+extends: '../../.eslintrc-common.yaml'
diff --git a/test/ut/tsconfig.json b/test/ut/tsconfig.json
index e9b0b8c..08c1487 100644
--- a/test/ut/tsconfig.json
+++ b/test/ut/tsconfig.json
@@ -1,13 +1,16 @@
 {
     "compilerOptions": {
         "target": "ES3",
-        "noImplicitAny": true,
-        "strictBindCallApply": true,
 
+        "noImplicitAny": true,
         "noImplicitThis": true,
+        "strictBindCallApply": true,
+        "removeComments": true,
 
         // https://github.com/ezolenko/rollup-plugin-typescript2/issues/12#issuecomment-536173372
-        "moduleResolution": "Node",
+        "moduleResolution": "node",
+
+        "importHelpers": true,
 
         "pretty": true
     },


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@echarts.apache.org
For additional commands, e-mail: commits-help@echarts.apache.org