Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 78a8b7c

Browse files
j-f1JamesHenry
authored andcommitted
docs(plugin-typescript): update roadmap (typescript-eslint#79)
1 parent 5d8db8d commit 78a8b7c

File tree

1 file changed

+26
-25
lines changed

1 file changed

+26
-25
lines changed

β€Žpackages/eslint-plugin-typescript/ROADMAP.md

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Roadmap
22

3-
## TSLint rules
3+
βœ… (27) = done
4+
🌟 (79) = in ESLint core
5+
πŸ”Œ (33) = in another plugin
6+
πŸŒ“ (16) = implementations differ or ESLint version is missing functionality
7+
πŸ›‘ (71) = unimplemented
48

5-
βœ… = done
6-
🌟 = in ESLint core
7-
πŸ”Œ = in another plugin
8-
πŸ›‘ = unimplemented
9-
◐ = implementations differ or ESLint version is missing functionality
9+
## TSLint rules
1010

1111
### TypeScript-specific
1212

@@ -72,15 +72,15 @@
7272
| [`no-sparse-arrays`] | 🌟 | [`no-sparse-arrays`][no-sparse-arrays] |
7373
| [`no-string-literal`] | 🌟 | [`dot-notation`][dot-notation] |
7474
| [`no-string-throw`] | 🌟 | [`no-throw-literal`][no-throw-literal] |
75-
| [`no-submodule-imports`] | ◐ | [`import/no-internal-modules`] (slightly different) |
75+
| [`no-submodule-imports`] | πŸŒ“ | [`import/no-internal-modules`] (slightly different) |
7676
| [`no-switch-case-fall-through`] | 🌟 | [`no-fallthrough`][no-fallthrough] |
7777
| [`no-this-assignment`] | βœ… | [`typescript/no-this-alias`] |
7878
| [`no-unbound-method`] | πŸ›‘ | N/A |
7979
| [`no-unnecessary-class`] | βœ… | [`typescript/no-extraneous-class`] |
8080
| [`no-unsafe-any`] | πŸ›‘ | N/A |
8181
| [`no-unsafe-finally`] | 🌟 | [`no-unsafe-finally`][no-unsafe-finally] |
8282
| [`no-unused-expression`] | 🌟 | [`no-unused-expression`][no-unused-expressions] |
83-
| [`no-unused-variable`] | ◐ | [`no-unused-vars`][no-unused-vars] <sup>[2]</sup> |
83+
| [`no-unused-variable`] | πŸŒ“ | [`no-unused-vars`][no-unused-vars] <sup>[2]</sup> |
8484
| [`no-use-before-declare`] | βœ… | [`typescript/no-use-before-define`] |
8585
| [`no-var-keyword`] | 🌟 | [`no-var`][no-var] |
8686
| [`no-void-expression`] | 🌟 | [`no-void`][no-void] |
@@ -104,7 +104,7 @@
104104
| TSLint rule | | ESLint rule |
105105
| ---------------------------- | :-: | -------------------------------------------------- |
106106
| [`cyclomatic-complexity`] | 🌟 | [`complexity`][complexity] |
107-
| [`deprecation`] | ◐ | [`import/no-deprecated`] <sup>[1]</sup> |
107+
| [`deprecation`] | πŸŒ“ | [`import/no-deprecated`] <sup>[1]</sup> |
108108
| [`eofline`] | 🌟 | [`eol-last`][eol-last] |
109109
| [`indent`] | βœ… | [`typescript/indent`] or [Prettier] |
110110
| [`linebreak-style`] | 🌟 | [`linebreak-style`][linebreak-style] or [Prettier] |
@@ -115,10 +115,10 @@
115115
| [`no-duplicate-imports`] | πŸ”Œ | [`import/no-duplicates`] |
116116
| [`no-mergeable-namespace`] | πŸ›‘ | N/A |
117117
| [`no-require-imports`] | πŸ›‘ | N/A |
118-
| [`object-literal-sort-keys`] | ◐ | [`sort-keys`][sort-keys] <sup>[2]</sup> |
118+
| [`object-literal-sort-keys`] | πŸŒ“ | [`sort-keys`][sort-keys] <sup>[2]</sup> |
119119
| [`prefer-const`] | 🌟 | [`prefer-const`][prefer-const] |
120120
| [`prefer-readonly`] | πŸ›‘ | N/A |
121-
| [`trailing-comma`] | ◐ | [`comma-dangle`][comma-dangle] or [Prettier] |
121+
| [`trailing-comma`] | πŸŒ“ | [`comma-dangle`][comma-dangle] or [Prettier] |
122122

123123
<sup>[1]</sup> Only warns when importing deprecated symbols
124124
<sup>[2]</sup> Missing support for blank-line-delimited sections
@@ -142,7 +142,7 @@
142142
| [`import-spacing`] | πŸ”Œ | Use [Prettier] |
143143
| [`interface-name`] | βœ… | [`typescript/interface-name-prefix`] |
144144
| [`interface-over-type-literal`] | βœ… | [`typescript/prefer-interface`] |
145-
| [`jsdoc-format`] | ◐ | [`valid-jsdoc`][valid-jsdoc] or [`eslint-plugin-jsdoc`][plugin:jsdoc] |
145+
| [`jsdoc-format`] | πŸŒ“ | [`valid-jsdoc`][valid-jsdoc] or [`eslint-plugin-jsdoc`][plugin:jsdoc] |
146146
| [`match-default-export-name`] | πŸ›‘ | N/A |
147147
| [`newline-before-return`] | 🌟 | [`padding-line-between-statements`][padding-line-between-statements] <sup>[1]</sup> |
148148
| [`newline-per-chained-call`] | 🌟 | [`newline-per-chained-call`][newline-per-chained-call] |
@@ -202,7 +202,7 @@ Relevant plugins: [`chai-expect-keywords`](https://github.com/gavinaiken/eslint-
202202

203203
| tslint-microsoft-contrib rule | | ESLint rule |
204204
| ----------------------------- | :-: | -------------------------------------------------- |
205-
| `prefer-array-literal` | ◐ | [`typescript/no-array-constructor`] <sup>[1]</sup> |
205+
| `prefer-array-literal` | πŸŒ“ | [`typescript/no-array-constructor`] <sup>[1]</sup> |
206206
| `prefer-type-cast` | πŸ›‘ | N/A |
207207

208208
<sup>[1]</sup> ESLint rule is slightly less strict, allowing `new Array<Foo>()` and `Array(2)`.
@@ -211,17 +211,17 @@ Relevant plugins: [`chai-expect-keywords`](https://github.com/gavinaiken/eslint-
211211

212212
| tslint-microsoft-contrib rule | | ESLint rule |
213213
| ------------------------------------- | :-: | ---------------------------------------------------------------------- |
214-
| `export-name` | πŸ›‘ | N/A ([relevant plugin](plugin:import)) |
214+
| `export-name` | πŸ›‘ | N/A ([relevant plugin][plugin:import]) |
215215
| `function-name` | πŸ›‘ | N/A |
216-
| `import-name` | πŸ›‘ | N/A ([relevant plugin](plugin:import)) |
216+
| `import-name` | πŸ›‘ | N/A ([relevant plugin][plugin:import]) |
217217
| `function-name` | πŸ›‘ | N/A |
218218
| `informative-docs` | πŸ›‘ | N/A |
219219
| `insecure-random` | πŸ”Œ | [custom implementation][insecure-random] |
220220
| `max-func-body-length` | 🌟 | [`max-statements`][max-statements] |
221-
| `no-banned-terms` | 🌟 | [`no-callee`][no-callee] & [`no-eval`][no-eval] |
221+
| `no-banned-terms` | 🌟 | [`no-caller`][no-caller] & [`no-eval`][no-eval] |
222222
| `no-constant-condition` | 🌟 | [`no-constant-condition`][no-constant-condition] |
223223
| `no-control-regex` | 🌟 | [`no-control-regex`][no-control-regex] |
224-
| `no-delete-expression` | ◐ | [`no-delete-var`][no-delete-var] |
224+
| `no-delete-expression` | πŸŒ“ | [`no-delete-var`][no-delete-var] |
225225
| `no-empty-line-after-opening-brace` | 🌟 | [`padded-blocks`][padded-blocks] <sup>[1]</sup> or [Prettier] |
226226
| `no-for-in` | 🌟 | [`no-restricted-syntax`][no-restricted-syntax] <sup>[2]</sup> |
227227
| `no-function-expression` | 🌟 | [`func-style`][func-style] <sup>[3]</sup> |
@@ -234,7 +234,7 @@ Relevant plugins: [`chai-expect-keywords`](https://github.com/gavinaiken/eslint-
234234
| `no-suspicious-comment` | 🌟 | [`no-warning-comments`][no-warning-comments] <sup>[4]</sup> |
235235
| `no-typeof-undefined` | πŸ›‘ | N/A (this actually has a valid use: checking if a variable is defined) |
236236
| `no-unexternalized-strings` | πŸ›‘ | N/A |
237-
| `no-unnecessary-field-initialization` | ◐ | [`no-undef-init`][no-undef-init] <sup>[5]</sup> |
237+
| `no-unnecessary-field-initialization` | πŸŒ“ | [`no-undef-init`][no-undef-init] <sup>[5]</sup> |
238238
| `no-unnecessary-local-variable` | πŸ›‘ | N/A |
239239
| `no-unnecessary-override` | πŸ›‘ | N/A |
240240
| `no-unnecessary-semicolons` | 🌟 | [`no-extra-semi`][no-extra-semi] or [Prettier] |
@@ -258,7 +258,7 @@ Relevant plugins: [`chai-expect-keywords`](https://github.com/gavinaiken/eslint-
258258
| tslint-microsoft-contrib rule | | ESLint rule |
259259
| ------------------------------------------ | :-: | -------------------------------------------------- |
260260
| `no-disable-auto-sanitization` | πŸ›‘ | N/A |
261-
| `no-document-domain` | ◐ | Use [`no-restricted-syntax`][no-restricted-syntax] |
261+
| `no-document-domain` | πŸŒ“ | Use [`no-restricted-syntax`][no-restricted-syntax] |
262262
| `no-function-constructor-with-string-args` | 🌟 | [`no-new-func`][no-new-func] |
263263
| `no-http-string` | πŸ›‘ | N/A |
264264
| `no-inner-html` | πŸ›‘ | N/A |
@@ -277,23 +277,23 @@ Relevant plugins: [`chai-expect-keywords`](https://github.com/gavinaiken/eslint-
277277
| ----------------------------------- | :-: | -------------------------------------------------- |
278278
| `jquery-deferred-must-complete` | πŸ›‘ | N/A |
279279
| `no-backbone-get-set-outside-model` | πŸ›‘ | N/A |
280-
| `no-cookies` | ◐ | Use [`no-restricted-syntax`][no-restricted-syntax] |
281-
| `no-document-write` | ◐ | Use [`no-restricted-syntax`][no-restricted-syntax] |
282-
| `no-exec-script` | ◐ | Use [`no-restricted-syntax`][no-restricted-syntax] |
280+
| `no-cookies` | πŸŒ“ | Use [`no-restricted-syntax`][no-restricted-syntax] |
281+
| `no-document-write` | πŸŒ“ | Use [`no-restricted-syntax`][no-restricted-syntax] |
282+
| `no-exec-script` | πŸŒ“ | Use [`no-restricted-syntax`][no-restricted-syntax] |
283283
| `no-jquery-raw-elements` | πŸ›‘ | N/A |
284284
| `no-unsupported-browser-code` | πŸ”Œ | [`eslint-plugin-compat`][plugin:compat] |
285285
| `react-this-binding-issue` | πŸ›‘ | |
286286
| `react-tsx-curly-spacing` | πŸ”Œ | [`react/jsx-curly-spacing`] |
287-
| `react-unused-props-and-state` | ◐ | [`react/no-unused-state`] |
287+
| `react-unused-props-and-state` | πŸŒ“ | [`react/no-unused-state`] |
288288

289289
### React A11y
290290

291291
| tslint-microsoft-contrib rule | | ESLint rule |
292292
| ----------------------------------------- | :-: | ---------------------------------------------------------- |
293-
| `react-a11y-accessible-headings` | ◐ | [`jsx-a11y/heading-has-content`] <sup>[1]</sup> |
293+
| `react-a11y-accessible-headings` | πŸŒ“ | [`jsx-a11y/heading-has-content`] <sup>[1]</sup> |
294294
| `react-a11y-anchors` | πŸ”Œ | [`jsx-a11y/anchor-is-valid`] |
295295
| `react-a11y-aria-unsupported-elements` | πŸ”Œ | [`jsx-a11y/aria-unsupported-elements`] |
296-
| `react-a11y-event-has-role` | ◐ | [`jsx-a11y/no-static-element-interactions`] <sup>[2]</sup> |
296+
| `react-a11y-event-has-role` | πŸŒ“ | [`jsx-a11y/no-static-element-interactions`] <sup>[2]</sup> |
297297
| `react-a11y-image-button-has-alt` | πŸ”Œ | [`jsx-a11y/alt-text`] |
298298
| `react-a11y-img-has-alt` | πŸ”Œ | [`jsx-a11y/alt-text`] |
299299
| `react-a11y-input-elements` | πŸ›‘ | N/A |
@@ -553,6 +553,7 @@ Relevant plugins: [`chai-expect-keywords`](https://github.com/gavinaiken/eslint-
553553
[no-octal-escape]: https://eslint.org/docs/rules/no-octal-escape
554554
[no-extra-semi]: https://eslint.org/docs/rules/no-extra-semi
555555
[no-with]: https://eslint.org/docs/rules/no-with
556+
[no-warning-comments]: https://eslint.org/docs/rules/no-warning-comments
556557

557558
<!-- eslint-plugin-typescript -->
558559

0 commit comments

Comments
Β (0)