Skip to content

Releases: vuejs/eslint-plugin-vue

v7.0.0-beta.3

28 Aug 09:57
Compare
Choose a tag to compare
v7.0.0-beta.3 Pre-release
Pre-release

💥 Breaking Changes

  • Changed plugin:vue/vue3-* configs
    • #1289 Added vue/no-v-for-template-key-on-child rule.

✨ Enhancements

New Rules:

  • #1281 Added vue/no-v-for-template-key rule that disallow the key placed on the <template v-for>. (Separated from vue/no-template-key rule)
  • #1289 Added vue/no-v-for-template-key-on-child rule that reports the key of the <template v-for> placed on the child elements.

⚙️ Updates

  • #1281 Changed vue/no-template-key rule to allow v-for key.
  • #1281 Added vue/no-v-for-template-key rule to plugin:vue/essential config.
  • #1287 Changed vue/valid-v-for rule to not report when placing key on <template>
  • #1287 Changed vue/require-v-for-key rule to not report when placing key on <template>

All commits: v7.0.0-beta.2 -> v7.0.0-beta.3

v7.0.0-beta.2

08 Aug 07:37
Compare
Choose a tag to compare
v7.0.0-beta.2 Pre-release
Pre-release

💥 Breaking Changes

  • #1268 Changed the default order option for vue/order-in-components rule.
    • Change options for Nuxt
      • fetch move from after setup to after data .

All commits: v7.0.0-beta.1 -> v7.0.0-beta.2

v7.0.0-beta.1

31 Jul 11:13
Compare
Choose a tag to compare
v7.0.0-beta.1 Pre-release
Pre-release

✨ Enhancements

New Rules:

  • #1267 Added vue/v-for-delimiter-style rule that enforces which delimiter (in or of) should be used in v-for directives.

Other changes in Rules:

  • #1259 Added allowProps option to vue/require-explicit-emits rule.

🐛 Bug Fixes

  • #1258 Fixed false negatives of "slot-scope" when "^3.0.0" is set in vue/no-unsupported-features rule.
  • #1262 Fixed reporting "Use the latest vue-eslint-parser" message in non-vue files.

All commits: v7.0.0-beta.0 -> v7.0.0-beta.1

v7.0.0-beta.0

19 Jul 08:53
Compare
Choose a tag to compare
v7.0.0-beta.0 Pre-release
Pre-release

💥 Breaking Changes

  • #1209 Change supported version of ESLint from 6.0.0 to 6.2.0.
  • Updated presets configs.
    • #1209 Change presets configs parserOptions.ecmaVersion to 2020.
    • Changed plugin:vue/vue3-essential config
      • #1253 Added vue/valid-v-is rule.
    • Changed plugin:vue/vue3-strongly-recommended config
      • Same changes as above.
      • #1251 Added vue/require-explicit-emits rule.
    • Changed plugin:vue/vue3-recommended config
      • Same changes as above.

✨ Enhancements

New Rules:

  • #1253 Added vue/valid-v-is rule that reports wrong usage of v-is directives.

Other changes in Rules:

  • #1209 Supports Optional Chaining (ES2020)
  • #1254 Changed the vue/attributes-order rule to handle v-is as DEFINITION category.
  • #1254 Changed the vue/no-unregistered-components rule to handle v-is like :is.
  • #1254 Changed the vue/no-unused-components rule to handle v-is like :is.
  • #1254 Added "v-is" to the syntax checked by the vue/no-unsupported-features rule.

🐛 Bug Fixes

  • #1255 Fixed false positives for watch handler methods in vue/no-unused-properties rule.

All commits: v7.0.0-alpha.10 -> v7.0.0-beta.0

v7.0.0-alpha.10

15 Jul 02:45
Compare
Choose a tag to compare
v7.0.0-alpha.10 Pre-release
Pre-release

💥 Breaking Changes

  • Updated presets configs.
    • Changed plugin:vue/vue3-essential config
      • #1239 Added vue/no-dupe-v-else-if rule.
    • Changed plugin:vue/vue3-strongly-recommended config
      • Same changes as above.
    • Changed plugin:vue/vue3-recommended config
      • Same changes as above.
      • #1238 Added vue/no-lone-template rule.
    • Changed plugin:vue/essential config
      • #1239 Added vue/no-dupe-v-else-if rule.
    • Changed plugin:vue/strongly-recommended config
      • Same changes as above.
    • Changed plugin:vue/recommended config
      • Same changes as above.
      • #1238 Added vue/no-lone-template rule.
    • #1237 Removed jsx:true from shareable configs.

✨ Enhancements

New Rules:

  • #1238 Added vue/no-lone-template rule that disallow unnecessary <template> element.
  • #1239 Added vue/no-dupe-v-else-if rule that disallow duplicate conditions in v-if / v-else-if chains.
  • #1243 Added vue/no-sparse-arrays rule that applies no-sparse-arrays rule to expressions in <template>.

