Commit Graph

2847 Commits

Author SHA1 Message Date
Evan You c32760147c wip: relay compiler-core warnings in compiler-sfc with codeframe 2021-05-05 14:24:46 -04:00
Evan You 7f93c76b96 wip: exclude legacy slots from $scopedSlots 2021-05-05 11:06:15 -04:00
Evan You 5278e0622a wip: more private properties 2021-05-05 09:47:14 -04:00
Evan You 7e6a76e587 wip: enable private vnode properties even for built-ins 2021-05-04 18:26:28 -04:00
Evan You ae0fb14305 wip: fix native template compat 2021-05-04 18:26:28 -04:00
Evan You 7c1e665215 wip: root instance $destroy before $mount 2021-05-04 18:26:28 -04:00
Evan You 4d62670d3d wip: vm._data for vuex compat 2021-05-04 18:26:28 -04:00
Evan You 80303bcf5a wip: compat test coverage 2021-04-30 18:05:03 -04:00
Evan You 324a00c85d wip: test for global filter registration 2021-04-30 17:16:47 -04:00
Evan You bd3cc4d2c7 wip: tests for compiler compat 2021-04-30 15:50:32 -04:00
Evan You b4c92ccf6b wip: move compat test cases + filter tests 2021-04-29 16:58:14 -04:00
Evan You bb76cfae12 wip: test for v-model compat 2021-04-29 16:22:39 -04:00
Evan You 6db7c00b42 wip: test for legacy component compat 2021-04-29 15:51:37 -04:00
Evan You 3963f2e963 wip: more tests for v2 compat 2021-04-29 14:45:22 -04:00
Evan You d3d9355c5a wip: test for instance and options compat 2021-04-28 17:21:05 -04:00
Evan You d0dd6674bb wip: fix isCustomElement 2021-04-28 12:36:08 -04:00
Evan You cd33714935 chore: Merge branch 'v2-compat' 2021-04-28 12:30:57 -04:00
Evan You c27f01bc74 wip: tests for global config compat 2021-04-28 12:29:51 -04:00
Evan You ce0bbe053a feat: support component-level `compilerOptions` when using runtime compiler
- The `delimiters` component option is deprecated.
  Use `compilerOptions.delimiters` instead.
