eslint 5.12.0 → 5.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/README.md +76 -143
  3. package/conf/eslint-all.js +3 -5
  4. package/conf/eslint-recommended.js +4 -268
  5. package/lib/built-in-rules-index.js +277 -0
  6. package/lib/cli-engine.js +6 -2
  7. package/lib/config/config-file.js +25 -2
  8. package/lib/config/config-initializer.js +150 -143
  9. package/lib/config/config-ops.js +30 -0
  10. package/lib/config/config-rule.js +2 -4
  11. package/lib/config/plugins.js +12 -4
  12. package/lib/config.js +1 -1
  13. package/lib/formatters/table.js +13 -4
  14. package/lib/formatters/tap.js +7 -4
  15. package/lib/linter.js +31 -31
  16. package/lib/load-rules.js +2 -5
  17. package/lib/rules/accessor-pairs.js +4 -2
  18. package/lib/rules/array-bracket-newline.js +4 -2
  19. package/lib/rules/array-callback-return.js +2 -1
  20. package/lib/rules/array-element-newline.js +4 -2
  21. package/lib/rules/arrow-body-style.js +1 -1
  22. package/lib/rules/arrow-parens.js +2 -1
  23. package/lib/rules/arrow-spacing.js +7 -6
  24. package/lib/rules/brace-style.js +2 -1
  25. package/lib/rules/camelcase.js +3 -2
  26. package/lib/rules/capitalized-comments.js +15 -14
  27. package/lib/rules/class-methods-use-this.js +1 -1
  28. package/lib/rules/comma-spacing.js +10 -4
  29. package/lib/rules/complexity.js +7 -9
  30. package/lib/rules/consistent-return.js +2 -1
  31. package/lib/rules/dot-notation.js +5 -3
  32. package/lib/rules/eqeqeq.js +2 -1
  33. package/lib/rules/for-direction.js +30 -17
  34. package/lib/rules/func-call-spacing.js +2 -1
  35. package/lib/rules/func-style.js +3 -2
  36. package/lib/rules/getter-return.js +2 -1
  37. package/lib/rules/global-require.js +5 -2
  38. package/lib/rules/guard-for-in.js +5 -2
  39. package/lib/rules/handle-callback-err.js +5 -2
  40. package/lib/rules/id-blacklist.js +4 -1
  41. package/lib/rules/id-length.js +9 -6
  42. package/lib/rules/id-match.js +11 -5
  43. package/lib/rules/implicit-arrow-linebreak.js +7 -3
  44. package/lib/rules/indent-legacy.js +11 -5
  45. package/lib/rules/indent.js +18 -9
  46. package/lib/rules/init-declarations.js +13 -13
  47. package/lib/rules/jsx-quotes.js +5 -2
  48. package/lib/rules/key-spacing.js +70 -35
  49. package/lib/rules/keyword-spacing.js +18 -12
  50. package/lib/rules/line-comment-position.js +15 -8
  51. package/lib/rules/linebreak-style.js +6 -6
  52. package/lib/rules/lines-around-comment.js +20 -16
  53. package/lib/rules/lines-around-directive.js +5 -2
  54. package/lib/rules/lines-between-class-members.js +8 -6
  55. package/lib/rules/max-depth.js +11 -9
  56. package/lib/rules/max-len.js +24 -13
  57. package/lib/rules/max-lines-per-function.js +17 -18
  58. package/lib/rules/max-lines.js +14 -10
  59. package/lib/rules/max-nested-callbacks.js +12 -11
  60. package/lib/rules/max-params.js +11 -9
  61. package/lib/rules/max-statements-per-line.js +8 -5
  62. package/lib/rules/max-statements.js +12 -11
  63. package/lib/rules/multiline-comment-style.js +18 -17
  64. package/lib/rules/multiline-ternary.js +8 -6
  65. package/lib/rules/new-cap.js +18 -11
  66. package/lib/rules/new-parens.js +5 -2
  67. package/lib/rules/newline-after-var.js +6 -8
  68. package/lib/rules/newline-before-return.js +5 -1
  69. package/lib/rules/newline-per-chained-call.js +7 -3
  70. package/lib/rules/no-async-promise-executor.js +5 -2
  71. package/lib/rules/no-bitwise.js +2 -1
  72. package/lib/rules/no-confusing-arrow.js +1 -1
  73. package/lib/rules/no-constant-condition.js +24 -2
  74. package/lib/rules/no-duplicate-imports.js +17 -11
  75. package/lib/rules/no-else-return.js +2 -1
  76. package/lib/rules/no-empty.js +2 -1
  77. package/lib/rules/no-eval.js +1 -1
  78. package/lib/rules/no-extra-parens.js +4 -4
  79. package/lib/rules/no-fallthrough.js +8 -4
  80. package/lib/rules/no-floating-decimal.js +7 -3
  81. package/lib/rules/no-implicit-coercion.js +9 -6
  82. package/lib/rules/no-irregular-whitespace.js +8 -4
  83. package/lib/rules/no-labels.js +6 -4
  84. package/lib/rules/no-magic-numbers.js +6 -3
  85. package/lib/rules/no-mixed-operators.js +5 -4
  86. package/lib/rules/no-mixed-requires.js +4 -2
  87. package/lib/rules/no-multi-spaces.js +2 -1
  88. package/lib/rules/no-param-reassign.js +1 -1
  89. package/lib/rules/no-plusplus.js +2 -1
  90. package/lib/rules/no-redeclare.js +2 -2
  91. package/lib/rules/no-self-assign.js +2 -1
  92. package/lib/rules/no-shadow-restricted-names.js +16 -2
  93. package/lib/rules/no-shadow.js +3 -3
  94. package/lib/rules/no-sync.js +2 -1
  95. package/lib/rules/no-tabs.js +2 -1
  96. package/lib/rules/no-trailing-spaces.js +5 -3
  97. package/lib/rules/no-undef.js +7 -3
  98. package/lib/rules/no-underscore-dangle.js +6 -3
  99. package/lib/rules/no-unexpected-multiline.js +14 -13
  100. package/lib/rules/no-unneeded-ternary.js +2 -1
  101. package/lib/rules/no-unsafe-negation.js +6 -3
  102. package/lib/rules/no-unused-expressions.js +6 -3
  103. package/lib/rules/no-unused-labels.js +7 -2
  104. package/lib/rules/no-unused-vars.js +8 -4
  105. package/lib/rules/no-use-before-define.js +3 -3
  106. package/lib/rules/no-useless-rename.js +3 -3
  107. package/lib/rules/object-curly-newline.js +6 -4
  108. package/lib/rules/object-property-newline.js +5 -3
  109. package/lib/rules/object-shorthand.js +9 -5
  110. package/lib/rules/one-var.js +24 -38
  111. package/lib/rules/operator-assignment.js +8 -4
  112. package/lib/rules/padded-blocks.js +32 -9
  113. package/lib/rules/prefer-arrow-callback.js +4 -2
  114. package/lib/rules/prefer-const.js +7 -4
  115. package/lib/rules/prefer-destructuring.js +70 -12
  116. package/lib/rules/prefer-promise-reject-errors.js +1 -1
  117. package/lib/rules/prefer-spread.js +2 -13
  118. package/lib/rules/quote-props.js +10 -5
  119. package/lib/rules/quotes.js +4 -2
  120. package/lib/rules/require-jsdoc.js +13 -7
  121. package/lib/rules/semi-spacing.js +6 -8
  122. package/lib/rules/semi.js +5 -4
  123. package/lib/rules/sort-imports.js +6 -3
  124. package/lib/rules/sort-keys.js +13 -5
  125. package/lib/rules/sort-vars.js +2 -1
  126. package/lib/rules/space-before-function-paren.js +6 -3
  127. package/lib/rules/space-infix-ops.js +2 -1
  128. package/lib/rules/space-unary-ops.js +20 -10
  129. package/lib/rules/spaced-comment.js +2 -1
  130. package/lib/rules/strict.js +34 -35
  131. package/lib/rules/switch-colon-spacing.js +11 -8
  132. package/lib/rules/symbol-description.js +6 -3
  133. package/lib/rules/template-curly-spacing.js +10 -10
  134. package/lib/rules/template-tag-spacing.js +7 -3
  135. package/lib/rules/unicode-bom.js +7 -3
  136. package/lib/rules/use-isnan.js +5 -2
  137. package/lib/rules/valid-jsdoc.js +40 -19
  138. package/lib/rules/valid-typeof.js +9 -4
  139. package/lib/rules/vars-on-top.js +6 -4
  140. package/lib/rules/wrap-iife.js +12 -6
  141. package/lib/rules/yield-star-spacing.js +17 -10
  142. package/lib/rules/yoda.js +9 -4
  143. package/lib/rules.js +4 -34
  144. package/lib/util/ajv.js +1 -0
  145. package/lib/util/config-comment-parser.js +7 -10
  146. package/package.json +20 -20
