Commit Graph

2290 Commits

Author SHA1 Message Date
Daniel Roe 8f311c6f82
fix(runtime-core): swap client/server debug labels (#9089) 2023-09-05 15:21:20 +08:00
丶远方 2ffe3d5b3e
refactor: use symbol for private properties (#8681) 2023-08-22 16:57:15 +08:00
三咲智子 Kevin Deng 623ba514ec
chore: format code 2023-08-11 17:30:04 +08:00
Evan You 37a14a5dae Revert "fix(types): propagate type parameter constraints for TypeScript 4.8 (#6351)"
This reverts commit 516fabb725.
2023-07-12 11:38:59 +08:00
zqran f07cb18fed
fix(types): correct withDefaults return type for boolean prop with undefined default value (#8602) 2023-07-11 18:35:22 +08:00
丶远方 6a22b1f6c2
fix(types): ensure nextTick return type reflect correct Promise value (#8406) 2023-07-11 17:56:02 +08:00
Anthony Fu 438027cf9e
perf: mark `defineComponent` as side-effects-free (#8512) 2023-07-11 17:52:43 +08:00
白雾三语 140a89b833
fix(teleport): handle target change while disabled (#7837)
close #7835
2023-07-11 17:36:26 +08:00
丶远方 3decc57d0c
chore: remove unnecessary type assertions (#8386) 2023-07-10 18:18:53 +08:00
Daniel Rosenwasser 516fabb725
fix(types): propagate type parameter constraints for TypeScript 4.8 (#6351)
* fix(types): propagate type parameter constraints for TypeScript 4.8

* fix: add more constraints

---------

Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-07-09 13:04:08 +08:00
webfansplz 57afa2236b
chore: fix typo (#8732) [ci skip] 2023-07-09 13:03:30 +08:00
三咲智子 Kevin Deng 7cdd13bd1e
chore: fix typo 2023-06-11 11:29:10 +08:00
Lioness100 6277cb994a
chore: fix typo (#7693) 2023-06-10 17:17:41 +08:00
Evan You a95e612b25 chore: rename globals allow list
close #8416
2023-05-26 11:07:13 -05:00
Simon Johansson 020851e57d
fix(ssr): reset current instance if setting up options component errors (#7743)
close #7733
2023-05-19 09:09:21 +08:00
Phentom f0691e4581
chore: typo (#8345) [ci skip] 2023-05-19 07:59:09 +08:00
丶远方 b01fc7ea84
chore: remove unnecessary imports (#8262) 2023-05-19 07:54:12 +08:00
丶远方 3798c5480b
chore: remove unnecessary type assertions (#8311) 2023-05-19 07:49:28 +08:00
Evan You 0e8bbe873e release: v3.3.4 2023-05-18 16:31:03 +08:00
Evan You fecd5c4044 release: v3.3.3 2023-05-18 13:10:52 +08:00
Carlos Rodrigues 216f26995b
fix(types): support generic usage with withDefaults + defineProps (#8335)
fix #8310
fix #8331
fix #8325
2023-05-17 09:25:48 +08:00
Evan You a374d7e6ed release: v3.3.2 2023-05-12 13:25:05 +01:00
Cédric Exbrayat ab9256a4bb
chore: fix typos in defineOptions (#8277) 2023-05-11 19:34:27 +08:00
Evan You 6e1966a92f release: v3.3.1 2023-05-11 09:00:14 +01:00
白雾三语 a3f5485785 fix(suspense): handle nested sync suspense for hydration
ref e1475129fc
2023-05-11 08:47:01 +01:00
Evan You 483a4e7e3b release: v3.3.0 2023-05-11 08:44:38 +01:00
Evan You 847658b7a2 release: v3.3.0-beta.5 2023-05-08 16:40:41 +08:00
Evan You e1475129fc fix(suspense): fix nested suspensible suspense with no asyn deps
close #8206
2023-05-08 16:37:46 +08:00
Evan You c2172f3a0e fix(build): retain defineComponent() treeshakability in Rollup
close #8236
2023-05-08 12:12:15 +08:00
Evan You b2be75bad4 fix(runtime-core): ensure defineComponent name in extraOptions takes higher priority 2023-05-08 12:06:49 +08:00
Evan You 1279b17300 fix(types): remove short syntax support in defineSlots()
ref: https://github.com/vuejs/language-tools/issues/2758
2023-05-08 11:53:49 +08:00
Evan You cc09cc7e28 release: v3.3.0-beta.4 2023-05-05 17:15:14 +08:00
Johnson Chu 3cb4dc9e55
feat(types): add slots types for built-in components (#6033) 2023-05-05 17:12:51 +08:00
丶远方 1b1242f4d1
fix(runtime-core): handle template ref with number values (#8233)
close #8230
2023-05-05 16:00:01 +08:00
Evan You 038cd830d5 fix(types): retain compatibility for provide() usage with explicit type parameter 2023-05-02 21:35:28 +08:00
Evan You bff63c5498 feat(types): provide ExtractPublicPropTypes utility type
ref #5272
close #8168
2023-05-02 11:06:32 +08:00
Evan You 5d4c3c60a8 release: v3.3.0-beta.3 2023-05-01 12:28:29 +08:00
Evan You c117d9c257 fix(hmr): keep slots proxy mutable for hmr
close #8188
2023-05-01 12:21:10 +08:00
Evan You de87e6e405 fix(types): fix provide type checking for ref value
fix #8201
2023-05-01 11:27:05 +08:00
Evan You a778034a3e release: v3.3.0-beta.2 2023-04-25 16:41:04 +08:00
Evan You 1447596bf4 release: v3.3.0-beta.1 2023-04-21 16:26:10 +08:00
Evan You 526fa3b2cc feat(deprecation): unwrap injected refs in Options API by default, deprecate app.config.unwrapInjectedRefs 2023-04-21 15:54:03 +08:00
Anthony Fu cb37d0b9ff
feat(suspense): introduce suspensible option for `<Suspense>` (#6736)
close #5513
2023-04-21 14:43:30 +08:00
Evan You 5cdaac2590 release: v3.3.0-alpha.13 2023-04-20 21:13:34 +08:00
Evan You f17a82c769 fix(hmr): always traverse static children in dev
fix #7921
close #8100
2023-04-20 14:31:54 +08:00
Eduardo San Martin Morote 5510ce385a
feat: hasInjectionContext() for libraries (#8111) 2023-04-20 10:12:18 +08:00
白雾三语 2f9f6eceb9
chore: delete outdated content in readme (#8093) [ci skip]
close #8084
2023-04-20 10:11:22 +08:00
Evan You 94fa67a4f7 fix(hmr): force update cached slots during HMR
close #7155
close #7158
2023-04-20 10:06:06 +08:00
Evan You 72be89423d release: v3.3.0-alpha.12 2023-04-18 22:18:56 +08:00
Evan You 57f0fbe76a release: v3.3.0-alpha.11 2023-04-17 21:17:17 +08:00
Evan You 33adc2a17a release: v3.3.0-alpha.10 2023-04-17 18:15:17 +08:00
Evan You 4b5b384485 fix(hmr): invalidate cached props/emits options on hmr 2023-04-17 18:05:17 +08:00
Himself65 c94ef02421
fix(runtime-core): properly merge props and emits options from mixins (#8052)
close #7989
2023-04-10 15:06:21 +08:00
Evan You 681ac7c896 release: v3.3.0-alpha.9 2023-04-08 13:33:46 +08:00
三咲智子 Kevin Deng 14f3d747a3
feat(sfc): introduce `defineModel` macro and `useModel` helper (#8018) 2023-04-08 12:13:05 +08:00
Evan You af563bf428 fix(types): more public type argument order fix 2023-04-06 11:12:49 +08:00
Evan You bdf557f6f2 fix(types): retain type parameters order for public types 2023-04-05 22:30:50 +08:00
Evan You 91a931ae87 fix(types): improve defineProps return type with generic arguments 2023-04-05 17:21:31 +08:00
Eduardo San Martin Morote 869f3fb93e
feat(app): app.runWithContext() (#7451) 2023-04-05 15:18:13 +08:00
Evan You 036914c10b release: v3.3.0-alpha.8 2023-04-04 18:23:06 +08:00
6003ef74c7
chore: remove duplicate test (#8003) 2023-04-04 18:20:56 +08:00
Evan You 9a09e47667 release: v3.3.0-alpha.7 2023-04-03 18:19:11 +08:00
三咲智子 Kevin Deng 5a2f5d59cf
feat(types/slots): support slot presence / props type checks via `defineSlots` macro and `slots` option (#7982) 2023-04-03 16:49:16 +08:00
Evan You 59e828448e
feat(reactivity): improve support of getter usage in reactivity APIs (#7997) 2023-04-02 10:17:51 +08:00
Evan You dfb21a5363 chore: add docs links for sfc macros 2023-04-02 10:02:33 +08:00
Evan You 4af5d1b075 feat(sfc): revert withDefaults() deprecation
In some cases, the user still needs access to the full props object,
in such cases withDefaults() is still needed.
2023-03-31 08:53:15 +08:00
Evan You 8876dccf42
feat(sfc): support more ergnomic defineEmits type syntax (#7992) 2023-03-30 19:24:32 +08:00
Evan You 8ac0620c1b release: v3.3.0-alpha.6 2023-03-30 18:22:42 +08:00
Evan You ba9c2ae247
feat(compiler-sfc): enable reactive props destructure by default and deprecate withDefaults() (#7986) 2023-03-30 11:58:16 +08:00
Evan You e10a89e608 fix(compiler-sfc): fix function default value handling w/ props destructure 2023-03-29 22:21:27 +08:00
三咲智子 Kevin Deng 63ad77f6f6
feat(runtime-core): add skipCheck for prop (#7548) 2023-03-28 22:29:54 +08:00
三咲智子 Kevin Deng 93f77292c9
fix(compiler-sfc): disallow `expose` property in `defineOptions` (#7967) 2023-03-28 17:32:37 +08:00
三咲智子 Kevin Deng bcf5841dde
feat(compiler-sfc): add defineOptions macro (#5738) 2023-03-28 10:43:51 +08:00
Evan You d77557c403
feat(types): `defineComponent()` with generics support (#7963)
BREAKING CHANGE: The type of `defineComponent()` when passing in a function has changed. This overload signature is rarely used in practice and the breakage will be minimal, so repurposing it to something more useful should be worth it.

close #3102
2023-03-27 18:28:43 +08:00
Evan You 27e1e38641 release: v3.3.0-alpha.5 2023-03-26 16:52:46 +08:00
Evan You c288c7b0bd fix(types): ensure defineProps with generics return correct types 2023-03-26 15:58:04 +08:00
Evan You 4c9bfd2b99 feat(dx): improve readability of displayed types for props 2023-03-24 15:06:43 +08:00
Evan You 58e5c51149 build: upgrade to TypeScript 5.x 2023-03-23 17:11:35 +08:00
Evan You c02d8d097d chore: remove warnings due to potential false-positives 2023-02-21 22:43:45 +08:00
Evan You 8d2d5bf48a fix(runtime-core): support `getCurrentInstance` across mutiple builds of Vue 2023-02-21 21:59:41 +08:00
Evan You 34ad609bd7 refactor(runtime-core): use Symbol.for for runtime Symbols 2023-02-21 17:42:06 +08:00
Evan You 78b86150b8 release: v3.3.0-alpha.4 2023-02-06 14:10:56 +08:00
Evan You 097f6beca2 release: v3.3.0-alpha.3 2023-02-06 10:27:25 +08:00
Evan You d1181ad692 fix(build): avoid const enum conflicts 2023-02-06 09:44:12 +08:00
Evan You 37ec04b984 release: v3.3.0-alpha.2 2023-02-05 16:23:54 +08:00
Evan You 85f4d8ccb9 release: v3.3.0-alpha.1 2023-02-05 11:20:39 +08:00
Evan You 1ddde63b40 build: adjust dts test setup 2023-02-03 17:10:31 +08:00
Evan You eb0c1e7025 build: remove api-extractor 2023-02-03 15:57:00 +08:00
Evan You 6213b73cd2 build: custom const enum processing 2023-02-03 09:54:15 +08:00
Evan You 53e3533b75 chore: bump deps 2023-02-03 05:47:40 +08:00
Evan You 124373db50 wip: isolatedModules + use rollup-plugin-esbuild 2023-02-03 04:30:19 +08:00
Evan You 3a6f5eb0f7 fix(build): ensure BaseTransition functions can be tree-shaken 2023-02-02 21:38:57 +08:00
Evan You c1cbb747b5 chore: fix types 2023-02-02 15:27:29 +08:00
Evan You 45984d559f release: v3.2.47 2023-02-02 13:48:18 +08:00
Evan You 29f8cf8b07 release: v3.2.46 2023-02-02 11:32:04 +08:00
三咲智子 Kevin Deng a0a010ddc9
fix(types): optional boolean props should have boolean type in return type of defineProps (#7619)
close #7116
fix #5847
fix #7487
2023-02-01 21:57:28 -05:00
李想 1fde49c0f5
fix(runtime-core): fix keep-alive cache prune logic on vnodes with same type but different keys (#7510)
fix #7355
2023-02-01 04:02:03 -05:00
Evan You f19f803ea8 chore: fix jest reference in merged test case 2023-02-01 16:50:13 +08:00
Anthony Fu e64c9ae957
fix(reactivity): `triggerRef` working with `toRef` from reactive (#7507)
* fix(reactivity): `triggerRef` working with `toRef` from reactive

* chore: refactor
2023-02-01 03:20:47 -05:00
Anthony Fu 5f1883ec53
fix(types): accept sync `serverPrefetch()` (#7000) 2023-02-01 03:15:51 -05:00
Evan You a6be280fc3 chore: only wrap during tests 2023-01-26 20:59:30 +08:00
Evan You 7e8f175db7 wip(vitest-migration): runtime-core tests passing 2023-01-26 20:48:47 +08:00
Evan You f0d78e8c8f wip(vitest-migration): ssr tests passing 2023-01-26 16:18:40 +08:00
Evan You 8867bb259a wip(vitest-migration): reactivity tests passing 2023-01-26 15:25:55 +08:00
Anthony Fu 4a16b204be chore: run format 2023-01-12 12:58:11 +01:00
skirtle 4902354925
dx(runtime-core): warn when expose() is misused (#7221) 2023-01-09 15:23:10 +01:00
Thorsten Lünborg cd7c887b75
fix(reactivity): ensure watch(Effect) can run independent of unmounted instance if created in a detatched effectScope (fix #7319) (#7330)
* fix(reactivity): ensure watch(Effect) can run independent of unmounted instance if created in a detatched effectScope

* test: use separate counters for each watcher to make test more robust
2023-01-09 15:20:21 +01:00
白雾三语 c6e5bda27d
fix(customElement): customElement can emit event (#7296)
close https://github.com/vuejs/core/issues/7293
2022-12-23 22:32:21 +01:00
白雾三语 620327d527
fix(runtime-core): ensure prop type validation warning shows custom class names (#7198)
* fix(runtime-core): 

* fix(runtime-core): update

* fix(runtime-core): update reg

* test(runtime-core): add test case for warnings about prop type mismatches

Co-authored-by: Thorsten Luenborg <t.luenborg@googlemail.com>
2022-11-25 20:52:39 +01:00
Evan You f0645a9b2f chore: remove yarn reference
close #6709
2022-11-14 19:03:51 +08:00
Evan You 9d5e30d911 build: bump jest, puppeteer and use official rollup terser plugin 2022-11-14 18:21:58 +08:00
Evan You b55846f05c fix(shared): toNumber should only coerce strings 2022-11-14 17:50:56 +08:00
翠 / green eb2a83283c
fix(types): allow assigning wider SetupContext type (#2818)
fix #2362
2022-11-14 04:33:29 -05:00
Evan You ce363e55a8 chore: fix assertNumber for undefined value 2022-11-14 16:57:44 +08:00
Evan You 7d0c63ff43 fix(custom-elements): use strict number casting
close #4946
close #2598
close #2604

This commit also refactors internal usage of previous loose
implementation of `toNumber` to the stricter version where applicable.
Use of `looseToNumber` is preserved for `v-model.number` modifier to
ensure backwards compatibility and consistency with Vue 2 behavior.
2022-11-14 16:20:12 +08:00
webfansplz 11bd8db768
chore(types): remove unnecessary type assertions (#7032) 2022-11-14 01:44:06 -05:00
Zollero da2ced1533
fix(runtime-core): set scope id before props (#6948)
close #6923
Also ensure consistency with Vue 2
2022-11-13 22:53:46 -05:00
webfansplz 0187f998f7
chore(runtime-core): add `isRegExp` to check `RegExp` (#6041) 2022-11-13 20:14:28 -05:00
Tony Trinh c513126c5d
types(runtime-core): support plugin options type inference (#3969) 2022-11-13 20:13:32 -05:00
Evan You 6f663d47e5 release: v3.2.45 2022-11-11 17:35:27 +08:00
Evan You ffef822869 fix(custom-elements): respect slot props in custom element mode 2022-11-11 16:06:05 +08:00
Thorsten Lünborg 665f2ae121
fix(custom-elements): fix event emitting for async custom elements (#5601)
fix #5599
2022-11-10 23:33:17 -05:00
花果山大圣 4798a9f704
refactor: more concise bitwise operations for flag removal (#7092) 2022-11-10 20:15:37 -05:00
被雨水过滤的空气(Rairn) 4049ffcf29
fix(runtime-core): fix move/removal of static fragments containing text nodes (#6858)
fix #6852
2022-11-10 05:03:10 -05:00
被雨水过滤的空气(Rairn) a54bff2c9c
fix(hmr/keep-alive): fix error in reload component (#7049)
fix #7042
2022-11-10 05:01:31 -05:00
Evan You f73925d76a fix(sfc): ensure `<script setup>` binding behavior consistency on `this` between prod and dev
close #6248
2022-11-10 16:02:45 +08:00
Evan You 11214eedd2 fix(teleport/css-v-bind): fix css v-bind in teleport in child component slot 2022-11-10 15:08:25 +08:00
Evan You 42239cf284 fix(teleport/css-v-bind): fix css v-bind for teleported content
fix #4605
close #4609 (used tests from this PR)
2022-11-10 14:41:45 +08:00
Evan You d45cbfcdfb chore(types): mark more internal component instance properties 2022-11-10 14:11:55 +08:00
Evan You ec795bfc51 release: v3.2.44 2022-11-10 07:25:22 +08:00
Thorsten Lünborg 5dc593ba28
fix(watch): for immediate watch with single source, ensure cb is called with undefined as oldValue (#7075)
fix: #7074
2022-11-09 18:19:35 -05:00
skirtle fccfb1821f
chore(compat): change 'vnode-' to 'vue:' in event hooks warning (#7063) 2022-11-09 08:15:41 -05:00
Evan You 71977ec972 release: v3.2.43 2022-11-09 21:00:57 +08:00
Evan You 23e85e21a5 fix(watch): ensure oldValue in multi-source watcher is always an array
fix #7070
2022-11-09 20:50:02 +08:00
Evan You d33292dd47 chore: return early in warn() in prod 2022-11-09 11:48:35 +08:00
Evan You 8dbf083133 build: put ssrContext warning behind __DEV__ flag 2022-11-09 11:41:26 +08:00
Evan You f023d49a49 release: v3.2.42 2022-11-09 11:36:09 +08:00
被雨水过滤的空气(Rairn) 64e6d9221d
fix(transition/keep-alive): fix unmount bug for component with out-in transition (#6839)
fix #6835
2022-11-08 10:01:43 -05:00
Evan You 9906e3a82a chore: remove blank line [ci skip] 2022-11-08 14:29:13 +08:00
花果山大圣 bdaf83aae7
fix(hmr): fix hmr for components managed by keep-alive (#6809)
fix #6222
2022-11-08 01:26:56 -05:00
Evan You 4c3203b9b7 chore: run prettier 2022-11-08 14:25:48 +08:00
Rudy e4de623ea7
fix(types): support inferring injected properties in options api (#6804)
close #3031
close #5931
2022-11-08 01:09:53 -05:00
Evan You f55cfe6d3b chore: prettier 2022-11-08 11:03:37 +08:00
littleboarx 168c857247
fix(sfc/types): improve the type inference using withDefaults (#6764)
fix #6552
2022-11-07 21:59:31 -05:00
Cédric Exbrayat 04553786e4
fix(runtime-core): do not throw on unknown directives (#6671)
fix #6340

This commit improves the case when a directive is not found in a template.
As `resolveDirective` returns `undefined`, some code was failing with the following error:

```
TypeError: Cannot read properties of undefined (reading 'deep')
```
2022-11-07 21:49:49 -05:00
三咲智子 Kevin Deng e9172db68b
fix(types): export `Raw` type (#6380)
fix #7048
2022-11-07 21:03:49 -05:00
三咲智子 (Kevin) bbb66d7ac7
ci: check prettier format (#6830) 2022-10-28 09:39:34 +08:00
webfansplz 0e0976168f
fix(ssr/watch) flush: sync watchers should work in ssr (#6139)
fix #6013
2022-10-26 06:30:15 -04:00
Julian Meinking 32b51249bf
fix(runtime-core): `in` operator returning `false` for built-in instance properties in `exposeProxy` (#6138)
fix #6137
2022-10-26 05:54:10 -04:00
shadowings-zy 018b850399
fix(v-model): fix trim modifier on events with non-string args ( (#5770)
fix #5765
2022-10-26 05:47:05 -04:00
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