cli icon indicating copy to clipboard operation
cli copied to clipboard

chore(deps): update vue monorepo

Open renovate[bot] opened this issue 6 years ago β€’ 0 comments

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
vue (source) 2.6.10 -> 2.7.10 age adoption passing confidence
vue-eslint-parser 7.0.0 -> 7.11.0 age adoption passing confidence
vue-template-compiler (source) 2.6.10 -> 2.7.10 age adoption passing confidence
vuex 3.1.2 -> 3.6.2 age adoption passing confidence

Release Notes

vuejs/core

v2.6.14

Compare Source

v2.6.13

Compare Source

v2.6.12

Compare Source

v2.6.11

Compare Source

vuejs/vue-eslint-parser

v7.11.0

Compare Source

βš™οΈ Updates

  • #​124 Changed to determine parser by extension when parsing non-vue files using multiple parserOptions.parser.

πŸ› Bug fixes

  • #​126 Fixed bug when script tags are missing and multiple parserOptions.parser is used.

v7.10.0

Compare Source

✨ Enhancements

  • #​119 Added defineDocumentVisitor to parserServices.

πŸ› Bug fixes

  • #​120 Fixed incorrect AST for commented CSS vars injection.

v7.9.0

Compare Source

✨ Enhancements

  • #​118 Changed to parse v-bind() in <style>. This feature can optionally be turned off.

v7.8.0

Compare Source

✨ Enhancements

  • #​116 Change parserOptions.parser to accept multiple lang parsers.

πŸ› Bug fixes

  • #​115 Fixed parsing error when combining <script> and export in <script setup>.

v7.7.2

Compare Source

:bug: Bug Fixes

  • #​113 Downgrade packages that are incompatible with Node v8.
    • Downgrade espree
    • Downgrade semver
    • Change the parser so that if the user explicitly installs espree v8 and specifies espree for parserOptions.parser, it will be use.

v7.7.1

Compare Source

βš™οΈ Updates

  • #​111 Revert: changed to use sourceType: module by default when parsing <script setup>.

v7.7.0

Compare Source

βš™οΈ Updates

  • #​108, #​110 Added support for <script setup>
    • Changed two <script> tags to be parseable when using <script setup>.
    • ~~Upgraded the dependency espree to v8. (However, by default it uses the eslint dependency espree.) This allows to parse Top Level Await by configuring parserOptions. Note that espree v8 is not compatible with some rules of ESLint v7.~~
    • ~~Changed to use sourceType: module by default when parsing <script setup>.~~
    • Changed to use ES2022 by default when using espree v8+ and parsing <script setup>.
    • Added an option to defineTemplateBodyVisitor to change the trigger to visit the template nodes. This is used to create special rules that suppress warnings for no-unused-vars rule. e.g. vue/script-setup-uses-vars rule

v7.6.0

Compare Source

:bug: Bug fixes

  • #​103 Changes the parser to be case sensitive for the name used to determine the element when the file is SFC.

v7.5.0

Compare Source

βš™οΈ Updates

  • #​100 Upgrade esquery and use new option. You can now use queries such as :first-child to traverse templates.

v7.4.1

Compare Source

:bug: Bug fixes

  • #​97 Fixed wrong AST for v-for="(a, index) in list"

v7.4.0

Compare Source

:bug: Bug fixes

  • #​96 Fixed parsing errors in multiple v-for aliases in ecmaVersion: 5.

v7.3.0

Compare Source

✨ Enhancements

  • #​91 Added defineCustomBlocksVisitor() to parserServices.

βš™οΈ Updates

  • #​90 Changed the parsing of custom block to parse like Vue3 parser.

βš™οΈ Chores

  • #​92 Upgrade @typescript-eslint and prettier

v7.2.0

Compare Source

✨ Enhancements

  • Added parserOptions.vueFeatures option.
    • #​88 Added parserOptions.vueFeatures.interpolationAsNonHTML option.
    • #​89 Added parserOptions.vueFeatures.filter option.