2021-04-28 11:40:16 -04:00
Evan You e486254431 fix(compiler-core): preserve comment content in production when comments option is enabled 2021-04-28 11:22:16 -04:00
Evan You 1d1af403ca wip: tests for global api compat 2021-04-27 17:34:19 -04:00
Evan You 86703c23a6 wip: ref v-for compat 2021-04-26 17:35:41 -04:00
Evan You 3e815be24e wip: fix tests 2021-04-26 17:35:30 -04:00
Evan You 5913e01d6b wip: whitespace behavior compat 2021-04-26 12:21:36 -04:00
Evan You 091e6d67bf feat(config): support configuring runtime compiler via `app.config.compilerOptions`
- `config.isCustomElement` is deprecated - use `app.config.compilerOptions.isCustomElement` instead.
2021-04-26 11:46:29 -04:00
Evan You b047a0864c refactor(compiler): improve whitespace: 'preserve' behavior from #1600
- discard leading/ending whitespace inside an element
- condense preserved whitesapce into single space
2021-04-26 11:46:17 -04:00
CodeDaraW dee3d6ab8b feat(compiler-core): whitespace handling strategy 2021-04-26 09:44:27 -04:00
sallycn b46d8578fd
chore: fix typo in assertion 2021-04-26 17:57:15 +08:00
Guillaume Chau 03ae3006e1 feat(devtools): improved KeepAlive support
This change allows the devtools to access the cached vnodes from the KeepAlive component in order to display them as inactive in the components tree
2021-04-23 16:52:28 +02:00
Evan You 7b37f78dc9 wip: add private api compat flag 2021-04-22 17:50:49 -04:00
Evan You 6f8fe4eac9 wip: more compat tweaks 2021-04-22 17:30:54 -04:00
Evan You 7e0224aa8c wip: more compat tweaks 2021-04-22 14:59:54 -04:00
Evan You 98bc9a26e9 wip: more compat tweaks 2021-04-22 09:49:25 -04:00
Evan You 12abd4af85 wip: class/style fallthrough compat 2021-04-21 22:04:26 -04:00
Evan You a75b00c558 wip: treat compat model listener as already declared 2021-04-21 19:13:26 -04:00
Evan You 5566d39d46 perf: only trigger $attrs update when it has actually changed 2021-04-21 19:05:20 -04:00
Evan You 66b6b4226b chore: include component info in recursive update warning 2021-04-21 15:20:15 -04:00
Evan You 1b8f14ee76 wip: more compat progress 2021-04-21 15:09:18 -04:00
Evan You 62b8f4a39c fix(watch): avoid traversing non-plain objects 2021-04-20 17:13:58 -04:00
Evan You f6dee53270 wip: compat integration progress 2021-04-20 09:25:12 -04:00
zhaozhao 060c5f1d0a
chore: adjust the parameter order of the mountChildren function 2021-04-20 13:43:19 +08:00
Evan You 7dc681c196 wip: filters compat 2021-04-19 12:29:55 -04:00
Evan You 467076361a wip: warn against `<template functional>` 2021-04-17 23:51:40 -04:00
Evan You 3ea68691e2 wip: inline-template compat 2021-04-17 23:19:40 -04:00
Evan You 1390ece04f wip: refactor 2021-04-17 22:50:16 -04:00
Evan You 505269405e wip: plain template tag compat 2021-04-17 22:16:48 -04:00
Evan You 048ac299f3 perf(compiler): skip unncessary checks when parsing end tag 2021-04-17 22:05:18 -04:00
Evan You 2c31227e7c wip: warn v-bind object ordering 2021-04-17 20:53:55 -04:00
Evan You bf41354abd wip: remove unncessary deprecation messages 2021-04-17 16:13:57 -04:00
Evan You 810fe4d583 wip: default mode for compat build 2021-04-17 16:05:27 -04:00
Evan You c5c304af14 wip: compiler should default to v3 behavior 2021-04-17 15:55:14 -04:00
Evan You 3528ced0b4 wip: warn key usage of v-if branches 2021-04-17 15:35:44 -04:00
Evan You ab21468982 wip: warn v-if/v-for co-usage 2021-04-17 14:38:30 -04:00
Evan You 7ceb873783 wip: v-bind.sync compat 2021-04-16 17:11:44 -04:00
Evan You ad97bbab85 wip: invert compiler compat behavior default during tests 2021-04-16 12:26:17 -04:00
Evan You bbf708dbe9 wip: support configuring compiler deprecations at runtime + warn invalid deprecation configs 2021-04-16 12:19:12 -04:00
Evan You 79cbf21c3e wip: generate codeframe for compiler deprecations 2021-04-16 11:51:47 -04:00
Evan You d974adb327 wip: is usage compat 2021-04-16 11:43:05 -04:00
kiyon 7a8bac73e1
chore: fix typo in test case description 2021-04-16 10:43:56 +08:00
Evan You e130c7db23 wip: compiler deprecation config 2021-04-12 19:43:53 -04:00
Evan You 115372dd5b wip: refactor deprecations into a single file 2021-04-12 18:47:50 -04:00
Evan You af9e6999e1 feat: support casting plain element to component via is="vue:xxx"
In Vue 3's custom elements interop, we no longer process `is` usage on
known native elements as component casting. (ref:
https://v3.vuejs.org/guide/migration/custom-elements-interop.html)
This introduced the need for `v-is`. However, since it is a directive,
its value is considered a JavaScript expression. This makes it awkward
to use (e.g. `v-is="'foo'"`) when majority of casting is non-dynamic,
and also hinders static analysis when casting to built-in Vue
components, e.g. transition-group.

This commit adds the ability to cast a native element to a Vue component
by simply adding a `vue:` prefix:

```html
<button is="vue:my-button"></button>
<ul is="vue:transition-group" tag="ul"></ul>
```
2021-04-12 13:08:07 -04:00
Evan You 422b13e798 wip: testing compiler deprecation warnings 2021-04-12 09:09:00 -04:00
edison 7db8c9c19a
chore: use isArray to keep the code consistency 2021-04-12 18:31:11 +08:00
Evan You 24bab94a72 wip: staticStyle and staticClass 2021-04-11 22:21:10 -04:00
Evan You 62bfdae043 wip: Vue.util compat 2021-04-11 16:53:43 -04:00
Evan You c55f3ed0e8 wip: fix render fn compat detection 2021-04-11 11:15:40 -04:00
Evan You a2f441dc0e wip: refactor compat check utils 2021-04-09 23:51:50 -04:00
Evan You 7a25cbb7a7 wip: fix compat utils usage 2021-04-09 23:21:54 -04:00
Evan You 183f9b0013 wip: component v-model compat 2021-04-09 23:10:29 -04:00
Evan You f05d6dfd98 wip: render function compat 2021-04-09 18:56:31 -04:00
Evan You 457a56e331 wip: compat for legacy functional component 2021-04-09 15:14:14 -04:00
Evan You d71c488540 chore: fix dts 2021-04-08 17:15:02 -04:00
Evan You 3db29eb773 wip: support per-component compatConfig 2021-04-08 17:11:05 -04:00
Evan You f8e2361d83 wip: make tests pass again 2021-04-08 16:33:53 -04:00
Evan You 18cf63ff05 wip: async component compat 2021-04-08 16:11:28 -04:00
Evan You d7957a7440 wip: tweak warning dedupe logic 2021-04-08 11:09:40 -04:00
Evan You d4af747a50 wip: $attrs class/style warning 2021-04-08 10:41:25 -04:00
Evan You c9a93a5c4c wip: $scopedSlots compat 2021-04-08 10:21:14 -04:00
Evan You 960e9deaed wip: vm.$listeners compat 2021-04-08 10:06:12 -04:00
Evan You c1e5cfe7d6 wip: attr coersion compat 2021-04-07 17:42:03 -04:00
Evan You cf6bcdf895 wip: transition group root compat 2021-04-07 16:19:25 -04:00
Evan You 1c2c77eb9f wip: apply compat enabled flags to currently implemented features 2021-04-07 16:19:25 -04:00
Evan You 208bef5d97 wip: watch array compat 2021-04-07 16:19:25 -04:00
Evan You e2fc84c773 wip: compat configuration 2021-04-07 16:19:24 -04:00
Evan You 068d93b9e5 wip: keyCode compat 2021-04-07 16:19:24 -04:00
Evan You 2784d6615d wip: $children compat 2021-04-07 16:19:24 -04:00
Evan You db09805688 wip: instance event emitter api compat 2021-04-07 16:19:24 -04:00
Evan You 9828ef0845 wip: transition class compat 2021-04-07 16:19:24 -04:00
Evan You 926e12862b wip: fix root data option compat 2021-04-07 16:19:24 -04:00
Evan You 3d810eb422 wip: basic compat test 2021-04-07 16:19:24 -04:00
Evan You 47b765d63a wip: custom directive compat 2021-04-07 16:19:24 -04:00
Evan You d619a770a8 wip: props default this compat 2021-04-07 16:19:24 -04:00
Evan You 65cc649559 wip: beforeDestroy & destroyed compat 2021-04-07 16:19:24 -04:00
Evan You 960e0943f7 wip: config.ignoredElements compat 2021-04-07 16:19:24 -04:00
Evan You d0da0028f2 wip: data option compat 2021-04-07 16:19:24 -04:00
Evan You 53b8127a9c wip: progress 2021-04-07 16:19:24 -04:00
Evan You 40e3dd28e1 wip: restructure compat code + global api alignment 2021-04-07 16:19:24 -04:00
Evan You e2d6ff845b wip: root mount api compat 2021-04-07 16:19:24 -04:00
Evan You 24850a99c6 wip: initial compat build setup 2021-04-07 16:19:24 -04:00
Evan You 870f2a7ba3 fix(watch): this.$watch should support watching keypath 2021-04-07 16:19:04 -04:00
Eduardo San Martin Morote 0f2d8f3244
test: typo in spy (#3556) 2021-04-07 14:19:12 +02:00
Evan You 4fe4de0a49 fix(runtime-core): ensure declare prop keys are always present
fix #3288
2021-04-01 20:25:12 -04:00
Evan You f0cf14bcc5 release: v3.0.11 2021-04-01 19:52:45 -04:00
Evan You c1cd42e627 fix(runtime-core): fix v-on object kebab-case event emit matching
fix #3527
2021-04-01 19:47:58 -04:00
HcySunYang 995d76bd12
fix(runtime-core): fix render function + optimized slot edge case (#3523)
fix #2893

Manually rendering the optimized slots should allow subsequent updates to exit the optimization mode correctly
2021-04-01 19:28:58 -04:00
Cédric Exbrayat c90fb945f4
refactor(sfc-playground): modes declaration (#3522) 2021-04-01 18:37:50 -04:00
Evan You 7f7dcc9f7d fix(compiler-sfc): fix wrong scopeId for nested `<script setup>` components 2021-04-01 18:11:04 -04:00
edison 8c57b9131d
chore(types): use NormalizedStyle for consistency (#2590) 2021-04-01 11:29:24 +08:00
Evan You 4dc457dae5 workflow(sfc-playground): make it work in safari and ff 2021-03-31 15:23:01 -04:00
Evan You 5ee7e6bc70 workflow(sfc-playground): support import map 2021-03-31 13:31:00 -04:00
Evan You e097bd4dd5 chore(sfc-playground): use svg logo 2021-03-31 12:36:45 -04:00
Evan You 7bc5fd9a04 chore(sfc-playground): teardown preview update watcher 2021-03-31 12:22:25 -04:00
Evan You ebf396251c chore(sfc-playground): responsive 2021-03-30 22:10:18 -04:00
Evan You 9d39cd46e9 workflow(sfc-playground): support selecting versions 2021-03-30 22:00:46 -04:00
Evan You ad6c124e6c release: v3.0.10 2021-03-30 20:05:45 -04:00
Evan You 9cf75258c8 fix(runtime-core): fix dev fragment root flag check 2021-03-30 19:55:05 -04:00
Evan You 66b94dc5e1 chore: use alias instead of module field
...before we figure out what is the ideal behavior when adding exports field
2021-03-30 19:51:55 -04:00
Evan You 58e2376c4d refactor(ssr): adjust ssr scope id logic for client-compiled render functions 2021-03-30 19:30:05 -04:00
Evan You 5e54081d5b fix(ssr): fix scopeId inheritance across mixed parent chain
fix #3513
2021-03-30 18:39:42 -04:00
Evan You 6cab91dfe8 workflow(sfc-playground): clear errors in edge cases 2021-03-30 12:49:50 -04:00
Evan You b6298dbd01 workflow(sfc-playground): warn on <style module> usage 2021-03-30 12:39:08 -04:00
Evan You c771b1dc80 workflow(sfc-playground): add ssr compile output 2021-03-30 12:36:59 -04:00
edison 2e50acfbb8
perf(runtime-core): optimize the performance of getTypeIndex (#3206) 2021-03-30 10:53:14 -04:00
Evan You c8df6185fe chore: bump vite 2021-03-29 21:44:12 -04:00
Evan You b39208cf06 perf(compiler-sfc): skip srcset transform if all candidates are external 2021-03-29 19:15:57 -04:00
HcySunYang 33ba0e3229
fix(runtime-dom): fix event listeners call in firefox <= 53 (#3501)
fix #3485
2021-03-29 19:15:12 -04:00
Jonas Kruckenberg 42b68c773d
fix(compiler-sfc): fix missing whitespace issue in srcsets (#3132)
fix #3069
2021-03-29 18:28:22 -04:00
Calvin Liang 0fe567abfc
fix(compiler-core): properly transform replaced nodes (#2927) 2021-03-29 18:08:10 -04:00
HcySunYang 5db2b141dc
fix(types): add a type-only differentiator to assist Mixin's type infer (#3481)
fix #3468
2021-03-29 18:07:36 -04:00
liaoliao666 c61e767422
fix(reactivity): should not trigger when setting value to same proxy (#2904) 2021-03-29 17:52:57 -04:00
Kael 4f26835dac
fix(types/tsx): make JSX.Element extend VNode (#3171) 2021-03-29 17:38:25 -04:00
Evan You bb8cdcad9f fix(compiler-sfc): support proper type arguments for defineEmit helper
fix #2874
2021-03-29 16:38:07 -04:00
Evan You 2793bc0918 chore(sfc-playground): use type defineEmit 2021-03-29 16:36:40 -04:00
Evan You f5827fdf78 fix(compiler-sfc): do not resolve assets from setup bindings
when not using script setup

fix #3270, fix #3275
2021-03-29 16:11:38 -04:00
Evan You 4d9f9fdf9d workflow(sfc-playground): make warnings dismissable 2021-03-29 16:11:38 -04:00
Evan You 7ab519cc96 workflow(sfc-playground): pass along analyzed bindings when compiling template 2021-03-29 16:11:38 -04:00
Evan You 4d2853ef57 workflow(sfc-playground): display analyzed bindings in js output 2021-03-29 16:11:38 -04:00
HcySunYang 555b016dcb
fix(compiler-core): allow PascalCase dynamic component tag usage (#3508)
fix #3507
2021-03-29 15:18:25 -04:00
HcySunYang 3736496006
fix(runtime-core): avoid unmount teleport's children multiple times (#3499)
fix #3497
2021-03-29 15:15:08 -04:00
Evan You 117a61bc17 chore(sfc-playground): fix clipboard usage 2021-03-29 10:54:32 -04:00
Evan You 24a90abeda chore(sfc-playground): logo, responsive 2021-03-29 10:33:19 -04:00
Evan You 3aaa53748b workflow(sfc-playground): tweaks and commit links 2021-03-29 02:07:04 -04:00
Evan You 69b4727204 fix(compiler-sfc): fix function scope variable declaration marking 2021-03-29 00:32:46 -04:00
Evan You bb937e9033 workflow(sfc-playground): attach filename 2021-03-29 00:32:28 -04:00
Evan You ce5e0b67a9 workflow(sfc-playground): fix download 2021-03-28 23:48:01 -04:00
Evan You 9613969ffc workflow(sfc-playground): share and download buttons 2021-03-28 23:36:36 -04:00
Evan You aa8bf1b7a3 workflow(sfc-playground): improve module rewrite 2021-03-28 21:55:22 -04:00
Evan You 3ac661b896 chore: force refresh playground editor on startup 2021-03-28 18:50:12 -04:00
Evan You d1bf35c8b8 workflow(sfc-playground): support multiple files 2021-03-28 18:41:33 -04:00
Evan You 2e3984fd5b chore: default code for sfc playground 2021-03-28 02:24:25 -04:00
Evan You 16e8f45199 workflow(sfc-playground): fix newline 2021-03-28 02:17:55 -04:00
Evan You f76ddc5ac3 workflow: sfc playground 2021-03-28 01:35:45 -04:00
Evan You 2424768808 build: make compiler-sfc global build work 2021-03-27 12:33:52 -04:00
Evan You 67039b3434 release: v3.0.9 2021-03-27 11:30:12 -04:00
Richard Cooke 4549e65bae
fix(runtime-core): remove dev-only props property from setup context for consistency (#3492) 2021-03-27 11:23:10 -04:00
Johnson Chu e752bddb33
fix(compiler-core): fix slot source location (#3494) 2021-03-27 11:20:39 -04:00
Evan You 2121c32e22 fix(runtime-core): fix kebab-case prop required warning
fix #3495
ref #3363
2021-03-27 11:16:39 -04:00
Evan You 37c17091fd fix: ensure backwards compat for pre-compiled sfc components
fix #3493
2021-03-27 10:53:45 -04:00
Evan You 9ff70be2b3 release: v3.0.8 2021-03-26 17:35:44 -04:00
Evan You 60d777d228 fix(runtime-core): fix erraneous emits warnings w/ mixins
fix #2651
2021-03-26 16:29:40 -04:00
Evan You d5824b97c5 fix(runtime-core): should not track deps in pre flush watcher callbacks
fix #2728
2021-03-26 15:52:49 -04:00
Thorsten Lünborg 22cc4a7659
fix(reactivity): ensure that shallow and normal proxies are tracked seperately (close #2843) (#2851)
fix #2843
2021-03-26 15:39:56 -04:00
HcySunYang 68de9f408a
fix(reactivity): fix shallow readonly behavior for collections (#3003)
fix #3007
2021-03-26 15:10:21 -04:00
HcySunYang 9cb21d088e
fix(Teleport): fallback to non-optimized mode when HRM performing updates (#3311)
fix #3302
2021-03-26 14:02:44 -04:00
Evan You 8c3c14a0ff fix(ssr): properly update currentRenderingInstance state during ssr
fix #2863
2021-03-26 14:00:03 -04:00
HcySunYang 9036f88d83
fix(hydration): handle camel-case tag name when performing match assertion (#3247)
fix #3243
2021-03-26 11:59:50 -04:00
HcySunYang 420c8f4580
fix(ssr/hydration): handle ending empty text node (#3246)
fix #3245
2021-03-26 11:45:28 -04:00
Evan You 2e71f07bc1 fix(ssr): ensure async setup error handling work with suspense during ssr 2021-03-26 11:00:30 -04:00
edison d668d48e9e
fix(runtime-core): handle error in async setup (#2881) 2021-03-26 10:26:30 -04:00
Evan You abd129d845 fix(component): prioritize registered component over implicit self-reference via filename
ref: #2827
2021-03-26 10:04:36 -04:00
Evan You da944cb379 fix(ssr): fix memory leak when vnode component render throws error
fix #3100
2021-03-25 18:04:21 -04:00
HcySunYang 2b588cf1bc
fix(types): unwrap refs on public instance data (#3319)
fix #3315
2021-03-25 17:30:10 -04:00
HcySunYang 44166b43d9
fix(runtime-core): cache props default values to avoid unnecessary watcher trigger (#3474)
fix #3471
2021-03-25 17:26:58 -04:00
HcySunYang ebedcccdc0
fix(compiler-core): allow unicode to appear in identifiers (#3443)
fix #3440
2021-03-25 17:24:18 -04:00
HcySunYang 7715c49af9
fix(compiler-core): avoid generating useless createVNode helper (#2938)
close #2739
2021-03-25 17:01:50 -04:00
HcySunYang 2451dd8ae6
fix(runtime-core): the select tag's multiple prop should be set before the children mounting (#3202)
fix #3199
2021-03-25 16:49:34 -04:00
Evan You 084e932e85 refactor: simplify lifecycle hook call logic 2021-03-25 16:48:51 -04:00
HcySunYang b58bb16959
fix(runtime-core): should call chained mixins and extends (#3040)
fix #3038
2021-03-25 16:39:57 -04:00
HcySunYang 86ceef4352
fix(runtime-core): fix warning for absent props (#3363)
fix #3362
2021-03-25 16:22:43 -04:00
bartenra e4a5712a33
fix(types/jsx): llow tabindex to be a string (#3476) 2021-03-25 16:20:38 -04:00
funkyfun c8aed13711
chore(types): remove redundant 'undefined' type (#3484) 2021-03-25 16:19:02 -04:00
edison bbc5fe6a97
fix(compiler-sfc): should not rewrite scope variable (#3449)
fix #3445
2021-03-25 16:16:48 -04:00
GU Yiling ca6aa01181
fix(compiler-dom): stringifyStatic should remove attribute bindings with `null` value (#3477)
fix #3475
2021-03-25 16:14:06 -04:00
Evan You 7cf143dd4f chore: fix test 2021-03-25 16:06:02 -04:00
HcySunYang b4b82159e2
fix(compiler-core): should not condense whitespace in RCDATA text mode (#3482)
fix #3479
2021-03-25 15:53:03 -04:00
HcySunYang 6e88156934
fix(runtime-core): should not cache property access during data() invocation (#3299)
fix #3297
2021-03-25 15:48:12 -04:00
HcySunYang 4bf7ba19bf
fix(compiler-core): detect v-if branch root with comment as dev fragment (#2785)
fix #2780
2021-03-25 15:43:44 -04:00
07akioni 3755e60c52
fix(types): union function prop (#3119)
fix #3357
2021-03-25 11:27:54 -04:00
Evan You 41e02f0fac fix(reactivity): ensure computed can be wrapped by readonly
fix #3376
2021-03-25 11:23:34 -04:00
TJ Koblentz e4b5fccd0c
fix(ssr): watchEffect onInvalidate runner initialization (#3323)
close #3322
2021-03-25 11:17:57 -04:00
edison bf34e33c90
fix(runtime-core): ensure only skip unflushed job (#3406) 2021-03-25 11:13:35 -04:00
HcySunYang 49f4072c83
fix(compiler-ssr): keep the order of imports expression for the fallback branch of SSR (#3448)
fix #3447
2021-03-25 11:10:25 -04:00
HcySunYang 776951315d
fix(Teleport): component with multi roots should be removed when unmounted (#3157)
fix #3156
2021-03-25 11:02:50 -04:00
HcySunYang 0a583d5ca2
fix(ssr): respect render function from extends/mixins in ssr (#3006)
fix #3004
2021-03-25 10:32:17 -04:00
HcySunYang 5dbe834858
fix(rumtime-core): custom dom props should be cloned when cloning a hoisted DOM (#3080)
fix #3072
2021-03-25 10:21:57 -04:00
edison eb1fae63f9
fix(runtime-core): handle error in async watchEffect (#3129) 2021-03-23 10:20:52 +01:00
21d1288133
fix(teleport): targetAnchor should also be removed when unmounted (#2870)
* fix(teleport): targetAnchor should also be removed when unmounted

* fix(teleport): targetAnchor should also be removed when unmounted
2021-03-23 10:19:09 +01:00
Cédric Exbrayat 3b3a9a1f52
fix: add display name for suspense component (#3312) 2021-03-23 10:17:15 +01:00
HcySunYang 67a0290c0a
fix(transition): toggling branches with in-out mode should be transitioned correctly (#3109)
fix #3104
2021-03-22 16:56:24 -04:00
Evan You b2e00f011a test(ssr): test render function Transition usage in SSR 2021-03-22 16:51:51 -04:00
HcySunYang e8e9b00f81
fix(KeepAlive): adapt keepalive for ssr (#3259)
fix #3255
2021-03-22 16:49:07 -04:00
HcySunYang 602b58ebd1
fix(compiler-core): fix the detection of forwarded slots with v-if or v-for (#3353)
fix #3347
2021-03-22 16:34:46 -04:00
HcySunYang 6cb94752b0
fix(compiler-sfc): scope Id should not be attached to @keyframe breakpoint rules (#3308)
fix #3304
2021-03-19 10:32:30 -04:00
Evan You 540e26f49c chore: only set slotted flag on sfc descriptor if style is scoped 2021-03-05 18:28:12 -05:00
Evan You ff4d4ec249 chore: fix all test cases 2021-03-05 18:28:12 -05:00
Evan You 68416e988f chore: fix types 2021-03-05 18:28:12 -05:00
Evan You 02cbbb718c perf: support only attaching slot scope ids when necessary
This is done by adding the `slotted: false` option to:

- compiler-dom
- compiler-ssr
- compiler-sfc (forwarded to template compiler)

At runtime, only slotted component will render slot fragments with
slot scope Ids. For SSR, only slotted component will add slot scope Ids
to rendered slot content. This should improve both runtime performance
and reduce SSR rendered markup size.

Note: requires SFC tooling (e.g. `vue-loader` and `vite`) to pass on
the `slotted` option from the SFC descriptoer to the `compileTemplate`
call.
2021-03-05 18:28:12 -05:00
Evan You f74b16ccfe fix(compiler): properly bail stringfication for nested slot elements 2021-03-05 18:28:12 -05:00
Evan You aea88c3280 refactor: fix implementation of SFC :slotted id handling
fix #2892
2021-03-05 18:28:12 -05:00
Cédric Exbrayat 57e1aa815b
chore: fix ownKeys signature (#3313) 2021-03-03 11:26:49 -05:00
Evan You 3e4c3ac66d build(deps): bump @babel/parser and @babel/types 2021-03-03 11:25:13 -05:00
dependabot[bot] 9fd66d8edc
build(deps-dev): bump pug from 2.0.4 to 3.0.1 (#3344)
Bumps [pug](https://github.com/pugjs/pug) from 2.0.4 to 3.0.1.
- [Release notes](https://github.com/pugjs/pug/releases)
- [Commits](https://github.com/pugjs/pug/compare/pug@2.0.4...pug@3.0.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-03 11:19:33 -05:00
Evan You 69304cf166 refactor: adjust logic branches 2021-03-01 15:45:55 -05:00
HcySunYang 7562e72c2b
fix(runtime-core): fix async component ref handling (#3191)
fix #3188
2021-03-01 15:00:32 -05:00
Evan You 75fdcd85ce chore: rename test to match src filename 2021-03-01 12:30:04 -05:00
Kadir Yazıcı 13c9d2ca82
fix(types): allow style to be an array in JSX (#2947) 2021-03-01 12:29:13 -05:00
HcySunYang 8ffcde2836
fix(runtime-dom): support mounting app to svg container (#2929)
fix #2926
2021-03-01 11:51:32 -05:00
Evan You 1a955e2278 release: v3.0.7 2021-03-01 10:59:29 -05:00
Evan You 24b35237a0 test: improve e2e test stability 2021-03-01 10:49:23 -05:00
Evan You 1dedc19e1f fix(compiler-sfc): handle more edge cases in default rewrite 2021-02-26 11:05:20 -05:00
lidlanca 012dc5a303
fix(compiler-ssr) ensure that ssrHelpers are unique after merge from parent context (#3269)
fix #3268
2021-02-25 18:25:39 -05:00
zhufengzhufeng 9cd988342c
perf(reactivity): only call Set.add if doesn't already have value (#3307) 2021-02-25 14:57:35 -05:00
HcySunYang 5ad4036e29
fix(v-show): v-show takes higher priority than style attribute (#3230)
fix #2757
2021-02-25 10:26:54 -05:00
HcySunYang 45fae9d308
fix(scheduler): ensure updates are always inserted in ascending id order (#3184)
fix #2768, fix #2829
2021-02-25 09:37:25 -05:00
Evan You 75964aba03 test: test case for #3300, #3301 2021-02-25 09:07:49 -05:00
HcySunYang e3568bae27
fix(runtime-core): properties in methods should be writable and enumerable in DEV (#3301)
fix #3300
2021-02-25 09:04:28 -05:00
HcySunYang 4a965802e8
types: support object as props type (#3165) 2021-02-24 16:20:41 -05:00
HcySunYang 354966204e
dx(runtime-dom): warn config.isCustomElement usage in runtime-only build (#2945) 2021-02-24 16:18:55 -05:00
Evan You d0ea74556f fix: init devtools after feature flag checks 2021-02-24 15:59:38 -05:00
Evan You d9f91e26f9 release: v3.0.6 2021-02-24 15:19:31 -05:00
Evan You 180310cbe9 refactor(runtime-dom): avoid form attribtue tag check
the tag check while technically stricter, is not really necessary
and introduces too much weight
2021-02-24 15:06:51 -05:00
Thorsten Lünborg c5d147c57f
fix(runtime-dom): ensure readonly type prop on textarea is handled patched as attribute (#2888)
close #2766

Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-24 14:51:19 -05:00
Evan You fcb6c8920c fix(compiler-dom): fix cdn entries
ref #3181 #3185
2021-02-23 10:00:48 -05:00
Evan You 5a7a1b8293 fix(hmr): deep clone reused hoisted trees during dev
fix vitejs/vite#2022
2021-02-15 15:09:27 -05:00
Evan You c69f4ea857 fix(compiler-ssr): avoid duplicated asset imports merged from component slot client branch
fix vitejs/vite#2034
2021-02-15 12:12:50 -05:00
Matias Capeletto 6d762a84ca
fix(compiler-sfc): removeSpecifier issue when removing initial imports (script-setup) (#2729) 2021-02-13 10:06:34 +01:00
Evan You 03360cefa1 fix(compiler-sfc): treat const reactive() bindings as mutable 2021-02-10 11:39:07 -05:00
Evan You 734c65badd fix(compiler-core): do not mark v-for as stable on const bindings
since the source value may be a reactive array

fix vitejs/vite#1956
2021-02-09 11:57:09 -05:00
edison ec8fd10cec
fix(runtime-core): instanceWatch should pass `this.proxy` to source as the first argument (#2753) 2021-02-09 08:00:32 +01:00
JokcyLou bd1240c127
feat: remove useless option in KeepAlive (#3170) 2021-02-09 07:58:53 +01:00
shadowings-zy b302cbbbd3
fix: kebab-case events are attached correctly on web components, see #2841 (#2847) 2021-02-09 07:58:36 +01:00
xiejiahe 1cc8712235
chore: comment initial space (#3192) [skip ci]
fix(typo): Comment add spaces.
2021-02-08 12:32:12 +01:00
Thorsten Lünborg 96b6433524
fix(compiler-dom): ensure global build filename matches the one defined in package.json (close #3181) (#3185)
Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-07 14:40:14 +01:00
HcySunYang f43a3b0beb
fix(runtime-core): align $parent/$root with the template ref when using expose (#3158) 2021-02-07 14:39:52 +01:00
edison 3efa2aff13
chore(runtime-core): remove unnecessary variables (#2680) 2021-02-05 20:06:50 +01:00
Alan Wang 1f567264a7
test: fix typo in expect message (#2678) 2021-02-05 20:06:21 +01:00
Cédric Exbrayat 73117f6b5b
fix(runtime-core): allow overriding properties other than props (#3105)
This is useful for testing, as Jest can't spy on an object without `hasOwnProperty`.
VTU can add it, but this commit is needed first.
2021-02-05 19:59:46 +01:00
HcySunYang 48f0d2944f
fix(types): extract the correct props type for the DateConstructor (#2676) 2021-02-05 19:56:23 +01:00
Thorsten Lünborg 288ae0a8d9
feat(runtime-core): improve render context warning (#2496)
Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-05 19:55:45 +01:00