From 16e8266b7f068326724698e21c1709f826f2f1f6 Mon Sep 17 00:00:00 2001 From: Scott Newcomer Date: Sat, 14 May 2022 07:05:05 -0500 Subject: [PATCH] chore: deprecate no-duplicate-imports --- packages/eslint-plugin/README.md | 1 - packages/eslint-plugin/docs/rules/no-duplicate-imports.md | 4 ++++ packages/eslint-plugin/docs/rules/no-implicit-any-catch.md | 2 ++ packages/eslint-plugin/src/configs/all.ts | 1 - packages/eslint-plugin/src/rules/no-duplicate-imports.ts | 1 + 5 files changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/eslint-plugin/README.md b/packages/eslint-plugin/README.md index 511f9679f111..4dd5163a4dcc 100644 --- a/packages/eslint-plugin/README.md +++ b/packages/eslint-plugin/README.md @@ -209,7 +209,6 @@ In these cases, we create what we call an extension rule; a rule within our plug | [`@typescript-eslint/lines-between-class-members`](./docs/rules/lines-between-class-members.md) | Require or disallow an empty line between class members | | :wrench: | | | [`@typescript-eslint/no-array-constructor`](./docs/rules/no-array-constructor.md) | Disallow generic `Array` constructors | :white_check_mark: | :wrench: | | | [`@typescript-eslint/no-dupe-class-members`](./docs/rules/no-dupe-class-members.md) | Disallow duplicate class members | | | | -| [`@typescript-eslint/no-duplicate-imports`](./docs/rules/no-duplicate-imports.md) | Disallow duplicate imports | | | | | [`@typescript-eslint/no-empty-function`](./docs/rules/no-empty-function.md) | Disallow empty functions | :white_check_mark: | | | | [`@typescript-eslint/no-extra-parens`](./docs/rules/no-extra-parens.md) | Disallow unnecessary parentheses | | :wrench: | | | [`@typescript-eslint/no-extra-semi`](./docs/rules/no-extra-semi.md) | Disallow unnecessary semicolons | :white_check_mark: | :wrench: | | diff --git a/packages/eslint-plugin/docs/rules/no-duplicate-imports.md b/packages/eslint-plugin/docs/rules/no-duplicate-imports.md index f6d1fc5eb42a..0a96d6723597 100644 --- a/packages/eslint-plugin/docs/rules/no-duplicate-imports.md +++ b/packages/eslint-plugin/docs/rules/no-duplicate-imports.md @@ -2,6 +2,10 @@ Disallow duplicate imports. +## DEPRECATED + +This rule has been deprecated in favour of the [`import/no-duplicates`](https://github.com/import-js/eslint-plugin-import/blob/HEAD/docs/rules/no-duplicates.md) rule. + ## Rule Details This rule extends the base [`eslint/no-duplicate-imports`](https://eslint.org/docs/rules/no-duplicate-imports) rule. diff --git a/packages/eslint-plugin/docs/rules/no-implicit-any-catch.md b/packages/eslint-plugin/docs/rules/no-implicit-any-catch.md index d17e53209c87..ecb5d93054ec 100644 --- a/packages/eslint-plugin/docs/rules/no-implicit-any-catch.md +++ b/packages/eslint-plugin/docs/rules/no-implicit-any-catch.md @@ -8,6 +8,8 @@ By default, TypeScript will type a catch clause variable as `any`, so explicitly The `noImplicitAny` flag in TypeScript does not cover this for backwards compatibility reasons, however you can use `useUnknownInCatchVariables` (part of `strict`) instead of this rule. +## DEPRECATED + ## Rule Details This rule requires an explicit type to be declared on a catch clause variable. diff --git a/packages/eslint-plugin/src/configs/all.ts b/packages/eslint-plugin/src/configs/all.ts index b3adbd1a3ac7..5f9562d5bac3 100644 --- a/packages/eslint-plugin/src/configs/all.ts +++ b/packages/eslint-plugin/src/configs/all.ts @@ -53,7 +53,6 @@ export = { '@typescript-eslint/no-dupe-class-members': 'error', '@typescript-eslint/no-duplicate-enum-values': 'error', 'no-duplicate-imports': 'off', - '@typescript-eslint/no-duplicate-imports': 'error', '@typescript-eslint/no-dynamic-delete': 'error', 'no-empty-function': 'off', '@typescript-eslint/no-empty-function': 'error', diff --git a/packages/eslint-plugin/src/rules/no-duplicate-imports.ts b/packages/eslint-plugin/src/rules/no-duplicate-imports.ts index 9a3ef4395e23..b54a9d5f787f 100644 --- a/packages/eslint-plugin/src/rules/no-duplicate-imports.ts +++ b/packages/eslint-plugin/src/rules/no-duplicate-imports.ts @@ -10,6 +10,7 @@ type MessageIds = util.InferMessageIdsTypeFromRule; export default util.createRule({ name: 'no-duplicate-imports', meta: { + deprecated: true, type: 'problem', docs: { description: 'Disallow duplicate imports',