In order to fix our eslintrc rules we need to execute the following steps:
As first step we determine all the rules which don't work right now:
node ./node_modules/eslint/bin/eslint.js --format=json --ext=.es6.js . | jq '[.[] | .messages[] | .ruleId]' | sort | uniq -c | sort -r | pbcopy
469 "func-names",
146 "no-mutable-exports",
121 "no-unused-vars",
75 "no-use-before-define",
70 "max-len",
66 "camelcase",
54 "no-restricted-syntax",
42 "no-shadow",
35 "newline-per-chained-call",
24 "vars-on-top",
24 "no-var",
24 "no-mixed-operators",
19 "no-useless-escape",
18 "new-cap",
16 "no-plusplus",
16 "default-case",
14 "no-multi-assign",
9 "no-new",
9 "no-continue",
6 "prefer-const",
3 "prefer-rest-params",
2 "padded-blocks",
2 "no-lonely-if",
2 "no-confusing-arrow",
2 "comma-dangle",
2 "array-callback-return",
1 "no-var"
1 "no-useless-concat",
1 "no-throw-literal",
1 "no-empty",
Add a .eslintrc.passing.json which extends our existing .eslintrc.jsonfile and ensures that everything is passing. Over time we can then reduce overridden rules, while not affecting new JS files to have less coverage.
:
Fixed
8.5 ⚰️
Not all content is available!
It's likely this issue predates Contrib.social: some issue and comment data are missing.