Skip to content

Commit 9db2af8

Browse files
FloEdelmannwaynzh
authored andcommitted
Deprecate Vue 2 only rules (#2675)
1 parent 412b01f commit 9db2af8

9 files changed

+24
-4
lines changed

docs/rules/index.md

+16-4
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,8 @@ Rules in this category are enabled for all presets provided by eslint-plugin-vue
9191
| [vue/no-use-v-if-with-v-for] | disallow using `v-if` on the same element as `v-for` | | :three::two::hammer: |
9292
| [vue/no-useless-template-attributes] | disallow useless attribute on `<template>` | | :three::two::warning: |
9393
| [vue/no-v-for-template-key-on-child] | disallow key of `<template v-for>` placed on child elements | | :three::warning: |
94-
| [vue/no-v-for-template-key] | disallow `key` attribute on `<template v-for>` | | :two::warning: |
95-
| [vue/no-v-model-argument] | disallow adding an argument to `v-model` used in custom component | | :two::warning: |
94+
| [vue/no-v-for-template-key] | disallow `key` attribute on `<template v-for>` | :no_entry_sign: | :two::warning: |
95+
| [vue/no-v-model-argument] | disallow adding an argument to `v-model` used in custom component | :no_entry_sign: | :two::warning: |
9696
| [vue/no-v-text-v-html-on-component] | disallow v-text / v-html on component | | :three::two::warning: |
9797
| [vue/no-watch-after-await] | disallow asynchronously registered `watch` | | :three::hammer: |
9898
| [vue/prefer-import-from-vue] | enforce import from 'vue' instead of import from '@vue/*' | :wrench: | :three::hammer: |
@@ -110,10 +110,10 @@ Rules in this category are enabled for all presets provided by eslint-plugin-vue
110110
| [vue/valid-define-emits] | enforce valid `defineEmits` compiler macro | | :three::two::warning: |
111111
| [vue/valid-define-options] | enforce valid `defineOptions` compiler macro | | :three::warning: |
112112
| [vue/valid-define-props] | enforce valid `defineProps` compiler macro | | :three::two::warning: |
113-
| [vue/valid-model-definition] | require valid keys in model option | | :two::warning: |
113+
| [vue/valid-model-definition] | require valid keys in model option | :no_entry_sign: | :two::warning: |
114114
| [vue/valid-next-tick] | enforce valid `nextTick` function calls | :wrench::bulb: | :three::two::warning: |
115115
| [vue/valid-template-root] | enforce valid template root | | :three::two::warning: |
116-
| [vue/valid-v-bind-sync] | enforce valid `.sync` modifier on `v-bind` directives | | :two::warning: |
116+
| [vue/valid-v-bind-sync] | enforce valid `.sync` modifier on `v-bind` directives | :no_entry_sign: | :two::warning: |
117117
| [vue/valid-v-bind] | enforce valid `v-bind` directives | | :three::two::warning: |
118118
| [vue/valid-v-cloak] | enforce valid `v-cloak` directives | | :three::two::warning: |
119119
| [vue/valid-v-else-if] | enforce valid `v-else-if` directives | | :three::two::warning: |
@@ -342,6 +342,18 @@ The following rules extend the rules provided by ESLint itself and apply them to
342342

343343
</rules-table>
344344

345+
## Deprecated
346+
347+
- :no_entry_sign: We're going to remove deprecated rules in the next major release. Please migrate to successor/new rules.
348+
- :innocent: We don't fix bugs which are in deprecated rules since we don't have enough resources.
349+
350+
| Rule ID | Replaced by |
351+
|:--------|:------------|
352+
| [vue/no-v-for-template-key] | (no replacement) |
353+
| [vue/no-v-model-argument] | (no replacement) |
354+
| [vue/valid-model-definition] | (no replacement) |
355+
| [vue/valid-v-bind-sync] | (no replacement) |
356+
345357
## Removed
346358

347359
- :no_entry: These rules have been removed in a previous major release, after they have been deprecated for a while.

docs/rules/no-v-for-template-key.md

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ since: v7.0.0
1010

1111
> disallow `key` attribute on `<template v-for>`
1212
13+
- :no_entry_sign: This rule was **deprecated**.
1314
- :gear: This rule is included in all of `"plugin:vue/vue2-essential"`, `*.configs["flat/vue2-essential"]`, `"plugin:vue/vue2-strongly-recommended"`, `*.configs["flat/vue2-strongly-recommended"]`, `"plugin:vue/vue2-recommended"` and `*.configs["flat/vue2-recommended"]`.
1415

1516
## :book: Rule Details

docs/rules/no-v-model-argument.md

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ since: v7.0.0
1010

1111
> disallow adding an argument to `v-model` used in custom component
1212
13+
- :no_entry_sign: This rule was **deprecated**.
1314
- :gear: This rule is included in all of `"plugin:vue/vue2-essential"`, `*.configs["flat/vue2-essential"]`, `"plugin:vue/vue2-strongly-recommended"`, `*.configs["flat/vue2-strongly-recommended"]`, `"plugin:vue/vue2-recommended"` and `*.configs["flat/vue2-recommended"]`.
1415

1516
This rule checks whether `v-model` used on custom component do not have an argument.

docs/rules/valid-model-definition.md

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ since: v9.0.0
1010

1111
> require valid keys in model option
1212
13+
- :no_entry_sign: This rule was **deprecated**.
1314
- :gear: This rule is included in all of `"plugin:vue/vue2-essential"`, `*.configs["flat/vue2-essential"]`, `"plugin:vue/vue2-strongly-recommended"`, `*.configs["flat/vue2-strongly-recommended"]`, `"plugin:vue/vue2-recommended"` and `*.configs["flat/vue2-recommended"]`.
1415

1516
## :book: Rule Details

docs/rules/valid-v-bind-sync.md

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ since: v7.0.0
1010

1111
> enforce valid `.sync` modifier on `v-bind` directives
1212
13+
- :no_entry_sign: This rule was **deprecated**.
1314
- :gear: This rule is included in all of `"plugin:vue/vue2-essential"`, `*.configs["flat/vue2-essential"]`, `"plugin:vue/vue2-strongly-recommended"`, `*.configs["flat/vue2-strongly-recommended"]`, `"plugin:vue/vue2-recommended"` and `*.configs["flat/vue2-recommended"]`.
1415

1516
This rule checks whether every `.sync` modifier on `v-bind` directives is valid.

lib/rules/no-v-for-template-key.js

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ module.exports = {
1414
url: 'https://eslint.vuejs.org/rules/no-v-for-template-key.html'
1515
},
1616
fixable: null,
17+
deprecated: true,
1718
schema: [],
1819
messages: {
1920
disallow:

lib/rules/no-v-model-argument.js

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ module.exports = {
1616
url: 'https://eslint.vuejs.org/rules/no-v-model-argument.html'
1717
},
1818
fixable: null,
19+
deprecated: true,
1920
schema: [],
2021
messages: {
2122
vModelRequireNoArgument: "'v-model' directives require no argument."

lib/rules/valid-model-definition.js

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ module.exports = {
1717
url: 'https://eslint.vuejs.org/rules/valid-model-definition.html'
1818
},
1919
fixable: null,
20+
deprecated: true,
2021
schema: [],
2122
messages: {
2223
invalidKey: "Invalid key '{{name}}' in model option."

lib/rules/valid-v-bind-sync.js

+1
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ module.exports = {
7979
url: 'https://eslint.vuejs.org/rules/valid-v-bind-sync.html'
8080
},
8181
fixable: null,
82+
deprecated: true,
8283
schema: [],
8384
messages: {
8485
unexpectedInvalidElement:

0 commit comments

Comments
 (0)