mirror of https://github.com/zulip/zulip.git
eslintrc: Move global exemptions to an override.
We don’t want our globals leaking into @zulip/shared. Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
This commit is contained in:
parent
4889a0486d
commit
23d98c2565
400
.eslintrc.json
400
.eslintrc.json
|
@ -8,6 +8,208 @@
|
||||||
"warnOnUnsupportedTypeScriptVersion": false,
|
"warnOnUnsupportedTypeScriptVersion": false,
|
||||||
"sourceType": "module"
|
"sourceType": "module"
|
||||||
},
|
},
|
||||||
|
"plugins": [
|
||||||
|
"eslint-plugin-empty-returns"
|
||||||
|
],
|
||||||
|
"rules": {
|
||||||
|
"array-callback-return": "error",
|
||||||
|
"array-bracket-spacing": "error",
|
||||||
|
"arrow-spacing": [ "error", { "before": true, "after": true } ],
|
||||||
|
"block-scoped-var": "error",
|
||||||
|
"brace-style": [ "error", "1tbs", { "allowSingleLine": true } ],
|
||||||
|
"camelcase": "off",
|
||||||
|
"comma-dangle": [ "error",
|
||||||
|
{
|
||||||
|
"arrays": "always-multiline",
|
||||||
|
"objects": "always-multiline",
|
||||||
|
"imports": "always-multiline",
|
||||||
|
"exports": "always-multiline",
|
||||||
|
"functions": "never"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"comma-spacing": [ "error",
|
||||||
|
{
|
||||||
|
"before": false,
|
||||||
|
"after": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"complexity": [ "off", 4 ],
|
||||||
|
"curly": "error",
|
||||||
|
"dot-notation": [ "error", { "allowKeywords": true } ],
|
||||||
|
"empty-returns/main": "error",
|
||||||
|
"eol-last": [ "error", "always" ],
|
||||||
|
"eqeqeq": "error",
|
||||||
|
"func-style": [ "off", "expression" ],
|
||||||
|
"guard-for-in": "error",
|
||||||
|
"indent": ["error", 4, {
|
||||||
|
"ArrayExpression": "first",
|
||||||
|
"ObjectExpression": "first",
|
||||||
|
"SwitchCase": 0,
|
||||||
|
"CallExpression": {"arguments": "first"},
|
||||||
|
"FunctionExpression": {"parameters": "first"},
|
||||||
|
"FunctionDeclaration": {"parameters": "first"}
|
||||||
|
}],
|
||||||
|
"key-spacing": [ "error",
|
||||||
|
{
|
||||||
|
"beforeColon": false,
|
||||||
|
"afterColon": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"keyword-spacing": [ "error",
|
||||||
|
{
|
||||||
|
"before": true,
|
||||||
|
"after": true,
|
||||||
|
"overrides": {
|
||||||
|
"return": { "after": true },
|
||||||
|
"throw": { "after": true },
|
||||||
|
"case": { "after": true }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"max-depth": [ "off", 4 ],
|
||||||
|
"max-len": [ "error", 100, 2,
|
||||||
|
{
|
||||||
|
"ignoreUrls": true,
|
||||||
|
"ignoreComments": false,
|
||||||
|
"ignoreRegExpLiterals": true,
|
||||||
|
"ignoreStrings": true,
|
||||||
|
"ignoreTemplateLiterals": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"max-params": [ "off", 3 ],
|
||||||
|
"max-statements": [ "off", 10 ],
|
||||||
|
"new-cap": [ "error",
|
||||||
|
{
|
||||||
|
"newIsCap": true,
|
||||||
|
"capIsNew": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"new-parens": "error",
|
||||||
|
"newline-per-chained-call": "off",
|
||||||
|
"no-alert": "error",
|
||||||
|
"no-array-constructor": "error",
|
||||||
|
"no-bitwise": "error",
|
||||||
|
"no-caller": "error",
|
||||||
|
"no-case-declarations": "error",
|
||||||
|
"no-catch-shadow": "error",
|
||||||
|
"no-console": "off",
|
||||||
|
"no-const-assign": "error",
|
||||||
|
"no-control-regex": "error",
|
||||||
|
"no-debugger": "error",
|
||||||
|
"no-delete-var": "error",
|
||||||
|
"no-div-regex": "error",
|
||||||
|
"no-dupe-class-members": "error",
|
||||||
|
"no-dupe-keys": "error",
|
||||||
|
"no-duplicate-imports": "error",
|
||||||
|
"no-else-return": "error",
|
||||||
|
"no-empty": "error",
|
||||||
|
"no-empty-character-class": "error",
|
||||||
|
"no-eq-null": "error",
|
||||||
|
"no-eval": "error",
|
||||||
|
"no-ex-assign": "error",
|
||||||
|
"no-extra-parens": ["error", "all"],
|
||||||
|
"no-extra-semi": "error",
|
||||||
|
"no-fallthrough": "error",
|
||||||
|
"no-floating-decimal": "error",
|
||||||
|
"no-func-assign": "error",
|
||||||
|
"no-implied-eval": "error",
|
||||||
|
"no-iterator": "error",
|
||||||
|
"no-label-var": "error",
|
||||||
|
"no-labels": "error",
|
||||||
|
"no-loop-func": "error",
|
||||||
|
"no-mixed-requires": [ "off", false ],
|
||||||
|
"no-multi-str": "error",
|
||||||
|
"no-native-reassign": "error",
|
||||||
|
"no-nested-ternary": "off",
|
||||||
|
"no-new-func": "error",
|
||||||
|
"no-new-object": "error",
|
||||||
|
"no-new-wrappers": "error",
|
||||||
|
"no-obj-calls": "error",
|
||||||
|
"no-octal": "error",
|
||||||
|
"no-octal-escape": "error",
|
||||||
|
"no-param-reassign": "off",
|
||||||
|
"no-plusplus": "error",
|
||||||
|
"no-proto": "error",
|
||||||
|
"no-redeclare": "error",
|
||||||
|
"no-regex-spaces": "error",
|
||||||
|
"no-restricted-syntax": "off",
|
||||||
|
"no-return-assign": "error",
|
||||||
|
"no-script-url": "error",
|
||||||
|
"no-self-compare": "error",
|
||||||
|
"no-shadow": "off",
|
||||||
|
"no-sync": "error",
|
||||||
|
"no-ternary": "off",
|
||||||
|
"no-trailing-spaces": "error",
|
||||||
|
"no-undef": "error",
|
||||||
|
"no-undef-init": "error",
|
||||||
|
"no-underscore-dangle": "off",
|
||||||
|
"no-unneeded-ternary": [ "error", { "defaultAssignment": false } ],
|
||||||
|
"no-unreachable": "error",
|
||||||
|
"no-unused-expressions": "error",
|
||||||
|
"no-unused-vars": [ "error",
|
||||||
|
{
|
||||||
|
"vars": "local",
|
||||||
|
"args": "after-used",
|
||||||
|
"varsIgnorePattern": "print_elapsed_time|check_duplicate_ids"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"no-use-before-define": "error",
|
||||||
|
"no-useless-constructor": "error",
|
||||||
|
// The Zulip codebase complies partially with the "no-useless-escape"
|
||||||
|
// rule; only regex expressions haven't been updated yet.
|
||||||
|
// Updated regex expressions are currently being tested in casper
|
||||||
|
// files and will decide about a potential future enforcement of this rule.
|
||||||
|
"no-useless-escape": "off",
|
||||||
|
"no-var": "error",
|
||||||
|
"space-unary-ops": "error",
|
||||||
|
"no-whitespace-before-property": "error",
|
||||||
|
"no-with": "error",
|
||||||
|
"one-var": [ "error", "never" ],
|
||||||
|
"padded-blocks": "off",
|
||||||
|
"prefer-const": [ "error",
|
||||||
|
{
|
||||||
|
"destructuring": "any",
|
||||||
|
"ignoreReadBeforeAssign": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"quote-props": [ "error", "as-needed",
|
||||||
|
{
|
||||||
|
"keywords": false,
|
||||||
|
"unnecessary": true,
|
||||||
|
"numbers": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"quotes": [ "off", "single" ],
|
||||||
|
"radix": "error",
|
||||||
|
"semi": "error",
|
||||||
|
"semi-spacing": ["error", {"before": false, "after": true}],
|
||||||
|
"sort-imports": "error",
|
||||||
|
"space-before-blocks": "error",
|
||||||
|
"space-before-function-paren": [ "error",
|
||||||
|
{
|
||||||
|
"anonymous": "always",
|
||||||
|
"named": "never",
|
||||||
|
"asyncArrow": "always"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"space-in-parens": "error",
|
||||||
|
"space-infix-ops": "error",
|
||||||
|
"spaced-comment": "off",
|
||||||
|
"strict": "off",
|
||||||
|
"template-curly-spacing": "error",
|
||||||
|
"unnecessary-strict": "off",
|
||||||
|
"use-isnan": "error",
|
||||||
|
"valid-typeof": [ "error", { "requireStringLiterals": true } ],
|
||||||
|
"wrap-iife": [ "error", "outside", { "functionPrototypeMethods": false } ],
|
||||||
|
"wrap-regex": "off",
|
||||||
|
"yoda": "error"
|
||||||
|
},
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"files": [
|
||||||
|
"frontend_tests/**/*.{js,ts}",
|
||||||
|
"static/js/**/*.{js,ts}"
|
||||||
|
],
|
||||||
"globals": {
|
"globals": {
|
||||||
"$": false,
|
"$": false,
|
||||||
"ClipboardJS": false,
|
"ClipboardJS": false,
|
||||||
|
@ -212,204 +414,8 @@
|
||||||
"zcommand": false,
|
"zcommand": false,
|
||||||
"zform": false,
|
"zform": false,
|
||||||
"zxcvbn": false
|
"zxcvbn": false
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"plugins": [
|
|
||||||
"eslint-plugin-empty-returns"
|
|
||||||
],
|
|
||||||
"rules": {
|
|
||||||
"array-callback-return": "error",
|
|
||||||
"array-bracket-spacing": "error",
|
|
||||||
"arrow-spacing": [ "error", { "before": true, "after": true } ],
|
|
||||||
"block-scoped-var": "error",
|
|
||||||
"brace-style": [ "error", "1tbs", { "allowSingleLine": true } ],
|
|
||||||
"camelcase": "off",
|
|
||||||
"comma-dangle": [ "error",
|
|
||||||
{
|
|
||||||
"arrays": "always-multiline",
|
|
||||||
"objects": "always-multiline",
|
|
||||||
"imports": "always-multiline",
|
|
||||||
"exports": "always-multiline",
|
|
||||||
"functions": "never"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"comma-spacing": [ "error",
|
|
||||||
{
|
|
||||||
"before": false,
|
|
||||||
"after": true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"complexity": [ "off", 4 ],
|
|
||||||
"curly": "error",
|
|
||||||
"dot-notation": [ "error", { "allowKeywords": true } ],
|
|
||||||
"empty-returns/main": "error",
|
|
||||||
"eol-last": [ "error", "always" ],
|
|
||||||
"eqeqeq": "error",
|
|
||||||
"func-style": [ "off", "expression" ],
|
|
||||||
"guard-for-in": "error",
|
|
||||||
"indent": ["error", 4, {
|
|
||||||
"ArrayExpression": "first",
|
|
||||||
"ObjectExpression": "first",
|
|
||||||
"SwitchCase": 0,
|
|
||||||
"CallExpression": {"arguments": "first"},
|
|
||||||
"FunctionExpression": {"parameters": "first"},
|
|
||||||
"FunctionDeclaration": {"parameters": "first"}
|
|
||||||
}],
|
|
||||||
"key-spacing": [ "error",
|
|
||||||
{
|
|
||||||
"beforeColon": false,
|
|
||||||
"afterColon": true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"keyword-spacing": [ "error",
|
|
||||||
{
|
|
||||||
"before": true,
|
|
||||||
"after": true,
|
|
||||||
"overrides": {
|
|
||||||
"return": { "after": true },
|
|
||||||
"throw": { "after": true },
|
|
||||||
"case": { "after": true }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"max-depth": [ "off", 4 ],
|
|
||||||
"max-len": [ "error", 100, 2,
|
|
||||||
{
|
|
||||||
"ignoreUrls": true,
|
|
||||||
"ignoreComments": false,
|
|
||||||
"ignoreRegExpLiterals": true,
|
|
||||||
"ignoreStrings": true,
|
|
||||||
"ignoreTemplateLiterals": true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"max-params": [ "off", 3 ],
|
|
||||||
"max-statements": [ "off", 10 ],
|
|
||||||
"new-cap": [ "error",
|
|
||||||
{
|
|
||||||
"newIsCap": true,
|
|
||||||
"capIsNew": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"new-parens": "error",
|
|
||||||
"newline-per-chained-call": "off",
|
|
||||||
"no-alert": "error",
|
|
||||||
"no-array-constructor": "error",
|
|
||||||
"no-bitwise": "error",
|
|
||||||
"no-caller": "error",
|
|
||||||
"no-case-declarations": "error",
|
|
||||||
"no-catch-shadow": "error",
|
|
||||||
"no-console": "off",
|
|
||||||
"no-const-assign": "error",
|
|
||||||
"no-control-regex": "error",
|
|
||||||
"no-debugger": "error",
|
|
||||||
"no-delete-var": "error",
|
|
||||||
"no-div-regex": "error",
|
|
||||||
"no-dupe-class-members": "error",
|
|
||||||
"no-dupe-keys": "error",
|
|
||||||
"no-duplicate-imports": "error",
|
|
||||||
"no-else-return": "error",
|
|
||||||
"no-empty": "error",
|
|
||||||
"no-empty-character-class": "error",
|
|
||||||
"no-eq-null": "error",
|
|
||||||
"no-eval": "error",
|
|
||||||
"no-ex-assign": "error",
|
|
||||||
"no-extra-parens": ["error", "all"],
|
|
||||||
"no-extra-semi": "error",
|
|
||||||
"no-fallthrough": "error",
|
|
||||||
"no-floating-decimal": "error",
|
|
||||||
"no-func-assign": "error",
|
|
||||||
"no-implied-eval": "error",
|
|
||||||
"no-iterator": "error",
|
|
||||||
"no-label-var": "error",
|
|
||||||
"no-labels": "error",
|
|
||||||
"no-loop-func": "error",
|
|
||||||
"no-mixed-requires": [ "off", false ],
|
|
||||||
"no-multi-str": "error",
|
|
||||||
"no-native-reassign": "error",
|
|
||||||
"no-nested-ternary": "off",
|
|
||||||
"no-new-func": "error",
|
|
||||||
"no-new-object": "error",
|
|
||||||
"no-new-wrappers": "error",
|
|
||||||
"no-obj-calls": "error",
|
|
||||||
"no-octal": "error",
|
|
||||||
"no-octal-escape": "error",
|
|
||||||
"no-param-reassign": "off",
|
|
||||||
"no-plusplus": "error",
|
|
||||||
"no-proto": "error",
|
|
||||||
"no-redeclare": "error",
|
|
||||||
"no-regex-spaces": "error",
|
|
||||||
"no-restricted-syntax": "off",
|
|
||||||
"no-return-assign": "error",
|
|
||||||
"no-script-url": "error",
|
|
||||||
"no-self-compare": "error",
|
|
||||||
"no-shadow": "off",
|
|
||||||
"no-sync": "error",
|
|
||||||
"no-ternary": "off",
|
|
||||||
"no-trailing-spaces": "error",
|
|
||||||
"no-undef": "error",
|
|
||||||
"no-undef-init": "error",
|
|
||||||
"no-underscore-dangle": "off",
|
|
||||||
"no-unneeded-ternary": [ "error", { "defaultAssignment": false } ],
|
|
||||||
"no-unreachable": "error",
|
|
||||||
"no-unused-expressions": "error",
|
|
||||||
"no-unused-vars": [ "error",
|
|
||||||
{
|
|
||||||
"vars": "local",
|
|
||||||
"args": "after-used",
|
|
||||||
"varsIgnorePattern": "print_elapsed_time|check_duplicate_ids"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"no-use-before-define": "error",
|
|
||||||
"no-useless-constructor": "error",
|
|
||||||
// The Zulip codebase complies partially with the "no-useless-escape"
|
|
||||||
// rule; only regex expressions haven't been updated yet.
|
|
||||||
// Updated regex expressions are currently being tested in casper
|
|
||||||
// files and will decide about a potential future enforcement of this rule.
|
|
||||||
"no-useless-escape": "off",
|
|
||||||
"no-var": "error",
|
|
||||||
"space-unary-ops": "error",
|
|
||||||
"no-whitespace-before-property": "error",
|
|
||||||
"no-with": "error",
|
|
||||||
"one-var": [ "error", "never" ],
|
|
||||||
"padded-blocks": "off",
|
|
||||||
"prefer-const": [ "error",
|
|
||||||
{
|
|
||||||
"destructuring": "any",
|
|
||||||
"ignoreReadBeforeAssign": true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"quote-props": [ "error", "as-needed",
|
|
||||||
{
|
|
||||||
"keywords": false,
|
|
||||||
"unnecessary": true,
|
|
||||||
"numbers": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"quotes": [ "off", "single" ],
|
|
||||||
"radix": "error",
|
|
||||||
"semi": "error",
|
|
||||||
"semi-spacing": ["error", {"before": false, "after": true}],
|
|
||||||
"sort-imports": "error",
|
|
||||||
"space-before-blocks": "error",
|
|
||||||
"space-before-function-paren": [ "error",
|
|
||||||
{
|
|
||||||
"anonymous": "always",
|
|
||||||
"named": "never",
|
|
||||||
"asyncArrow": "always"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"space-in-parens": "error",
|
|
||||||
"space-infix-ops": "error",
|
|
||||||
"spaced-comment": "off",
|
|
||||||
"strict": "off",
|
|
||||||
"template-curly-spacing": "error",
|
|
||||||
"unnecessary-strict": "off",
|
|
||||||
"use-isnan": "error",
|
|
||||||
"valid-typeof": [ "error", { "requireStringLiterals": true } ],
|
|
||||||
"wrap-iife": [ "error", "outside", { "functionPrototypeMethods": false } ],
|
|
||||||
"wrap-regex": "off",
|
|
||||||
"yoda": "error"
|
|
||||||
},
|
|
||||||
"overrides": [
|
|
||||||
{
|
{
|
||||||
"files": [
|
"files": [
|
||||||
"frontend_tests/casper_tests/*.js",
|
"frontend_tests/casper_tests/*.js",
|
||||||
|
|
Loading…
Reference in New Issue