diff --git a/CHANGELOG.md b/CHANGELOG.md index 955b21edce6..90c7d33dbee 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,64 @@ +# [3.0.0-alpha.4](https://github.com/vuejs/vue-next/compare/v3.0.0-alpha.3...v3.0.0-alpha.4) (2020-01-27) + + +### Bug Fixes + +* **reactivity:** Array methods relying on identity should work with raw values ([aefb7d2](https://github.com/vuejs/vue-next/commit/aefb7d282ed716923ca1a288a63a83a94af87ebc)) +* **runtime-core:** instance should not expose non-declared props ([2884831](https://github.com/vuejs/vue-next/commit/2884831065e16ccf5bd3ae1ee95116803ee3b18c)) +* **runtime-dom:** should not access document in non-browser env ([48152bc](https://github.com/vuejs/vue-next/commit/48152bc88ea817ae23e2987dce99d64b426366c1)), closes [#657](https://github.com/vuejs/vue-next/issues/657) +* **v-model/emit:** update:camelCase events should trigger kebab case equivalent ([2837ce8](https://github.com/vuejs/vue-next/commit/2837ce842856d51dfbb55e3fa4a36a352446fb54)), closes [#656](https://github.com/vuejs/vue-next/issues/656) + + +### Code Refactoring + +* adjust `createApp` related API signatures ([c07751f](https://github.com/vuejs/vue-next/commit/c07751fd3605f301dc0f02fd2a48acc7ba7a0397)) +* remove implicit reactive() call on renderContext ([6b10f0c](https://github.com/vuejs/vue-next/commit/6b10f0cd1da942c1d96746672b5f595df7d125b5)) + + +### Performance Improvements + +* **ssr:** avoid unnecessary async overhead ([297282a](https://github.com/vuejs/vue-next/commit/297282a81259289bfed207d0c9393337aea70117)) + + +### BREAKING CHANGES + +* object returned from `setup()` are no longer implicitly +passed to `reactive()`. + + The renderContext is the object returned by `setup()` (or a new object + if no setup() is present). Before this change, it was implicitly passed + to `reactive()` for ref unwrapping. But this has the side effect of + unnecessary deep reactive conversion on properties that should not be + made reactive (e.g. computed return values and injected non-reactive + objects), and can lead to performance issues. + + This change removes the `reactive()` call and instead performs a + shallow ref unwrapping at the render proxy level. The breaking part is + when the user returns an object with a plain property from `setup()`, + e.g. `return { count: 0 }`, this property will no longer trigger + updates when mutated by a in-template event handler. Instead, explicit + refs are required. + + This also means that any objects not explicitly made reactive in + `setup()` will remain non-reactive. This can be desirable when + exposing heavy external stateful objects on `this`. +* `createApp` API has been adjusted. + + - `createApp()` now accepts the root component, and optionally a props + object to pass to the root component. + - `app.mount()` now accepts a single argument (the root container) + - `app.unmount()` no longer requires arguments. + + New behavior looks like the following: + + ``` js + const app = createApp(RootComponent) + app.mount('#app') + app.unmount() + ``` + + + # [3.0.0-alpha.3](https://github.com/vuejs/vue-next/compare/v3.0.0-alpha.2...v3.0.0-alpha.3) (2020-01-22) diff --git a/package.json b/package.json index 301ef7c57a8..84e6108ad68 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "private": true, - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "workspaces": [ "packages/*" ], diff --git a/packages/compiler-core/package.json b/packages/compiler-core/package.json index 92c9a21e316..abd2b7d095a 100644 --- a/packages/compiler-core/package.json +++ b/packages/compiler-core/package.json @@ -1,6 +1,6 @@ { "name": "@vue/compiler-core", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "@vue/compiler-core", "main": "index.js", "module": "dist/compiler-core.esm-bundler.js", diff --git a/packages/compiler-dom/package.json b/packages/compiler-dom/package.json index 338a837a066..38c26deb031 100644 --- a/packages/compiler-dom/package.json +++ b/packages/compiler-dom/package.json @@ -1,6 +1,6 @@ { "name": "@vue/compiler-dom", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "@vue/compiler-dom", "main": "index.js", "module": "dist/compiler-dom.esm-bundler.js", @@ -34,6 +34,6 @@ }, "homepage": "https://github.com/vuejs/vue/tree/dev/packages/compiler-dom#readme", "dependencies": { - "@vue/compiler-core": "3.0.0-alpha.3" + "@vue/compiler-core": "3.0.0-alpha.4" } } diff --git a/packages/compiler-sfc/package.json b/packages/compiler-sfc/package.json index 34029768a90..0b1ee29f016 100644 --- a/packages/compiler-sfc/package.json +++ b/packages/compiler-sfc/package.json @@ -1,6 +1,6 @@ { "name": "@vue/compiler-sfc", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "@vue/compiler-sfc", "main": "dist/compiler-sfc.cjs.js", "types": "dist/compiler-sfc.d.ts", @@ -27,11 +27,11 @@ }, "homepage": "https://github.com/vuejs/vue/tree/dev/packages/compiler-sfc#readme", "peerDependencies": { - "vue": "3.0.0-alpha.3" + "vue": "3.0.0-alpha.4" }, "dependencies": { - "@vue/compiler-core": "3.0.0-alpha.3", - "@vue/compiler-dom": "3.0.0-alpha.3", + "@vue/compiler-core": "3.0.0-alpha.4", + "@vue/compiler-dom": "3.0.0-alpha.4", "consolidate": "^0.15.1", "hash-sum": "^2.0.0", "lru-cache": "^5.1.1", diff --git a/packages/compiler-ssr/package.json b/packages/compiler-ssr/package.json index 17b455b1f07..799887e53ac 100644 --- a/packages/compiler-ssr/package.json +++ b/packages/compiler-ssr/package.json @@ -1,6 +1,6 @@ { "name": "@vue/compiler-ssr", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "@vue/compiler-ssr", "main": "dist/compiler-ssr.cjs.js", "types": "dist/compiler-ssr.d.ts", @@ -27,6 +27,6 @@ }, "homepage": "https://github.com/vuejs/vue/tree/dev/packages/compiler-ssr#readme", "dependencies": { - "@vue/compiler-core": "3.0.0-alpha.3" + "@vue/compiler-core": "3.0.0-alpha.4" } } diff --git a/packages/reactivity/package.json b/packages/reactivity/package.json index 9f5ac009929..8590a138a5f 100644 --- a/packages/reactivity/package.json +++ b/packages/reactivity/package.json @@ -1,6 +1,6 @@ { "name": "@vue/reactivity", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "@vue/reactivity", "main": "index.js", "module": "dist/reactivity.esm-bundler.js", diff --git a/packages/runtime-core/package.json b/packages/runtime-core/package.json index c69cf8311ff..a0c789f976c 100644 --- a/packages/runtime-core/package.json +++ b/packages/runtime-core/package.json @@ -1,6 +1,6 @@ { "name": "@vue/runtime-core", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "@vue/runtime-core", "main": "index.js", "module": "dist/runtime-core.esm-bundler.js", @@ -31,6 +31,6 @@ }, "homepage": "https://github.com/vuejs/vue/tree/dev/packages/runtime-core#readme", "dependencies": { - "@vue/reactivity": "3.0.0-alpha.3" + "@vue/reactivity": "3.0.0-alpha.4" } } diff --git a/packages/runtime-dom/package.json b/packages/runtime-dom/package.json index 5099786cf40..b74f575a866 100644 --- a/packages/runtime-dom/package.json +++ b/packages/runtime-dom/package.json @@ -1,6 +1,6 @@ { "name": "@vue/runtime-dom", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "@vue/runtime-dom", "main": "index.js", "module": "dist/runtime-dom.esm-bundler.js", @@ -37,7 +37,7 @@ }, "homepage": "https://github.com/vuejs/vue/tree/dev/packages/runtime-dom#readme", "dependencies": { - "@vue/runtime-core": "3.0.0-alpha.3", + "@vue/runtime-core": "3.0.0-alpha.4", "csstype": "^2.6.8" } } diff --git a/packages/runtime-test/package.json b/packages/runtime-test/package.json index bcd4df6aa74..0755f8c64d9 100644 --- a/packages/runtime-test/package.json +++ b/packages/runtime-test/package.json @@ -1,6 +1,6 @@ { "name": "@vue/runtime-test", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "@vue/runtime-test", "private": true, "main": "index.js", @@ -30,6 +30,6 @@ }, "homepage": "https://github.com/vuejs/vue/tree/dev/packages/runtime-test#readme", "dependencies": { - "@vue/runtime-core": "3.0.0-alpha.3" + "@vue/runtime-core": "3.0.0-alpha.4" } } diff --git a/packages/server-renderer/package.json b/packages/server-renderer/package.json index 038dae62a24..b8b47c549fd 100644 --- a/packages/server-renderer/package.json +++ b/packages/server-renderer/package.json @@ -1,6 +1,6 @@ { "name": "@vue/server-renderer", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "@vue/server-renderer", "main": "index.js", "types": "dist/server-renderer.d.ts", @@ -27,6 +27,6 @@ }, "homepage": "https://github.com/vuejs/vue/tree/dev/packages/server-renderer#readme", "peerDependencies": { - "vue": "3.0.0-alpha.3" + "vue": "3.0.0-alpha.4" } } diff --git a/packages/shared/package.json b/packages/shared/package.json index c84c64ab403..07cf038f68e 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -1,5 +1,5 @@ { "name": "@vue/shared", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "private": true } diff --git a/packages/size-check/package.json b/packages/size-check/package.json index adb75b1615d..403148450cd 100644 --- a/packages/size-check/package.json +++ b/packages/size-check/package.json @@ -1,6 +1,6 @@ { "name": "@vue/size-check", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "private": true, "buildOptions": { "name": "Vue", diff --git a/packages/template-explorer/package.json b/packages/template-explorer/package.json index 5ce900e0dae..31b694f8bf6 100644 --- a/packages/template-explorer/package.json +++ b/packages/template-explorer/package.json @@ -1,6 +1,6 @@ { "name": "@vue/template-explorer", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "private": true, "buildOptions": { "formats": [ diff --git a/packages/vue/package.json b/packages/vue/package.json index 126ff9ead60..fe0aab56a5c 100644 --- a/packages/vue/package.json +++ b/packages/vue/package.json @@ -1,6 +1,6 @@ { "name": "vue", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "vue", "main": "index.js", "module": "dist/vue.runtime.esm-bundler.js", @@ -34,8 +34,8 @@ }, "homepage": "https://github.com/vuejs/vue/tree/dev/packages/vue#readme", "dependencies": { - "@vue/compiler-dom": "3.0.0-alpha.3", - "@vue/runtime-dom": "3.0.0-alpha.3" + "@vue/compiler-dom": "3.0.0-alpha.4", + "@vue/runtime-dom": "3.0.0-alpha.4" }, "devDependencies": { "lodash": "^4.17.15",