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
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
ae4b0783d7
chore: update repo references
2022-01-18 16:43:59 +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
edison
6d887aaf59
fix(runtime-core): handle initial undefined attrs ( #5017 )
...
fix #5016
2021-12-06 00:58:45 -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
ygj6
820a143457
fix(runtime-core): handle error in async KeepAlive hooks ( #4978 )
2021-11-22 02:50:19 -05:00
edison
b4eb7e3866
fix(runtime-core): improve dedupe listeners when attr fallthrough ( #4912 )
...
fix #4859
2021-11-14 22:20:38 -05: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
467e113b95
feat(compiler-sfc): <script setup>
defineProps destructure transform ( #4690 )
2021-09-27 14:24:21 -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
skirtle
5aa4255808
fix(runtime-core): return the exposeProxy from mount ( #4606 )
2021-09-21 12:55:08 -04:00
ygj6
58b1fa5ed1
fix(hydration): ensure hydrated event listeners have bound instance ( #4529 )
...
fix #4479
2021-09-21 12:39:21 -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
aa8908a854
fix(hmr): handle possible duplicate component definitions with same id
...
fixes regression in vitepress
2021-09-08 18:36:21 -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
laineus
741d3b36f2
fix(runtime-core): properly merge unmounted and beforeUnmount options ( #4447 )
2021-09-01 16:41:57 -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
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
lidlanca
6779bff537
feat(runtime-core): support dynamic / external array in v-memo ( #4255 )
2021-08-09 15:39:22 -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
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
561e210157
fix(inject): should auto unwrap injected refs
...
fix #4196
2021-07-27 17:52:37 -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
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
dd1439e711
build: reduce runtime build size
2021-07-21 11:11:40 -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
47f488350c
chore: run updated prettier
2021-07-19 18:24:18 -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
Evan You
4e5897d2df
test: fix renderSlot tests
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
bde855e017
test: test for computed optimization
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
鱼
b31712ecc5
test(teleport): fix meaningless test case ( #2872 )
2021-07-15 16:36:36 -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
12cf9f4ea1
fix(runtime-core): fix instance accessed via $parent chain when using expose() ( #4048 )
2021-07-02 07:51:54 -04:00
Evan You
34d4991dd5
fix(ssr): properly hydrate non-string value bindings
...
fix #4006
2021-07-01 17:11:23 -04:00
Evan You
9ee41e14d2
fix: prevent withAsyncContext currentInstance leak in edge cases
2021-06-29 14:22:18 -04:00
Evan You
0240e82a38
feat(sfc): auto restore current instance after await statements in async setup()
2021-06-29 09:24:12 -04:00
Evan You
4c5844a9ca
feat(sfc): withDefaults helper
2021-06-26 21:11:57 -04:00
Evan You
b0203a3092
feat(expose): always expose $ instance properties on child refs
2021-06-24 21:28:09 -04:00
Evan You
ac853ff4ab
test: fix script setup helpers tests
2021-06-23 10:31:32 -04:00