Commit Graph

5191 Commits

Author SHA1 Message Date
山吹色御守 2328b051f4
fix(compiler-sfc): do not skip `TSSatisfiesExpression` when transforming props destructure (#12062)
close #12061
2024-09-28 09:56:09 +08:00
Evan You 4b09ab2074
release: v3.5.10 2024-09-27 23:16:33 +08:00
Evan You 93c95dd4cd
fix(reactivity): fix nested batch edge case 2024-09-27 23:10:20 +08:00
Evan You aa9ef2386a
fix(reactivity): only clear notified flags for computed in first batch iteration
close #12045
2024-09-27 11:25:58 +08:00
Evan You 60c2029f77
test: add test case for #11928 2024-09-27 11:06:34 +08:00
Tycho e2c19c20cf
fix(types/ref): handle nested refs in UnwrapRef (#12049)
close #12044
2024-09-27 10:23:01 +08:00
Evan You ea3efa09e0
fix(custom-element): properly set kebab-case props on Vue custom elements
close #12030
close #12032
2024-09-27 09:25:00 +08:00
Evan You 01f15beeb0
release: v3.5.9 2024-09-26 19:28:03 +08:00
Evan You 10ff159240
fix(reactivity): fix recursive sync watcher on computed edge case
close #12033
close #12037
2024-09-26 18:38:13 +08:00
edison cb34b28a4a
fix(runtime-core): avoid rendering plain object as VNode (#12038)
close #12035
close vitejs/vite-plugin-vue#353
2024-09-26 17:08:48 +08:00
edison fa0ba24b3a
fix(vue): properly cache runtime compilation (#12019) 2024-09-26 17:05:37 +08:00
山吹色御守 4da688141d
fix(types): correct type inference of union event names (#12022) 2024-09-26 17:00:05 +08:00
Evan You 6001e5c81a
fix(reactivity): fix property dep removal regression
close #12020
close #12021
2024-09-26 16:58:38 +08:00
yangxiuxiu c0e9434414
refactor(reactivity): avoid optional chaining in getDepFromReactive (#12007) 2024-09-24 18:02:01 +08:00
btea 7a00f6f093
chore: remove unused argument (#12006) 2024-09-24 18:01:20 +08:00
Boshen 5d9e81d3da
chore(types): disambiguate the `Comment` type in hydration.ts (#12009) 2024-09-24 18:00:39 +08:00
Evan You a177092754
fix(runtime-core): make useId() always return a string 2024-09-23 08:38:38 +08:00
Evan You 5e8898572f
release: v3.5.8 2024-09-22 11:53:14 +08:00
Jürg Lehni 0267a58801
fix(reactivity): do not remove dep from depsMap when cleaning up deps of computed (#11995) 2024-09-22 11:49:35 +08:00
Evan You d1764a142a
test: simplify computed last sub test case 2024-09-22 11:24:10 +08:00
Evan You 6fcb80172f
release: v3.5.7 2024-09-20 23:50:05 +08:00
Evan You 960706eebf
fix(reactivity): do not remove dep from depsMap when unsubbed by computed
follow up of 235ea4772 after discovering regression in vant ecosystem-ci tests
2024-09-20 23:39:59 +08:00
linzhe b030c8bc73
fix(reactivity): fix triggerRef call on ObjectRefImpl returned by toRef (#11986)
close #11982
2024-09-20 20:48:15 +08:00
山吹色御守 9eca65ee98
fix(types): correct type inference of all-optional props (#11644)
fix #11733
fix vuejs/language-tools#4704
2024-09-20 20:36:57 +08:00
Evan You 235ea4772e
fix(reactivity): fix memory leak from dep instances of garbage collected objects
close #11979
close #11971
2024-09-20 20:32:40 +08:00
Evan You 5c8b76ed6c
fix(reactivity): fix dev-only memory leak by updating dep.subsHead on sub removal
ref #11956
2024-09-20 20:06:39 +08:00
Alex Liu f927a4ae6f
fix(transition): respect `duration` setting even when it is `0` (#11967) 2024-09-20 16:47:01 +08:00
edison a2f6edeb02
fix(ssr): don't render comments in TransitionGroup (#11961)
close #11958
2024-09-20 16:46:45 +08:00
edison 62242886d7
fix(compile-core): fix v-model with newlines edge case (#11960)
close #8306
2024-09-20 16:45:47 +08:00
山吹色御守 215e154072
fix(compiler-sfc): initialize scope with null prototype object (#11963) 2024-09-20 16:44:14 +08:00
skirtle d18d6aa1b2
fix(scheduler): ensure recursive jobs can't be queued twice (#11955) 2024-09-20 16:43:35 +08:00
linzhe 7257e6a342
fix(hydration): avoid observing non-Element node (#11954)
close #11952
2024-09-20 16:41:58 +08:00
Michael Brevard e075dfad5c
perf(hydration): avoid observer if element is in viewport (#11639) 2024-09-18 15:45:31 +08:00
Evan You 9a36f2a0b8
release: v3.5.6 2024-09-16 16:11:38 +08:00
Evan You c74bb8c2dd
fix(reactivity): avoid exponential perf cost and reduce call stack depth for deeply chained computeds (#11944)
close #11928
2024-09-16 16:00:31 +08:00
edison 3db0a0f979
chore(deps): update vitest to ^2.1.1 (#11943) 2024-09-16 15:00:41 +08:00
Evan You 8492c3c49a
fix(compiler-sfc): preserve old behavior when using withDefaults with desutructure
close #11930
2024-09-16 11:25:04 +08:00
renovate[bot] 47bda40653
fix(deps): update dependency postcss to ^8.4.47 (#11938)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-16 10:59:38 +08:00
edison 85c138ced1
fix(compile-dom): should be able to stringify mathML (#11891) 2024-09-16 10:58:23 +08:00
Yang Mingshan 49fa673493
fix(watch): `once` option should be ignored by watchEffect (#11884) 2024-09-16 10:56:32 +08:00
Matt Garrett 2d6adf78a0
fix(watch): unwatch should be callable during SSR (#11925)
close #11924
2024-09-16 10:49:16 +08:00
Tycho bc3ddca9d0
chore(types): migrate global types to packages-private (#11904) 2024-09-16 10:30:58 +08:00
ML 1bad606eb3
types: improve app.directive type generics (#11926) 2024-09-16 10:30:04 +08:00
Tycho aa5dafd2b5
fix(reactivity): rely on dirty check only when computed has deps (#11931)
close #11929
2024-09-16 10:28:46 +08:00
Tycho 346bfaf760
refactor(reactivity): simplify isDirty condition (#11933) 2024-09-16 09:59:13 +08:00
2nofa11 817dca8712
chore:fix-issue-id (#11927) [ci skip] 2024-09-14 12:00:10 +08:00
Evan You 7f2de3f53e
release: v3.5.5 2024-09-13 21:38:17 +08:00
Evan You a5f3c2eb4d
fix(hydration): fix mismatch of leading newline in <textarea> and <pre>
close #11873
close #11874
2024-09-13 21:24:59 +08:00
Evan You 3c4bf76276
fix(compiler-dom): should ignore leading newline in <textarea> per spec 2024-09-13 21:24:59 +08:00
edison 10a2c6053b
fix(hmr): reload async child wrapped in Suspense + KeepAlive (#11907)
close #11868
2024-09-13 20:19:47 +08:00
linzhe f2d8019188
fix(custom-element): handle nested customElement mount w/ shadowRoot false (#11861)
close #11851
close #11871
2024-09-13 20:18:10 +08:00
Evan You 1d99d61c1b
fix(compiler-dom): fix stringify static edge for partially eligible chunks in cached parent
close #11879
close #11890
2024-09-13 20:08:40 +08:00
edison 7571f20bc3
fix(TransitionGroup): not warn unkeyed text children with whitespece preserve (#11888)
close #11885
2024-09-13 18:37:42 +08:00
Evan You 8ea5d6d698
fix(reactivity): properly clean up deps, fix memory leak
close #11901
2024-09-13 18:35:16 +08:00
Evan You 11eebcb4df
refactor(reactivity): use class for Link 2024-09-13 18:35:16 +08:00
edison 7fe6c795a1
fix(runtime-core): properly update async component nested in KeepAlive (#11917)
close #11916
2024-09-13 17:17:56 +08:00
linzhe 0e7bc717e6
fix(compiler-sfc): nested css supports atrule and comment (#11899)
close #11896
2024-09-13 16:53:49 +08:00
edison 706d4ac1d0
fix(compiler-core): fix handling of delimiterOpen in VPre (#11915)
close #11913
2024-09-13 16:46:01 +08:00
Evan You 91212fa408
release: v3.5.4 2024-09-10 17:05:04 +08:00
Evan You b1db66a1a9
chore(deps): upgrade to TypeScript 5.6 2024-09-10 16:46:19 +08:00
Evan You e596378e0b
fix: Revert "fix: Revert "fix(reactivity): self-referencing computed should refresh""
This reverts commit 35c760f82f.
2024-09-10 16:01:20 +08:00
Yang Mingshan 48613bb928
refactor(scheduler): simplify checkRecursiveUpdates (#11856) 2024-09-10 15:51:10 +08:00
zhangenming f80d447c17
perf(reactivity): trigger deps directly instead of storing in an array first (#11695) 2024-09-10 15:48:51 +08:00
Tycho ced59ab8f2
fix(runtime-core): handle shallow reactive arrays in renderList correctly (#11870)
close #11869
2024-09-10 15:48:14 +08:00
Konv Suu 67d6596d40
fix(reactivity): fix markRaw error on already marked object (#11864)
close #11862
2024-09-10 15:40:43 +08:00
renovate[bot] 207d0eabdf
chore(deps): update all non-major dependencies (#11858)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-10 15:38:45 +08:00
山吹色御守 b1de75ed04
fix(compiler-sfc): correct scoped injection for nesting selector (#11854)
close #10567
2024-09-10 15:38:33 +08:00
btea fe2ab1bbac
chore: remove unused variable (#11842) 2024-09-07 18:30:58 +08:00
Evan You b1430f250d
refactor: remove rarely used argument in makeMap + optimize perf 2024-09-07 15:40:17 +08:00
山吹色御守 dad6738099
fix(types): correctly infer `TypeEmits` with both tuple and function syntax (#11840)
close #11836
2024-09-06 16:10:56 +08:00
Evan You 632e163a41
release: v3.5.3 2024-09-06 11:27:41 +08:00
Evan You bf3d9a2af4
fix(ssr): respect app.config.warnHandler during ssr
close #11830
2024-09-06 11:20:48 +08:00
Adrien Foulon 8e6c337867
fix(hydration): check __asyncHydrate presence for vue3-lazy-hydration compat (#11825)
close #11793
2024-09-06 11:20:41 +08:00
edison 6b7901d28e
fix(Transition): handle KeepAlive child unmount in Transition out-in mode (#11833)
close #11775
2024-09-06 11:03:58 +08:00
Evan You 7e3b3bb2a1
fix: Revert "fix(Transition): handle KeepAlive child unmount in Transition out-in mode (#11778)"
This reverts commit 3116553529.

close #11829
reopen #11775
2024-09-06 08:50:39 +08:00
Evan You 35c760f82f
fix: Revert "fix(reactivity): self-referencing computed should refresh"
This reverts commit e84c4a608e.
2024-09-06 08:47:12 +08:00
Evan You babfb4cbcb
fix(useId): make generated IDs selector compatible
close #11828
2024-09-06 08:46:47 +08:00
Evan You 72263fa12e
release: v3.5.2 2024-09-05 21:11:36 +08:00
山吹色御守 3f13203564
feat(compiler-core): parse modifiers as expression to provide location data (#11819) 2024-09-05 21:00:16 +08:00
山吹色御守 7a64b6734d
types(internal): provide internal options for using `$el` type in language tools (#11814) 2024-09-05 20:58:13 +08:00
edison 3c0d531fa7
fix(suspense): avoid updating anchor if activeBranch has not been rendered to the actual container (#11818)
close #11806
2024-09-05 20:56:34 +08:00
Oliver Bucher 3634f7a4c1
fix(types): add HTMLDialogElement missing close event (#11811)
Co-authored-by: Evan You <evan@vuejs.org>
2024-09-05 20:52:37 +08:00
skirtle df56cc5287
fix(scheduler): prevent duplicate jobs being queued (#11826)
Fix #11712
Fix #11807
2024-09-05 20:51:26 +08:00
Evan You e84c4a608e
fix(reactivity): self-referencing computed should refresh
ref: https://github.com/vuejs/core/pull/11797#issuecomment-2330738633
2024-09-05 19:04:17 +08:00
Jürg Lehni 716275d1b1
fix(reactivity): prevent endless recursion in computed getters (#11797) 2024-09-05 18:54:30 +08:00
白雾三语 c74176ec7b
fix(types): added name attribute support to details tag (#11823)
close #11821
2024-09-05 17:53:05 +08:00
Evan You 9b7797d0d1
fix(useTemplateRef): properly fix readonly warning in dev and ensure prod behavior consistency
close #11808
close #11816
close #11810
2024-09-05 17:47:03 +08:00
Evan You 46c3ab1d71
fix(reactivity): make toRaw work on proxies created by proxyRef 2024-09-05 17:47:03 +08:00
edison 3116553529
fix(Transition): handle KeepAlive child unmount in Transition out-in mode (#11778)
close #11775
2024-09-05 16:47:50 +08:00
Evan You fca20a39aa
fix(types): fix defineComponent props inference when setup() has explicit annotation
close #11803
2024-09-05 16:44:47 +08:00
yangxiuxiu 98864a7ef5
fix(reactivity): pass oldValue to computed getter (#11813)
close #11812
2024-09-05 16:10:37 +08:00
远方os c518517cb3
chore(types): removed the Awaited compatibility type tool (#11820) 2024-09-05 16:09:10 +08:00
Evan You 1b6bc2374d
release: v3.5.1 2024-09-04 21:07:29 +08:00
edison 51912f8a02
fix(Transition): avoid applying transition hooks on comment vnode (#11788)
close #11782
2024-09-04 20:54:04 +08:00
Evan You bc63df0199
fix(useTemplateRef): fix readonly warning when useTemplateRef has same variable name as template ref
close #11795
close #11802
close #11804
2024-09-04 20:53:12 +08:00
Johnson Chu 7518bc19dc
fix(types): avoid using intersection type in `Readonly<...>` to fix JSDoc emit (#11799) 2024-09-04 20:34:36 +08:00
Evan You 40193696b3
chore(build): use /*@__PURE__*/ annotation consistently 2024-09-04 20:24:33 +08:00
Evan You 4eee630b31
fix(build): improve built-in components treeshakability 2024-09-04 20:22:33 +08:00
Tycho 475977a6f7
fix(reactivity): handle non-array arguments in reactive `concat` method (#11794)
close #11792
2024-09-04 20:21:10 +08:00
Evan You 6402b98408
release: v3.5.0 2024-09-03 21:13:50 +08:00
Alex Liu c3ce9fe3d8
fix(runtime-dom): avoid unnecessary prop patch for checkbox (#11657)
close #11647
2024-09-03 21:10:18 +08:00
Tycho fe07f70736
fix(types/defineModel): allow getter and setter types to be unrelated (#11699)
close #11697
2024-09-03 17:47:50 +08:00
Hanse Kim b1be9bd64f
fix(runtime-dom): prevent unnecessary DOM update from v-model (#11656)
close #11647
2024-09-03 17:44:07 +08:00
Matt Garrett 6039e25e04
fix(server-renderer): Fix call to serverPrefetch in server renderer with an async setup (#10893) 2024-09-03 17:43:52 +08:00
edison 7b5b6e0275
fix(cssVars): correctly escape double quotes in SSR (#11784)
close #11779
2024-09-03 17:39:07 +08:00
Tycho 9817c80187
fix(reactivity): correctly handle method calls on user-extended arrays (#11760)
close #11759
2024-09-03 17:32:13 +08:00
山吹色御守 52cdb0f991
fix(server-renderer): render `className` during SSR (#11722) 2024-09-03 08:26:08 +08:00
edison ca12e776bc
fix(hydration): escape css var name to avoid mismatch (#11739)
close #11735
2024-09-03 08:25:00 +08:00
renovate[bot] cb843e0be3
fix(deps): update dependency postcss to ^8.4.44 (#11774)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-03 08:22:26 +08:00
Evan You 0f7c0e5dc0
fix(compiler-sfc): fix import usage check for kebab-case same name shorthand binding
fix #11745
close #11754
2024-09-02 17:29:59 +08:00
chirokas d86fe0ec00
feat(types): add loading prop to iframe (#11767) 2024-09-02 17:10:14 +08:00
edison c756da24b2
fix(hydration): handle text nodes with 0 during hydration (#11772)
close #11771
2024-09-02 17:09:38 +08:00
Maisha Tremblay 3de5556521
test(reactive): use vitest fn instead of counting manually (#11746) 2024-09-02 17:08:19 +08:00
Cédric Exbrayat d427bcd71c
chore: document parameters of onWatcherCleanup (#11768) 2024-09-02 17:06:30 +08:00
Evan You d298c431cc
release: v3.5.0-rc.1 2024-08-29 15:25:43 +08:00
edison f1d1831f07
fix(custom-element): handle keys set on custom elements (#11655)
close #11641
2024-08-29 15:09:15 +08:00
lidlanca 1d988b5b99
test(reactivity): test case for #6358 (#6376) 2024-08-29 14:20:04 +08:00
Evan You 313e4bf552
fix(reactivity): avoid infinite recursion when mutating ref wrapped in reactive
close #11696
2024-08-29 14:10:29 +08:00
cyrilluce 9c4c2e51b0
fix(compiler-sfc): skip circular tsconfig project reference (#11680)
Co-authored-by: cluezhang <cluezhang@futurefab.ai>

close #11382
2024-08-29 11:42:35 +08:00
Evan You ac9e7e8bfa
test: adjust coverage config, use v8 coverage 2024-08-29 10:41:29 +08:00
linzhe 29c321bfd3
fix(keep-alive): reset keep alive flag when the component is removed from include (#11718)
close #11717
2024-08-29 10:41:19 +08:00
HEGGRIA 64e1ca2657
chore(reactivity): effectScope.ts variable declarations optimized and remove useless code in effect.ts (#11721)
* chore(reactivity): effectScope.ts variable declarations optimized and remove useless code in effect.ts

* fix(reactivity): batchDepth count error fixed

* fix(reactivity): batchDepth count error fixed

* chore(reactivity): modify the batchDepth increase type
2024-08-28 18:16:59 +08:00
Paul Werner 334d47ddf3
dx(compiler-sfc): improve error message for missing template and script tag in vue file (#11723) 2024-08-28 17:49:33 +08:00
Evan You d875de54e9
fix(runtime-dom): setting innerHTML when patching props should go through trusted types 2024-08-28 17:37:39 +08:00
Evan You 42e8df6203
fix(types): GlobalDirective / GlobalComponents should not be records 2024-08-28 15:00:36 +08:00
edison 342657b717
chore: correct the issue number (#11715) [ci skip] 2024-08-26 18:08:46 +08:00
yangxiuxiu fbc0c42bcf
fix(reactivity): ensure watcher with once: true are properly removed from effect scope (#11665) 2024-08-20 16:35:08 +08:00
Evan You f2ea25dc54
refactor(watch): reuse watch types 2024-08-20 16:16:25 +08:00
Evan You 8c3fdd1a7d
release: v3.5.0-beta.3 2024-08-20 08:24:06 +08:00
Rizumu Ayaka 205e5b5e27
feat(reactivity): base `watch`, `getCurrentWatcher`, and `onWatcherCleanup` (#9927) 2024-08-20 08:21:44 +08:00
yangxiuxiu 44973bb3e7
fix(types): strip non-prop default values from return type of withDefaults (#9998)
close #9899
2024-08-19 16:29:43 +08:00
zhangenming bb6babca8f
perf( runtime-core): use `apply` to avoid spreading. (#5985) 2024-08-19 16:25:01 +08:00
edison 98b83e86d1
fix(ssr): apply ssr props to the the fallback vnode-based branch in ssr (#7247)
close #6123
2024-08-19 16:22:05 +08:00
edison ac2a410e46
fix(runtime-core): ensure suspense content inherit scopeId (#10652)
close #5148
2024-08-19 16:19:24 +08:00
skirtle 4b608a9449
refactor(scheduler): remove invalidateJob (#11650)
Co-authored-by: Evan You <evan@vuejs.org>
2024-08-19 10:49:59 +08:00
renovate[bot] 448c2396b9
chore(deps): update dependency postcss-selector-parser to ^6.1.2 (#11652)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-19 10:34:10 +08:00
skirtle 7fbf4964e4
refactor(scheduler): remove redundant sorting (#11646) 2024-08-19 10:17:45 +08:00
skirtle b332f80f0e
fix(runtime-core): pre jobs without an id should run first (#7746) 2024-08-19 10:13:50 +08:00
edison 9de1d101f9
fix(reactivity): extended methods respect reactive (#11629)
close #11628
2024-08-16 16:23:09 +08:00
Andy Li 5e0f6d5f8f
fix(types/custom-element): `defineCustomElement` with required props (#11578) 2024-08-16 16:22:03 +08:00
Jakob 8bcaad4a32
fix(watch): handle errors in computed used as watch source (#11626)
close #11624
2024-08-16 16:14:08 +08:00
山吹色御守 d7d0371e74
fix(runtime-core): correct type inference for PascalCase emits (#11579)
fix vuejs/language-tools#4269
2024-08-15 17:49:43 +08:00
Evan You 7d700c215d
release: v3.5.0-beta.2 2024-08-15 15:29:43 +08:00
Evan You e19fc27042
fix(custom-element): keep instance.isCE for backwards compat 2024-08-15 15:18:19 +08:00
Evan You 3d6f01571b
fix(compiler-sfc): fix prefixIdentifier default value 2024-08-15 14:29:28 +08:00
disservin fe008152c0
fix(compiler-sfc): handle keyof operator with index object (#11581) 2024-08-15 10:24:04 +08:00
Evan You e9e08155bf
fix(build): revert entities to 4.5 to avoid runtime resolution errors
close #11603
2024-08-15 10:16:32 +08:00
Evan You 5861229475
fix(compiler-core): use ast-based check for function expressions when possible
close #11615
2024-08-15 09:58:30 +08:00
Raman Paulau c96ec67c87
chore(types): update examples in JSDoc for augmenting global properties and custom options to align with docs (#11609) 2024-08-14 15:12:13 +08:00
Tycho 5cf5a1620d
fix(types/computed): ensure type safety for `WritableComputedRef` (#11608) 2024-08-14 15:11:10 +08:00