# [3.2.0](https://github.com/vuejs/vue-next/compare/v3.2.0-beta.8...v3.2.0) (2021-08-09) ### Bug Fixes * **compiler-dom:** stringify eligible svg content ([2641422](https://github.com/vuejs/vue-next/commit/2641422aa7b438513dd6eab357e39028c5876e52)), closes [#4282](https://github.com/vuejs/vue-next/issues/4282) * **compiler-sfc:** fix import usage detection for names containing $ ([88a4504](https://github.com/vuejs/vue-next/commit/88a4504e8215392e277f07db41ab9f46fc68b4d3)), closes [#4274](https://github.com/vuejs/vue-next/issues/4274) ### Features * **runtime-core:** support dynamic / external array in v-memo ([#4255](https://github.com/vuejs/vue-next/issues/4255)) ([6779bff](https://github.com/vuejs/vue-next/commit/6779bff537d3506e3bb3b30eadfbe66def7bd3cb)) # [3.2.0-beta.8](https://github.com/vuejs/vue-next/compare/v3.2.0-beta.7...v3.2.0-beta.8) (2021-08-07) ### Bug Fixes * **compiler-core:** detected forwarded slots in nested components ([#4268](https://github.com/vuejs/vue-next/issues/4268)) ([abb3a81](https://github.com/vuejs/vue-next/commit/abb3a81e871e271db8dd882f9323551e753cc00f)), closes [#4244](https://github.com/vuejs/vue-next/issues/4244) * **compiler-sfc:** fix ref sugar rewrite for identifiers in ts casting expressions ([865b84b](https://github.com/vuejs/vue-next/commit/865b84bfe81622626152e9c571cd26f30ba37bd5)), closes [#4254](https://github.com/vuejs/vue-next/issues/4254) * **core:** typing of key in VNodeProps ([#4242](https://github.com/vuejs/vue-next/issues/4242)) ([d045055](https://github.com/vuejs/vue-next/commit/d045055b475f76624830ed594dd138ac71eccd4e)), closes [#4240](https://github.com/vuejs/vue-next/issues/4240) * **runtime-core:** component effect scopes should be detached ([6aa871e](https://github.com/vuejs/vue-next/commit/6aa871e5658f79369ae4022b2c73319444bd1cca)) * **runtime-dom:** fix shadowRoot instanceof check in unsupported browsers ([#4238](https://github.com/vuejs/vue-next/issues/4238)) ([bc7dd93](https://github.com/vuejs/vue-next/commit/bc7dd93f9223e8c5809ad7b95fcf8b2414181b91)) * **types:** remove explicit return type annotation requirement for `this` inference in computed options ([#4221](https://github.com/vuejs/vue-next/issues/4221)) ([d3d5ad2](https://github.com/vuejs/vue-next/commit/d3d5ad204d17e18f6a038c7f6c3cc2a5c2271a08)) * **v-memo:** ensure track block when returning cached vnode ([#4270](https://github.com/vuejs/vue-next/issues/4270)) ([a211e27](https://github.com/vuejs/vue-next/commit/a211e271ee8c328e68afc0fe5ab86fabd7e4a320)), closes [#4253](https://github.com/vuejs/vue-next/issues/4253) * **v-memo:** should work on v-for with constant expression ([#4272](https://github.com/vuejs/vue-next/issues/4272)) ([3b60358](https://github.com/vuejs/vue-next/commit/3b60358d0e0289298df7937983b3e06123f8eb3d)), closes [#4246](https://github.com/vuejs/vue-next/issues/4246) ### Features * **runtime-dom:** support async component in defineCustomElement ([c421fb9](https://github.com/vuejs/vue-next/commit/c421fb91b2bec047e665f8269e231bf89f9bfc93)), closes [#4261](https://github.com/vuejs/vue-next/issues/4261) # [3.2.0-beta.7](https://github.com/vuejs/vue-next/compare/v3.2.0-beta.6...v3.2.0-beta.7) (2021-07-29) ### Bug Fixes * **reactivity:** dereference nested effect scopes on manual stop ([1867591](https://github.com/vuejs/vue-next/commit/1867591e7c54406e92575753dd77fffba17606a2)) * **sfc/style-vars:** improve ignore style variable bindings in comments ([#4202](https://github.com/vuejs/vue-next/issues/4202)) ([771635b](https://github.com/vuejs/vue-next/commit/771635b72af598c4dd5c3a034b31613fe208e4b3)) * **shared:** support custom .toString() in text interpolation again ([#4210](https://github.com/vuejs/vue-next/issues/4210)) ([9d5fd33](https://github.com/vuejs/vue-next/commit/9d5fd33d6dadf3186f7979d811dedf092f3ddcb7)), closes [#3944](https://github.com/vuejs/vue-next/issues/3944) * **suspense:** fix dynamicChildren tracking when suspense root is a block itself ([51ee84f](https://github.com/vuejs/vue-next/commit/51ee84fc6a5a1ab83cd02f17154803c47e65ae16)), closes [#4183](https://github.com/vuejs/vue-next/issues/4183) [#4198](https://github.com/vuejs/vue-next/issues/4198) ### Features * **server-renderer:** decouple esm build from Node + improve stream API ([0867222](https://github.com/vuejs/vue-next/commit/08672222c611a61f6359543aa202f0841d199bcb)), closes [#3467](https://github.com/vuejs/vue-next/issues/3467) [#3111](https://github.com/vuejs/vue-next/issues/3111) [#3460](https://github.com/vuejs/vue-next/issues/3460) * **sfc:** remove experimental status for sfc style v-bind ([3b38c9a](https://github.com/vuejs/vue-next/commit/3b38c9ae9b08c41ee3a70c8ef94fd078f05a8925)) # [3.2.0-beta.6](https://github.com/vuejs/vue-next/compare/v3.2.0-beta.5...v3.2.0-beta.6) (2021-07-27) ### Bug Fixes * **inject:** should auto unwrap injected refs ([561e210](https://github.com/vuejs/vue-next/commit/561e210157874b216efc1c17be701a6a81c4383b)), closes [#4196](https://github.com/vuejs/vue-next/issues/4196) * **runtime-core:** expose ssrUtils in esm-bundler build ([ee4cbae](https://github.com/vuejs/vue-next/commit/ee4cbaeec917362c571ce95352adccd6ec2d1f47)), closes [#4199](https://github.com/vuejs/vue-next/issues/4199) * **sfc/style-vars:** should ignore style variable bindings in comments ([#4188](https://github.com/vuejs/vue-next/issues/4188)) ([3a75d5d](https://github.com/vuejs/vue-next/commit/3a75d5d6942a1743789192dca9161f7c30a71e58)), closes [#4185](https://github.com/vuejs/vue-next/issues/4185) ### Features * unwrap refs in toDisplayString ([f994b97](https://github.com/vuejs/vue-next/commit/f994b974c0a1ac95d313c8ccfc258c6ba3910b6e)) # [3.2.0-beta.5](https://github.com/vuejs/vue-next/compare/v3.2.0-beta.4...v3.2.0-beta.5) (2021-07-23) ### Bug Fixes * **hmr:** fix custom elements hmr edge cases ([bff4ea7](https://github.com/vuejs/vue-next/commit/bff4ea74c545ccc7e39f45d4db4e7c471f248b13)) * **hmr:** fix hmr when global mixins are used ([db3f57a](https://github.com/vuejs/vue-next/commit/db3f57a39206eb33946a42bc230eb972bde61368)), closes [#4174](https://github.com/vuejs/vue-next/issues/4174) * **types:** fix types for readonly ref ([2581cfb](https://github.com/vuejs/vue-next/commit/2581cfb707f90bdf4128e5d481b99e7c39e198d3)), closes [#4180](https://github.com/vuejs/vue-next/issues/4180) * **v-model:** avoid resetting value of in-focus & lazy input ([ac74e1d](https://github.com/vuejs/vue-next/commit/ac74e1dd33a45874a96fc13efdaade613c44dd70)), closes [#4182](https://github.com/vuejs/vue-next/issues/4182) ### Features * **compiler-sfc:** avoid exposing imports not used in template ([5a3ccfd](https://github.com/vuejs/vue-next/commit/5a3ccfd9143700c7ca82d2911fe592d0658c5393)), closes [#3183](https://github.com/vuejs/vue-next/issues/3183) * **runtime-dom:** hmr for custom elements ([7a7e1d8](https://github.com/vuejs/vue-next/commit/7a7e1d8e9fed27bc2dbf24076642e83d0c80d9af)) * **runtime-dom:** support passing initial props to custom element constructor ([5b76843](https://github.com/vuejs/vue-next/commit/5b76843b693d6477ae44b4bd238c2c892d8f4c77)) * **runtime-dom:** support specifying shadow dom styles in defineCustomElement ([a7fa4ac](https://github.com/vuejs/vue-next/commit/a7fa4ac28afb73be00503be87f35e8724fe25443)) # [3.2.0-beta.4](https://github.com/vuejs/vue-next/compare/v3.2.0-beta.3...v3.2.0-beta.4) (2021-07-21) ### Bug Fixes * **runtime-core:** ensure setupContext.attrs reactivity when used in child slots ([8560005](https://github.com/vuejs/vue-next/commit/85600056015fcf5c922dc0b5b07aa03a5ba53245)), closes [#4161](https://github.com/vuejs/vue-next/issues/4161) * **runtime-dom:** defer setting value ([ff0c810](https://github.com/vuejs/vue-next/commit/ff0c810300f7182f717f130fe5e382d9c0c99838)), closes [#2325](https://github.com/vuejs/vue-next/issues/2325) [#4024](https://github.com/vuejs/vue-next/issues/4024) ### Performance Improvements * skip patch on same vnode ([d13774b](https://github.com/vuejs/vue-next/commit/d13774b881b297f2cd1a8d3193183d241dee625b)) # [3.2.0-beta.3](https://github.com/vuejs/vue-next/compare/v3.2.0-beta.2...v3.2.0-beta.3) (2021-07-20) ### Bug Fixes * **reactivity:** revert computed scheduler change ([33c2fbf](https://github.com/vuejs/vue-next/commit/33c2fbfdc80c6f17c7e8435b7a152a4d9ed5c6ed)), closes [#4157](https://github.com/vuejs/vue-next/issues/4157) * **runtime-core:** fix v-bind class/style merging regression ([2bdee50](https://github.com/vuejs/vue-next/commit/2bdee50a598456392541a8a4b451501e5df2d363)), closes [#4155](https://github.com/vuejs/vue-next/issues/4155) * **sfc-playground:** Transform named default exports without altering scope ([#4154](https://github.com/vuejs/vue-next/issues/4154)) ([acb2a4d](https://github.com/vuejs/vue-next/commit/acb2a4d285bfdee6437970b3dc9435abfe1c4ddf)) * **watch:** ensure watchers respect detached scope ([bc7f976](https://github.com/vuejs/vue-next/commit/bc7f9767f502b808d1c74e2cafaafbf8aa568045)), closes [#4158](https://github.com/vuejs/vue-next/issues/4158) ### Features * **reactivity:** deferredComputed ([14ca881](https://github.com/vuejs/vue-next/commit/14ca881a1ba6ad887d5ffc6ce3b7f8461252afee)) * **runtime-core:** watchSyncEffect ([d87d059](https://github.com/vuejs/vue-next/commit/d87d059ac120ed0496f85474344ef76e40fa9bc7)) # [3.2.0-beta.2](https://github.com/vuejs/vue-next/compare/v3.2.0-beta.1...v3.2.0-beta.2) (2021-07-19) ### Bug Fixes * **compiler-core:** fix self-closing tags with v-pre ([a21ca3d](https://github.com/vuejs/vue-next/commit/a21ca3dccc6a0c3822d15b6b2b1d22a2d1a4dd67)) * **compiler-sfc:** defineProps infer TSParenthesizedType ([#4147](https://github.com/vuejs/vue-next/issues/4147)) ([f7607d3](https://github.com/vuejs/vue-next/commit/f7607d3a15683745b21585baa18cf2871447580e)) * **compiler-sfc:** expose correct range for empty blocks ([b274b08](https://github.com/vuejs/vue-next/commit/b274b08f5ff56d153d3dd46fa740dd6b156bf26f)) * **compiler-sfc:** fix whitespace preservation when block contains single self-closing tag ([ec6abe8](https://github.com/vuejs/vue-next/commit/ec6abe8d5e0c85e9c884e9c2525d5181213a8e64)) * **compiler-sfc:** support const enum ([93a950d](https://github.com/vuejs/vue-next/commit/93a950d60d347321df4196d22f64c4810840a3bb)) * **reactivity:** computed should not trigger scheduler if stopped ([6eb47f0](https://github.com/vuejs/vue-next/commit/6eb47f000a1b54b2419c031979502d2793c5189d)), closes [#4149](https://github.com/vuejs/vue-next/issues/4149) * **runtime-core:** fix null type in required + multi-type prop declarations ([bbf6ca9](https://github.com/vuejs/vue-next/commit/bbf6ca9bca942df639ff0357d713413c9a1c4c05)), closes [#4146](https://github.com/vuejs/vue-next/issues/4146) [#4147](https://github.com/vuejs/vue-next/issues/4147) * **scheduler:** fix insertion for id-less job ([d810a1a](https://github.com/vuejs/vue-next/commit/d810a1a56943aeba5160b42bc917187e99cdfb8e)), closes [#4148](https://github.com/vuejs/vue-next/issues/4148) * **shared:** normalizeStyle should handle strings ([a8c3a8a](https://github.com/vuejs/vue-next/commit/a8c3a8ad61b16a31f6754066838440a59ee9db8b)), closes [#4138](https://github.com/vuejs/vue-next/issues/4138) * **ssr:** update initial old value to watch callback in ssr usage ([#4103](https://github.com/vuejs/vue-next/issues/4103)) ([20b6619](https://github.com/vuejs/vue-next/commit/20b6619793702d265fcc3a7c099f5764fa9d8685)) * **v-model:** properly detect input type=number ([3056e9b](https://github.com/vuejs/vue-next/commit/3056e9b3dcb1ab0bd18227c6fa7bf283f98f6ef6)), closes [#3813](https://github.com/vuejs/vue-next/issues/3813) ### Features * **compiler:** allow 'comments' option to affect comment inclusion in dev ([#4115](https://github.com/vuejs/vue-next/issues/4115)) ([dd0f9d1](https://github.com/vuejs/vue-next/commit/dd0f9d1ce6b0de59c84d334c7190fa9d2cc17a04)), closes [#3392](https://github.com/vuejs/vue-next/issues/3392) [#3395](https://github.com/vuejs/vue-next/issues/3395) * **compiler-sfc:** add ignoreEmpty option for sfc parse method ([8dbecfc](https://github.com/vuejs/vue-next/commit/8dbecfcbb3d597a644d0f263dfd6d7fcfd23a9fb)) * **types:** map declared emits to onXXX props in inferred prop types ([#3926](https://github.com/vuejs/vue-next/issues/3926)) ([69344ff](https://github.com/vuejs/vue-next/commit/69344ff1ae724beb648c34ede8050b3b70ddf4b7)) ### Performance Improvements * **compiler-sfc:** ignore empty blocks ([#3520](https://github.com/vuejs/vue-next/issues/3520)) ([b771fdb](https://github.com/vuejs/vue-next/commit/b771fdbef9a8dadd4c9cc939cc104f7764e40373)) # [3.2.0-beta.1](https://github.com/vuejs/vue-next/compare/v3.1.5...v3.2.0-beta.1) (2021-07-16) ### Bug Fixes * **sfc/style-vars:** properly re-apply style vars on component root elements change ([49dc2dd](https://github.com/vuejs/vue-next/commit/49dc2dd1e4a56d0d2ad28003240c99e99ef469e4)), closes [#3894](https://github.com/vuejs/vue-next/issues/3894) * ensure customElements API ssr compatibility ([de32cfa](https://github.com/vuejs/vue-next/commit/de32cfa43e94276c60f93ac4c560cb7b84534cfe)), closes [#4129](https://github.com/vuejs/vue-next/issues/4129) * **runtime-core:** fix default shapeFlag for fragments ([2a310df](https://github.com/vuejs/vue-next/commit/2a310df7531a693be706a96d4191a5bfbf24692d)) * ignore .prop/.attr modifiers in ssr ([29732c2](https://github.com/vuejs/vue-next/commit/29732c2c8681cc3e58251c19149ba3a0ce31cdaf)) ### Code Refactoring * remove deprecated scopeId codegen ([f596e00](https://github.com/vuejs/vue-next/commit/f596e008efd97fe8f9b28f536fbb0fd48b9b6333)) ### Features * **sfc:** (experimental) new ref sugar ([562bddb](https://github.com/vuejs/vue-next/commit/562bddb3ce76a0e98e499e199e96fa4271e5d1b4)) * **sfc:** support namespaced component tags when using `