Commit Graph

1773 Commits

Author SHA1 Message Date
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