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
Evan You
436c500d2c
fix(compiler-ssr): no need to inject resolveDirective calls for setup custom directives
2022-02-12 16:29:24 +08: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
48de8a42b7
chore: remove next references [ci skip]
2022-02-07 12:16:22 +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
a51f935b72
refactor: remove isTracking() method
2022-01-30 18:53:43 +08:00
Evan You
bb43704b64
chore: check string first in toDisplayString
2022-01-30 18:50:28 +08:00
Evan You
81a6708739
chore: simplify effectScope
2022-01-28 21:02:09 +08:00
Evan You
2993a24618
perf(reactivity): optimize effect/effectScope active state tracking
2022-01-28 18:35:09 +08:00
Evan You
6b6889852f
release: v3.2.29
2022-01-23 22:02:23 +08:00
Evan You
9aa5dfd4bb
fix(runtime-dom): fix static content re-insertion
...
fix #5308
The regression was introduced in ed9eb62
. In the cached code path,
we attempt re-insertion by cloning cached nodes. However if the static
fragment was removed as component root, it loses the nodes between
start and end because each node was removed individually. Therefore
the cached path can only be taken if the fragment has a single node, or
it was removed as part of a parent tree so the sibling information is
still available.
2022-01-23 21:44:32 +08:00
Thorsten Lünborg
4be1037f31
fix(reactivity): ensure readonly refs can be replaced with new refs in reactive objects ( #5310 )
...
fix #5307
2022-01-23 08:08:27 -05:00
Evan You
059c63eab7
test: add missing edge case for css v-bind
2022-01-23 21:03:37 +08:00
Evan You
16fa18da6d
fix(compiler-sfc): fix css v-bind inside other css functions
...
fix #5302 , close #5306
2022-01-23 20:58:43 +08:00
Evan You
283df0ad68
release: v3.2.28
2022-01-21 16:15:13 +08:00
edison
95d49bf7e7
fix(compiler-sfc): support complex expression in CSS v-bind() ( #5114 )
...
fix #5109
2022-01-21 15:57:30 +08:00
btea
63210fe41a
refactor: includes instead of indexOf ( #5117 )
2022-01-21 02:36:48 -05:00
HcySunYang
c64907d261
fix(types): calling readonly() with ref() should return Readonly<Ref<T>> ( #5212 )
2022-01-21 02:33:30 -05:00
Thorsten Lünborg
171f5e9c60
fix(reactivity): mutating a readonly ref nested in a reactive object should fail. ( #5048 )
...
fix : #5042
2022-01-21 02:33:18 -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
edison
9f55e6fbb1
fix(compiler-core): handle v-memo in template v-for ( #5291 )
...
fix #5288
2022-01-21 01:54:46 -05:00
Evan You
b2bac9fa17
chore: comment dom tag config usage [ci skip]
2022-01-21 14:31:00 +08: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
25bc6549eb
perf(reactivity): optimize effect run condition
2022-01-21 09:41:58 +08:00
Evan You
4768f26f59
fix(compiler-sfc/reactivity-transform): fix edge case where normal script has ref macros but script setup does not
2022-01-21 08:47:48 +08:00
Evan You
a05b000948
fix(reactivity-transform): apply transform for labelled variable declarations
...
ref https://github.com/vuejs/core/issues/5298#issuecomment-1017970061
2022-01-21 07:48:41 +08:00
Evan You
a81a9922bb
fix(reactivity-transform): apply transform on exported variable declarations
...
fix #5298
2022-01-21 07:40:35 +08:00
Evan You
ae4b0783d7
chore: update repo references
2022-01-18 16:43:59 +08:00
Evan You
9c304bfe79
fix(reactivity): differentiate shallow/deep proxies of same target when nested in reactive
...
fix #5271
2022-01-18 09:22:41 +08:00
Evan You
9fda9411ec
feat(reactivity): add isShallow api
2022-01-18 09:22:41 +08:00
Evan You
0c06c748a5
chore: bump marked
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
78df8c78c4
fix(types/tsx): allow ref_for type on tsx elements
2022-01-16 15:54:58 +08:00
Evan You
5ac703055f
fix(types): handle ToRef<any>
...
fix #5188
2022-01-16 15:47:00 +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
55cc4af25e
fix(ssr): remove missing ssr directive transform error
2022-01-16 15:20:56 +08:00
Evan You
92fcb9db05
workflow: use esbuild for dev scripts
2022-01-14 16:21:50 +08:00
Evan You
ff2d6d1cb7
chore: comment usage of short property name
2022-01-12 22:08:05 +08: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
Evan You
92f11d6740
fix(types): fix shallowReadonly type
2022-01-10 15:05:09 +08:00
Evan You
eb721d49c0
workflow: improve template explorer hash persistence
2022-01-04 17:32:25 +08:00
Evan You
2b506d7df6
chore: fix template exploerer boot with no storage
2022-01-04 17:09:13 +08:00
Evan You
7007ffb2c7
fix(reactivity-transform): should not rewrite for...in / for...of scope variables
2021-12-31 11:23:50 +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
Cédric Exbrayat
e373b0bbe2
chore: remove obsolete test snapshot ( #5162 )
2021-12-24 12:10:59 +01:00
Evan You
fef191fb07
chore: remove stale references of ref-transform
2021-12-23 16:56:36 +08:00
Evan You
a273e8844c
chore: bump repl
2021-12-21 16:49:20 +08:00
Eduardo San Martin Morote
44b95276f5
fix(sfc-playground): hide title to avoid overlap ( #5099 )
2021-12-14 08:24:14 -05:00
Evan You
ccb6651b12
release: v3.2.26
2021-12-12 15:03:29 +08:00
Evan You
17f4dd833e
build: include missing dts files in package
2021-12-12 14:52:12 +08:00
Evan You
756534bde0
release: v3.2.25
2021-12-12 12:21:13 +08:00
Evan You
d6be3405b3
types(compiler-sfc): export additional types
2021-12-12 11:44:23 +08:00
Evan You
5fda93801e
ci: move vite back to root again
2021-12-12 10:52:55 +08:00
Evan You
7e400601ec
ci: adjust deps for sfc playground
2021-12-12 10:38:09 +08:00
Evan You
65309b5aed
ci: move vite plugin-vue to workspace root
2021-12-12 10:35:36 +08:00
Evan You
38b977dad5
chore: remove no longer needed shim for stream/web
2021-12-12 10:12:20 +08:00
wxsm
9ac0ddea4b
feat(sfc-playground): add github link ( #5067 )
2021-12-11 21:01:48 -05:00
wxsm
b0275070e4
feat(sfc-playground): prevent ctrl+s default behavior ( #5066 )
2021-12-11 21:01:15 -05:00
Forzen FIsh
57a09331b2
chore: fix some typos ( #5050 ) [ci skip]
2021-12-11 20:58:46 -05:00
Evan You
7e4f0a8694
fix(compiler-sfc): generate valid TS in script and script setup co-usage with TS
...
fix #5094
2021-12-12 09:53:52 +08:00
Evan You
ea1fcfba37
chore: bump babel deps
2021-12-12 09:11:36 +08:00
Evan You
434dedf488
chore: cleanup deps
2021-12-12 09:08:08 +08:00
Evan You
50f13278f9
chore: avoid api-extractor warnings
2021-12-12 00:14:25 +08:00
Evan You
d70fd8d36b
feat(reactivity-transform): rename @vue/ref-transform to @vue/reactivity-transform
2021-12-12 00:04:38 +08:00
Evan You
f4dcbbc7b9
chore: fix build
2021-12-11 23:48:32 +08:00
Evan You
fbd0fe9759
feat(reactivity-transform): support optionally importing macros
2021-12-11 18:28:03 +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
198ca14f19
feat(reactivity-transform): $$() escape for destructured prop bindings
2021-12-11 17:50:09 +08:00
Evan You
179fc05a84
feat(reactivity-transform): support $-shorthands for all ref-creating APIs
2021-12-11 17:17:01 +08:00
Evan You
93ba6b974e
feat(reactivity-transform): use toRef() for $() destructure codegen
...
- now supports destructuring reactive objects
- no longer supports rest elements
2021-12-11 17:13:15 +08:00
Evan You
2db9c909c2
feat(reactivity): support default value in toRef()
2021-12-11 16:41:58 +08:00
Evan You
d0ea900922
workflow: report brotli size of baseline build
2021-12-11 10:38:21 +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
4b0ca8709a
feat(compiler-core): support aliasing vue: prefixed events to inline vnode hooks
2021-12-10 16:09:23 +08:00
Evan You
1c9a4810fc
fix(compiler): force block for custom dirs and inline beforeUpdate hooks
...
to ensure they are called before children updates
2021-12-10 15:36:10 +08:00
Evan You
4b5d1ac894
chore: remove outdated test case
2021-12-10 15:35:20 +08:00
Evan You
9823bd95d1
feat(experimental): allow const for ref sugar declarations
2021-12-10 14:05:40 +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
Lucas Werkmeister
f73547fc05
chore(compat): fix example config syntax error ( #5027 )
...
The chainWebpack arrow function wasn’t being closed.
2021-12-05 23:24:59 -05:00
Thorsten Lünborg
f8552697fb
fix(package): ensure ref-macros export is recognized by vue-tsc ( #5003 )
2021-12-05 23:22:59 -05:00
Illya Klymov
ee97cf5a4d
fix(compat): maintain compatConfig option in legacy functional comp ( #4974 )
2021-12-05 23:20:27 -05:00
Che Guevara
595a93715b
refactor(types): use DOMRect
instead of the Position
type ( #5012 )
2021-12-05 23:19:47 -05:00
Ziwen Mei
d70dd9faaa
chore(compiler-sfc): fix typo in comments ( #5029 )
2021-12-05 23:19:15 -05:00