Commit Graph

2290 Commits

Author SHA1 Message Date
webfansplz 41d9c47300
fix(types): `$watch` callback parameters type (#6136)
fix #6135
2022-10-26 05:43:42 -04:00
nandi95 506a42a9a5
types(runtime-core): added `ComponentCustomProperties` type to `globalProperties` (#5389) 2022-10-26 05:00:47 -04:00
Carlos Rodrigues 8e792d93a8
types(h): Support passing `props` to `Component` when using `h` (#3219) 2022-10-26 03:07:44 -04:00
Thorsten Lünborg 54b6ba32ca
fix(runtime-core): ensure props definition objects are not mutated during props normalization (close: #6915) (#6916) 2022-10-22 11:20:02 +02:00
Thorsten Lünborg e5fc7dcc02
fix(types): ensure createBlock() helper accepts Teleport and Supsense types (fix: #2855) (#5458)
Co-authored-by: Carlos Rodrigues <carlos@hypermob.co.uk>
2022-10-20 21:45:51 +02:00
Thorsten Lünborg bc167b5c6c
fix(runtime-core): watching multiple values - handle `undefined` as initial values (fix: #5032) (#5033) 2022-10-20 21:45:05 +02:00
Evan You 9617dd4b2a release: v3.2.41 2022-10-14 18:41:15 +08:00
白雾三语 9ae796d156
fix(runtime-core): fix v-for ref reactivity behavior difference between prod and dev (#6714)
fix #6697
2022-10-14 05:23:01 -04:00
似水微寒 82a73da351
fix(runtime-core): ensure that errors in slot function execution do not affect block tracking (#5670)
fix #5657
2022-10-14 04:08:32 -04:00
Eduardo San Martin Morote 35a113eda4
fix(devtools): use cleanupBuffer instead of modifying _buffer (#6812)
Co-authored-by: Anthony Fu <anthonyfu117@hotmail.com>
2022-10-03 11:29:34 +02:00
edison 824174915f
types: creating Teleport with h and RawSlots #2613 (#2614) 2022-10-03 16:40:37 +08:00
webfansplz a9e3fa4e21
refactor(types): improve of type assertion (#4177)
Co-authored-by: webfansplz <>
2022-10-03 16:37:54 +08:00
Anthony Fu 534593cfa8 chore: format 2022-10-03 15:30:43 +08:00
Evan You 24f4c479d6 fix(devtools): avoid memory leak caused by devtools event buffer
fix #6591
2022-09-28 18:19:19 +08:00
Evan You 551f606d98 release: v3.2.40 2022-09-28 11:40:24 +08:00
Evan You cae1aa82cc chore: use stricter slots type in createSlots 2022-09-28 10:38:27 +08:00
Shigma 3cc8e024e6
test(slots): ensure createSlots helper work with ssr slots (#6660) 2022-09-27 22:36:11 -04:00
Evan You 8963c5508c fix(ssr): fix dynamic slot regression in ssr
fix #6651
2022-09-28 10:25:01 +08:00
Evan You 9698dd3cf1 fix(ssr): fix hydration mismatch when entire multi-root template is stringified
fix #6637
2022-09-28 09:33:17 +08:00
Evan You fc5bdb36ed fix(runtime-core): avoid hoisted vnodes retaining detached DOM nodes
fix #6591
2022-09-27 16:20:52 +08:00
Evan You aa70188c41 fix(runtime-core): remove prod-only hoisted clone behavior for manual DOM manipulation compat
fix #6727
fix #6739
2022-09-27 15:24:46 +08:00
Evan You c0d8db81a6 fix(runtime-core): unset removed props first in full diff mode
fix #6571
2022-09-27 10:24:13 +08:00
Thorsten Lünborg c71a08e6fd
fix(runtime-core): Lifecycle hooks should support callbacks shared by reference (#6687)
fix #6686
2022-09-26 22:18:22 -04:00
Evan You f79c423621 release: v3.2.39 2022-09-08 10:12:39 +08:00
Evan You 6aaf8efeff fix(runtime-core): avoid double firing when mounting inside a watcher callback
fix #6614
2022-09-08 09:59:51 +08:00
Evan You 5381abc057 fix(types): support TypeScript 4.8
fix #6554
2022-08-31 14:03:08 +08:00
edison 9875ecd762
fix(runtime-core): support extends template for runtime compiler (#6250)
fix #6249
2022-08-31 01:44:21 -04:00
Evan You 6624ead663 release: v3.2.38 2022-08-30 16:02:01 +08:00
Evan You 00036bb52c fix(slots): ensure different branches of dynamic slots have different keys
fix #6202
2022-08-30 15:55:09 +08:00
Yaroslav Sych 96eb745254
fix(hmr): fix HMR for nested non-SFC components (#4077) 2022-08-30 02:42:22 -04:00
Evan You 0739f8909a fix(custom-element): fix event listeners with capital letter event names on custom elements
close https://github.com/vuejs/docs/issues/1708
close https://github.com/vuejs/docs/pull/1890
2022-08-30 14:07:35 +08:00
Daniel Roe c3465c1e88
fix(runtime-core): only set cache for object keys (#6266) 2022-08-28 23:10:16 -04:00
Evan You 78c199d6db fix(watch): flush:pre watchers should not fire if state change causes
owner component to unmount

fix #2291
2022-08-15 19:00:55 +08:00
Carlos Rodrigues 8dcb6c7bbd
fix(types): fix on* props incorrect type for TS 4.7 (#6216)
fix #6052
2022-07-06 04:28:25 -04:00
Carlos Rodrigues 17c50ce18d
build(deps-dev): bump typescript to 4.7.4 (#6215) 2022-07-06 04:27:30 -04:00
Evan You bdffc143ef release: v3.2.37 2022-06-06 20:08:19 +08:00
Evan You 9734b31c31 fix(sfc): avoid auto name inference leading to unwanted recursion
fix #5965
fix #6027
fix #6029
2022-06-06 17:36:49 +08:00
liulinboyi 11e17a1a29 fix(runtime-core): hydrate Static vnode (#6015)
fix #6008
2022-06-06 16:45:24 +08:00
Evan You 3538f17a07 chore: avoid redundant isRef check 2022-05-30 07:43:18 +08:00
Evan You 439377b220 chore: remove duplicated test + add missing prop decl 2022-05-28 16:17:19 +08:00
Evan You 3cfe5f9fc8 build: include ssrUtils in server-renderer browser build 2022-05-25 13:52:54 +08:00
Thorsten Lünborg d4d3319c1b
fix(ssr): ensure app can be unmounted when created with createSSRApp() (#5992)
fix #5990
2022-05-24 08:30:40 -04:00
Evan You 160d5df34a release: v3.2.36 2022-05-23 10:04:12 +08:00
Evan You 2f07e3460b fix(compat): fix globalProperties pollution in v3 mode
fix #5699
2022-05-23 09:46:00 +08:00
Alex Van Liew 7fb57327b9
fix(compat): fix app-level asset registration affecting other local apps (#5979) 2022-05-22 21:41:39 -04:00
Alex Kozack b5462822d6
fix(sfc/types): allow use default factory for primitive types in `withDefaults` (#5939)
fix #5938
2022-05-22 20:28:39 -04:00
Evan You a0c577692f release: v3.2.35 2022-05-21 01:16:26 +08:00
Carlos Rodrigues 0c7fd13ea6
fix(types): fix typescript error when spreading `$props`(#5968) 2022-05-20 12:59:29 -04:00
Evan You 8071ef47b5 fix(types): restore DefineComponent argument order
This is necessary for compatibility w/ tsc-generated component types
using DefineComponent.

revert #5416
reopen #3796
fix #5967
2022-05-21 00:55:51 +08:00
Evan You 523f6aa363 chore: use existing method 2022-05-19 14:08:55 +08:00
Evan You 3991609087 release: v3.2.34 2022-05-19 12:42:34 +08:00
Evan You 31bdde0480 chore: fix lint 2022-05-19 12:39:48 +08:00
Evan You 939209c6b5 fix(ssr): fix hydration for slot with empty text node
fix #5728
2022-05-19 12:35:29 +08:00
Carlos Rodrigues 7c8f4578e9
fix(types): fix `defineComponent` inference to `Component` (#5949) 2022-05-18 19:34:35 -04:00
Cédric Exbrayat 3e2850fa6c
fix(types): export ComponentProvideOptions (#5947) 2022-05-18 19:32:20 -04:00
Evan You 595263c0e9 fix(ssr/teleport): support nested teleports in ssr
fix #5242
2022-05-18 18:13:08 +08:00
Evan You 84f0353511 test: hydration test case for component w/ teleport root 2022-05-18 17:27:53 +08:00
Evan You cdda49bbfb fix(runtime-core): adjust force diff of dev root fragments
fix #5946
2022-05-18 16:36:00 +08:00
Evan You b60cff052c fix(ssr): fix hydration error when teleport is used as component root
fix #4293
2022-05-18 12:18:12 +08:00
Bulat Aykaev 0841b9b524 fix(keep-alive): fix keep-alive rendering when placed in vnode branch
fix #4817
2022-05-18 10:48:58 +08:00
Evan You 7fd761e577 release: v3.2.34-beta.1 2022-05-17 12:53:51 +08:00
edison 2a9e9a4096
refactor(runtime-core): extract function `isReservedPrefix` (#3265)
* chore(runtime-core): extract function isReservedKey

* chore: improve code

Co-authored-by: Evan You <yyx990803@gmail.com>
2022-05-13 04:52:19 -04:00
edison 40794c80ca
refactor(runtime-core): extract type SetRootFn (#3209) 2022-05-13 04:48:20 -04:00
zs 0c07f12541
chore: warn when mounting different apps on the same host element (#5573) 2022-05-12 21:09:18 -04:00
edison 220f255fe9
fix(watch): fix watching multiple sources containing shallowRef (#5381)
fix #5371
2022-05-12 20:20:04 -04:00
小刘(liulinboyi) 71066b5afe
fix(v-model): fix case where .trim and .number modifiers are used together (#5842)
fix #5839
2022-05-12 19:52:16 -04:00
huangcheng a3881299e9
fix(runtime-core): handle NaN identity check in v-memo (#5852)
fix #5853
2022-05-12 19:49:51 -04:00
Evan You d36ca4d80e fix(runtime-core): clone root vnode before inheriting directives 2022-05-13 07:29:37 +08:00
Cédric Exbrayat 9ecee16f89
chore: add no-debugger eslint rule (#5906) 2022-05-12 19:10:00 -04:00
Evan You ba17792b72 fix(runtime-core): fix missed updates when passing vnode to <component :is>
fix #4903
2022-05-12 17:52:17 +08:00
Evan You 9309b044bd fix(ssr): fix hydration error for slot outlet inside transition
fix #3989
2022-05-12 15:06:32 +08:00
Evan You da49c863a2 fix(keep-alive): fix unmounting late-included components
fix #3648
based on #3650
2022-05-12 11:52:54 +08:00
Evan You 20ed16f68c fix(keep-alive): invoke initial activated hook for async components
revert #5459
fix #5095
fix #5651
2022-05-12 11:29:26 +08:00
Evan You 9d815d28ad chore: remove dbeugger [ci skip] 2022-05-12 10:38:40 +08:00
HeYunfei b5b103a736
chore(types): delete @ts-ignore or use @ts-expected-error instead (#3669)
Co-authored-by: heyunfei.i <heyunfei.i@bytedance.com>
2022-05-11 20:40:59 -04:00
Zardddddd60 eed3973459
chore(runtime-code): delete outdated test case (#3036) 2022-05-11 20:25:06 -04:00
edison f1d1cdbb69
fix(runtime-core): fix activated hook when using async component with KeepAlive (#5459)
fix #5095
fix #5651
2022-05-11 20:19:11 -04:00
Johnson Chu c901dca5ad
feat(types): avoid props JSDocs loss by `default` option (#5871) 2022-05-11 07:37:49 -04:00
Evan You 425310e8b6 fix(transition/v-show): ensure transition is in persisted mode when used with v-show
fix #4845
close #4852
2022-05-11 19:22:55 +08:00
Evan You 2bab639683 fix(runtime-core): fix directive inheritance on dev root fragment
fix #5523
2022-05-11 18:02:31 +08:00
Kael fec12d7dcc
fix(runtime-core): transition hooks can be arrays of functions (#5177) 2022-05-10 21:56:57 -04:00
edison cd659fc86f
fix(ssr): should de-optimize on vnode with PatchFlags.BAIL (#4818)
fix #4679
fix #5771
2022-05-10 06:35:34 -04:00
Thorsten Lünborg e4dffe900a
fix(runtime-core): ensure raw slot function is only normalized once (#5358)
fix: #5343
2022-05-10 04:41:54 -04:00
Evan You d52907f4eb fix(runtime-core): ensure consistent identity of $forceUpdate and $nextTick instance methods
fix #5556
2022-05-10 14:17:04 +08:00
那里好脏不可以 6042ab0f2f
chore: type [ci skip] 2022-05-09 22:51:51 -04:00
huangcheng 392ca5dd88
chore: fix eslint error (#5876) 2022-05-09 22:43:35 -04:00
Evan You 16a0b232d7 chore: remove unused import due to merge conflict resolve mistake 2022-05-10 09:58:28 +08:00
edison 2a44225446
chore(runtime-core): Remove duplicate variable assignments (#3700) 2022-05-09 21:42:41 -04:00
edison 762a9e99ce
chore(runtime-core): use `getGlobalThis` when installing HMR API (#3217) 2022-05-09 21:40:19 -04:00
qinxiaosen_ccc 292ce69439
chore: remove outdated type comment (#5103) 2022-05-06 06:44:28 -04:00
zhangenming b9484543db
refactor(reactivity): make some expression simpler (#5131) 2022-05-06 06:42:22 -04:00
Zclhlmgqzc 98b821d94a
fix(types): preserve and expose original options on defineComponent return type (#5416)
fix #3796
2022-05-06 05:44:05 -04:00
Evan You 67099fe202 fix(runtime-core): ensure consistent behavior between dev/prod on invalid v-for range
close #5867
2022-05-06 16:49:15 +08:00
Evan You 74d2a76af6 fix(watch): fix flush: pre watchers triggered synchronously in setup
fix #5721
2022-04-15 18:08:44 +08:00
Evan You 56879e6b23 release: v3.2.33 2022-04-14 18:14:37 +08:00
Evan You 62eba63172 fix(transition): handle transition for v-if branches with comment
fix #5675
2022-04-14 18:06:52 +08:00
edison 767d212d20
fix(transition): fix broken leave transition on dev root fragment (#5268) 2022-04-14 05:10:41 -04:00
Thorsten Lünborg 71c9536625
fix(runtime-core): ensure custom events are not emitted anymore after unmount. (#5679)
close #5674
2022-04-13 23:47:24 -04:00
Evan You f641c4b228 fix(runtime-core): fix use of non-existent-in-prod internal property in defineProperty trap
fix #5710
2022-04-14 10:00:53 +08:00
edison f4d2c9fc6a
fix(custom-elements): work with async component + slots (#4657)
close #4639
2022-04-13 05:58:29 -04:00
Thorsten Lünborg 1612971471
fix(compat): copy additional properties for functions bound via globalProperties (#4873)
close #4403
2022-04-13 05:53:07 -04:00
宋铄运 (Alan Song) c6eb3cccce
build: improve treeshakeability (#5682) 2022-04-13 05:39:02 -04:00
Thorsten Lünborg 053c65bc5e
dx(suspense): warn when using async setup when not inside a Suspense boundary (#5565)
close #3649
2022-04-13 05:36:43 -04:00
Evan You f4f5e80a19 release: v3.2.32 2022-04-12 16:07:43 +08:00
Thorsten Lünborg f44087e171
fix(runtime-core): ensure custom directive instance properly exposes properties on closed instances. (#5022)
fix #5018
2022-04-12 03:54:03 -04:00
lidlanca cee1eafb4d
fix(runtime-core/template-ref): named ref in v-for regression fix (#5118)
close #5116
close #5447
close #5525
2022-04-12 03:28:40 -04:00
Evan You 7efb9dba30 refactor: remove use of Object.assign
TS already transpiles spread to Object.assign with target:es2016
2022-04-12 15:22:11 +08:00
Yuchao d121a9bc7e
fix(runtime-core): Avoid mutating original options object in createApp (#4840)
fix #4398
2022-04-12 03:14:23 -04:00
Evan You 4311dddfa7 fix(transition): ensure flattened transition group children inherit parent keys
close #4718
close #5360
close #5392
2022-04-12 15:06:46 +08:00
Evan You 68bb8f2529 chore: remove debugger 2022-04-12 14:47:15 +08:00
iwusong 8eceabd14e
fix(runtime-core): fix event listener as dynamicProp is added erroneously to props (#5517)
fix #5520
2022-04-12 02:42:00 -04:00
Evan You b2b6b6ff62 chore: bump vite & esbuild 2022-04-12 14:29:49 +08:00
Guillaume Chau 1070f127a7 fix(devtools): perf: use high-resolution time 2022-03-09 14:30:24 +01:00
lidlanca 1574edd490
fix(runtime-core): allow spying on proxy methods regression (#5417)
fix #5415 (regression by #4216)
2022-02-13 20:40:12 -05:00
Evan You d56dec6b4a release: v3.2.31 2022-02-12 16:41:52 +08:00
Cédric Exbrayat 8457d8b980
fix(runtime-core): allow spying on proxy methods (#4216)
Since Jest v26.6.1, the mock method changed (see this commit 30e8020362)  to rely on `Object.defineProperty` in some cases.

This breaks spying on proxy's methods, because even if Jest is properly calling `Object.defineProperty`, the cached value in the `get` section of the proxy is never updated, and the spy is in fact never used.
This is easily reproducible as vue-next already uses a version of jest with these changes.

This is blocking projects (like vue-test-utils-next and vue-cli) to update to recent Jest versions.

This commit adds a `defineProperty` method to the proxy handler, that properly updates the defined value in the cache.
2022-02-12 03:35:05 -05:00
Anthony Fu 0342fae8ad
fix(ssr): always hydrate children for HMR (#5406)
fix #5405
2022-02-12 03:24:19 -05:00
Evan You 15adf251ab release: v3.2.30 2022-02-07 14:14:53 +08:00
Evan You ce34d9114e chore: remove v3.vuejs.org references 2022-02-07 13:13:26 +08:00
Evan You 60cf175d88 feat(ssr): support custom directive getSSRProps in optimized compilation
close #5304
2022-02-04 08:58:31 +08:00
Evan You 6b6889852f release: v3.2.29 2022-01-23 22:02:23 +08:00
Evan You 283df0ad68 release: v3.2.28 2022-01-21 16:15:13 +08:00
btea 63210fe41a
refactor: includes instead of indexOf (#5117) 2022-01-21 02:36:48 -05:00
Soha Jin 72130ac7b5
fix(compat): convertLegacyVModelProps should merge model option in mixins (#5251) 2022-01-21 02:02:02 -05:00
Yugang Cao 92e04a651f
chore: type improvements (#5264) 2022-01-21 01:56:20 -05:00
Thorsten Lünborg 97f6bd942f
fix(compat): ensure fallthrough *Native events are not dropped during props update (#5228) 2022-01-21 01:21:42 -05:00
Yugang Cao e603fd258c
chore: fix typo (#5261) [ci skip] 2022-01-21 01:18:34 -05:00
Bruno Perel e8022755ae
chore: fix typo (#5282) [ci skip] 2022-01-21 01:16:19 -05:00
Stanislav Lashmanov d0b9708620
fix(compat): simulate Vue 2.6.14 version in compat build (#5293)
Some Vue plugins that are actually compatible with the `vue-compat` won't work because of the version check. Right now `vue-compat` returns 3x version for the legacy method of checking Vue version via `Vue.version`. This PR instends to simulate Vue 2 version in those instances and instead return a 2x-compatible version: `2.6.14-compat:3.x.x`.
2022-01-21 01:15:35 -05:00
Thorsten Lünborg c35ec47d73
fix(runtime-core): ensure mergeProps skips undefined event handlers (#5299)
fix #5296
2022-01-21 01:13:29 -05:00
Evan You 2f91872e7b fix(ssr): only cache computed getters during render phase
fix #5300
2022-01-21 12:31:54 +08:00
Evan You ae4b0783d7 chore: update repo references 2022-01-18 16:43:59 +08:00
Evan You 9fda9411ec feat(reactivity): add isShallow api 2022-01-18 09:22:41 +08:00
Evan You 3adfc0fe94 release: v3.2.27 2022-01-16 22:08:18 +08:00
Evan You ed9eb62e59 perf: improve memory usage for static vnodes
Use the already mounted nodes as cache instead of separate caching via
template. This reduces memory usage by 30%+ in VitePress.
2022-01-16 21:10:26 +08:00
Evan You f4f0966b33 fix(ssr): make computed inactive during ssr, fix memory leak
fix #5208
2022-01-16 18:22:18 +08:00
Evan You 6cfd72e760 refactor: move type utils to shared 2022-01-16 15:47:00 +08:00
edison 2e3e183b4f
fix(KeepAlive): remove cached VNode properly (#5260)
fix #5258
2022-01-16 02:37:14 -05:00
Evan You ce49fdf999 refactor: more readable type names for watch cleanup function 2022-01-12 22:07:47 +08:00
Evan You 3007d5b4ca fix(types): KeepAlive match pattern should allow mixed array 2022-01-12 22:07:19 +08:00
yfmei dd70003cc3
chore: typo in comment [skip ci] (#5173) 2021-12-27 12:57:39 +01:00
Johnson Chu a570b38741
feat(types): simplify `ExtractPropTypes` to avoid props JSDocs being removed (#5166) 2021-12-25 02:52:22 -05:00
Evan You ccb6651b12 release: v3.2.26 2021-12-12 15:03:29 +08:00
Evan You 756534bde0 release: v3.2.25 2021-12-12 12:21:13 +08:00
Forzen FIsh 57a09331b2
chore: fix some typos (#5050) [ci skip] 2021-12-11 20:58:46 -05:00
Evan You 50f13278f9 chore: avoid api-extractor warnings 2021-12-12 00:14:25 +08:00
Evan You f4dcbbc7b9 chore: fix build 2021-12-11 23:48:32 +08:00
Evan You db729ce99e feat(reactivity-transform/types): restructure macro types + export types for all shorthand methods 2021-12-11 18:15:44 +08:00
Evan You 1928c9b537 refactor: move template ref setter into dedicated file 2021-12-11 10:09:21 +08:00
Evan You 41c18effea feat: support ref in v-for, remove compat deprecation warnings 2021-12-10 23:49:01 +08:00
Evan You a1167c57e5 fix(runtime-core): disallow recurse in vnode/directive beforeUpdate hooks 2021-12-10 17:17:15 +08:00
Evan You d955cfacd6 release: v3.2.24 2021-12-06 17:03:10 +08:00
edison 6d887aaf59
fix(runtime-core): handle initial undefined attrs (#5017)
fix #5016
2021-12-06 00:58:45 -05:00
Noel De Martin 34985fee6b
feat(types/script-setup): add generic type to defineExpose (#5035) 2021-12-05 23:25:35 -05:00
Illya Klymov ee97cf5a4d
fix(compat): maintain compatConfig option in legacy functional comp (#4974) 2021-12-05 23:20:27 -05:00
Evan You b6a8a451b8 release: v3.2.23 2021-11-26 14:33:46 +08:00
Che Guevara 4e1131e251
chore: improve BaseTransition (#4811) 2021-11-25 05:42:24 -05:00
Evan You aac0466cb8 fix(runtime-core): fix component public instance has check for accessed non-existent properties
close #4962
2021-11-25 18:15:06 +08:00
fishDog 3c449cd408
fix(types): fix propType<any> type inference (#4985)
fix #4983
2021-11-25 04:52:13 -05:00
Thorsten Lünborg f2d2d7b2d2
fix(types): scrip-setup+ts: ensure proper handling of `null` as default prop value. (#4979)
fix #4868
2021-11-25 04:33:29 -05:00
ygj6 820a143457
fix(runtime-core): handle error in async KeepAlive hooks (#4978) 2021-11-22 02:50:19 -05:00
Evan You 635d88aa9e release: v3.2.22 2021-11-15 11:45:05 +08:00
edison b4eb7e3866
fix(runtime-core): improve dedupe listeners when attr fallthrough (#4912)
fix #4859
2021-11-14 22:20:38 -05:00
Cathrine Vaage 04e5835196
fix(types/sfc): fix withDefaults type inference when using union types (#4925) 2021-11-14 22:09:00 -05:00
yuuang fa2237f1d8
fix(devtool): improve devtools late injection browser env detection (#4890) 2021-11-14 22:04:46 -05:00
yuchao f454dd62ab
chore: comments grammar (#4913) [ci skip] 2021-11-14 19:41:45 -05:00
Evan You fe853a5a40 release: v3.2.21 2021-11-02 14:35:14 +08:00
Evan You 6916d725a0 fix(devtools): avoid open handle in non-browser env
fix #4815
2021-11-02 11:45:41 +08:00
Che Guevara 6b32f0d976
fix(devtools): fix memory leak when devtools is not installed (#4833)
fix #4829
2021-11-01 23:26:40 -04:00
Captain 2c221fcd49
chore: typo in comment [skip ci] (#4875) 2021-10-29 10:38:37 +02:00
C.Y.Kun 5eb72630a5
fix(runtime-core): add `v-memo` to built-in directives check (#4787) 2021-10-18 20:22:44 -04:00
Evan You 20a361541c fix(types): fix ref unwrapping type inference for nested shallowReactive & shallowRef
fix #4771
2021-10-09 17:51:15 -04:00
Evan You 3c500e422f release: v3.2.20 2021-10-08 13:01:51 -04:00
Evan You 9e3d7731c7 fix(hmr): fix hmr for components with no active instance yet
fix #4757
2021-10-08 12:39:24 -04:00
Evan You f4639e0a36 fix(devtools): clear devtools buffer after timeout
fix #4738
2021-10-07 19:36:32 -04:00
Evan You 467e113b95
feat(compiler-sfc): `<script setup>` defineProps destructure transform (#4690) 2021-09-27 14:24:21 -04:00
Evan You c5c53846ed release: v3.2.19 2021-09-25 14:58:20 -04:00
Evan You 13bfa2edfe release: v3.2.18 2021-09-24 16:05:16 -04:00
Evan You f5076eb4b7 release: v3.2.17 2021-09-24 12:43:11 -04:00
Evan You 87c86e4cc2 refactor: ensure ssr branches are included in esm-bundler build 2021-09-23 15:02:19 -04:00
Evan You c1cf26d207 chore: improve feature flag warning 2021-09-23 14:04:52 -04:00
Evan You 1e5a0db4d4 refactor: use getGlobalThis when attachting hmr runtime 2021-09-23 11:53:00 -04:00
Evan You 114b856fd1 release: v3.2.16 2021-09-23 10:17:02 -04:00
Evan You 74a84ff546 release: v3.2.15 2021-09-23 09:48:59 -04:00
Evan You df4fcd94d8 release: v3.2.14 2021-09-22 18:36:57 -04:00
Evan You 2476eaad6e
fix(devtools): fix prod devtools detection + handle late devtools hook injection (#4653) 2021-09-22 09:07:08 -04:00
Evan You b9deb6e50e release: v3.2.13 2021-09-21 14:22:53 -04:00
skirtle 5aa4255808
fix(runtime-core): return the exposeProxy from mount (#4606) 2021-09-21 12:55:08 -04:00
Amour1688 140f089917
fix(types): incorrect type inference of array (#4578) 2021-09-21 12:41:10 -04:00
ygj6 58b1fa5ed1
fix(hydration): ensure hydrated event listeners have bound instance (#4529)
fix #4479
2021-09-21 12:39:21 -04:00
tryag f31a6c105d
chore: fix type in compatConfig.ts (#4604) [ci skip] 2021-09-21 12:35:42 -04:00
Yang Mingshan 11a2098a69
fix(watch): remove redundant parameter default value (#4565) 2021-09-21 12:32:12 -04:00
Evan You ebe00f66dd release: v3.2.12 2021-09-17 10:55:26 -04:00
Evan You 71f22061a6 chore: improve component resolution failure message 2021-09-17 10:01:04 -04:00
Evan You 141a5e188c fix(suspense): fix suspense slot inside deoptimized slot call
fix #4556
2021-09-16 12:14:33 -04:00
ygj6 14fcced281
fix(runtime-core): avoid script setup bindings overwriting reserved ctx properties (#4570) 2021-09-16 11:16:07 -04:00
Evan You a31303f835 build: generate more treeshaking friendly code 2021-09-16 10:56:34 -04:00
Evan You 781d2d4d58 release: v3.2.11 2021-09-08 18:58:13 -04:00
Evan You aa8908a854 fix(hmr): handle possible duplicate component definitions with same id
fixes regression in vitepress
2021-09-08 18:36:21 -04:00
Evan You 96b531bfa3 release: v3.2.10 2021-09-07 16:20:07 -04:00
fishDog 4178d5d7d9
fix(type): fix prop type infer (#4530)
fix #4525
2021-09-06 15:24:15 -04:00
Evan You 642710eded release: v3.2.9 2021-09-05 18:24:01 -04:00
Husam Ibrahim 4645a42b79
types(runtime-core): fix for multiple possible prop types including Date (#4518)
fix #4517
2021-09-05 18:16:44 -04:00
edison 5594643d7b
fix(compiler-sfc): fix script setup ref assignment codegen edge case (#4520)
fix #4514
2021-09-05 18:02:50 -04:00
Evan You 3ad9dc4880 release: v3.2.8 2021-09-02 14:46:30 -04:00
dependabot[bot] 305883a12f
build(deps-dev): bump typescript from 4.3.5 to 4.4.2 (#4482)
* build(deps-dev): bump typescript from 4.3.5 to 4.4.2

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.3.5 to 4.4.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.3.5...v4.4.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

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

* build(deps-dev): bump typescript from 4.3.5 to 4.4.2

* test: fix nodeOps types

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carlos Rodrigues <carlos@hypermob.co.uk>
Co-authored-by: Evan You <yyx990803@gmail.com>
2021-09-02 09:53:57 -04:00
Evan You b079996040 release: v3.2.7 2021-09-01 18:05:16 -04:00
X.L ef5b73159d
fix(suspense): misusing DOM Comment element constructor as a vnode type (#4451) 2021-09-01 16:57:56 -04:00
zhangenming a6e6253319
types(reactivity): adjust type exports (#4407) 2021-09-01 16:49:12 -04:00
laineus 741d3b36f2
fix(runtime-core): properly merge unmounted and beforeUnmount options (#4447) 2021-09-01 16:41:57 -04:00
ShroXd 6f555cf98c
refactor(runtime-core): improve the type of defineAsyncComponent (#4441) 2021-09-01 16:41:08 -04:00
Evan You 72d2b26e96 release: v3.2.6 2021-08-24 12:54:30 -04:00
Evan You a137d73e91 release: v3.2.5 2021-08-24 11:54:22 -04:00
Evan You b40845153c feat(experimental): expose ref macro types using separate d.ts file 2021-08-23 20:35:12 -04:00
Carlos Rodrigues afd49b3e88
types(PropType): Allow `undefined` function to be used on `PropType` (#4405) 2021-08-23 19:04:03 -04:00
HcySunYang ebd0baca98
fix(types): improve the type of createElementBlock (#4406)
fix #4391
2021-08-23 18:28:52 -04:00
Evan You 62f752552a refactor(compiler): extract shared ast transform utils
Also improve referenced identifier check using isReferenced from  @babel/types
2021-08-22 13:24:16 -04:00
Evan You 4adc5042f9 types: improve ref sugar $computed typing 2021-08-20 00:07:16 -04:00
Evan You ceace3a8cc release: v3.2.4 2021-08-17 12:26:50 -04:00
Evan You 644971ec06 fix(runtime-core): ensure consistent arguments for tempalte and render funtion slot usage
fix #4367
2021-08-17 11:15:53 -04:00
Evan You c1f564e1dc fix(runtime-core): fix child component double update on props change
fix #4365
2021-08-17 10:57:28 -04:00
Evan You 03abc2573c release: v3.2.3 2021-08-16 18:25:32 -04:00
webfansplz 0627765b36
chore(types): remove unnecessary type assertions (#4336) 2021-08-16 18:19:44 -04:00
5b3f1e8424
fix(runtime-core): patchChildren first in patchElement (#4313) 2021-08-16 15:46:27 -04:00
HcySunYang cd2d98499e
fix(runtime-core): vnode hooks should not be called on async wrapper (#4349)
fix #4346
2021-08-16 15:35:50 -04:00
Hazlank 6db15a27cf
refactor: merge bitwise flag checks (#4324) 2021-08-16 15:13:04 -04:00
Evan You 7ffa225aa3 release: v3.2.2 2021-08-11 11:40:25 -04:00
webfansplz 1ce34e25d5
fix(types): fix tsx emit-mapped handler return type (#4290)
fix #4288
2021-08-11 10:52:36 -04:00
edison 380608bd44
fix(types): fix forceUpdate type (#4302) 2021-08-11 10:46:18 -04:00
Evan You 00b76d3dc1 feat(sfc): support $shallowRef ref sugar 2021-08-11 10:19:58 -04:00
Evan You 2749c15170 release: v3.2.1 2021-08-09 16:29:53 -04:00
Evan You 5a7a43cc3d release: v3.2.0 2021-08-09 15:51:53 -04:00
lidlanca 6779bff537
feat(runtime-core): support dynamic / external array in v-memo (#4255) 2021-08-09 15:39:22 -04:00
WoodyJang f258f5d2c2
chore: delete useless props type (#4271) 2021-08-09 12:36:34 -04:00
Evan You 4781965cc2 release: v3.2.0-beta.8 2021-08-06 23:12:27 -04:00
edison a211e271ee
fix(v-memo): ensure track block when returning cached vnode (#4270)
fix #4253
2021-08-06 21:44:45 -04:00
edison 3b60358d0e
fix(v-memo): should work on v-for with constant expression (#4272)
fix #4246
2021-08-06 21:37:09 -04:00
Evan You c421fb91b2 feat(runtime-dom): support async component in defineCustomElement
close #4261
2021-08-06 19:15:55 -04:00
AlexandraCaragata d045055b47
fix(core): typing of key in VNodeProps (#4242)
close #4240
2021-08-06 11:11:26 -04:00
Evan You bf2589b1f0 refactor(compiler-sfc): use shallowRef for ref sugar destructure 2021-08-04 15:39:32 -04:00
Evan You 6aa871e565 fix(runtime-core): component effect scopes should be detached 2021-07-29 17:15:56 -04:00
Evan You b357009a82 release: v3.2.0-beta.7 2021-07-29 13:21:30 -04:00
Evan You 51ee84fc6a fix(suspense): fix dynamicChildren tracking when suspense root is a block itself
e.g. `<slot>` inside suspense

fix #4183, fix #4198
2021-07-28 16:49:34 -04:00
Evan You 204e194d2b release: v3.2.0-beta.6 2021-07-27 18:56:02 -04:00
Evan You ee4cbaeec9 fix(runtime-core): expose ssrUtils in esm-bundler build
this is necessary for worker environments where Vue needs to be
bundled (instead of using cjs build via Node.js require)

fix #4199
2021-07-27 17:59:13 -04:00
Evan You 561e210157 fix(inject): should auto unwrap injected refs
fix #4196
2021-07-27 17:52:37 -04:00
Evan You 8681c12c0c chore: rename method to make it more explicit it is dev only 2021-07-27 17:52:37 -04:00
Evan You 4b595a3ea1 release: v3.2.0-beta.5 2021-07-23 16:10:22 -04:00
Evan You 231dafd55a refactor: adjust custom element hmr, fix tests 2021-07-22 23:18:15 -04:00
Evan You bff4ea74c5 fix(hmr): fix custom elements hmr edge cases 2021-07-22 18:54:26 -04:00
Evan You db3f57a392 fix(hmr): fix hmr when global mixins are used
fix #4174
2021-07-22 10:53:59 -04:00
Evan You fe58bae412 release: v3.2.0-beta.4 2021-07-21 17:40:25 -04:00
Evan You 8560005601 fix(runtime-core): ensure setupContext.attrs reactivity when used in child slots
fix #4161
2021-07-21 17:31:00 -04:00
Evan You ff0c810300 fix(runtime-dom): defer setting value
fix #2325, fix #4024
2021-07-21 16:38:01 -04:00
王嘉欣 36ae23d27e
chore(types): remove unnecessary assertions (#4168) 2021-07-21 15:55:31 -04:00
Evan You d13774b881 perf: skip patch on same vnode 2021-07-21 14:04:02 -04:00
Evan You dd1439e711 build: reduce runtime build size 2021-07-21 11:11:40 -04:00
Evan You 9d5dd2da8c release: v3.2.0-beta.3 2021-07-20 17:47:03 -04:00
Evan You d87d059ac1 feat(runtime-core): watchSyncEffect 2021-07-20 16:49:54 -04:00
Evan You 33c2fbfdc8 fix(reactivity): revert computed scheduler change
fix #4157
2021-07-20 16:45:29 -04:00
Evan You bc7f9767f5 fix(watch): ensure watchers respect detached scope
fix #4158
2021-07-20 14:32:17 -04:00
Evan You 2bdee50a59 fix(runtime-core): fix v-bind class/style merging regression
fix #4155
2021-07-20 13:58:43 -04:00
Evan You 1034546a4c release: v3.2.0-beta.2 2021-07-19 19:36:55 -04:00
Evan You 47f488350c chore: run updated prettier 2021-07-19 18:24:18 -04:00
Amour1688 69344ff1ae
feat(types): map declared emits to onXXX props in inferred prop types (#3926) 2021-07-19 18:22:19 -04:00
ioslh 20b6619793
fix(ssr): update initial old value to watch callback in ssr usage (#4103) 2021-07-19 17:13:37 -04:00
Evan You d810a1a569 fix(scheduler): fix insertion for id-less job
fix #4148
2021-07-19 13:37:38 -04:00
Evan You bbf6ca9bca fix(runtime-core): fix null type in required + multi-type prop declarations
fix #4146 (in combination with #4147)
2021-07-19 11:20:28 -04:00
leno 84f6791e89
chore(runtime-core): use bit operations instead (#4142) 2021-07-19 10:32:14 -04:00
Evan You 327c8983fb types: typing for ref macros 2021-07-16 17:35:04 -04:00
Evan You 1bab53e717 chore: remove deprecated defineEmit & useContext APIs 2021-07-16 16:56:51 -04:00
Evan You d4c67dd253 release: v3.2.0-beta.1 2021-07-16 14:44:06 -04:00
Evan You fcc6a54ee7 chore: expose watchPostEffect 2021-07-16 14:30:49 -04:00
Evan You 2a310df753 fix(runtime-core): fix default shapeFlag for fragments 2021-07-16 14:30:49 -04:00
Evan You f596e008ef refactor: remove deprecated scopeId codegen
BREAKING CHANGE: Output of SFC using `<style scoped>` generated by 3.2+
will be incompatible w/ runtime <3.2.
2021-07-16 14:30:49 -04:00
Evan You bf4893c17c types: fix dts tests 2021-07-16 14:30:49 -04:00
Evan You 4e5897d2df test: fix renderSlot tests 2021-07-16 14:30:49 -04:00
Evan You 8610e1c9e2 feat(runtime-dom): defineCustomElement 2021-07-16 14:30:49 -04:00
Evan You 42ace9577d feat: watchPostEffect 2021-07-16 14:30:49 -04:00
Evan You 3b64508e3b feat: v-memo 2021-07-16 14:30:49 -04:00
Evan You 1fe2239270 refactor: sync value access for chained computed w/ scheduler 2021-07-16 14:30:49 -04:00
Evan You eae7c247af refactor: reduce bundle size 2021-07-16 14:30:49 -04:00
Bas van Meurs 6cf2377cd4 perf(reactivity): use bitwise dep markers to optimize re-tracking (#4017) 2021-07-16 14:30:49 -04:00
Evan You bde855e017 test: test for computed optimization 2021-07-16 14:30:49 -04:00
Evan You ebaac9a56d perf(reactivity): avoid triggering re-render if computed value did not change 2021-07-16 14:30:49 -04:00
Anthony Fu f5617fc3bb feat(reactivity): new effectScope API (#2195) 2021-07-16 14:30:49 -04:00
Evan You 87f69fd0bb perf(reactivity): improve reactive effect memory usage (#4001)
Based on #2345 , but with smaller API change

- Use class implementation for `ReactiveEffect`
- Switch internal creation of effects to use the class constructor
- Avoid options object allocation
- Avoid creating bound effect runner function (used in schedulers) when not necessary.
- Consumes ~17% less memory compared to last commit
- Introduces a very minor breaking change: the `scheduler` option passed to `effect` no longer receives the runner function.
2021-07-16 14:30:49 -04:00
HcySunYang ceff89905b perf: improve VNode creation performance with compiler hints (#3334) 2021-07-16 14:30:49 -04:00
Evan You 31abdc8ada release: v3.1.5 2021-07-16 12:38:01 -04:00
Evan You 8dbad83e7f fix(compat): fix v3 compiled fn detection in production 2021-07-16 10:17:38 -04:00
Evan You 68365b9b2b fix(runtime-core): enter optimized mode for component as root
fix #3943
2021-07-15 18:51:59 -04:00
b31712ecc5
test(teleport): fix meaningless test case (#2872) 2021-07-15 16:36:36 -04:00
Carlos Rodrigues 18911abb91
fix(type): infer parent as `this` on `nextTick` function (#3608)
fix #3599
2021-07-15 16:28:20 -04:00
Evan You c0db807844 refactor: simplify static content insertion 2021-07-15 13:16:19 -04:00
Evan You 2937530bef fix(v-model): handle mutations of v-model bound array/sets
fix #4096
2021-07-15 12:14:19 -04:00
Evan You 03e26845e2 fix(sfc): fix `<script setup>` async context preservation logic
fix #4050
2021-07-06 14:31:53 -04:00
Evan You d12206db8e test: add test case for proper effect teardown w/ withAsyncContext 2021-07-06 11:39:27 -04:00
Austin Keener f3e15f633e
fix(compat): fix props check for v-model compat warning (#4056) 2021-07-04 18:32:44 -04:00
Evan You 348c3b01e5 release: v3.1.4 2021-07-02 08:37:50 -04:00
Evan You 438754a0d1 fix(build): avoid using async/await syntax 2021-07-02 08:06:25 -04:00
Austin Keener 12cf9f4ea1
fix(runtime-core): fix instance accessed via $parent chain when using expose() (#4048) 2021-07-02 07:51:54 -04:00
wonderl17 735ada1507
fix(runtime-core): add useAttrs and useSlots export (#4053) 2021-07-02 07:51:09 -04:00
Evan You fc7b640041 release: v3.1.3 2021-07-01 19:28:06 -04:00
Evan You ba89ca9eca fix(runtime-dom): fix static node content caching edge cases
reverts fded1e8

fix #4023, #4031, #4037
2021-07-01 19:19:53 -04:00
Guillaume 347d90173b types: export CreateComponentPublicInstance 2021-07-02 00:10:07 +02:00
Evan You 33708e8bf4 fix(ssr): ensure behavior consistency between prod/dev when mounting SSR app to empty containers
close #4034
2021-07-01 17:22:03 -04:00
Evan You 34d4991dd5 fix(ssr): properly hydrate non-string value bindings
fix #4006
2021-07-01 17:11:23 -04:00
Evan You fded1e8dfa fix(runtime-core): fix mouting of detached static vnode
fix #4023
2021-07-01 16:11:50 -04:00
Johnson Chu 81e69b29ec
feat(types): support IDE renaming for props (#3656) 2021-07-01 13:48:23 -04:00
Evan You 9ee41e14d2 fix: prevent withAsyncContext currentInstance leak in edge cases 2021-06-29 14:22:18 -04:00
Evan You 0240e82a38 feat(sfc): auto restore current instance after await statements in async setup() 2021-06-29 09:24:12 -04:00
LordTerabyte d069796b8f
fix(runtime-core): add missing serverPrefetch hook error string (#4014) 2021-06-28 15:30:20 -04:00
Evan You ef5c41523f types: fix global helpers dts generation 2021-06-26 21:47:18 -04:00
Evan You fddef8bb74 chore: remove unnecessary casting 2021-06-26 21:35:25 -04:00
Evan You 004bd18cf7 feat(sfc/types): make `<script setup>` helper types available globally 2021-06-26 21:12:26 -04:00
Evan You 4c5844a9ca feat(sfc): withDefaults helper 2021-06-26 21:11:57 -04:00
Evan You 3ffc7be864 chore(sfc-playground): ignore duplicate logs 2021-06-25 19:31:47 -04:00
Evan You 1675b6d723 fix: defineExpose type definition and runtime warning 2021-06-25 16:18:21 -04:00
Evan You b0203a3092 feat(expose): always expose $ instance properties on child refs 2021-06-24 21:28:09 -04:00
Evan You ac853ff4ab test: fix script setup helpers tests 2021-06-23 10:31:32 -04:00
Evan You 0b8b576428 fix(sfc): allow variables that start with _ or $ in `<script setup>` 2021-06-23 10:13:23 -04:00
Evan You 63e9e2e9aa feat(sfc): useAttrs + useSlots
Deprecate useContext
2021-06-22 21:07:42 -04:00
Eduardo San Martin Morote a137da8a9f
feat(sfc): add `defineEmits` and deprecate `defineEmit` (#3725) 2021-06-22 15:02:56 -04:00
Evan You 6b6d566861 release: v3.1.2 2021-06-22 14:24:50 -04:00
Evan You 9b607fe409 fix(watch): fix watch option merging from mixins
fix #3966
2021-06-22 13:54:43 -04:00
Eduardo San Martin Morote ab6e927041
fix(Suspense): emit initial fallback and pending events (#3965)
Fix #3964
2021-06-21 17:03:07 -04:00
edison 43e2a72900
fix(Suspense): fallback should work with transition (#3968)
fix #3963
2021-06-21 16:58:43 -04:00
Evan You 4de5d24aa7 perf: improve static content insertion perf
Especially on multiple insertions of the same static node.

fix #3090
2021-06-21 14:38:29 -04:00
Evan You 056ef2a7d2 refactor: use markRaw instead of internal flag check 2021-06-11 18:46:31 -04:00
Eunjae Lee db1dc1c630
fix(runtime-core): bind default function of inject to instance (#3925)
fix #3923
2021-06-09 12:02:05 -04:00
LYlanfeng 011dee8644
fix(runtime-core): fix multiple .once event handlers on same component (#3904)
fix #3902
2021-06-08 09:52:45 -04:00
Guillaume 2b52d5d7c5 fix(devtools): expose root instance
related to https://github.com/vuejs/vue-devtools/issues/1376
2021-06-07 23:23:45 +02:00
Evan You ade9bd9daa release: v3.1.1 2021-06-07 16:26:54 -04:00
Evan You ac15df46c5 release: v3.1.0 2021-06-07 12:38:42 -04:00
Evan You ad844cf1e7 fix(compat): revert private properties on $options in comapt mode
fix #3883
2021-06-07 11:04:41 -04:00
Evan You 5bce2ae723 fix(runtime-core): fix fragment update inside de-opt slots
fix #3881
2021-06-04 18:03:40 -04:00
Evan You 71f7c25fbe release: v3.1.0-beta.7 2021-06-02 16:12:54 -04:00
Evan You 2b5a559055 chore: avoid compat disabled error for built-in components 2021-06-02 16:06:09 -04:00
Evan You 9acc9a1fa8 fix(watch): avoid traversing objects that are marked non-reactive
e.g. Vue public instances
2021-06-02 15:51:27 -04:00
Evan You 51d2be2038 perf: avoid deopt for props/emits normalization when global mixins are used 2021-06-02 15:22:52 -04:00
Evan You e2ca67b59a fix(runtime-core): align option merge behavior with Vue 2
fix #3566, #2791
2021-06-02 15:19:56 -04:00
Evan You 1e35a860b9 refactor: adjust component options merge cache strategy
BREAKING CHANGE: optionMergeStrategies functions no longer receive
the component instance as the 3rd argument. The argument was technically
internal in Vue 2 and only used for generating warnings, and should not
be needed in userland code. This removal enables much more efficient
caching of option merging.
2021-06-02 10:42:52 -04:00
Evan You 44996d1a0a fix(suspense): fix suspense regression for errored template component
fix #3857
2021-05-31 17:19:03 -04:00
Evan You c7efb967ca fix(compat): fix deep data merge with extended constructor
fix #3852
2021-05-31 16:48:18 -04:00
Evan You aa96a0e88a release: v3.1.0-beta.6 2021-05-28 16:58:54 -04:00
Evan You 071986a2c6 fix(transition): fix higher order transition components with merged listeners
fix #3227
2021-05-28 15:42:08 -04:00
edison d6607c9864
fix(runtime-core): fix resolving inheritAttrs from mixins (#3742)
fix #3741
2021-05-27 21:53:41 -04:00
Evan You 1ff06376ff chore: type fix 2021-05-27 20:58:27 -04:00
Evan You 03a7a73148 fix(reactivity): ensure computed always expose value
fix #3099

Also changes the original fix for #910 by moving the fix from
reactivity to the scheduler
2021-05-27 20:53:21 -04:00
Evan You 32e21333dd fix(runtime-core): stricter compat root mount check 2021-05-27 20:47:46 -04:00
HcySunYang a641eb201f
fix(runtime-core): fix cases of reused children arrays in render functions (#3670)
fix #3666
2021-05-27 17:06:55 -04:00
HcySunYang ff50e8d78c
fix(runtime-core): should disable tracking inside directive lifecycle hooks (#3699) 2021-05-27 16:53:19 -04:00
Evan You 9f24195d2c fix(suspense): fix suspense patching in optimized mode
fix #3828
2021-05-27 16:32:31 -04:00
Evan You f0eb1978b2 release: v3.1.0-beta.5 2021-05-26 16:06:51 -04:00
Evan You b46a4dccf6 fix(ssr): handle hydrated async component unmounted before resolve
fix #3787
2021-05-26 15:26:18 -04:00
Evan You b57e995edd fix(scheduler): handle preFlush cb queued inside postFlush cb
fix #3806
2021-05-26 14:21:49 -04:00
HcySunYang e8ddf86080
fix(runtime-core): properly check forwarded slots type (#3781)
fix #3779
2021-05-26 11:52:03 -04:00
edison 4e3f82f683
fix(runtime-core/teleport): ensure the nested teleport can be unmounted correctly (#3629)
fix #3623
2021-05-26 10:51:55 -04:00
HcySunYang 201060717d
fix(runtime-core): should not track dynamic children when the user calls a compiled slot inside template expression (#3554)
fix #3548, partial fix for #3569
2021-05-25 13:33:41 -04:00
Evan You 1526f94edf fix(watch): should not leak this context to setup watch getters
ref #3603
2021-05-25 11:10:11 -04:00
HcySunYang 9e3708ca75
fix(keep-alive): include/exclude should work with async component (#3531)
fix #3529
2021-05-25 10:50:00 -04:00
Evan You f1f52300e6 release: v3.1.0-beta.4 2021-05-24 19:16:44 -04:00
Evan You b76c453507 refactor: adjust absent prop casting logic 2021-05-24 19:09:18 -04:00
Evan You 0255be2f4b fix(runtime-core): avoid double-setting props when casting
fix #3371, close #3384
2021-05-24 18:48:33 -04:00
HcySunYang 4ce0df6ef1
fix(runtime-core): avoid the proxy object polluting the slots of the internal instance (#3698)
fix #3695
2021-05-24 18:17:37 -04:00
Guillaume Chau f7c54caeb1 feat(devtools): performance events 2021-05-19 20:48:35 +02:00
Guillaume Chau 1355ee27a6 fix(devtools): send update to component owning the slot
https://github.com/vuejs/vue-devtools/issues/1404
2021-05-19 18:19:28 +02:00
HcySunYang 4f17be7b1c
fix(compat): avoid accidentally delete the modelValue prop (#3772) 2021-05-17 14:07:53 -04:00
Carlos Rodrigues 92e7330385
types(props): Support `undefined` as default (#3783) 2021-05-17 14:04:31 -04:00
GU Yiling 9b160b9405
fix(types): declared prop keys should always exist in `props` argument (#3726) 2021-05-12 17:47:31 -04:00
Cédric Exbrayat f01aadf2a1
fix(compat): enum coercion warning (#3755) 2021-05-12 17:47:00 -04:00
Evan You b663aa8a81 release: v3.1.0-beta.3 2021-05-12 17:37:04 -04:00
Stanislav Lashmanov 2bfb8b574d
fix(compat): correctly merge lifecycle hooks when using Vue.extend (#3762)
fix #3761
2021-05-12 17:13:44 -04:00
Cédric Exbrayat 808ccf0963
chore: fix typo in compat warning 2021-05-11 10:41:51 +08:00
Evan You 99a5ccf6b2 release: v3.1.0-beta.2 2021-05-08 16:59:12 -04:00
Evan You 94e69fd389 fix(compat): handle and warn config.optionMergeStrategies 2021-05-08 16:48:59 -04:00
Evan You ed6c5fe903 release: v3.1.0-beta.1 2021-05-08 16:24:34 -04:00
HcySunYang c8d96837b8
fix(hydration): fix update before async component is hydrated (#3563)
fix #3560
2021-05-07 18:42:58 -04:00
HcySunYang 43f78151bf
fix(Teleport): avoid changing the reference of vnode.dynamicChildren (#3642)
fix #3641
2021-05-07 18:04:36 -04:00
AbaAba~ e7300eb479
fix(runtime-core): watching multiple sources: computed (#3066)
fix #3068
2021-05-07 18:03:35 -04:00
Guillaume Chau 349eb0f0ad
feat: onServerPrefetch (#3070)
Support equivalent of `serverPrefetch` option via Composition API.
2021-05-07 12:00:52 -04:00
Evan You b10db86711 wip: make legacy global apis available on app instance as well 2021-05-06 17:15:11 -04:00
Evan You fa48722441 wip: fix v3 render fn detection regex 2021-05-06 16:18:00 -04:00
Evan You 5a0bab0bd2 wip: defineReactive on instance with keys starting with $ 2021-05-06 16:17:32 -04:00
Evan You 37ee2959fc wip: allow compatConfig mode to be a function 2021-05-06 10:57:34 -04:00
Guillaume Chau 9db3cbbfc1 fix(hmr): don't remove __file key from component type 2021-05-06 14:21:54 +02:00
Evan You f2a5a3ee55 wip: make singleton mutations affect all app instances 2021-05-05 17:56:09 -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 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 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
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 3ea68691e2 wip: inline-template compat 2021-04-17 23:19:40 -04:00
Evan You 810fe4d583 wip: default mode for compat build 2021-04-17 16:05:27 -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 115372dd5b wip: refactor deprecations into a single file 2021-04-12 18:47:50 -04: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 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 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
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
edison 2e50acfbb8
perf(runtime-core): optimize the performance of getTypeIndex (#3206) 2021-03-30 10:53:14 -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
Kael 4f26835dac
fix(types/tsx): make JSX.Element extend VNode (#3171) 2021-03-29 17:38: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 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
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
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 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
Evan You 7cf143dd4f chore: fix test 2021-03-25 16:06:02 -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
07akioni 3755e60c52
fix(types): union function prop (#3119)
fix #3357
2021-03-25 11:27:54 -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 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
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
HcySunYang e8e9b00f81
fix(KeepAlive): adapt keepalive for ssr (#3259)
fix #3255
2021-03-22 16:49:07 -04: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 aea88c3280 refactor: fix implementation of SFC :slotted id handling
fix #2892
2021-03-05 18:28:12 -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
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
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 5a7a1b8293 fix(hmr): deep clone reused hoisted trees during dev
fix vitejs/vite#2022
2021-02-15 15:09:27 -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
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
Yang Mingshan 01fdbf4b06
types: use non-null assertion instead of explicit type cast (#2974) 2021-02-05 19:55:23 +01:00
HcySunYang 347a8798a4
fix(runtime-core): check the DEV_ROOT_FRAGMENT flag correctly in the dev environment (#2750) 2021-02-05 19:54:59 +01:00
HcySunYang 2587f36fe3
fix(runtime-core): component methods should override global properties in DEV (#3074) 2021-02-05 19:52:40 +01:00
Yang Mingshan e109f7b898
chore: remove overloads numbers in comments (#2976) 2021-02-04 14:34:40 +08:00
edison ffd5288545
feat(runtime-core): props type support `BigInt` (#2891) 2021-02-03 19:25:45 +01:00
hiroki 18b0c9a011
docs(type): remove unmount parameters (#2601) 2021-02-03 19:09:59 +01:00
Thorsten Lünborg 60e05eff23
fix(runtime-core): ensure app instance can be garbage collected after unmount (close #2907) (#2909)
close #2907

Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-03 19:09:20 +01:00
Evan You 310cb8cfab chore: fix useSSRContext casing in warning message 2021-01-29 15:03:52 -05:00
Guillaume Chau 4fecb27f86 fix(devtools): send instance to devtools when it's mounted instead of created 2021-01-29 16:48:37 +01:00
Godpu f2228a87d4
chore: typo (#2953) 2021-01-06 10:46:51 +01:00
Bruno P. Kinoshita ee266af42a
chore: typo "depdendency" (#2920) 2020-12-31 11:15:57 +01:00
Evan You 5a5d037dbb release: v3.0.5 2020-12-30 15:50:28 -05:00
Guillaume Chau 3626ff07fe feat(devtools): send instance 2020-12-18 18:24:01 +01:00
Bas van Meurs 3867bb4c14
fix(runtime-core): component mount anchor memory leak (#2459)
fix #2458
2020-12-04 18:03:10 -05:00
edison 82bf7ebf36
refactor(runtime-core): extract common getComponentName function (#2454) 2020-12-04 17:03:03 -05:00
Zcating d2d27b2e66
types(watch): better typing when watching multiple sources (#2425) 2020-12-04 16:32:26 -05:00
Carlos Rodrigues 6684c6334d
types: mixin and extends typing on data and setup (#2404)
close #2350
2020-12-04 16:06:34 -05:00
edison c59897c7b0
fix(runtime-core): skip patchBlockChildren if n1.dynamicChildren is null (#2717)
fix #2715 

The bug was introduced by #2485 where a compiled slot may result in a bailed Fragment
which then gets its dynamicChildren set to `null` by the renderer.
2020-12-03 12:17:04 -05:00
Evan You d067fb2dbb release: v3.0.4 2020-12-02 17:23:43 -05:00
Evan You 3523f743e5 build(deps-dev): handle @types/jest bump 2020-12-02 17:05:30 -05:00
Evan You 4307610c35 chore: fix setRef usage 2020-11-30 20:07:06 -05:00
Evan You 64d4681e4b fix(async-component): forward refs on async component wrapper
fix #2671
2020-11-30 18:59:14 -05:00
Yasser Lahbibi cd92836223
fix(teleport): Teleport into SVG elements (#2648)
fix #2652
2020-11-30 17:30:41 -05:00
hiroki 7a1a782642
fix(provide): support symbols in applyOptions (#2616)
fix #2615
2020-11-30 16:36:02 -05:00
Evan You bf16a57fc3 fix(runtime-core): handle static node move in production 2020-11-30 14:42:02 -05:00
underfin 2a9ba0c8e9
fix(runtime-core): remove static node in production mode (#2556)
fix #2553
2020-11-30 14:07:43 -05:00
Thorsten Lünborg 421205d0ad
fix(runtime-core): ensure keep-alive deep-watches include/explude props (#2551)
fix #2550
2020-11-30 14:04:45 -05:00
Evan You 67d1aac6ae feat(sfc): allow sfcs to recursively self-reference in template via name inferred from filename
e.g. A file named `FooBar.vue` can refer to itself as `<FooBar/>`. This gets rid of the need for the `name` option.
2020-11-30 12:30:51 -05:00
Evan You 3bc2914e32 fix(attr-fallthrough): ensure consistent attr fallthrough for root fragments with comments
fix #2549
2020-11-27 18:04:26 -05:00
shadowings-zy 3532b2b021
fix(runtime-core): fix emit listener check on kebab-case events (#2542)
fix #2540
2020-11-27 15:24:29 -05:00
Evan You 2ab8c41a1a fix(slots): dynamically named slots should be keyed by name
fix #2535
2020-11-27 14:35:46 -05:00
HcySunYang 0ff2a4f1c1
fix(runtime-core): should pause tracking when initializing legacy options (#2524)
fix #2521
2020-11-27 14:01:01 -05:00
Evan You a5d6f8091e fix(compiler-ssr): generate correct children for transition-group
fix #2510
2020-11-27 12:22:14 -05:00
Evan You 46d80f4d58 fix: allow hmr in all builds
close #2571
2020-11-27 10:36:09 -05:00
Evan You 53f4885d9e fix(runtime-core): skip functional components in public $parent chain traversal
fix #2437
2020-11-27 10:10:25 -05:00
Thorsten Lünborg 735af1c7b7
fix(runtime-core): ensure watchers are always registered to correct instance owner (#2495)
close: #2381
2020-11-27 09:31:50 -05:00
HcySunYang ce4915d8be
fix(slots): should render fallback content when slot content contains no valid nodes (#2485)
fix #2347, fix #2461
2020-11-26 11:35:45 -05:00
Evan You cf7f1dbc9b fix(suspense): fix nested async child toggle inside already resovled suspense
fix #2215
2020-11-26 11:06:55 -05:00
Evan You 426a6c996e test: tests for script setup helpers 2020-11-26 10:01:36 -05:00
Evan You 73cdb9d420 fix(script-setup): ensure useContext() return valid context 2020-11-26 09:25:56 -05:00
Evan You bd6e211287 release: v3.0.3 2020-11-25 11:16:21 -05:00
Evan You bdc66c7ea4 wip: revert helpers to compiler-only 2020-11-24 19:04:21 -05:00
Evan You 47d73c23e1 wip: defineOptions -> defineProps + defineEmit + useContext 2020-11-24 19:04:21 -05:00
Evan You ac80ea2c19 chore: warning for outdated hmr api usage 2020-11-21 16:06:50 -05:00
Evan You 8ac2241b22 wip: more consistent compiler-sfc usage + inline mode for ssr 2020-11-20 14:23:09 -05:00
Evan You b79a06c605 wip: optimize expose 2020-11-16 11:28:37 -05:00
Evan You 468e0d95cf chore: Merge branch 'feat/expose' into script-setup-2 2020-11-14 12:50:32 -05:00
Evan You 0e59770b92 feat(runtime-core): explicit expose API 2020-11-14 12:49:35 -05:00
Evan You 1ff5960971 wip: useOptions -> defineOptions 2020-11-13 17:38:28 -05:00
Evan You 6fc8d5d0ba wip: type inference for useOptions 2020-11-13 00:01:44 -05:00
Evan You 001f8ce993 wip: defineContext -> useOptions 2020-11-12 22:51:40 -05:00
Evan You 6a9b56ca60 wip: defineContext() 2020-11-12 14:10:39 -05:00
Evan You dc098c7f81 wip: defineContext 2020-11-11 19:40:27 -05:00
underfin af9560455d
fix(runtime-core): ensure scheduler queue is always non-null (#2567)
fix https://github.com/vitejs/vite/issues/1021
2020-11-09 09:19:32 -05:00
Evan You 9c23ddf9c5 fix(hmr): fix updates for imported but not yet rendered components 2020-10-26 17:52:27 -04:00
Evan You 51e43e0799 fix(runtime-core): components with static props and slots should not be force updated 2020-10-22 17:50:05 -04:00
Evan You f2d03a59c6 release: v3.0.2 2020-10-20 16:24:12 -04:00
Carlos Rodrigues 1f2a652a9d
fix(types): h support for resolveComponent (#2402)
close #2357
2020-10-20 15:56:29 -04:00
HcySunYang fff62e2ee8
fix(runtime-core): non-stable Fragment should always unmount its children (#2445)
fix #2444
2020-10-20 14:59:55 -04:00
Evan You 0227b4a697 fix(suspense): fix suspense nested child updates in template mode
fix #2214
2020-10-20 12:28:02 -04:00
Hunter 128ec460ec
fix(v-model): built in modifiers support on component (#2348)
close #2326
2020-10-20 09:59:27 -04:00
Evan You 4bbb2b2ee6 fix(runtime-core): fix component .once listener logic 2020-10-20 09:50:18 -04:00
ShaoDamao 288c764e52
chore(runtime-core): fix typo (#2442)
Co-authored-by: shaoziwei <ziwei.shao@cloudchef.io>
2020-10-20 08:51:05 +02:00
Hunter 111d04f119
fix(runtime-core): prevent self-injection (#2424)
fix #2400
2020-10-19 20:45:48 -04:00
被雨水过滤的空气 edd49dcab4
fix(runtime-core): avoid mutating EMPTY_ARR when setting dev root (#2419)
also freeze EMPTY_ARR in dev

fix #2413
2020-10-19 18:08:54 -04:00
Carlos Rodrigues d9ad45ad6c
types(defineComponent): fix optional Boolean prop types (#2401)
fix #2338
2020-10-19 17:25:55 -04:00
ᴜɴвʏтᴇ 052a621762
feat(compile-core): handle falsy dynamic args for v-on and v-bind (#2393)
fix #2388
2020-10-19 17:15:53 -04:00
龙腾道 ba881f9190
fix(runtime-core): avoid object prototype keys in property access cache (#2416) 2020-10-19 17:11:28 -04:00