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:
Dependabot commands
You can trigger Dependabot actions by commenting on this MR
$dependabot rebase will rebase this MR
$dependabot recreate will recreate this MR rewriting all the manual changes and resolving conflicts
Bumps [vue](https://github.com/vuejs/core) and [vue-template-compiler](https://github.com/vuejs/vue). These dependencies needed to be updated together.
Updates `vue` from 2.6.14 to 2.7.0
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/vuejs/core/commits">compare view</a></li>
</ul>
</details>
<br />
Updates `vue-template-compiler` from 2.6.14 to 2.7.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/vuejs/vue/releases">vue-template-compiler's releases</a>.</em></p>
<blockquote>
<h2>v2.7.0 "Naruto"</h2>
<p><img src="https://user-images.githubusercontent.com/499550/176823239-f59d75de-1d24-4b2d-b04b-fcc95db2903e.png" alt="naturo" /></p>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md#270-2022-07-01">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-beta.8</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-beta.7</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-beta.6</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-beta.5</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-beta.4</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-beta.3</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-beta.2</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-beta.1</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-alpha.12</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-alpha.11</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-alpha.10</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-alpha.9</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-alpha.8</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-alpha.7</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<h2>v2.7.0-alpha.6</h2>
<p>Please refer to <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details.</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/vuejs/vue/blob/main/CHANGELOG.md">vue-template-compiler's changelog</a>.</em></p>
<blockquote>
<h1><a href="https://github.com/vuejs/vue/compare/v2.7.0-beta.8...v2.7.0">2.7.0</a> (2022-07-01)</h1>
<h2>Backported Features</h2>
<p>2.7 backports some of the most important features from Vue 3 so that Vue 2 users can benefit from them as well:</p>
<ul>
<li><a href="https://vuejs.org/guide/extras/composition-api-faq.html">Composition API</a></li>
<li>SFC <a href="https://vuejs.org/api/sfc-script-setup.html"><code><script setup></code></a></li>
<li>SFC <a href="https://vuejs.org/api/sfc-css-features.html#v-bind-in-css">CSS v-bind</a></li>
</ul>
<p>In addition, the following APIs are also supported:</p>
<ul>
<li>
<p><code>defineComponent()</code> with improved type inference (compared to <code>Vue.extend</code>)</p>
</li>
<li>
<p><code>h()</code>, <code>useSlot()</code>, <code>useAttrs()</code>, <code>useCssModules()</code></p>
</li>
<li>
<p><code>set()</code>, <code>del()</code> and <code>nextTick()</code> are also provided as named exports in ESM builds.</p>
</li>
<li>
<p>The <code>emits</code> option is also supported, but only for type-checking purposes (does not affect runtime behavior)</p>
<p>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 <code>.js</code> files, it will also apply to the expressions in your SFC templates.</p>
</li>
</ul>
<h3>Notes on API exposure</h3>
<ul>
<li>
<p>In ESM builds, these APIs are provided as named exports (and named exports only):</p>
<pre lang="js"><code>import Vue, { ref } from 'vue'
<p>Vue.ref // undefined, use named export instead
</code></pre></p>
</li>
<li>
<p>In UMD and CJS builds, these APIs are exposed as properties on the global <code>Vue</code> object.</p>
</li>
<li>
<p>When bundling with CJS builds externalized, bundlers should be able to handle ESM interop when externalizing CJS builds.</p>
</li>
</ul>
<h3>Behavior Differences from Vue 3</h3>
<p>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:</p>
<ul>
<li>
<p>All <a href="https://v2.vuejs.org/v2/guide/reactivity.html#Change-Detection-Caveats">Vue 2 change detection caveats</a> still apply.</p>
</li>
<li>
<p><code>reactive()</code>, <code>ref()</code>, and <code>shallowReactive()</code> will directly convert original objects instead of creating proxies. This means:</p>
<pre lang="js"><code>// true in 2.7, false in 3.x
reactive(foo) === foo
</code></pre>
</li>
<li>
<p><code>readonly()</code> <strong>does</strong> create a separate object, but it won't track newly added properties and does not work on arrays.</p>
</li>
<li>
<p>Avoid using arrays as root values in <code>reactive()</code> because without property access the array's mutation won't be tracked (this will result in a warning).</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/vuejs/vue/commit/1e3a0ceb26025868fa8ea9347c897b09307f58c2"><code>1e3a0ce</code></a> release: v2.7.0</li>
<li><a href="https://github.com/vuejs/vue/commit/8dc1b31cb8e08edbd5498ef98e7c911e039bc822"><code>8dc1b31</code></a> chore: use v2-latest release tag</li>
<li><a href="https://github.com/vuejs/vue/commit/326d24a4e42b4f4fd243b36037e88b71963d963d"><code>326d24a</code></a> fix(sfc): only include legacy decorator parser plugin when new plugin is not ...</li>
<li><a href="https://github.com/vuejs/vue/commit/0ea6c366f5770f016183513792fce8765df47739"><code>0ea6c36</code></a> release: v2.7.0-beta.8</li>
<li><a href="https://github.com/vuejs/vue/commit/008d78bd7280716d2d70e150e3ed2ac5ee8497f2"><code>008d78b</code></a> fix(compiler-sfc): should transform non relative paths when base option is pr...</li>
<li><a href="https://github.com/vuejs/vue/commit/bf64c4da5ca516924d940bb29f3e59b0fa5863c9"><code>bf64c4d</code></a> release: v2.7.0-beta.7</li>
<li><a href="https://github.com/vuejs/vue/commit/5b94562dcda45be330749400ab00e3037cc8d2a4"><code>5b94562</code></a> chore: create build target dir if does not exist (<a href="https://github.com/vuejs/vue/issues/12581">#12581</a>)</li>
<li><a href="https://github.com/vuejs/vue/commit/11e4bfe806b574747495edfb9ba22f78676ceb7c"><code>11e4bfe</code></a> fix: types/v3-directive not published (<a href="https://github.com/vuejs/vue/issues/12571">#12571</a>)</li>
<li><a href="https://github.com/vuejs/vue/commit/20e7e7e138070a2f0c85f64529c837f00255da1c"><code>20e7e7e</code></a> release: v2.7.0-beta.6</li>
<li><a href="https://github.com/vuejs/vue/commit/089b27c30b470acd98286ffe072525beb2320dea"><code>089b27c</code></a> fix(watch): template ref watcher should fire after owner instance mounted hook</li>
<li>Additional commits viewable in <a href="https://github.com/vuejs/vue/compare/v2.6.14...v2.7.0">compare view</a></li>
</ul>
</details>
<br />
---
<details>
<summary>Dependabot commands</summary>
<br />
You can trigger Dependabot actions by commenting on this MR
- `$dependabot rebase` will rebase this MR
- `$dependabot recreate` will recreate this MR rewriting all the manual changes and resolving conflicts
</details>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Bumps vue and vue-template-compiler. These dependencies needed to be updated together.
Updates
vuefrom 2.6.14 to 2.7.0Commits
Updates
vue-template-compilerfrom 2.6.14 to 2.7.0Release notes
Sourced from vue-template-compiler's releases.
... (truncated)
Changelog
Sourced from vue-template-compiler's changelog.
... (truncated)
Commits
1e3a0cerelease: v2.7.08dc1b31chore: use v2-latest release tag326d24afix(sfc): only include legacy decorator parser plugin when new plugin is not ...0ea6c36release: v2.7.0-beta.8008d78bfix(compiler-sfc): should transform non relative paths when base option is pr...bf64c4drelease: v2.7.0-beta.75b94562chore: create build target dir if does not exist (#12581)11e4bfefix: types/v3-directive not published (#12571)20e7e7erelease: v2.7.0-beta.6089b27cfix(watch): template ref watcher should fire after owner instance mounted hookDependabot commands
You can trigger Dependabot actions by commenting on this MR
$dependabot rebasewill rebase this MR$dependabot recreatewill recreate this MR rewriting all the manual changes and resolving conflictsadded 2 commits
60e35d4f- 1 commit from branchmasterCompare with previous version
added 2 commits
83a28d6e- 1 commit from branchmasterCompare with previous version
added 2 commits
8343b15a- 1 commit from branchmasterCompare with previous version
added 2 commits
25849150- 1 commit from branchmasterCompare with previous version
added 2 commits
2b6fc75e- 1 commit from branchmasterCompare with previous version
This merge request has been superseded by https://gitlab.com/unboundsoftware/dancefinder/dancefinder-app/-/merge_requests/402
Pull request closed