package/CHANGELOG.md CHANGED
@@ -1,3 +1,73 @@
1
+ v5.14.1 - February 18, 2019
2
+
3
+ * [`1d6e639`](https://github.com/eslint/eslint/commit/1d6e63930073e79e52890f552cc6e9a0646b7fb4) Fix: sort-keys throws Error at SpreadElement (fixes #11402) (#11403) (Krist Wongsuphasawat)
4
+
5
+ v5.14.0 - February 15, 2019
6
+
7
+ * [`85a04b3`](https://github.com/eslint/eslint/commit/85a04b319e6dfde1458174cd1d8c9e7d33da0871) Fix: adds conditional for separateRequires in one-var (fixes #10179) (#10980) (Scott Stern)
8
+ * [`0c02932`](https://github.com/eslint/eslint/commit/0c02932f1b2e2a85809e84617efa1b8836c19cfb) Upgrade: espree@5.0.1 (#11401) (Ilya Volodin)
9
+ * [`104ae88`](https://github.com/eslint/eslint/commit/104ae881d0b21e9c64e006b2a2c21535cef0ad28) Docs: Update governance doc with reviewers status (#11399) (Nicholas C. Zakas)
10
+ * [`ab8ac6a`](https://github.com/eslint/eslint/commit/ab8ac6adaaf7a88e160899e7f438a4cfd655eb6e) Fix: Support boundary spread elements in sort-keys (#11158) (Jakub Rożek)
11
+ * [`a23d197`](https://github.com/eslint/eslint/commit/a23d1975d48841eafdead1a1357e2af842f688bc) New: add allowSingleLineBlocks opt. to padded-blocks rule (fixes #7145) (#11243) (richie3366)
12
+ * [`e25e7aa`](https://github.com/eslint/eslint/commit/e25e7aa3ea1e8c9b3cd3242acda6d4a5572c2c6a) Fix: comma-spacing ignore comma before closing paren (fixes #11295) (#11374) (Pig Fang)
13
+ * [`a1f7c44`](https://github.com/eslint/eslint/commit/a1f7c44ea9efbd9393889c1cc91b74260e0a8e02) Docs: fix space-before-blocks correct code for "classes": "never" (#11391) (PoziWorld)
14
+ * [`14f58a2`](https://github.com/eslint/eslint/commit/14f58a2bec4d6aade0de22771c378b86b1e51959) Docs: fix grammar in object-curly-spacing docs (#11389) (PoziWorld)
15
+ * [`d3e9a27`](https://github.com/eslint/eslint/commit/d3e9a27bbba30008a610df59e82b7192f0ecc3a3) Docs: fix grammar in “those who says” (#11390) (PoziWorld)
16
+ * [`ea8e804`](https://github.com/eslint/eslint/commit/ea8e8045ba0e6c1e1015104346af962f3e16fd81) Docs: Add note about support for object spread (fixes #11136) (#11395) (Steven Thomas)
17
+ * [`95aa3fd`](https://github.com/eslint/eslint/commit/95aa3fdb392d265e6c3d813d54076458e88e7ad8) Docs: Update README team and sponsors (ESLint Jenkins)
18
+ * [`51c4972`](https://github.com/eslint/eslint/commit/51c497298a15ad296a2b1f8fc397df687976b836) Update: Behavior of --init (fixes #11105) (#11332) (Nicholas C. Zakas)
19
+ * [`ad7a380`](https://github.com/eslint/eslint/commit/ad7a38097c32a91e5a831ef1bc8933601532576c) Docs: Update README team and sponsors (ESLint Jenkins)
20
+ * [`550de1e`](https://github.com/eslint/eslint/commit/550de1e611a1e9af873bcb18d74cf2056e8d2e1b) Update: use `default` keyword in JSON schema (fixes #9929) (#11288) (Pig Fang)
21
+ * [`983c520`](https://github.com/eslint/eslint/commit/983c5201210d7a4ffab0b3d05ab9919c0754e5ca) Update: Use 'readonly' and 'writable' for globals (fixes #11359) (#11384) (Nicholas C. Zakas)
22
+ * [`f1d3a7e`](https://github.com/eslint/eslint/commit/f1d3a7ee7c82365989e219b1dae379f08f6dd526) Upgrade: some deps (fixes #11372) (#11373) (薛定谔的猫)
23
+ * [`3e0c417`](https://github.com/eslint/eslint/commit/3e0c4176eff085498b813f8ba1732d7ed6ee44f8) Docs: Fix grammar in “there’s nothing prevent you” (#11385) (PoziWorld)
24
+ * [`de988bc`](https://github.com/eslint/eslint/commit/de988bc909b491366ad0cd9bc83f4d6de42d041a) Docs: Fix grammar: Spacing improve -> Spacing improves (#11386) (PoziWorld)
25
+ * [`1309dfd`](https://github.com/eslint/eslint/commit/1309dfdebb5595460b79dcac20df6a1f109e7566) Revert "Build: fix test failure on Node 11 (#11100)" (#11375) (薛定谔的猫)
26
+ * [`1e56897`](https://github.com/eslint/eslint/commit/1e56897db3e254e0aef6d2fe3274157fc379c79e) Docs: “the function actually use”: use -> uses (#11380) (PoziWorld)
27
+ * [`5a71bc9`](https://github.com/eslint/eslint/commit/5a71bc95a7e961b1b1b77022645e0bd9cdd08dc0) Docs: Update README team and sponsors (ESLint Jenkins)
28
+ * [`82a58ce`](https://github.com/eslint/eslint/commit/82a58ce26b282fd80335b3ac4fc88f21266c3ba1) Docs: Update README team and sponsors (ESLint Jenkins)
29
+ * [`546d355`](https://github.com/eslint/eslint/commit/546d355ace65631e27de859baea3ffcc50e0ad2c) Docs: Update README with latest sponsors/team data (#11378) (Nicholas C. Zakas)
30
+ * [`c0df9fe`](https://github.com/eslint/eslint/commit/c0df9febb7c7e045ababc10b88dbcbb3f28c724c) Docs: `...` is not an operator (#11232) (Felix Kling)
31
+ * [`7ecfdef`](https://github.com/eslint/eslint/commit/7ecfdefaeadb772f8b96ffe37c4a2c97fde0da16) Docs: update typescript parser (refs #11368) (#11369) (薛定谔的猫)
32
+ * [`3c90dd7`](https://github.com/eslint/eslint/commit/3c90dd7e25cf97833deddb11cfbc107a5663ac08) Update: remove prefer-spread autofix (fixes #11330) (#11365) (薛定谔的猫)
33
+ * [`5eb3121`](https://github.com/eslint/eslint/commit/5eb3121b82c1837da0c3021b7d9384bb30832e36) Update: add fixer for `prefer-destructuring` (fixes #11151) (#11301) (golopot)
34
+ * [`173eb38`](https://github.com/eslint/eslint/commit/173eb38cdb3e4673cba947521f27158828186d77) Docs: Clarify ecmaVersion doesn't imply globals (refs #9812) (#11364) (Keith Maxwell)
35
+ * [`84ce72f`](https://github.com/eslint/eslint/commit/84ce72fdeba082b7b132e4ac6b714fb1a93831b7) Fix: Remove extraneous linefeeds in `one-var` fixer (fixes #10741) (#10955) (st-sloth)
36
+ * [`389362a`](https://github.com/eslint/eslint/commit/389362a06ac6601512b872d3e843c7371f2a1bcc) Docs: clarify motivation for no-prototype-builtins (#11356) (Teddy Katz)
37
+ * [`533d240`](https://github.com/eslint/eslint/commit/533d240b0811f663494cb213b06cc9e51e1ff2d0) Update: no-shadow-restricted-names lets unassigned vars shadow undefined (#11341) (Teddy Katz)
38
+ * [`d0e823a`](https://github.com/eslint/eslint/commit/d0e823aef196a6564c87a78b72c1ef980ce67af9) Update: Make --init run js config files through linter (fixes #9947) (#11337) (Brian Kurek)
39
+ * [`92fc2f4`](https://github.com/eslint/eslint/commit/92fc2f4f3faf8aeaae8a8e71db0de405404fb6c3) Fix: CircularJSON dependency warning (fixes #11052) (#11314) (Terry)
40
+ * [`4dd19a3`](https://github.com/eslint/eslint/commit/4dd19a3c4c037adc860a65e96f2ba3eeccace1de) Docs: mention 'prefer-spread' in docs of 'no-useless-call' (#11348) (Klaus Meinhardt)
41
+ * [`4fd83d5`](https://github.com/eslint/eslint/commit/4fd83d5ec47a6a7b81cd8801c3bd63d27ea1c7c4) Docs: fix a misleading example in one-var (#11350) (薛定谔的猫)
42
+ * [`9441ce7`](https://github.com/eslint/eslint/commit/9441ce77b7228f2c4562e158a10905afe11f31f2) Chore: update incorrect tests to fix build failing (#11354) (薛定谔的猫)
43
+
44
+ v5.13.0 - February 1, 2019
45
+
46
+ * [`91c8884`](https://github.com/eslint/eslint/commit/91c8884971f5e57f5f7490d8daf92c4a9a489836) Chore: use local function to append "s" instead of a package (#11293) (Timo Tijhof)
47
+ * [`b5143bf`](https://github.com/eslint/eslint/commit/b5143bfc09e53d8da8f63421ade093b7593f4f51) Update: for-direction detection false positives/negatives (#11254) (Ruben Bridgewater)
48
+ * [`9005e63`](https://github.com/eslint/eslint/commit/9005e632d13476880c55f7e3c8a6e450762a5171) Chore: increase camelcase test coverage (#11299) (Redmond Tran)
49
+ * [`5b14ad1`](https://github.com/eslint/eslint/commit/5b14ad1003c7df9a37621dea55c6d6d0484adc05) Fix: false positive in no-constant-condition (fixes #11306) (#11308) (Pig Fang)
50
+ * [`6567c4f`](https://github.com/eslint/eslint/commit/6567c4f6665df85c3347388b29d8193cc8208d63) Fix: only remove arrow before body in object-shorthand (fixes #11305) (#11307) (Pig Fang)
51
+ * [`fa2f370`](https://github.com/eslint/eslint/commit/fa2f370affa4814dbdda278f9859d0172d4b7aa2) Docs: update rule configuration values in examples (#11323) (Kai Cataldo)
52
+ * [`0a3c3ff`](https://github.com/eslint/eslint/commit/0a3c3ff1d91e8f39943efc4a7d2bf6927d68d37e) New: Allow globals to be disabled/configured with strings (fixes #9940) (#11338) (Teddy Katz)
53
+ * [`dccee63`](https://github.com/eslint/eslint/commit/dccee63cf41234180c71bf0fe01b165c9078fc69) Chore: avoid hard-coding the list of core rules in eslint:recommended (#11336) (Teddy Katz)
54
+ * [`c1fd6f5`](https://github.com/eslint/eslint/commit/c1fd6f54d92efe615bcae529006221e122dbe9e6) Chore: remove undocumented `Linter#rules` property (refs #9161) (#11335) (Teddy Katz)
55
+ * [`36e3356`](https://github.com/eslint/eslint/commit/36e335681d61cbe3c83b653b7cc5f95730f1d86e) Chore: remove dead code for loading rules (#11334) (Teddy Katz)
56
+ * [`c464e27`](https://github.com/eslint/eslint/commit/c464e2744ec76e7e9c6c5af0f6162c92187f1ece) Docs: Rename `result` -> `foo` (#11210) (Alexis Tyler)
57
+
58
+ v5.12.1 - January 18, 2019
59
+
60
+ * [`eb5c401`](https://github.com/eslint/eslint/commit/eb5c4014f16be1c2003ed46ce9560d0d8a567d0f) Chore: use meta.messages in some rules (2/4) (refs #9870) (#10773) (薛定谔的猫)
61
+ * [`aa56247`](https://github.com/eslint/eslint/commit/aa56247746a0095996a41dd03bdbbf659f0f93b6) Fix: avoid loading core rules dynamically from FS in Linter (#11278) (Peter Metz)
62
+ * [`04450bb`](https://github.com/eslint/eslint/commit/04450bb7ed20f2412102538b238119d9764b4dc9) Docs: clarify process for adding committers (#11272) (Kai Cataldo)
63
+ * [`3ffcf26`](https://github.com/eslint/eslint/commit/3ffcf26c1c83efe7d7cf2d87f1063695ae653709) Docs: add @g-plane as committer (#11277) (Kai Cataldo)
64
+ * [`c403445`](https://github.com/eslint/eslint/commit/c40344566eff2e77a6ae2b2d2dbdbd4ad3e76b67) Fix: warn constant on RHS of || in no-constant-condition (fixes #11181) (#11253) (Merlin Mason)
65
+ * [`9194f45`](https://github.com/eslint/eslint/commit/9194f45ac7d521119a53773bf02b81670bad526e) Fix: Manage severity of 1 with TAP reporter (fixes #11110) (#11221) (Gabriel Cousin)
66
+ * [`000f495`](https://github.com/eslint/eslint/commit/000f4952ae6a4311fbbc3ed36c481235fcb0b64b) Docs: fix example for sort-imports ignoreDeclarationSort (#11242) (Remco Haszing)
67
+ * [`7c0bf2c`](https://github.com/eslint/eslint/commit/7c0bf2ca92d83125a1fa000c9c4250bae6b4fc21) Docs: Add `npx` usage to Getting Started guide (#11249) (eyal0803)
68
+ * [`da9174e`](https://github.com/eslint/eslint/commit/da9174e0798c1d785ddabb3ae405860fc5b89311) Docs: fixes typo peerDepencies (#11252) (Christian Kühl)
69
+ * [`9c31625`](https://github.com/eslint/eslint/commit/9c31625f19176664ef76dcf088ce50703c41c324) Docs: Improve custom formatter docs (#11258) (Nicholas C. Zakas)
70
+
1
71
  v5.12.0 - January 4, 2019
2
72
 
3
73
  * [`0d91e7d`](https://github.com/eslint/eslint/commit/0d91e7d28e5eba79a6032165cdef5d4549d26462) Update: Add sort-imports ignoreDeclarationSort (fixes #11019) (#11040) (Remco Haszing)
package/README.md CHANGED
@@ -133,7 +133,7 @@ If you are trying to run locally:
133
133
  * Make sure your plugins (and ESLint) are both in your project's `package.json` as devDependencies (or dependencies, if your project uses ESLint at runtime).
134
134
  * Make sure you have run `npm install` and all your dependencies are installed.
135
135
 
136
- In all cases, make sure your plugins' peerDependencies have been installed as well. You can use `npm view eslint-plugin-myplugin peerDepencies` to see what peer dependencies `eslint-plugin-myplugin` has.
136
+ In all cases, make sure your plugins' peerDependencies have been installed as well. You can use `npm view eslint-plugin-myplugin peerDependencies` to see what peer dependencies `eslint-plugin-myplugin` has.
137
137
 
138
138
  ### Does ESLint support JSX?
139
139
 
@@ -195,151 +195,84 @@ These folks keep the project moving and are resources for help.
195
195
 
196
196
  ### Technical Steering Committee (TSC)
197
197
 
198
- <table>
199
- <tbody>
200
- <tr>
201
- <td align="center" valign="top" width="11%">
202
- <a href="https://github.com/nzakas">
203
- <img src="https://github.com/nzakas.png?s=75" width="75px" height="75px"><br/>
204
- <sub>Nicholas C. Zakas</sub></a>
205
- </td>
206
- <td align="center" valign="top" width="11%">
207
- <a href="https://github.com/ilyavolodin">
208
- <img src="https://github.com/ilyavolodin.png?s=75" width="75px" height="75px"><br/>
209
- <sub>Ilya Volodin</sub></a>
210
- </td>
211
- <td align="center" valign="top" width="11%">
212
- <a href="https://github.com/btmills">
213
- <img src="https://github.com/btmills.png?s=75" width="75px" height="75px"><br/>
214
- <sub>Brandon Mills</sub></a>
215
- </td>
216
- <td align="center" valign="top" width="11%">
217
- <a href="https://github.com/gyandeeps">
218
- <img src="https://github.com/gyandeeps.png?s=75" width="75px" height="75px"><br/>
219
- <sub>Gyandeep Singh</sub></a>
220
- </td>
221
- <td align="center" valign="top" width="11%">
222
- <a href="https://github.com/mysticatea">
223
- <img src="https://github.com/mysticatea.png?s=75" width="75px" height="75px"><br/>
224
- <sub>Toru Nagashima</sub></a>
225
- </td>
226
- <td align="center" valign="top" width="11%">
227
- <a href="https://github.com/alberto">
228
- <img src="https://github.com/alberto.png?s=75" width="75px" height="75px"><br/>
229
- <sub>Alberto Rodríguez</sub></a>
230
- </td>
231
- <td align="center" valign="top" width="11%">
232
- <a href="https://github.com/kaicataldo">
233
- <img src="https://github.com/kaicataldo.png?s=75" width="75px" height="75px"><br/>
234
- <sub>Kai Cataldo</sub></a>
235
- </td>
236
- <td align="center" valign="top" width="11%">
237
- <a href="https://github.com/not-an-aardvark">
238
- <img src="https://github.com/not-an-aardvark.png?s=75" width="75px" height="75px"><br/>
239
- <sub>Teddy Katz</sub></a>
240
- </td>
241
- <td align="center" valign="top" width="11%">
242
- <a href="https://github.com/platinumazure">
243
- <img src="https://github.com/platinumazure.png?s=75" width="75px" height="75px"><br/>
244
- <sub>Kevin Partington</sub></a>
245
- </td>
246
- </tr>
247
- </tbody>
248
- </table>
249
-
250
- ### Development Team
251
-
252
- <table>
253
- <tbody>
254
- <tr>
255
- <td align="center" valign="top" width="11%">
256
- <a href="https://github.com/lo1tuma">
257
- <img src="https://github.com/lo1tuma.png?s=75" width="75px" height="75px"><br/>
258
- <sub>Mathias Schreck</sub></a>
259
- </td>
260
- <td align="center" valign="top" width="11%">
261
- <a href="https://github.com/xjamundx">
262
- <img src="https://github.com/xjamundx.png?s=75" width="75px" height="75px"><br/>
263
- <sub>Jamund Ferguson</sub></a>
264
- </td>
265
- <td align="center" valign="top" width="11%">
266
- <a href="https://github.com/ianvs">
267
- <img src="https://github.com/ianvs.png?s=75" width="75px" height="75px"><br/>
268
- <sub>Ian VanSchooten</sub></a>
269
- </td>
270
- <td align="center" valign="top" width="11%">
271
- <a href="https://github.com/byk">
272
- <img src="https://github.com/byk.png?s=75" width="75px" height="75px"><br/>
273
- <sub>Burak Yiğit Kaya</sub></a>
274
- </td>
275
- <td align="center" valign="top" width="11%">
276
- <a href="https://github.com/michaelficarra">
277
- <img src="https://github.com/michaelficarra.png?s=75" width="75px" height="75px"><br/>
278
- <sub>Michael Ficarra</sub></a>
279
- </td>
280
- <td align="center" valign="top" width="11%">
281
- <a href="https://github.com/pedrottimark">
282
- <img src="https://github.com/pedrottimark.png?s=75" width="75px" height="75px"><br/>
283
- <sub>Mark Pedrotti</sub></a>
284
- </td>
285
- <td align="center" valign="top" width="11%">
286
- <a href="https://github.com/markelog">
287
- <img src="https://github.com/markelog.png?s=75" width="75px" height="75px"><br/>
288
- <sub>Oleg Gaidarenko</sub></a>
289
- </td>
290
- <td align="center" valign="top" width="11%">
291
- <a href="https://github.com/mikesherov">
292
- <img src="https://github.com/mikesherov.png?s=75" width="75px" height="75px"><br/>
293
- <sub>Mike Sherov</sub></a>
294
- </td>
295
- </tr>
296
- <tr>
297
- <td align="center" valign="top" width="11%">
298
- <a href="https://github.com/hzoo">
299
- <img src="https://github.com/hzoo.png?s=75" width="75px" height="75px"><br/>
300
- <sub>Henry Zhu</sub></a>
301
- </td>
302
- <td align="center" valign="top" width="11%">
303
- <a href="https://github.com/mdevils">
304
- <img src="https://github.com/mdevils.png?s=75" width="75px" height="75px"><br/>
305
- <sub>Marat Dulin</sub></a>
306
- </td>
307
- <td align="center" valign="top" width="11%">
308
- <a href="https://github.com/zxqfox">
309
- <img src="https://github.com/zxqfox.png?s=75" width="75px" height="75px"><br/>
310
- <sub>Alexej Yaroshevich</sub></a>
311
- </td>
312
- <td align="center" valign="top" width="11%">
313
- <a href="https://github.com/vitorbal">
314
- <img src="https://github.com/vitorbal.png?s=75" width="75px" height="75px"><br/>
315
- <sub>Vitor Balocco</sub></a>
316
- </td>
317
- <td align="center" valign="top" width="11%">
318
- <a href="https://github.com/JamesHenry">
319
- <img src="https://github.com/JamesHenry.png?s=75" width="75px" height="75px"><br/>
320
- <sub>James Henry</sub></a>
321
- </td>
322
- <td align="center" valign="top" width="11%">
323
- <a href="https://github.com/soda0289">
324
- <img src="https://github.com/soda0289.png?s=75" width="75px" height="75px"><br/>
325
- <sub>Reyad Attiyat</sub></a>
326
- </td>
327
- <td align="center" valign="top" width="11%">
328
- <a href="https://github.com/Aladdin-ADD">
329
- <img src="https://github.com/Aladdin-ADD.png?s=75" width="75px" height="75px"><br/>
330
- <sub>薛定谔的猫</sub></a>
331
- </td>
332
- <td align="center" valign="top" width="11%">
333
- <a href="https://github.com/VictorHom">
334
- <img src="https://github.com/VictorHom.png?s=75" width="75px" height="75px"><br/>
335
- <sub>Victor Hom</sub></a>
336
- </td>
337
- </tr>
338
- </tbody>
339
- </table>
198
+ The people who manage releases, review feature requests, and meet regularly to ensure ESLint is properly maintained.
199
+
200
+ <!-- NOTE: This section is autogenerated. Do not manually edit.-->
201
+ <!--tscstart-->
202
+ <table><tbody><tr><td align="center" valign="top" width="11%">
203
+ <a href="https://github.com/nzakas">
204
+ <img src="https://github.com/nzakas.png?s=75" width="75" height="75"><br />
205
+ Nicholas C. Zakas
206
+ </a>
207
+ </td><td align="center" valign="top" width="11%">
208
+ <a href="https://github.com/platinumazure">
209
+ <img src="https://github.com/platinumazure.png?s=75" width="75" height="75"><br />
210
+ Kevin Partington
211
+ </a>
212
+ </td><td align="center" valign="top" width="11%">
213
+ <a href="https://github.com/ilyavolodin">
214
+ <img src="https://github.com/ilyavolodin.png?s=75" width="75" height="75"><br />
215
+ Ilya Volodin
216
+ </a>
217
+ </td><td align="center" valign="top" width="11%">
218
+ <a href="https://github.com/btmills">
219
+ <img src="https://github.com/btmills.png?s=75" width="75" height="75"><br />
220
+ Brandon Mills
221
+ </a>
222
+ </td><td align="center" valign="top" width="11%">
223
+ <a href="https://github.com/mysticatea">
224
+ <img src="https://github.com/mysticatea.png?s=75" width="75" height="75"><br />
225
+ Toru Nagashima
226
+ </a>
227
+ </td><td align="center" valign="top" width="11%">
228
+ <a href="https://github.com/gyandeeps">
229
+ <img src="https://github.com/gyandeeps.png?s=75" width="75" height="75"><br />
230
+ Gyandeep Singh
231
+ </a>
232
+ </td><td align="center" valign="top" width="11%">
233
+ <a href="https://github.com/kaicataldo">
234
+ <img src="https://github.com/kaicataldo.png?s=75" width="75" height="75"><br />
235
+ Kai Cataldo
236
+ </a>
237
+ </td><td align="center" valign="top" width="11%">
238
+ <a href="https://github.com/not-an-aardvark">
239
+ <img src="https://github.com/not-an-aardvark.png?s=75" width="75" height="75"><br />
240
+ Teddy Katz
241
+ </a>
242
+ </td></tr></tbody></table><!--tscend-->
243
+
244
+ ### Committers
245
+
246
+ The people who review and fix bugs and help triage issues.
247
+
248
+ <!-- NOTE: This section is autogenerated. Do not manually edit.-->
249
+ <!--committersstart-->
250
+ <table><tbody><tr><td align="center" valign="top" width="11%">
251
+ <a href="https://github.com/aladdin-add">
252
+ <img src="https://github.com/aladdin-add.png?s=75" width="75" height="75"><br />
253
+ 薛定谔的猫
254
+ </a>
255
+ </td><td align="center" valign="top" width="11%">
256
+ <a href="https://github.com/g-plane">
257
+ <img src="https://github.com/g-plane.png?s=75" width="75" height="75"><br />
258
+ Pig Fang
259
+ </a>
260
+ </td></tr></tbody></table><!--committersend-->
340
261
 
341
262
  ## Sponsors
342
263
 
264
+ The following companies, organizations, and individuals support ESLint's ongoing maintenance and development. [Become a Sponsor](https://opencollective.com/eslint) to get your logo on our README and website.
265
+
266
+ <!-- NOTE: This section is autogenerated. Do not manually edit.-->
267
+ <!--sponsorsstart-->
268
+ <h3>Gold Sponsors</h3>
269
+ <p><a href="https://code.facebook.com/projects/"><img src="https://images.opencollective.com/proxy/images/?src=https%3A%2F%2Fres.cloudinary.com%2Fopencollective%2Fimage%2Fupload%2Fv1508519428%2FS9gk78AS_400x400_fulq2l.jpg&height=96" alt="Facebook Open Source" height="96"></a> <a href="https://www.airbnb.com/"><img src="https://images.opencollective.com/proxy/images/?src=https%3A%2F%2Fopencollective-production.s3-us-west-1.amazonaws.com%2F098e3bd0-4d57-11e8-9324-0f6cc1f92bf1.png&height=96" alt="Airbnb" height="96"></a></p><h3>Silver Sponsors</h3>
270
+ <p><a href="https://www.ampproject.org/"><img src="https://images.opencollective.com/proxy/images/?src=https%3A%2F%2Fopencollective-production.s3-us-west-1.amazonaws.com%2F68ed8b70-ebf2-11e6-9958-cb7e79408c56.png&height=96" alt="AMP Project" height="64"></a></p><h3>Bronze Sponsors</h3>
271
+ <p><a href="http://faithlife.com/ref/about"><img src="https://images.opencollective.com/proxy/images/?src=https%3A%2F%2Flogo.clearbit.com%2Ffaithlife.com&height=96" alt="Faithlife" height="32"></a></p>
272
+ <!--sponsorsend-->
273
+
274
+ ## Technology Sponsors
275
+
343
276
  * Site search ([eslint.org](https://eslint.org)) is sponsored by [Algolia](https://www.algolia.com)
344
277
 
345
278
 
@@ -9,16 +9,14 @@
9
9
  // Requirements
10
10
  //------------------------------------------------------------------------------
11
11
 
12
- const load = require("../lib/load-rules"),
13
- Rules = require("../lib/rules");
14
- const rules = new Rules();
12
+ const builtInRules = require("../lib/built-in-rules-index");
15
13
 
16
14
  //------------------------------------------------------------------------------
17
15
  // Helpers
18
16
  //------------------------------------------------------------------------------
19
17
 
20
- const enabledRules = Object.keys(load()).reduce((result, ruleId) => {
21
- if (!rules.get(ruleId).meta.deprecated) {
18
+ const enabledRules = Object.keys(builtInRules).reduce((result, ruleId) => {
19
+ if (!builtInRules[ruleId].meta.deprecated) {
22
20
  result[ruleId] = "error";
23
21
  }
24
22
  return result;
@@ -6,274 +6,10 @@
6
6
 
7
7
  "use strict";
8
8
 
9
- /* eslint sort-keys: ["error", "asc"] */
9
+ const builtInRules = require("../lib/built-in-rules-index");
10
10
 
11
11
  module.exports = {
12
- rules: {
13
- "accessor-pairs": "off",
14
- "array-bracket-newline": "off",
15
- "array-bracket-spacing": "off",
16
- "array-callback-return": "off",
17
- "array-element-newline": "off",
18
- "arrow-body-style": "off",
19
- "arrow-parens": "off",
20
- "arrow-spacing": "off",
21
- "block-scoped-var": "off",
22
- "block-spacing": "off",
23
- "brace-style": "off",
24
- "callback-return": "off",
25
- camelcase: "off",
26
- "capitalized-comments": "off",
27
- "class-methods-use-this": "off",
28
- "comma-dangle": "off",
29
- "comma-spacing": "off",
30
- "comma-style": "off",
31
- complexity: "off",
32
- "computed-property-spacing": "off",
33
- "consistent-return": "off",
34
- "consistent-this": "off",
35
- "constructor-super": "error",
36
- curly: "off",
37
- "default-case": "off",
38
- "dot-location": "off",
39
- "dot-notation": "off",
40
- "eol-last": "off",
41
- eqeqeq: "off",
42
- "for-direction": "error",
43
- "func-call-spacing": "off",
44
- "func-name-matching": "off",
45
- "func-names": "off",
46
- "func-style": "off",
47
- "function-paren-newline": "off",
48
- "generator-star-spacing": "off",
49
- "getter-return": "error",
50
- "global-require": "off",
51
- "guard-for-in": "off",
52
- "handle-callback-err": "off",
53
- "id-blacklist": "off",
54
- "id-length": "off",
55
- "id-match": "off",
56
- "implicit-arrow-linebreak": "off",
57
- indent: "off",
58
- "indent-legacy": "off",
59
- "init-declarations": "off",
60
- "jsx-quotes": "off",
61
- "key-spacing": "off",
62
- "keyword-spacing": "off",
63
- "line-comment-position": "off",
64
- "linebreak-style": "off",
65
- "lines-around-comment": "off",
66
- "lines-around-directive": "off",
67
- "lines-between-class-members": "off",
68
- "max-classes-per-file": "off",
69
- "max-depth": "off",
70
- "max-len": "off",
71
- "max-lines": "off",
72
- "max-lines-per-function": "off",
73
- "max-nested-callbacks": "off",
74
- "max-params": "off",
75
- "max-statements": "off",
76
- "max-statements-per-line": "off",
77
- "multiline-comment-style": "off",
78
- "multiline-ternary": "off",
79
- "new-cap": "off",
80
- "new-parens": "off",
81
- "newline-after-var": "off",
82
- "newline-before-return": "off",
83
- "newline-per-chained-call": "off",
84
- "no-alert": "off",
85
- "no-array-constructor": "off",
86
- "no-async-promise-executor": "off",
87
- "no-await-in-loop": "off",
88
- "no-bitwise": "off",
89
- "no-buffer-constructor": "off",
90
- "no-caller": "off",
91
- "no-case-declarations": "error",
92
- "no-catch-shadow": "off",
93
- "no-class-assign": "error",
94
- "no-compare-neg-zero": "error",
95
- "no-cond-assign": "error",
96
- "no-confusing-arrow": "off",
97
- "no-console": "error",
98
- "no-const-assign": "error",
99
- "no-constant-condition": "error",
100
- "no-continue": "off",
101
- "no-control-regex": "error",
102
- "no-debugger": "error",
103
- "no-delete-var": "error",
104
- "no-div-regex": "off",
105
- "no-dupe-args": "error",
106
- "no-dupe-class-members": "error",
107
- "no-dupe-keys": "error",
108
- "no-duplicate-case": "error",
109
- "no-duplicate-imports": "off",
110
- "no-else-return": "off",
111
- "no-empty": "error",
112
- "no-empty-character-class": "error",
113
- "no-empty-function": "off",
114
- "no-empty-pattern": "error",
115
- "no-eq-null": "off",
116
- "no-eval": "off",
117
- "no-ex-assign": "error",
118
- "no-extend-native": "off",
119
- "no-extra-bind": "off",
120
- "no-extra-boolean-cast": "error",
121
- "no-extra-label": "off",
122
- "no-extra-parens": "off",
123
- "no-extra-semi": "error",
124
- "no-fallthrough": "error",
125
- "no-floating-decimal": "off",
126
- "no-func-assign": "error",
127
- "no-global-assign": "error",
128
- "no-implicit-coercion": "off",
129
- "no-implicit-globals": "off",
130
- "no-implied-eval": "off",
131
- "no-inline-comments": "off",
132
- "no-inner-declarations": "error",
133
- "no-invalid-regexp": "error",
134
- "no-invalid-this": "off",
135
- "no-irregular-whitespace": "error",
136
- "no-iterator": "off",
137
- "no-label-var": "off",
138
- "no-labels": "off",
139
- "no-lone-blocks": "off",
140
- "no-lonely-if": "off",
141
- "no-loop-func": "off",
142
- "no-magic-numbers": "off",
143
- "no-misleading-character-class": "off",
144
- "no-mixed-operators": "off",
145
- "no-mixed-requires": "off",
146
- "no-mixed-spaces-and-tabs": "error",
147
- "no-multi-assign": "off",
148
- "no-multi-spaces": "off",
149
- "no-multi-str": "off",
150
- "no-multiple-empty-lines": "off",
151
- "no-native-reassign": "off",
152
- "no-negated-condition": "off",
153
- "no-negated-in-lhs": "off",
154
- "no-nested-ternary": "off",
155
- "no-new": "off",
156
- "no-new-func": "off",
157
- "no-new-object": "off",
158
- "no-new-require": "off",
159
- "no-new-symbol": "error",
160
- "no-new-wrappers": "off",
161
- "no-obj-calls": "error",
162
- "no-octal": "error",
163
- "no-octal-escape": "off",
164
- "no-param-reassign": "off",
165
- "no-path-concat": "off",
166
- "no-plusplus": "off",
167
- "no-process-env": "off",
168
- "no-process-exit": "off",
169
- "no-proto": "off",
170
- "no-prototype-builtins": "off",
171
- "no-redeclare": "error",
172
- "no-regex-spaces": "error",
173
- "no-restricted-globals": "off",
174
- "no-restricted-imports": "off",
175
- "no-restricted-modules": "off",
176
- "no-restricted-properties": "off",
177
- "no-restricted-syntax": "off",
178
- "no-return-assign": "off",
179
- "no-return-await": "off",
180
- "no-script-url": "off",
181
- "no-self-assign": "error",
182
- "no-self-compare": "off",
183
- "no-sequences": "off",
184
- "no-shadow": "off",
185
- "no-shadow-restricted-names": "off",
186
- "no-spaced-func": "off",
187
- "no-sparse-arrays": "error",
188
- "no-sync": "off",
189
- "no-tabs": "off",
190
- "no-template-curly-in-string": "off",
191
- "no-ternary": "off",
192
- "no-this-before-super": "error",
193
- "no-throw-literal": "off",
194
- "no-trailing-spaces": "off",
195
- "no-undef": "error",
196
- "no-undef-init": "off",
197
- "no-undefined": "off",
198
- "no-underscore-dangle": "off",
199
- "no-unexpected-multiline": "error",
200
- "no-unmodified-loop-condition": "off",
201
- "no-unneeded-ternary": "off",
202
- "no-unreachable": "error",
203
- "no-unsafe-finally": "error",
204
- "no-unsafe-negation": "error",
205
- "no-unused-expressions": "off",
206
- "no-unused-labels": "error",
207
- "no-unused-vars": "error",
208
- "no-use-before-define": "off",
209
- "no-useless-call": "off",
210
- "no-useless-catch": "off",
211
- "no-useless-computed-key": "off",
212
- "no-useless-concat": "off",
213
- "no-useless-constructor": "off",
214
- "no-useless-escape": "error",
215
- "no-useless-rename": "off",
216
- "no-useless-return": "off",
217
- "no-var": "off",
218
- "no-void": "off",
219
- "no-warning-comments": "off",
220
- "no-whitespace-before-property": "off",
221
- "no-with": "off",
222
- "nonblock-statement-body-position": "off",
223
- "object-curly-newline": "off",
224
- "object-curly-spacing": "off",
225
- "object-property-newline": "off",
226
- "object-shorthand": "off",
227
- "one-var": "off",
228
- "one-var-declaration-per-line": "off",
229
- "operator-assignment": "off",
230
- "operator-linebreak": "off",
231
- "padded-blocks": "off",
232
- "padding-line-between-statements": "off",
233
- "prefer-arrow-callback": "off",
234
- "prefer-const": "off",
235
- "prefer-destructuring": "off",
236
- "prefer-numeric-literals": "off",
237
- "prefer-object-spread": "off",
238
- "prefer-promise-reject-errors": "off",
239
- "prefer-reflect": "off",
240
- "prefer-rest-params": "off",
241
- "prefer-spread": "off",
242
- "prefer-template": "off",
243
- "quote-props": "off",
244
- quotes: "off",
245
- radix: "off",
246
- "require-atomic-updates": "off",
247
- "require-await": "off",
248
- "require-jsdoc": "off",
249
- "require-unicode-regexp": "off",
250
- "require-yield": "error",
251
- "rest-spread-spacing": "off",
252
- semi: "off",
253
- "semi-spacing": "off",
254
- "semi-style": "off",
255
- "sort-imports": "off",
256
- "sort-keys": "off",
257
- "sort-vars": "off",
258
- "space-before-blocks": "off",
259
- "space-before-function-paren": "off",
260
- "space-in-parens": "off",
261
- "space-infix-ops": "off",
262
- "space-unary-ops": "off",
263
- "spaced-comment": "off",
264
- strict: "off",
265
- "switch-colon-spacing": "off",
266
- "symbol-description": "off",
267
- "template-curly-spacing": "off",
268
- "template-tag-spacing": "off",
269
- "unicode-bom": "off",
270
- "use-isnan": "error",
271
- "valid-jsdoc": "off",
272
- "valid-typeof": "error",
273
- "vars-on-top": "off",
274
- "wrap-iife": "off",
275
- "wrap-regex": "off",
276
- "yield-star-spacing": "off",
277
- yoda: "off"
278
- }
12
+ rules: Object.assign({}, ...Object.keys(builtInRules).map(ruleId => ({
13
+ [ruleId]: builtInRules[ruleId].meta.docs.recommended ? "error" : "off"
14
+ })))
279
15
  };