Other changes in Rules:

  • #1225 Changed vue/no-ref-as-operand to also check ref of @vue/composition-api.

🐛 Bug Fixes

  • #1242 Fixed vue/no-unused-properties, vue/require-valid-default-prop, vue/require-default-prop and vue/no-multiple-objects-in-class rules crash on sparse arrays.

⚙️ Updates

  • #1237 Removed jsx:true from shareable configs.

All commits: v7.0.0-alpha.9 -> v7.0.0-alpha.10

v7.0.0-alpha.9

03 Jul 22:14
Compare
Choose a tag to compare
v7.0.0-alpha.9 Pre-release
Pre-release

🐛 Bug Fixes

  • #1232 Fixed crash when using vue/no-empty-component-block and vue/padding-line-between-blocks rules in .js file

All commits: v7.0.0-alpha.8 -> v7.0.0-alpha.9

v7.0.0-alpha.8

30 Jun 07:25
Compare
Choose a tag to compare
v7.0.0-alpha.8 Pre-release
Pre-release

🐛 Bug Fixes

  • #1226 #1227 Fixed crash in the vue/no-side-effects-in-computed-properties, vue/no-async-in-computed-properties, vue/no-setup-props-destructure and vue/no-watch-after-await rules.

All commits: v7.0.0-alpha.7 -> v7.0.0-alpha.8

v7.0.0-alpha.7

27 Jun 23:07
Compare
Choose a tag to compare
v7.0.0-alpha.7 Pre-release
Pre-release

💥 Breaking Changes

  • Updated presets configs.
    • Changed plugin:vue/vue3-essential config
      • #1211 Added vue/no-deprecated-destroyed-lifecycle rule.
    • Changed plugin:vue/vue3-strongly-recommended config
      • Same changes as above.
    • Changed plugin:vue/vue3-recommended config
      • Same changes as above.
  • #1107 Changed the default order option for vue/order-in-components rule. Add Nuxt and Vue Router properties.
    • Add options for Vue Router
      • ROUTER_GUARDS (beforeRouteEnter, beforeRouteUpdate and beforeRouteLeave) to after ["provide", "inject"].
    • Add options for Nuxt
      • key to after name.
      • layout, middleware, validate, scrollToTop, transition, loading to after ROUTER_GUARDS (ROUTER_GUARDS was added after ["provide", "inject"]).
      • watchQuery to after watch.
    • Change options for Nuxt
      • head move from after methods to after data .
  • #1214 Change the option name in the vue/no-bare-strings-in-template rule.

✨ Enhancements

New Rules:

  • #1211 Added vue/no-deprecated-destroyed-lifecycle rule reports use of deprecated destroyed and beforeDestroy lifecycle hooks.
  • #1213 Added vue/no-restricted-component-options rule that disallow specific component options.
  • #1218 Added vue/no-multiple-objects-in-class rule disallows to pass multiple objects into array to class.
  • #1222 Added vue/no-empty-component-block rule disallows the <template> <script> <style> block to be empty.

Other changes in Rules:

  • #1204 Added ignoreIncludesComment option to vue/v-on-function-call rule.
  • #1017 Added supports for ES2020 syntaxes to vue/html-indent and vue/script-indent rules.
  • #1212 Added "v-model-argument" and "v-model-custom-modifiers" to the syntax checked by the vue/no-unsupported-features rule.

🐛 Bug Fixes

  • #1204 Fixed wrong autofix in vue/v-on-function-call rule.
  • #1208 Fixed false negatives for TemplateLiteral in vue/prop-name-casing rule.
  • #1206 Fixed crash when is attribute with no value in vue/no-unused-components rule.

⚙️ Chores

  • #1206 Added JSDoc type checking with TypeScript, and refactoring.

All commits: v7.0.0-alpha.6 -> v7.0.0-alpha.7

v7.0.0-alpha.6

07 Jun 10:31
Compare
Choose a tag to compare
v7.0.0-alpha.6 Pre-release
Pre-release

💥 Breaking Changes

  • Updated presets configs.
    • Changed plugin:vue/vue3-essential config
      • #1177 Added vue/no-deprecated-dollar-scopedslots-api rule.
      • #1178 Added vue/require-slots-as-functions rule.
    • Changed plugin:vue/vue3-strongly-recommended config
      • Same changes as above.
    • Changed plugin:vue/vue3-recommended config
      • Same changes as above.
      • #1179 Added vue/no-multiple-slot-args rule.
    • Changed plugin:vue/recommended config
      • #1179 Added vue/no-multiple-slot-args rule.
  • #1189 Changed the default order option for vue/component-tags-order rule.
  • #1181 Changed the default order option for vue/order-in-components rule.
    • Add options for Vue.js 3.x
      • emits to after props.
      • setup to after emits.
      • beforeUnmount and unmounted to LIFECYCLE_HOOKS.
      • renderTracked and renderTriggered to LIFECYCLE_HOOKS.
    • Add options for Vue.js 2.x
      • provide and inject to after mixins.
      • errorCaptured to LIFECYCLE_HOOKS.

