Commit Graph

486 Commits

Author SHA1 Message Date
Evan You 46c3ab1d71
fix(reactivity): make toRaw work on proxies created by proxyRef 2024-09-05 17:47:03 +08:00
yangxiuxiu 98864a7ef5
fix(reactivity): pass oldValue to computed getter (#11813)
close #11812
2024-09-05 16:10:37 +08:00
Evan You 40193696b3
chore(build): use /*@__PURE__*/ annotation consistently 2024-09-04 20:24: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
Tycho 9817c80187
fix(reactivity): correctly handle method calls on user-extended arrays (#11760)
close #11759
2024-09-03 17:32:13 +08:00
Cédric Exbrayat d427bcd71c
chore: document parameters of onWatcherCleanup (#11768) 2024-09-02 17:06:30 +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
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
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
Rizumu Ayaka 205e5b5e27
feat(reactivity): base `watch`, `getCurrentWatcher`, and `onWatcherCleanup` (#9927) 2024-08-20 08:21:44 +08:00
edison 9de1d101f9
fix(reactivity): extended methods respect reactive (#11629)
close #11628
2024-08-16 16:23:09 +08:00
Tycho 5cf5a1620d
fix(types/computed): ensure type safety for `WritableComputedRef` (#11608) 2024-08-14 15:11:10 +08:00
linzhe 3bda3e83fd
fix(reactivity): sync watch should be executed correctly (#11589)
close #11577
2024-08-13 22:54:08 +08:00
edison 4085def1ba
fix(reactivity): ensure extended method arguments are not lost (#11574)
close #11570
2024-08-10 15:54:38 +08:00
Kevin Deng 三咲智子 928af5fe2f
refactor(types): enable `isolatedDeclarations` (#11178) 2024-08-08 23:05:21 +08:00
Alex e044b6e737
feat(reactivity): store value cache on CustomRefs impls (#11539)
Co-authored-by: Evan You <evan@vuejs.org>
2024-08-07 22:24:28 +08:00
Evan You eaf5455d77
chore: Merge branch 'main' into minor 2024-08-07 18:25:58 +08:00
Evan You b1abac06cd
fix: Revert "fix(types/ref): allow getter and setter types to be unrelated (#11442)"
This reverts commit e0b2975ef6.

This change requires TypeScript 5.1 so it is moved to a minor release.
2024-08-07 18:12:07 +08:00
Evan You 3a56315f94
fix: Revert "fix(types/ref): correct type inference for nested refs (#11536)"
This reverts commit 536f62332c.
2024-08-07 18:11:39 +08:00
Tycho 536f62332c
fix(types/ref): correct type inference for nested refs (#11536)
close #11532
close #11537
2024-08-07 11:20:04 +08:00
sq800 139548e0e0
chore: fix typo (#11535) [ci skip] 2024-08-07 10:57:39 +08:00
远方os a01675ef8f
feat(types): allow computed getter and setter types to be unrelated (#11472)
close #7271
2024-08-05 10:51:56 +08:00
Tycho ba2092981c
refactor(types/ref): update `MaybeRef` to include all ref-like types (#11379)
Co-authored-by: Evan You <evan@vuejs.org>
2024-08-05 10:40:17 +08:00
远方os 267093c314
feat(reactivity/watch): add pause/resume for ReactiveEffect, EffectScope, and WatchHandle (#9651) 2024-08-02 14:41:27 +08:00
Evan You f35080daf5
chore: Merge branch 'main' into minor 2024-07-31 16:49:22 +08:00
Tycho 87923f6af1
chore(types): reuse built-in Iterator type (#11435) 2024-07-29 21:26:48 +08:00
Tycho e0b2975ef6
fix(types/ref): allow getter and setter types to be unrelated (#11442) 2024-07-29 10:52:38 +08:00
Tycho e28c58138c
refactor(reactivity): simplify the wrapping logic for returned values in array instrumentations (#11434) 2024-07-29 09:22:18 +08:00
Evan You 0ae7316008
chore: update comments for proxyRefs 2024-07-17 18:01:13 +08:00
Evan You f15ba2c2e2
chore: Merge branch 'main' into minor 2024-07-17 17:32:31 +08:00
Tycho a509e30f05
fix(reactivity): ensure `unref` correctly resolves type for `ShallowRef` (#11360)
close #11356
2024-07-17 10:09:57 +08:00
LiuSeen 50ddafe91b
fix(reactivity): shallowReactive map "unwraps" the nested refs (#8503)
fix #8501
fix #11249
2024-07-16 15:07:06 +08:00
Evan You e0df985f03
fix: Revert "fix(reactivity): avoid infinite loop when render access a side effect computed (#11135)"
This reverts commit 8296e19855.
2024-06-28 09:31:14 +08:00
Evan You 6c303eacd1
Revert "fix(reactivity): fix side effect computed dirty level (#11183)"
This reverts commit 3bd79e3e5e.
2024-06-28 09:28:51 +08:00
Evan You 912494318f
chore(types): reduce as any in reactivity 2024-06-26 08:45:25 +08:00
Tycho 7936daebce
perf(reactivity): cache tracking value (#11145) 2024-06-22 16:57:25 +08:00
Doctor Wu 3bd79e3e5e
fix(reactivity): fix side effect computed dirty level (#11183)
close #11181, #11169
2024-06-22 16:27:28 +08:00
Evan You 524e660e35
chore: Merge branch 'main' into minor 2024-06-14 18:15:20 +02:00
Doctor Wu 8296e19855
fix(reactivity): avoid infinite loop when render access a side effect computed (#11135)
close #11121
2024-06-14 23:51:19 +08:00
Evan You 1224caf1ba
chore: format 2024-06-14 12:38:07 +02:00
Evan You 26356264d2
chore: Merge branch 'main' into minor 2024-06-14 12:32:28 +02:00
Tycho aae2d78875
fix(types/apiWatch): correct type inference for reactive array (#11036)
close #9416
2024-06-10 16:07:25 +08:00
tomasvn 32262a9af5
chore: use PropertyKey type (#11056)
close #8559
2024-06-06 18:23:21 +08:00
Fan Pei 3b0a56a9c4
fix(reactivity): pass oldValue in debug info when triggering refs (#8210)
fix vuejs/pinia#2061
2024-06-04 23:25:37 +08:00
Alex Liu f8994da00f
types: improve readability of built-in type (#9129) 2024-05-30 19:41:38 +08:00
Wick f8eba75d0a
chore(reactivity): change literal flag properties to enum flag properties (#10367) 2024-05-30 19:09:04 +08:00
Haoqun Jiang 3a0b463a2c
chore: fix typo (DistrubuteRef -> DistributeRef) (#11040) 2024-05-30 18:22:11 +08:00
Evan You 8708a7f1ef
chore: fix lint 2024-05-30 11:25:39 +08:00
Evan You 1d8727ec97
chore: Merge branch 'main' into minor 2024-05-30 11:21:12 +08:00
Kevin Deng 三咲智子 cdb1d1795d
chore: disallow optional chaining (#10919) 2024-05-29 15:03:20 +08:00
chenfan baa656ee41
chore(reactivity): improve readonly/reactive warning message (#9095) 2024-05-27 17:31:11 +08:00
skirtle d00632b1de
refactor: remove optional chaining (#10792) 2024-04-29 14:04:05 +08:00
Wick 28841fee43
fix(reactivity): fix call sequence of ontrigger in effect (#10501) 2024-04-25 10:30:51 +08:00
Evan You 85f3592725
refactor: should throw errors in computed getters 2024-04-24 17:27:51 +08:00
Evan You bb5c31e614
chore: Merge branch 'main' into minor 2024-04-16 00:05:37 +08:00
Wick 9da34d7af8
fix(reactivity): computed should not be detected as true by isProxy (#10401) 2024-04-15 22:55:37 +08:00
Evan You 969c5fb30f
fix(reactivity): fix hasOwnProperty key coercion edge cases 2024-04-15 17:18:53 +08:00
Evan You 7ae9dbf57d
chore(deps): bump TS to 5.4 2024-04-15 13:36:43 +08:00
Evan You c3c5dc93fb
fix(reactivity): fix tracking when hasOwnProperty is called with non-string value
close #10455
close #10464
2024-04-14 22:46:48 +08:00
丶远方 384591a2a1
types: make instrumentations' types more succinct (#8558)
Co-authored-by: Haoqun Jiang <haoqunjiang@gmail.com>
2024-03-13 22:57:33 +08:00
Evan You 9a936aaec4 feat(reactivity): add failSilently argument for onScopeDispose 2024-03-07 17:54:18 +08:00
Evan You ef2eaef3aa refactor: inline recordEffectScope 2024-03-07 17:53:10 +08:00
Evan You 2cc5615590 feat(reactivity): `onEffectCleanup` API
ref #10173

Instead of exposing `getCurrentEffect`, this version accepts a second
argument to suppress the no-active-effect warning.
2024-03-05 22:53:20 +08:00
jods 70196a40cc
perf(reactivity): optimize array tracking (#9511)
close #4318
2024-02-26 18:25:52 +08:00
Evan You 72bde94e66 types: fix ComputedRefImpl type build 2024-02-26 17:46:28 +08:00
Evan You 5d303660b1 chore(types): fix ComputedRefImpl type build 2024-02-26 10:25:44 +08:00
Evan You 55660b0cfc
refactor(scheduler): use bitwise flags for scheduler jobs + optimize queueJob (#10407)
related: https://github.com/vuejs/core-vapor/pull/138
2024-02-26 10:22:12 +08:00
Evan You 58d827cb71 chore: Merge branch 'main' into minor 2024-02-26 10:13:44 +08:00
Wick a4098d587b
chore(reactivity): consistent variable naming (#10350) 2024-02-25 21:08:06 +08:00
Evan You b31dd7468b dx(reactivity): disable recursive computed warning by default
Now can be enabled with app.config.warnRecursiveComputed option.

close #10341
2024-02-25 20:38:33 +08:00
Doctor Wu 21e0d6b145
dx(reactivity): add getter into computed side effect warning (#10386) 2024-02-25 20:27:33 +08:00
Wick 411596c07b
chore(reactivity): replace console.warn() to warn function (#10394) 2024-02-25 20:17:30 +08:00
Evan You 05eb4e0fef
Refactor reactivity system to use version counting and doubly-linked list tracking (#10397)
Bug fixes
close #10236
close #10069

PRs made stale by this one
close #10290
close #10354
close #10189
close #9480
2024-02-25 16:51:49 +08:00
Doctor Wu f7ba97f975
feat(dx): warn users when computed is self-triggering (#10299) 2024-02-13 17:38:26 +08:00
Artyom Tuchkov 2312184bc3
fix(reactivity): skip non-extensible objects when using `markRaw` (#10289)
close #10288
2024-02-08 10:57:57 +08:00
Johnson Chu 0bced13ee5
fix(reactivity): avoid infinite recursion from side effects in computed getter (#10232)
close #10214
2024-02-06 18:44:09 +08:00
Johnson Chu 6c7e0bd88f
fix(reactivity): handle `MaybeDirty` recurse (#10187)
close #10185
2024-02-06 18:23:56 +08:00
Johnson Chu c2b274a887
fix(reactivity): re-fix #10114 (#10123) 2024-01-18 10:46:57 +08:00
Doctor Wu 20f62afaaf
fix(reactivity): fix regression for computed with mutation (#10119)
close #10114
2024-01-15 23:38:57 +08:00
renovate[bot] 237cb45319
chore(deps): update lint (#10112)
* chore(deps): update lint

* [autofix.ci] apply automated fixes

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-01-15 18:15:47 +08:00
Johnson Chu e45a8d24b4
fix(reactivity): fix dirtyLevel checks for recursive effects (#10101)
close #10082
2024-01-13 15:53:06 +08:00
Evan You 8b1848173b revert: fix(reactivity): correct dirty assign in render function (#10091)
This reverts commit 8d04205041.

close #10098
close #10100
2024-01-13 10:38:25 +08:00
Doctorwu 8d04205041
fix(reactivity): correct dirty assign in render function (#10091)
close #10082
2024-01-12 21:13:17 +08:00
LiuSeen 03b54962dc
chore(types): use EffectScheduler type for its queue (#10023) 2024-01-09 15:27:17 +08:00
LiuSeen 96fffe6ec3
chore(comments): dep changed from set to map (#10019) [ci skip] 2024-01-08 14:19:07 +08:00
三咲智子 Kevin Deng bfe6b459d3
style: update format & lint config (#9162)
Co-authored-by: 丶远方 <yangpanteng@gmail.com>
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
Co-authored-by: Guo Xingjun <99574369+Plumbiu@users.noreply.github.com>
2023-12-26 19:39:47 +08:00
Evan You cda74beceb chore: Merge branch 'main' into minor 2023-12-26 15:45:49 +08:00
yangxiuxiu 0695c69e0d
fix(types): fix distribution of union types when unwrapping setup bindings (#9909)
close #9903
2023-12-26 11:57:50 +08:00
Evan You 95f6fffea2 chore: Merge branch 'main' into minor 2023-12-19 18:16:16 +08:00
Eduardo San Martin Morote 24b1c1dd57
fix(types): extract properties from extended collections (#9854)
close #9852
2023-12-19 17:05:29 +08:00
Evan You 9f64d2b681 chore: Merge branch 'main' into minor 2023-12-16 14:37:21 +08:00
丶远方 9a571582b5
fix(types): fix `shallowRef` type error (#9839) 2023-12-16 13:45:01 +08:00
Evan You 982a145d38 chore: Merge branch 'main' into minor 2023-12-11 22:03:28 +08:00
Evan You ef432bda77 refactor(reactivity): improve nested readonly ref set check
ref #9094
2023-12-11 18:40:55 +08:00
丶远方 cdac12161e
fix(types): ref() return type should not be any when initial value is any (#9768) 2023-12-07 16:28:16 +08:00
Evan You 6ecbd5ce2a fix(reactivity): fix mutation on user proxy of reactive Array
close #9742
close #9751
close #9750
2023-12-07 13:26:30 +08:00
Evan You e12b10ac3e chore: Merge branch 'main' into minor 2023-12-04 23:17:41 +08:00
三咲智子 Kevin Deng ad27473701
fix(types): fix reactive collection types (#8960)
close #8904
2023-12-01 02:33:09 +08:00
ZHAO Jin-Xiang fff7b864f4
feat: use enum to replace const enum (#9261)
close #1228
2023-11-29 12:24:50 +08:00