Skip to content

Commit 7cf5c51

Browse files
authored
Document non-fixable rules correctly (#2343)
1 parent 77af4b4 commit 7cf5c51

16 files changed

+20
-9
lines changed

docs/rules/index.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ Rules in this category are enabled for all presets provided by eslint-plugin-vue
6262
| [vue/no-deprecated-slot-attribute](./no-deprecated-slot-attribute.md) | disallow deprecated `slot` attribute (in Vue.js 2.6.0+) | :wrench: | :three::hammer: |
6363
| [vue/no-deprecated-slot-scope-attribute](./no-deprecated-slot-scope-attribute.md) | disallow deprecated `slot-scope` attribute (in Vue.js 2.6.0+) | :wrench: | :three::hammer: |
6464
| [vue/no-deprecated-v-bind-sync](./no-deprecated-v-bind-sync.md) | disallow use of deprecated `.sync` modifier on `v-bind` directive (in Vue.js 3.0.0+) | :wrench: | :three::warning: |
65-
| [vue/no-deprecated-v-is](./no-deprecated-v-is.md) | disallow deprecated `v-is` directive (in Vue.js 3.1.0+) | :wrench: | :three::hammer: |
65+
| [vue/no-deprecated-v-is](./no-deprecated-v-is.md) | disallow deprecated `v-is` directive (in Vue.js 3.1.0+) | | :three::hammer: |
6666
| [vue/no-deprecated-v-on-native-modifier](./no-deprecated-v-on-native-modifier.md) | disallow using deprecated `.native` modifiers (in Vue.js 3.0.0+) | | :three::warning: |
6767
| [vue/no-deprecated-v-on-number-modifiers](./no-deprecated-v-on-number-modifiers.md) | disallow using deprecated number (keycode) modifiers (in Vue.js 3.0.0+) | :wrench: | :three::warning: |
6868
| [vue/no-deprecated-vue-config-keycodes](./no-deprecated-vue-config-keycodes.md) | disallow using deprecated `Vue.config.keyCodes` (in Vue.js 3.0.0+) | | :three::warning: |
@@ -225,7 +225,7 @@ For example:
225225
| [vue/new-line-between-multi-line-property](./new-line-between-multi-line-property.md) | enforce new lines between multi-line properties in Vue components | :wrench: | :lipstick: |
226226
| [vue/next-tick-style](./next-tick-style.md) | enforce Promise or callback style in `nextTick` | :wrench: | :hammer: |
227227
| [vue/no-bare-strings-in-template](./no-bare-strings-in-template.md) | disallow the use of bare strings in `<template>` | | :hammer: |
228-
| [vue/no-boolean-default](./no-boolean-default.md) | disallow boolean defaults | :wrench: | :hammer: |
228+
| [vue/no-boolean-default](./no-boolean-default.md) | disallow boolean defaults | | :hammer: |
229229
| [vue/no-deprecated-model-definition](./no-deprecated-model-definition.md) | disallow deprecated `model` definition (in Vue.js 3.0.0+) | :bulb: | :warning: |
230230
| [vue/no-duplicate-attr-inheritance](./no-duplicate-attr-inheritance.md) | enforce `inheritAttrs` to be set to `false` when using `v-bind="$attrs"` | | :hammer: |
231231
| [vue/no-empty-component-block](./no-empty-component-block.md) | disallow the `<template>` `<script>` `<style>` block to be empty | | :hammer: |

docs/rules/no-boolean-default.md

+1-3
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,13 @@ since: v7.0.0
99

1010
> disallow boolean defaults
1111
12-
- :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
13-
1412
The rule prevents Boolean props from having a default value.
1513

1614
## :book: Rule Details
1715

1816
The rule is to enforce the HTML standard of always defaulting boolean attributes to false.
1917

20-
<eslint-code-block fix :rules="{'vue/no-boolean-default': ['error']}">
18+
<eslint-code-block :rules="{'vue/no-boolean-default': ['error']}">
2119

2220
```vue
2321
<script>

docs/rules/no-deprecated-v-is.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,14 @@ since: v7.11.0
1010
> disallow deprecated `v-is` directive (in Vue.js 3.1.0+)
1111
1212
- :gear: This rule is included in all of `"plugin:vue/vue3-essential"`, `"plugin:vue/vue3-strongly-recommended"` and `"plugin:vue/vue3-recommended"`.
13-
- :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
1413

1514
## :book: Rule Details
1615

1716
This rule reports deprecated `v-is` directive in Vue.js v3.1.0+.
1817

1918
Use [`is` attribute with `vue:` prefix](https://vuejs.org/api/built-in-special-attributes.html#is) instead.
2019

21-
<eslint-code-block fix :rules="{'vue/no-deprecated-v-is': ['error']}">
20+
<eslint-code-block :rules="{'vue/no-deprecated-v-is': ['error']}">
2221

2322
```vue
2423
<template>

eslint-internal-rules/no-invalid-meta-docs-categories.js

+1
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,7 @@ module.exports = {
112112
description: 'enforce correct use of `meta` property in core rules',
113113
categories: ['Internal']
114114
},
115+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
115116
fixable: 'code',
116117
schema: [],
117118
messages: {

eslint.config.js

+4
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,10 @@ module.exports = [
142142
'prefer-const': 2,
143143

144144
'prettier/prettier': 'error',
145+
'eslint-plugin/require-meta-fixable': [
146+
'error',
147+
{ catchNoFixerButFixableProperty: true }
148+
],
145149
'eslint-plugin/report-message-format': ['error', "^[A-Z`'{].*\\.$"],
146150

147151
'no-debugger': 'error',

lib/rules/html-indent.js

+1
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ module.exports = {
2929
categories: ['vue3-strongly-recommended', 'strongly-recommended'],
3030
url: 'https://eslint.vuejs.org/rules/html-indent.html'
3131
},
32+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
3233
fixable: 'whitespace',
3334
schema: [
3435
{

lib/rules/no-boolean-default.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ module.exports = {
3838
categories: undefined,
3939
url: 'https://eslint.vuejs.org/rules/no-boolean-default.html'
4040
},
41-
fixable: 'code',
41+
fixable: null,
4242
schema: [
4343
{
4444
enum: ['default-false', 'no-default']

lib/rules/no-deprecated-scope-attribute.js

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ module.exports = {
1515
categories: ['vue3-essential'],
1616
url: 'https://eslint.vuejs.org/rules/no-deprecated-scope-attribute.html'
1717
},
18+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
1819
fixable: 'code',
1920
schema: [],
2021
messages: {

lib/rules/no-deprecated-slot-attribute.js

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ module.exports = {
1515
categories: ['vue3-essential'],
1616
url: 'https://eslint.vuejs.org/rules/no-deprecated-slot-attribute.html'
1717
},
18+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
1819
fixable: 'code',
1920
schema: [
2021
{

lib/rules/no-deprecated-slot-scope-attribute.js

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ module.exports = {
1616
categories: ['vue3-essential'],
1717
url: 'https://eslint.vuejs.org/rules/no-deprecated-slot-scope-attribute.html'
1818
},
19+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
1920
fixable: 'code',
2021
schema: [],
2122
messages: {

lib/rules/no-deprecated-v-is.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ module.exports = {
1515
categories: ['vue3-essential'],
1616
url: 'https://eslint.vuejs.org/rules/no-deprecated-v-is.html'
1717
},
18-
fixable: 'code',
18+
fixable: null,
1919
schema: [],
2020
messages: {
2121
forbiddenVIs: '`v-is` directive is deprecated.'

lib/rules/no-unsupported-features.js

+1
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ module.exports = {
7272
categories: undefined,
7373
url: 'https://eslint.vuejs.org/rules/no-unsupported-features.html'
7474
},
75+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
7576
fixable: 'code',
7677
schema: [
7778
{

lib/rules/padding-line-between-blocks.js

+1
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ module.exports = {
119119
categories: undefined,
120120
url: 'https://eslint.vuejs.org/rules/padding-line-between-blocks.html'
121121
},
122+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
122123
fixable: 'whitespace',
123124
schema: [
124125
{

lib/rules/padding-line-between-tags.js

+1
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,7 @@ module.exports = {
173173
categories: undefined,
174174
url: 'https://eslint.vuejs.org/rules/padding-line-between-tags.html'
175175
},
176+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
176177
fixable: 'whitespace',
177178
schema: [
178179
{

lib/rules/script-indent.js

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ module.exports = {
1515
categories: undefined,
1616
url: 'https://eslint.vuejs.org/rules/script-indent.html'
1717
},
18+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
1819
fixable: 'whitespace',
1920
schema: [
2021
{

lib/rules/v-if-else-key.js

+1
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ module.exports = {
103103
recommended: false,
104104
url: 'https://eslint.vuejs.org/rules/v-if-else-key.html'
105105
},
106+
// eslint-disable-next-line eslint-plugin/require-meta-fixable -- fixer is not recognized
106107
fixable: 'code',
107108
schema: [],
108109
messages: {

0 commit comments

Comments
 (0)