✨ Enhancements

New Rules:

  • #1177 Added vue/no-deprecated-dollar-scopedslots-api rule that reports use of deprecated $scopedSlots. RFC0006
  • #1178 Added vue/require-slots-as-functions rule enforces the properties of $slots to be used as a function. RFC0006
  • #1179 Added vue/no-multiple-slot-args rule disallows to pass multiple arguments to scoped slots.
  • #1185 Added vue/no-bare-strings-in-template rule that disallows the use of bare strings in <template>.
  • #1186 Added vue/no-useless-v-bind rule that reports v-bind with a string literal value.
  • #1187 Added vue/no-useless-mustaches rule that reports mustache interpolation with a string literal value.
  • #1191 Added vue/no-restricted-v-bind rule that disallow specific argument in v-bind.
  • #1192 Added vue/no-restricted-static-attribute rule that disallow specific attribute.
  • #1193 Added vue/object-property-newline rule that applies object-property-newline rule to expressions in <template>.
  • #1194 Added vue/object-curly-newline rule that applies object-curly-newline rule to expressions in <template>.
  • #1200 Added vue/operator-linebreak rule that applies operator-linebreak rule to expressions in <template>.
  • #1201 Added vue/func-call-spacing rule that applies func-call-spacing rule to expressions in <template>.

Other changes in Rules:

  • #1180 Changed vue/no-ref-as-operand rule to additionally track variables generated by computed, toRef, customRef and shallowRef.
  • #1180 Changed vue/no-ref-as-operand rule to report incorrect use of TemplateLiteral and MemberExpression.
  • #1183 Improved autofix of vue/order-in-components rule to understand "Nullish Coalescing".
  • #1184 Changed to not report that a value is required when parsing error for vue/valid-v-bind-sync, vue/valid-v-bind, vue/valid-v-else-if, vue/valid-v-for, vue/valid-v-html, vue/valid-v-if, vue/valid-v-model, vue/valid-v-on, vue/valid-v-show, vue/valid-v-slot and vue/valid-v-text rules.
  • #1189 Changed vue/component-tags-order rule to allow name array to be specified with one order option.

🐛 Bug Fixes

  • #1190 Fixed false positives for getter/setter in vue/no-dupe-keys rule.
  • #1198 Fixed false positives for render props and template refs in vue/no-unused-properties rule.
  • #1199 Fixed false positives for Vue 3 functional component in vue/require-direct-export rule.

All commits: v7.0.0-alpha.5 -> v7.0.0-alpha.6

v7.0.0-alpha.5

30 May 03:49
Compare
Choose a tag to compare
v7.0.0-alpha.5 Pre-release
Pre-release

💥 Breaking Changes

  • Updated presets configs.
    • Changed plugin:vue/essential config and plugin:vue/vue3-essential config
      • #1166 Added vue/custom-event-name-casing rule
    • Changed plugin:vue/strongly-recommended config and plugin:vue/vue3-strongly-recommended config
      • Same changes as above.
    • Changed plugin:vue/recommended config and plugin:vue/vue3-recommended config
      • Same changes as above.

✨ Enhancements

Core:

  • #1167 Added reportUnusedDisableDirectives option to vue/comment-directive.

New Rules:

  • #1166 Added vue/custom-event-name-casing rule that enforces using kebab-case custom event names.
  • #1171 Added vue/no-useless-concat rule that applies no-useless-concat rule to expressions in <template>.
  • #1173 Added vue/dot-notation rule that applies dot-notation rule to expressions in <template>.

Other changes in Rules:

  • #1162 Added closeBracket.startTag, closeBracket.endTag and closeBracket.selfClosingTag options to vue/html-indent rule.
    So that the closeBracket offset value can be set for each tag type.
  • #1162 Changed vue/html-indent rule to calculate the base point of the indent offset of the closing bracket of the end tag by the start tag.

🐛 Bug Fixes

  • #1163 Fixed false negatives when using ignorePattern for vue/no-unused-var rule.
  • #1164 Fixed false negatives when v-for and v-slot mixed or use destructuring for vue/no-unused-var rule.
  • #1169 Fixed false positives for watch with properties in vue/no-unused-properties rule.
  • #1170 Fixed an error for v-slot in vue/comma-style rule.

All commits: v7.0.0-alpha.4 -> v7.0.0-alpha.5