πŸ› Bug fixes

  • #​85 Fixed type of VDirectiveKey.
  • #​87 Fixed the wrong location when using with @typescript-eslint

v7.1.1

Compare Source

πŸ› Bug Fixes

  • #​74 fixed wrong location calculation when including CRLF.

v7.1.0

Compare Source

✨ Enhancements

  • 27a275f updates the default parser loading logic to use the espree of loaded ESLint.

πŸ› Bug fixes

  • 6c1ac68 fixed the parser to generate correct comment data.
vuejs/vue

v2.7.10

Compare Source

Bug Fixes

v2.7.9

Compare Source

Bug Fixes
Features

v2.7.8

Compare Source

Bug Fixes
Features
  • setup: support listeners on setup context + useListeners() helper (adf3ac8)

v2.7.7

Compare Source

Bug Fixes

v2.7.6

Compare Source

Bug Fixes

v2.7.5

Compare Source

Bug Fixes

v2.7.4

Compare Source

Bug Fixes
  • build: fix mjs dual package hazard (012e10c), closes #​12626
  • compiler-sfc: use safer deindent default for compatibility with previous behavior (b70a258)
  • pass element creation helper to static render fns for functional components (dc8a68e), closes #​12625
  • ssr/reactivity: fix array setting error at created in ssr [#​12632] (#​12633) (ca7daef)
  • types: fix missing instance properties on defineComponent this (f8de4ca), closes #​12628
  • types: fix this.$slots type for defineComponent (d3add06)
  • types: fix type inference when using components option (1d5a411)
  • types: global component registration type compat w/ defineComponent (26ff4bc), closes #​12622
  • watch: fix watchers triggered in mounted hook (8904ca7), closes #​12624
Features

v2.7.3

Compare Source

Bug Fixes

v2.7.2

Compare Source

Bug Fixes
Features

v2.7.1

Compare Source

Bug Fixes

v2.7.0

Compare Source

Backported Features

In addition, the following APIs are also supported:

  • defineComponent() with improved type inference (compared to Vue.extend)

  • h(), useSlot(), useAttrs(), useCssModules()

  • set(), del() and nextTick() are also provided as named exports in ESM builds.

  • The emits option is also supported, but only for type-checking purposes (does not affect runtime behavior)

    2.7 also supports using ESNext syntax in template expressions. When using a build system, the compiled template render function will go through the same loaders / plugins configured for normal JavaScript. This means if you have configured Babel for .js files, it will also apply to the expressions in your SFC templates.

Notes on API exposure
  • In ESM builds, these APIs are provided as named exports (and named exports only):

    import Vue, { ref } from 'vue'
    
    Vue.ref // undefined, use named export instead
    
  • In UMD and CJS builds, these APIs are exposed as properties on the global Vue object.

  • When bundling with CJS builds externalized, bundlers should be able to handle ESM interop when externalizing CJS builds.

Behavior Differences from Vue 3

The Composition API is backported using Vue 2's getter/setter-based reactivity system to ensure browser compatibility. This means there are some important behavior differences from Vue 3's proxy-based system:

  • All Vue 2 change detection caveats still apply.

  • reactive(), ref(), and shallowReactive() will directly convert original objects instead of creating proxies. This means:

    // true in 2.7, false in 3.x
    reactive(foo) === foo
    
  • readonly() does create a separate object, but it won't track newly added properties and does not work on arrays.

  • Avoid using arrays as root values in reactive() because without property access the array's mutation won't be tracked (this will result in a warning).

  • Reactivity APIs ignore properties with symbol keys.

In addition, the following features are explicitly NOT ported:

  • ❌ createApp() (Vue 2 doesn't have isolated app scope)
  • ❌ Top-level await in <script setup> (Vue 2 does not support async component initialization)
  • ❌ TypeScript syntax in template expressions (incompatible w/ Vue 2 parser)
  • ❌ Reactivity transform (still experimental)
  • ❌ expose option is not supported for options components (but defineExpose() is supported in <script setup>).
TypeScript Changes
  • defineComponent provides improved type inference similar to that of Vue 3. Note the type of this inside defineComponent() is not interoperable with this from Vue.extend().

  • Similar to Vue 3, TSX support is now built-in. If your project previously had manual JSX type shims, make sure to remove them.

Upgrade Guide

Vue CLI / webpack
  1. Upgrade local @vue/cli-xxx dependencies the latest version in your major version range (if applicable):

    • ~4.5.18 for v4
    • ~5.0.6 for v5
  2. Upgrade vue to ^2.7.0. You can also remove vue-template-compiler from the dependencies - it is no longer needed in 2.7.

    Note: if you are using @vue/test-utils, you may need to keep it in the dependencies for now, but this requirement will also be lifted in a new release of test utils.

  3. Check your package manager lockfile to ensure the following dependencies meet the version requirements. They may be transitive dependencies not listed in package.json.

    • vue-loader: ^15.10.0
    • vue-demi: ^0.13.1

    If not, you will need to remove node_modules and the lockfile and perform a fresh install to ensure they are bumped to the latest version.

  4. If you were previously using @vue/composition-api, update imports from it to vue instead. Note that some APIs exported by the plugin, e.g. createApp, are not ported in 2.7.

  5. Update eslint-plugin-vue to latest version (9+) if you run into unused variable lint errors when using <script setup>.

  6. The SFC compiler for 2.7 now uses PostCSS 8 (upgraded from 7). PostCSS 8 should be backwards compatible with most plugins, but the upgrade may cause issues if you were previously using a custom PostCSS plugin that can only work with PostCSS 7. In such cases, you will need to upgrade the relevant plugins to their PostCSS 8 compatible versions.

Vite

2.7 support for Vite is provided via a new plugin: @​vitejs/plugin-vue2. This new plugin requires Vue 2.7 or above and supersedes the existing vite-plugin-vue2.

Note that the new plugin does not handle Vue-specific JSX / TSX transform, which is intentional. Vue 2 JSX / TSX transform should be handled in a separate, dedicated plugin, which will be provided soon.

Volar Compatibility

2.7 ships improved type definitions so it is no longer necessary to install @vue/runtime-dom just for Volar template type inference support. All you need now is the following config in tsconfig.json:

{
  // ...
  "vueCompilerOptions": {
    "target": 2.7
  }
}
Devtools Support

Vue Devtools 6.2.0 has added support for inspecting 2.7 Composition API state, but the extensions may still need a few days to go through review on respective publishing platforms.

Bug Fixes
  • sfc: only include legacy decorator parser plugin when new plugin is not used (326d24a)

v2.6.14

Compare Source

Bug Fixes
Features

v2.6.13

Compare Source

Bug Fixes
Features
Performance Improvements

v2.6.12

Compare Source

Bug Fixes

v2.6.11

Compare Source

Bug Fixes
vuejs/vuex

v3.6.2

Compare Source

Bug Fixes
  • build: fix wrong path name for the export module (679313b)

v3.6.1

Compare Source

Bug Fixes

v3.6.0

Compare Source

Bug Fixes
Features

v3.5.1

Compare Source

v3.5.0

Compare Source

v3.4.0

Compare Source

v3.3.0

Compare Source

Bug Fixes
Features

v3.2.0

Compare Source

Features

3.1.3 (2020-03-09)

Bug Fixes

3.1.2 (2019-11-10)

Bug Fixes
Performance Improvements

3.1.1 (2019-05-08)

Bug Fixes
Features

v3.1.3

Compare Source

Bug Fixes

Configuration

πŸ“… Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

β™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

πŸ‘» Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • [ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Mend Renovate. View repository job log here.

renovate[bot] avatar Dec 13 '19 20:12 renovate[bot]