Evan You
4307610c35
chore: fix setRef usage
2020-11-30 20:07:06 -05:00
Evan You
64d4681e4b
fix(async-component): forward refs on async component wrapper
...
fix #2671
2020-11-30 18:59:14 -05:00
Yasser Lahbibi
cd92836223
fix(teleport): Teleport into SVG elements ( #2648 )
...
fix #2652
2020-11-30 17:30:41 -05:00
hiroki
7a1a782642
fix(provide): support symbols in applyOptions ( #2616 )
...
fix #2615
2020-11-30 16:36:02 -05:00
Evan You
bf16a57fc3
fix(runtime-core): handle static node move in production
2020-11-30 14:42:02 -05:00
underfin
2a9ba0c8e9
fix(runtime-core): remove static node in production mode ( #2556 )
...
fix #2553
2020-11-30 14:07:43 -05:00
Thorsten Lünborg
421205d0ad
fix(runtime-core): ensure keep-alive deep-watches include/explude props ( #2551 )
...
fix #2550
2020-11-30 14:04:45 -05:00
Evan You
67d1aac6ae
feat(sfc): allow sfcs to recursively self-reference in template via name inferred from filename
...
e.g. A file named `FooBar.vue` can refer to itself as `<FooBar/>`. This gets rid of the need for the `name` option.
2020-11-30 12:30:51 -05:00
Evan You
3bc2914e32
fix(attr-fallthrough): ensure consistent attr fallthrough for root fragments with comments
...
fix #2549
2020-11-27 18:04:26 -05:00
shadowings-zy
3532b2b021
fix(runtime-core): fix emit listener check on kebab-case events ( #2542 )
...
fix #2540
2020-11-27 15:24:29 -05:00
Evan You
2ab8c41a1a
fix(slots): dynamically named slots should be keyed by name
...
fix #2535
2020-11-27 14:35:46 -05:00
HcySunYang
0ff2a4f1c1
fix(runtime-core): should pause tracking when initializing legacy options ( #2524 )
...
fix #2521
2020-11-27 14:01:01 -05:00
Evan You
a5d6f8091e
fix(compiler-ssr): generate correct children for transition-group
...
fix #2510
2020-11-27 12:22:14 -05:00
Evan You
46d80f4d58
fix: allow hmr in all builds
...
close #2571
2020-11-27 10:36:09 -05:00
Evan You
53f4885d9e
fix(runtime-core): skip functional components in public $parent chain traversal
...
fix #2437
2020-11-27 10:10:25 -05:00
Thorsten Lünborg
735af1c7b7
fix(runtime-core): ensure watchers are always registered to correct instance owner ( #2495 )
...
close : #2381
2020-11-27 09:31:50 -05:00
HcySunYang
ce4915d8be
fix(slots): should render fallback content when slot content contains no valid nodes ( #2485 )
...
fix #2347 , fix #2461
2020-11-26 11:35:45 -05:00
Evan You
cf7f1dbc9b
fix(suspense): fix nested async child toggle inside already resovled suspense
...
fix #2215
2020-11-26 11:06:55 -05:00
Evan You
426a6c996e
test: tests for script setup helpers
2020-11-26 10:01:36 -05:00
Evan You
73cdb9d420
fix(script-setup): ensure useContext() return valid context
2020-11-26 09:25:56 -05:00
Evan You
bd6e211287
release: v3.0.3
2020-11-25 11:16:21 -05:00
Evan You
bdc66c7ea4
wip: revert helpers to compiler-only
2020-11-24 19:04:21 -05:00
Evan You
47d73c23e1
wip: defineOptions -> defineProps + defineEmit + useContext
2020-11-24 19:04:21 -05:00
Evan You
ac80ea2c19
chore: warning for outdated hmr api usage
2020-11-21 16:06:50 -05:00
Evan You
8ac2241b22
wip: more consistent compiler-sfc usage + inline mode for ssr
2020-11-20 14:23:09 -05:00
Evan You
b79a06c605
wip: optimize expose
2020-11-16 11:28:37 -05:00
Evan You
468e0d95cf
chore: Merge branch 'feat/expose' into script-setup-2
2020-11-14 12:50:32 -05:00
Evan You
0e59770b92
feat(runtime-core): explicit expose API
2020-11-14 12:49:35 -05:00
Evan You
1ff5960971
wip: useOptions -> defineOptions
2020-11-13 17:38:28 -05:00
Evan You
6fc8d5d0ba
wip: type inference for useOptions
2020-11-13 00:01:44 -05:00
Evan You
001f8ce993
wip: defineContext -> useOptions
2020-11-12 22:51:40 -05:00
Evan You
6a9b56ca60
wip: defineContext()
2020-11-12 14:10:39 -05:00
Evan You
dc098c7f81
wip: defineContext
2020-11-11 19:40:27 -05:00
underfin
af9560455d
fix(runtime-core): ensure scheduler queue is always non-null ( #2567 )
...
fix https://github.com/vitejs/vite/issues/1021
2020-11-09 09:19:32 -05:00
Evan You
9c23ddf9c5
fix(hmr): fix updates for imported but not yet rendered components
2020-10-26 17:52:27 -04:00
Evan You
51e43e0799
fix(runtime-core): components with static props and slots should not be force updated
2020-10-22 17:50:05 -04:00
Evan You
f2d03a59c6
release: v3.0.2
2020-10-20 16:24:12 -04:00
Carlos Rodrigues
1f2a652a9d
fix(types): h support for resolveComponent ( #2402 )
...
close #2357
2020-10-20 15:56:29 -04:00
HcySunYang
fff62e2ee8
fix(runtime-core): non-stable Fragment should always unmount its children ( #2445 )
...
fix #2444
2020-10-20 14:59:55 -04:00
Evan You
0227b4a697
fix(suspense): fix suspense nested child updates in template mode
...
fix #2214
2020-10-20 12:28:02 -04:00
Hunter
128ec460ec
fix(v-model): built in modifiers support on component ( #2348 )
...
close #2326
2020-10-20 09:59:27 -04:00
Evan You
4bbb2b2ee6
fix(runtime-core): fix component .once listener logic
2020-10-20 09:50:18 -04:00
ShaoDamao
288c764e52
chore(runtime-core): fix typo ( #2442 )
...
Co-authored-by: shaoziwei <ziwei.shao@cloudchef.io>
2020-10-20 08:51:05 +02:00
Hunter
111d04f119
fix(runtime-core): prevent self-injection ( #2424 )
...
fix #2400
2020-10-19 20:45:48 -04:00
被雨水过滤的空气
edd49dcab4
fix(runtime-core): avoid mutating EMPTY_ARR when setting dev root ( #2419 )
...
also freeze EMPTY_ARR in dev
fix #2413
2020-10-19 18:08:54 -04:00
Carlos Rodrigues
d9ad45ad6c
types(defineComponent): fix optional Boolean prop types ( #2401 )
...
fix #2338
2020-10-19 17:25:55 -04:00
ᴜɴвʏтᴇ
052a621762
feat(compile-core): handle falsy dynamic args for v-on and v-bind ( #2393 )
...
fix #2388
2020-10-19 17:15:53 -04:00
龙腾道
ba881f9190
fix(runtime-core): avoid object prototype keys in property access cache ( #2416 )
2020-10-19 17:11:28 -04:00
Evan You
f17f0ddf68
release: v3.0.1
2020-10-15 12:37:21 -04:00
underfin
e78915a740
fix(hmr): full diff props for non-sfc component ( #2359 )
...
close #https://github.com/vitejs/vite/issues/872
2020-10-15 11:05:12 -04:00
Hunter
962af85220
test(runtime-core): inject from closest ancestor ( #2329 )
2020-10-13 16:31:13 -04:00
ᴜɴвʏтᴇ
6df3675548
test(runtime-core): improve test for #2295 ( #2309 )
2020-10-13 16:29:23 -04:00
underfin
02f355eb69
fix(v-for): handle and warn when v-for
receives non-integer range number ( #2247 )
...
close #2245
2020-10-13 16:28:24 -04:00
Pick
9b34f915ab
refactor(runtime-core): simplify deep watch traverse ( #2212 )
2020-10-13 16:06:36 -04:00
Pick
e4a5387435
refactor(runtime-core): refactor watch typing ( #2191 )
2020-10-13 15:45:17 -04:00
edison
1cc8cd60a1
test(runtime-core): show warn when create with invalid type ( #2128 )
2020-10-13 15:27:21 -04:00
Evan You
6ba7ba47d5
feat: custom formatters
2020-10-13 11:50:24 -04:00
Evan You
2ae3b26679
fix(teleport): proper children traversal when teleport is block root
...
fix #2324
2020-10-10 16:07:30 -04:00
Evan You
b0931dcaba
fix(teleport): should only force remove teleport when not disabled
...
fix #2323
2020-10-09 09:08:59 -04:00
Evan You
4d1ebb5deb
fix(runtime-core): fix directive merging on component root
...
fix #2298
2020-10-07 22:02:32 -04:00
Evan You
f06518a8c9
fix(runtime-core): fix provide function data access in extends/mixins
...
fix #2300
2020-10-07 21:47:01 -04:00
Evan You
25d53f09bb
fix(runtime-core/template-refs): do not reset refs object before updates
...
fix #2283
2020-10-07 17:49:03 -04:00
Evan You
b392fe419c
fix(runtime-core): error handling for created/beforeCreate hooks
...
fix #2268
2020-10-07 16:58:19 -04:00
shadowings-zy
62f26173ba
fix(runtime-core): use consistent camelCase event casing for render functions ( #2278 )
...
close #2249
2020-10-06 18:28:56 -04:00
Evan You
390589ec6d
fix(reactivity): should not trigger watch on computed ref when value is unchanged
...
fix #2231
2020-10-06 18:16:20 -04:00
Evan You
a66e53a24f
fix(runtime-core): fix SSR memoery leak due to props normalization cache
...
fix #2225
The previous props/emits normlaization was caching normalized result per
app instance, but during SSR there is a new app instance created for
every request.
The fix now de-opts props/emits normlaization caching when there are
props/emits declared in global mixins - which is a very rare use case.
2020-10-06 15:31:29 -04:00
Evan You
cf2c9f6faa
perf: do not enable hmr in non-browser envs
2020-10-06 11:51:55 -04:00
Evan You
5c3e8e9840
fix(runtime-core): ensure this context for $nextTick callback
...
fix #2282
2020-10-05 18:18:38 -04:00
ᴜɴвʏтᴇ
4d20ac8173
fix(runtime-core): make errorCaptured return value handling consistent with Vue 2 ( #2289 )
...
fix #2267
2020-10-05 17:37:26 -04:00
HcySunYang
ea1f87eabf
fix(reactivity): should add allowRecurse to the effect ( #2213 )
...
So that the scheduler also respects effect's allowRecurse option.
fix #2200
2020-10-05 16:36:02 -04:00
Philipp Rudloff
28d5fd7a28
fix(runtime-core): vnode.el is null in watcher after rerendering ( #2295 )
...
fix #2170
2020-10-05 16:05:43 -04:00
Evan You
376883d1cf
fix(runtime-core): fix duplicated unmount traversal in optimized mode
...
fix #2169
2020-09-22 11:38:15 -04:00
wonderful-panda
5dbd6b36a0
fix(types): fix using tuple type as EmitsOptions ( #2160 )
...
fix #2159
2020-09-22 10:05:37 -04:00
Evan You
6aa2256913
fix(types): avoid DefineComponent defaulting to any
...
fix #2192
2020-09-22 10:02:19 -04:00
Evan You
d8c1536ead
release: v3.0.0
2020-09-18 11:28:05 -04:00
Evan You
876ecc8672
release: v3.0.0-rc.13
2020-09-18 01:39:30 -04:00
Katashin
422f05e085
fix(hmr): make hmr working with class components ( #2144 )
2020-09-18 00:14:59 -04:00
Anthony Fu
57bdaa2220
fix(types): component instance inference without props ( #2145 )
2020-09-18 00:13:47 -04:00
Evan You
1c9a0b3e19
feat(watch): support dot-delimited path in watch option
2020-09-18 00:00:39 -04:00
Evan You
5bfcad155b
fix(suspense): should discard unmount effects of invalidated pending branch
2020-09-17 23:49:06 -04:00
Evan You
49bb44756f
refactor: watch APIs default to trigger pre-flush
...
BREAKING CHANGE: watch APIs now default to use `flush: 'pre'` instead of
`flush: 'post'`.
- This change affects `watch`, `watchEffect`, the `watch` component
option, and `this.$watch`.
- As pointed out by @skirtles-code in
[this comment](https://github.com/vuejs/vue-next/issues/1706#issuecomment-666258948 ),
Vue 2's watch behavior is pre-flush, and the ecosystem has many uses
of watch that assumes the pre-flush behavior. Defaulting to post-flush
can result in unnecessary re-renders without the users being aware of
it.
- With this change, watchers need to specify `{ flush: 'post' }` via
options to trigger callback after Vue render updates. Note that
specifying `{ flush: 'post' }` will also defer `watchEffect`'s
initial run to wait for the component's initial render.
2020-09-17 23:17:21 -04:00
Evan You
58c31e3699
feat(runtime-core): support using inject() inside props default functions
2020-09-17 15:59:01 -04:00
Evan You
985bd2bcb5
release: v3.0.0-rc.12
2020-09-16 13:50:13 -04:00
Evan You
df954dc90f
chore: do not log warned error during tests
2020-09-16 13:37:12 -04:00
Evan You
dd40ad8fca
fix(runtime-core): should still do full traverse of stable fragment children in dev + hmr
2020-09-16 13:01:53 -04:00
Evan You
bebd44f793
fix(runtime-core): ensure root stable fragments inherit elements for moving
...
fix #2134
2020-09-16 12:18:03 -04:00
Evan You
c7b4a379cf
fix(runtime-core/async-component): fix error component when there are no error handlers
...
fix #2129
2020-09-16 11:10:16 -04:00
Evan You
3810de7d6b
fix(reactivity): effect shoud only recursively self trigger with explicit options
...
fix #2125
2020-09-16 10:52:31 -04:00
wonderful-panda
89e9ab8a2a
fix(types/tsx): optional props from Mixin/Extends are treated as required ( #2048 )
2020-09-16 10:09:35 -04:00
Cédric Exbrayat
7e68ddd354
chore: typos in suspense events ( #2131 )
...
Removes the mention of the recede event that has been replaced.
2020-09-16 09:30:47 -04:00
Carlos Rodrigues
be27bbc5ad
types(defineComponent): fix missing exported types ( #2124 )
2020-09-16 09:29:42 -04:00
Evan You
f2ef7d7c8e
release: v3.0.0-rc.11
2020-09-15 13:15:42 -04:00
Evan You
5ae7380b4a
feat: update Suspense usage ( #2099 )
...
See https://github.com/vuejs/vue-next/pull/2099 for details.
2020-09-15 12:45:06 -04:00
Evan You
37e686f25e
chore: remove wip code
2020-09-15 12:41:56 -04:00
Carlos Rodrigues
4fd468aced
types(runtime-core): refactor defineComponent ( #1883 )
2020-09-15 11:46:11 -04:00
HuangYi
98cc1f9d84
fix(KeepAlive): when exclude prop change, it should prune cache that not matched ( #2111 )
2020-09-15 10:33:50 -04:00
edison
0cddde6aa4
test(runtime-core): test app API warnings ( #2079 )
2020-09-14 21:48:38 -04:00
Haoqun Jiang
c65d6def84
polish: warn deprecated beforeDestroy/destroyed lifecycle hooks ( #1999 )
2020-09-14 21:47:58 -04:00
Evan You
b2dc95378d
types: fix + test inject API typing
...
ref: #2052
2020-09-14 21:26:28 -04:00
Pick
09a939d37c
Revert "refactor(runtime-core): add @internal for instance.proxy ( #1849 )" ( #2024 )
...
This reverts commit 4d51be73d3
.
2020-09-14 20:56:04 -04:00
被雨水过滤的空气
890ca8aa34
fix(keep-alive): should use onMounted and onUpdated to invoke cacheSubtree ( #1984 )
2020-09-14 20:50:06 -04:00
Evan You
124c385baf
perf: should not trigger child update if changed prop is declared emit listener
...
close #2072
2020-09-14 18:58:30 -04:00
Evan You
4de5b111ee
test: fix cloneVNode ref tests
2020-09-14 18:55:00 -04:00
underfin
a32870a8f6
fix: inherit el
for static nodes inside keyed template
fragment ( #2089 )
...
fix #2080
2020-09-14 16:02:29 -04:00
Evan You
612eb6712a
fix(runtime-core/refs): handle multiple merged refs for dynamic component with vnode
...
fix #2078
2020-09-14 15:33:38 -04:00
Stanislav Lashmanov
313dd06065
fix(runtime-core/inject): handle optional from
option in inject object config ( #2073 )
2020-09-14 12:52:19 -04:00
HcySunYang
24fcf6ae7c
fix(types): properly infer return type from async setup ( #2051 )
...
fix #2049
2020-09-14 11:28:56 -04:00
Evan You
0124eacc91
refactor(reactivity): refactor iteration key trigger logic + use more robust Map/Set check
2020-09-14 11:26:34 -04:00
Evan You
d4724619fc
fix(inject): fix support for inject option default function
...
fix #2050
2020-09-04 12:07:30 -04:00
Evan You
6dbc6c4cd0
fix(sfc): fix scoped style regression for child component with single root + comment
...
fix #2046
2020-09-04 11:36:55 -04:00
Evan You
fa7ab0a7f7
fix(runtime-core): warn reserved prefix for setup return properties and ensure consistent dev/prod behavior
...
close #2042
2020-09-03 11:21:14 -04:00
ᴜɴвʏтᴇ
95c07d8c36
fix(runtime-core): fix priority of option merging ( #2041 )
2020-09-03 10:35:43 -04:00
Evan You
4386653e76
release: v3.0.0-rc.10
2020-09-02 12:41:54 -04:00
Evan You
ad93fa42fc
fix(runtime-core): openBlock() should not be tracked when block tracking is disabled
2020-09-02 12:30:37 -04:00
Evan You
c73b4a0e10
feat(ssr): serverPrefetch
2020-09-01 22:52:46 -04:00
HcySunYang
63f1f18064
fix(runtime-core): v-model listeners that already exists on the component should not be merged ( #2011 )
...
fix #1989
2020-09-01 22:24:20 -04:00
Carter Li
aa757e8e6d
fix(types): fix this
type of this.$watch
( #2022 )
2020-09-01 21:08:01 -04:00
HcySunYang
93b8ff94a4
polish(teleport): do not warn missing target when teleport is disabled ( #2021 )
2020-09-01 21:05:51 -04:00
zhangzhonghe
0d0970f9cd
refactor(runtime-core): remove the deactivated branch in unmountComponent method ( #2012 )
2020-09-01 21:03:50 -04:00
Evan You
c0427b45ff
fix(sfc/scoped-style): inherit scopeId through nested HOCs with inheritAttrs: false
...
fix #1988
2020-09-01 18:56:02 -04:00
HcySunYang
5b82c48c7b
fix(runtime-core): enable block tracking when normalizing plain element with slot children ( #1987 )
...
fix #1980
2020-09-01 12:38:47 -04:00
ᴜɴвʏтᴇ
706b52aadd
fix(runtime-core): ensure consistent $options merge behavior with 2.x ( #1986 )
...
close #1978 , close #1979
2020-08-31 21:04:06 -04:00
Evan You
8ed0b342d4
fix(runtime-core): fix props/emits resolving with global mixins
...
fix #1975
2020-08-31 18:32:07 -04:00
Guillaume Chau
5df71b739d
chore: add repository directories
2020-08-30 15:06:06 +02:00
Guillaume Chau
7fd3436290
fix(devtools): make el extra properties non-enumerable
2020-08-29 05:00:38 +02:00
Guillaume Chau
38ca7e8e4e
feat(devtools): expose vnode and component on elements
2020-08-29 04:53:25 +02:00
Evan You
94d94bafc5
release: v3.0.0-rc.9
2020-08-26 18:21:18 -04:00
Evan You
0cb7f7f880
fix(runtime-core): fix resolving assets from mixins and extends
...
fix #1963
2020-08-26 18:09:54 -04:00
Pick
d0cc4b37d0
test(runtime-core): add tests for componentSlots ( #1940 )
2020-08-26 12:17:21 -04:00
HcySunYang
6df0e738cb
fix(runtime-core): properly call lifecycle hooks in chained mixins & extends ( #1974 )
...
fix #1973
2020-08-26 10:31:23 -04:00
HcySunYang
9153fc2d8a
fix(runtime-core): class and style should be properly normalized in cloneVNode ( #1967 )
...
fix #1964
2020-08-26 09:37:28 -04:00
Evan You
ede2e0d1b5
release: v3.0.0-rc.8
2020-08-25 10:31:52 -04:00
zhangzhonghe
1ea24000c8
fix(keep-alive): should remove wrapped version of injected keep alive hooks ( #1959 )
2020-08-25 10:02:39 -04:00
Katashin
67b6e0f894
fix(types): relax ComponentPublicInstanceConstructor type for class components ( #1943 )
2020-08-24 21:53:30 -04:00
HcySunYang
955450f539
types(runtime-core): improve the extracted instance types ( #1936 )
2020-08-24 21:37:22 -04:00
Evan You
c15311cfe8
fix(runtime-core): fix data merge order for mixins/extends
...
fix #1953
2020-08-24 21:30:04 -04:00
Evan You
59e58cd4a5
chore: remove console.log [ci skip]
2020-08-24 21:16:13 -04:00
Evan You
36fa42a88c
fix(runtime-core/scheduler): handle nested flushPostFlushCbs calls
...
fix #1947
2020-08-24 18:47:15 -04:00
Evan You
499bc0bfc4
fix(hmr): properly force hmr full component props update
...
fix #1942
2020-08-24 18:13:29 -04:00
Evan You
57642fac8f
fix(ssr): invoke directive created hook during hydration
2020-08-24 17:24:54 -04:00
Evan You
11804fe93f
feat(directives): introduce created
custom directive hook and ensure
...
`v-model` event listener fire before template/props listeners
fix #1931
2020-08-24 17:12:16 -04:00
Guillaume Chau
410e7abbbb
refactor(devtools): emit needs to send the instance in args
2020-08-24 20:27:40 +02:00
Guillaume Chau
23233dc8b8
feat(devtools): catch events
2020-08-24 01:33:12 +02:00
Yang Mingshan
10293c7a18
fix(watch): traverse refs in deep watch ( #1939 )
...
ref #1900
2020-08-23 14:41:11 -04:00
Guillaume Chau
31b99a9139
feat(devtools): expose setupState target object
2020-08-22 16:40:04 +02:00
Guillaume Chau
6eb7fd8333
fix(devtools): unmountApp not behind compile flag
2020-08-22 16:34:18 +02:00
Guillaume Chau
3138f4b42f
chore: rename createDevtoolsHook to createDevtoolsComponentHook
2020-08-22 15:53:21 +02:00
Evan You
54d06ec495
feat(runtime-core): support variadic children in h
for simple JSX compat
...
ref: #1917
2020-08-21 21:54:33 -04:00
Evan You
6602d6dbff
release: v3.0.0-rc.7
2020-08-21 14:13:05 -04:00
Li Chen
0f8c9917f8
chore(runtime-core): use ReactiveFlags.SKIP in vnode for consistency ( #1901 )
2020-08-21 13:45:42 -04:00
Evan You
f02e2f99d9
fix(runtime-core): disable block tracking when calling compiled slot function in tempalte expressions
...
fix #1745 , fix #1918
2020-08-21 12:47:45 -04:00
Evan You
7454e2a52b
build(deps): upgrade to TypeScript 4
2020-08-20 17:48:28 -04:00
HcySunYang
255a2bd178
test(runtime-core): add tests for the optimized mode ( #1884 )
2020-08-20 10:56:31 -04:00
Evan You
d4cc7b2496
fix(teleport): only inherit el for non-patched nodes
...
fix #1903
2020-08-20 10:44:28 -04:00
HcySunYang
7ffb79c563
fix(runtime-core): correctly track dynamic nodes in renderSlot ( #1911 )
2020-08-20 09:37:26 -04:00
Evan You
91c4735416
release: v3.0.0-rc.6
2020-08-19 18:17:42 -04:00
Evan You
cfa7636bbe
chore: comments
2020-08-19 18:02:17 -04:00
Evan You
1eb6067a85
fix(runtime-core): fix beforeUpdate call timing to allow state mutation
...
fix #1899
2020-08-19 17:57:51 -04:00
Carlos Rodrigues
c2913d57d1
fix(types): handling PropType<Function> with default value ( #1896 )
...
fix #1891
2020-08-19 16:36:42 -04:00
Evan You
eb2ae44d94
refactor(types): widen Component
type to include consutructor types
...
returned from `defineComponent`
ref: https://github.com/vuejs/vue-router-next/pull/421
also close #1880
Previous `Component` type is now exported as `ConcreteComponent`.
This introduces a minor breaking change when calling `h(comp, { ... })`
will now fail if `comp` is a of generic `Component` type, since it does
not specify what props it expects.
2020-08-19 16:19:25 -04:00
Carlos Rodrigues
4baf852a34
types(runtime-core): make FunctionalComponent
with emit string[] to be Component
( #1879 )
...
fix #1847
2020-08-19 10:00:48 -04:00
HcySunYang
7f82428680
types(runtime-core): tweak the type of KeepAlive ( #1871 )
2020-08-19 10:00:01 -04:00
edison
7dd067206c
chore: remove unused type VNodeDirectiveData
( #1893 )
2020-08-19 09:51:44 -04:00
Evan You
9f92871c80
types(runtime-core): argument for props validator
...
Unfortunately it requires explicit annotation for now
2020-08-18 11:37:34 -04:00
Aurelius333
a88895b5da
types(runtime-core): make this
void in prop validators and prop default factories ( #1867 )
2020-08-18 11:25:55 -04:00
HcySunYang
9d36c61796
types(runtime-core): improve PropType inference precision ( #1863 )
2020-08-18 11:23:18 -04:00
Pick
4d51be73d3
refactor(runtime-core): add @internal for instance.proxy ( #1849 )
2020-08-18 11:12:26 -04:00
Evan You
0d508e9f51
feat(runtime-core): pass current props to prop default value functions
...
close #1886
2020-08-18 10:52:50 -04:00
Evan You
6ccd9ac2bc
fix(runtime-core): fix Object props validation for objects with custom toStringTag
...
fix #1872
2020-08-17 11:25:38 -04:00
susiwen8
a2c6f0c8c7
chore: remove unecessary 'export' ( #1785 )
2020-08-14 17:38:32 -04:00
Aurelius333
5002ab53d6
types(runtime-core): make this
void in emits validator ( #1842 )
2020-08-14 17:36:26 -04:00
Evan You
223f180529
test(watch): add same value skipping trigger test
2020-08-14 17:35:49 -04:00
zhangzhonghe
517c2b8bdb
fix(teleport): always inherit root DOM nodes on patch ( #1836 )
...
fix #1813
2020-08-14 17:26:32 -04:00
Necmettin Karakaya
86187ca907
chore: typos ( #1670 )
2020-08-14 17:05:12 -04:00
Evan You
86a4f2a6b3
chore: remove unnecessary wrap
2020-08-14 09:52:30 -04:00
HcySunYang
caccec3f78
fix(runtime-core/scheduler): sort postFlushCbs to ensure refs are set before lifecycle hooks ( #1854 )
...
fix #1852
2020-08-14 09:50:23 -04:00
Evan You
611437a3fe
fix(runtime-core/scheduler): allow component render functions to trigger itself
...
fix #1801
2020-08-13 17:42:47 -04:00
underfin
bc6f252c4a
fix(runtime-core): should correctly call beforeEnter
inside Suspense
( #1805 )
...
fix #1795
2020-08-13 12:36:30 -04:00
HcySunYang
3991ff03ce
fix(runtime-core): separate null vs. non-null ref value updates ( #1835 )
...
fix #1789 , fix #1834
2020-08-13 12:27:17 -04:00
Evan You
48576e582c
fix(transition): transition should accept multiple handlers on same event
...
fix #1746
2020-08-06 10:28:03 -04:00
Evan You
791eff3dfb
fix(runtime-core): avoid manual slot invocation in template expressions interfering with block tracking
...
fix #1745
2020-08-06 10:16:13 -04:00
zhangzhonghe
233d191d0d
fix(keep-alive): fix activated hook invocation on nested components ( #1743 )
...
fix #1742
2020-08-06 09:42:52 -04:00
Evan You
3692f2738f
refactor(runtime-core/scheduler): dedicated preFlush queue
...
properly fix #1763 , #1777 , #1781
2020-08-05 10:55:23 -04:00
Evan You
74a1265fea
chore: remove debugger
2020-08-05 09:32:18 -04:00
Evan You
a0e34cee4a
fix(watch): exhaust pre-flush watchers + avoid duplicate render by pre-flush watchers
...
close #1777
2020-08-04 13:20:23 -04:00
Eduardo San Martin Morote
b5f91ff570
fix(watch): allow handler to be a string ( #1775 )
...
fix #1774
2020-08-04 12:42:47 -04:00
Yang Mingshan
b2a91429ed
fix(runtime-core/scheduler): prevent duplicate queue ( #1767 )
2020-08-03 17:19:06 -04:00
Evan You
f6afe7000e
fix(runtome-core): do not cache property access in beforeCreate hook
...
fix #1756
2020-08-03 17:04:45 -04:00
Evan You
d4c17fb48b
fix(watch): pre-flush watcher watching props should trigger before component update
...
fix #1763
2020-08-03 16:49:30 -04:00
Evan You
fce2689ff1
fix(watch): should trigger watcher callback on triggerRef when watching ref source
...
fix #1736
2020-07-30 18:29:38 -04:00
Evan You
09702e95b9
fix(runtime-core/scheduler): only allow watch callbacks to be self-triggering
...
fix #1740
Previous fix for #1727 caused `watchEffect` to also recursively trigger
itself on reactive array mutations which implicitly registers array
`.length` as dependencies and mutates it at the same time.
This fix limits recursive trigger behavior to only `watch()` callbacks
since code inside the callback do not register dependencies and
mutations are always explicitly intended.
2020-07-30 17:57:20 -04:00
Carlos Rodrigues
ce78eac8e9
fix(runtime-core): check if the key is string on undefined property warning ( #1731 )
2020-07-29 10:06:36 -04:00
Evan You
848d9ce2ea
release: v3.0.0-rc.5
2020-07-28 17:42:05 -04:00
Evan You
aa06b1034d
feat(reactivity): proxyRefs
method and ShallowUnwrapRefs
type ( #1682 )
...
* feat(reactivity): `proxyRefs` method and `ShallowUnwrapRefs` type
BREAKING CHANGE: template auto ref unwrapping are now applied shallowly,
i.e. only at the root level. See https://github.com/vuejs/vue-next/pull/1682 for
more details.
2020-07-28 16:30:56 -04:00
underfin
de62cc040c
fix(hmr): should update el for HYDRATE_EVENTS
patchFlags node ( #1707 )
...
fix https://github.com/vitejs/vite/issues/613
2020-07-28 15:52:20 -04:00
Evan You
355c052622
fix(runtime-core): dev root resolution should differentiate user comments vs v-if comments
...
fix #1704
2020-07-28 14:16:09 -04:00
Evan You
4ef5c8d424
fix(runtime-core): fix scheduler dedupe when not flushing
2020-07-28 13:23:09 -04:00
Evan You
c27dfe1d09
fix(runtime-core): scheduler should allow intentional self triggering effects
...
fix #1727
2020-07-28 12:29:43 -04:00
underfin
04a4ebaaeb
fix(runtime-core): use correct container for moving Teleport
content ( #1703 )
2020-07-28 11:23:39 -04:00
Evan You
fbf865d9d4
fix(compiler-core): always compile Teleport and Suspense as blocks
2020-07-28 11:12:43 -04:00
Evan You
b3b65b4058
fix: runtime compilation marker should be applied in exposed compile function
2020-07-28 11:11:26 -04:00
Evan You
7e8b26eba8
refactor(runtime-core): make nextTick() promise reject on scheduler flush error
2020-07-28 10:40:25 -04:00
Evan You
3cc768f9f2
refactor(runtime-core): adjust error handling behavior
...
- Crash in dev to make the errors more noticeable
- Recover in prod to reduce impact on end users
2020-07-28 10:40:25 -04:00
Evan You
5c74243211
test: move mockWarn into setup files
2020-07-27 22:58:51 -04:00
Evan You
354d79c42b
fix(runtime-core): respect render function from mixins
...
fix #1630
2020-07-27 17:44:17 -04:00
underfin
2a633c84ff
fix(transition): should call transition hooks inside already resolved suspense ( #1698 )
...
fix #1689
2020-07-27 16:47:07 -04:00
Evan You
3d2bdafd2f
chore: revert accidentally commented line
2020-07-23 14:53:09 -04:00
Evan You
a75b8a268f
fix(build): fix component resolution when disabling options API
...
fix #1688
2020-07-23 14:33:15 -04:00
Evan You
ba17c871d8
feat: support delimiters option for runtime compilation
...
close #1679
2020-07-23 14:27:17 -04:00
Evan You
d63daaf9b6
release: v3.0.0-rc.4
2020-07-21 15:40:46 -04:00
Evan You
7753485baa
release: v3.0.0-rc.3
2020-07-21 15:27:26 -04:00
Evan You
c852bf18d7
fix(v-model): v-model listeners should not fallthrough to plain element root
...
fix #1643
2020-07-21 14:17:48 -04:00
Bjarki Hall
304830a764
feat(runtime-core): respect function name when using defineComponent
function shorthand ( #1661 )
2020-07-21 13:15:26 -04:00
Evan You
1af3531719
fix(runtime-core): fix attr fallthrough on compiled framgent w/ single static element + comments
2020-07-21 13:11:19 -04:00
Evan You
6390ddfb7d
fix(runtime-core): do not use bail patchFlag on cloned vnodes
...
fix #1665
- cloned vnodes with extra props will receive only the full props flag
- this commit affects `cloneVNode` behavior when used in manual render
functions.
- ok for normal elements since elements only use patchFlags for own
props optimization
- full props flag is skipped for fragments because fragments use
patchFlags only for children optimization
- this also affects `shouldUpdateComponent` where it should now only
respect patchFlags in optimized mode, since component vnodes use
the patchFlag for both props and slots optimization checks.
2020-07-21 13:11:19 -04:00
Evan You
fb8e83f0c2
chore: update link for the feature flag warning [ci skip]
2020-07-21 10:26:16 -04:00
Evan You
54727f9874
feat: provide ability to overwrite feature flags in esm-bundler builds
...
e.g. by replacing `__VUE_OPTIONS_API__` to `false` using webpack's
`DefinePlugin`, the final bundle will drop all code supporting the
options API.
This does not break existing usage, but requires the user to explicitly
configure the feature flags via bundlers to properly tree-shake the
disabled branches. As a result, users will see a console warning if
the flags have not been properly configured.
2020-07-20 21:51:30 -04:00
Tan Li Hau
288b4eab9e
fix(watch): fix watching reactive array ( #1656 )
...
fixes #1655
2020-07-20 12:39:22 -04:00
Evan You
1f4045a086
release: v3.0.0-rc.2
2020-07-19 14:52:42 -04:00
Evan You
03c681e396
refactor(types): move component props interfaces + expose AllowedComponentProps
...
fix #1632
2020-07-19 14:09:53 -04:00
zhangzhonghe
2deb0c7a74
fix(keep-alive): handle "0" as cache key ( #1622 )
...
fix #1621
2020-07-19 13:31:07 -04:00
Carlos Rodrigues
8facaefcc3
fix(watch): callback not called when using flush:sync
( #1633 )
2020-07-19 13:30:24 -04:00
Evan You
4655d69983
fix(runtime-core/hmr): only use cloneNode mount optimization in prod
...
fix #1626
2020-07-19 13:22:58 -04:00
Evan You
b3af5dbe5d
chore: more detailed teleport target warning
...
close #1629
2020-07-19 11:52:03 -04:00
Stanislav
fa5ddf8d06
chore(types): convert type literals to records ( #1615 )
2020-07-18 22:56:28 -04:00
Evan You
0ea14cade9
release: v3.0.0-rc.1
2020-07-17 15:30:17 -04:00
HcySunYang
5d8a64d53a
feat(types): deny unknown attributes on component by default ( #1614 )
...
close #1519
2020-07-17 11:43:28 -04:00
underfin
a8966457d3
refactor(devtools): extract same logic into createDevtoolsHook
( #1608 )
2020-07-17 11:25:33 -04:00
lawvs
a935998b33
chore: better comment hovers preview [ci skip] ( #1612 )
2020-07-17 11:24:12 -04:00
Evan You
341b30c961
fix(watch): post flush watchers should not fire when component is unmounted
...
fix #1603
2020-07-17 11:17:29 -04:00
Evan You
024a8f10f5
chore: also expose DeepReadonly in runtime-core
2020-07-17 09:29:44 -04:00
Guillaume Chau
568b6db12b
feat: Initial devtools support ( #1125 )
2020-07-16 18:18:52 -04:00
Evan You
5ed73cd874
release: v3.0.0-beta.24
2020-07-16 13:51:52 -04:00
Evan You
8b5d153d7f
release: v3.0.0-beta.23
2020-07-16 12:48:56 -04:00
Evan You
165068dbc2
perf(runtime-core): avoid duplicate postFlushCb invocation
...
Also improve flush performance by using for loop instead of shift()
fix #1595
2020-07-15 22:36:41 -04:00
Evan You
aab99abd28
fix(slots): properly force update on forwarded slots
...
fix #1594
2020-07-15 20:12:49 -04:00
Evan You
4535b1bde8
chore: remove outdated options
2020-07-15 17:05:00 -04:00
Evan You
fcbefdb769
release: v3.0.0-beta.22
2020-07-15 12:43:41 -04:00
Evan You
5f61aa0f71
fix(hmr): fix hmr updates for reused hoisted trees
...
fix https://github.com/vitejs/vite/issues/514
2020-07-15 12:26:44 -04:00
Evan You
32a4cb804b
test: improve coverage
2020-07-15 10:38:45 -04:00
Evan You
056a13142f
test: fix fragment unkeyed fragment test flag
2020-07-15 10:10:38 -04:00
春去春又来
379a8af288
test(runtime-core): add test for rendererComponent ( #1393 )
2020-07-15 09:34:23 -04:00
underfin
246ec5c594
fix(runtime-core): do not call transition enter hooks when mounting in suspense ( #1588 )
...
fix #1583
2020-07-15 09:24:16 -04:00
Carlos Rodrigues
d78a6821f5
types(runtime-core): default SetupContext
generic argument to EmitsOptions
( #1584 )
2020-07-15 09:19:20 -04:00
Evan You
9188e9ea74
release: v3.0.0-beta.21
2020-07-14 17:18:07 -04:00
Evan You
f49f95344b
chore: fix types
2020-07-14 17:07:36 -04:00
underfin
583a1c7b45
fix(runtime-core): avoid scopeId as attr for slot nodes with same scopeId ( #1561 )
...
fix vitejs/vite#536
2020-07-14 17:06:39 -04:00
Pick
2b60870f8a
refactor(types): improve code readability & friendly to type hints ( #1560 )
2020-07-14 16:33:30 -04:00
Evan You
00ab9e2e85
refactor: adjust event options handling to be JSX friendly
2020-07-14 13:20:59 -04:00
Evan You
380c6792d8
fix(v-on): refactor DOM event options modifer handling
...
fix #1567
Previously multiple `v-on` handlers with different event attach option
modifers (`.once`, `.capture` and `.passive`) are generated as an array
of objects in the form of `[{ handler, options }]` - however, this
makes it pretty complex for `runtime-dom` to properly handle all
possible value permutations, as each handler may need to be attached
with different options.
With this commit, they are now generated as event props with different
keys - e.g. `v-on:click.capture` is now generated as a prop named
`onClick.capture`. This allows them to be patched as separate props
which makes the runtime handling much simpler.
2020-07-14 11:48:05 -04:00
Evan You
9152a89016
fix(v-on): capitalize dynamic event names
2020-07-13 17:36:46 -04:00
Pick
09f61b4049
types(runtime-core): adjust Renderer's type declaration ( #1566 )
2020-07-13 12:44:37 -04:00
Evan You
65beba98fe
fix(slots): differentiate dynamic/static compiled slots
...
fix #1557
2020-07-13 12:36:41 -04:00
Evan You
ba3b3cdda9
fix(runtime-core/emits): merge emits options from mixins/extends
...
fix #1562
2020-07-13 11:55:46 -04:00
Evan You
b6cdd5621e
wip: template binding optimization
2020-07-10 22:12:25 -04:00
Evan You
9f706a9f5e
feat(runtime-dom): useCssVars
2020-07-09 16:25:29 -04:00
Evan You
20df2f3817
release: v3.0.0-beta.20
2020-07-08 12:45:30 -04:00
Evan You
903e8f697e
fix(runtime-core): should allow v-model listeners to fallthrough, but ignore for warning
...
fix #1543
2020-07-08 11:56:47 -04:00
Carlos Rodrigues
1e90605c15
types(runtime-core): provide valid type for default $emit
( #1498 )
2020-07-08 11:51:03 -04:00
meteorlxy
220db9bcda
feat(types): expose WritableComputedRef ( #1500 )
2020-07-08 11:49:07 -04:00
Evan You
00f6031fbf
test: assert vnode invalid key warning for NaN
2020-07-08 11:48:12 -04:00
Felix Rilling
829b35e426
chore: typo fixes ( #1546 )
...
* chore: fix typos in comments/JSDoc.
* chore: fix typo in internal function name.
* chore: fix typos in test comments/descriptions/variable names.
2020-07-08 12:32:42 +02:00
Evan You
fe9e227ae4
types: adjust resolveDynamicComponent return type
2020-07-07 12:43:05 -04:00
Evan You
d5ab70ba66
release: v3.0.0-beta.19
2020-07-07 10:04:31 -04:00
Evan You
58b07069ad
fix(watch): stop instance-bound watchers in post render queue
...
so that changes triggered in beforeUnmount get correct value in callback
fix #1525
2020-07-06 21:50:56 -04:00
Evan You
d7184c99e6
refactor(types): add VNode to VNodeTypes
2020-07-06 21:12:15 -04:00
Evan You
31e37b417b
chore: warn NaN vnode key
2020-07-06 18:56:21 -04:00
Evan You
d86b01ba3a
fix(keep-alive): fix keep-alive with scopeId/fallthrough attrs
...
fix #1511
2020-07-06 18:17:40 -04:00
Evan You
6dd59ee301
fix(v-model): should ignore compiled v-model listeners in attr fallthrough
...
fix #1510
2020-07-06 17:00:34 -04:00
Evan You
36b6b4f022
fix(runtime-core/template-ref): template ref used in the same template should trigger update
...
fix #1505
2020-07-06 16:40:00 -04:00
Evan You
7f83856f34
release: v3.0.0-beta.18
2020-07-01 21:06:25 -04:00
Evan You
f3e9c1b59d
fix(runtime-core): avoid accidental access of Object.prototype properties
2020-07-01 20:13:02 -04:00
Evan You
4e8e689572
fix: ensure vnode hooks are called consistently regardless of keep-alive
2020-07-01 19:50:13 -04:00
Evan You
c9629f2692
feat(runtime-core): support creating vnode from existing vnode
...
This allows passing vnode around with curried props and use it in
places where VNodeType is expected, e.g. `<component :is=""/>`
2020-07-01 19:48:01 -04:00
Evan You
2bdb5c1464
fix(runtime-core): pass unmount into inital mount patch prop
2020-07-01 16:01:46 -04:00
Evan You
7886c267f7
refactor: remove unused inheritRef option
...
This is technically a breaking change, but the option was not meant for public use
and ended up not solving the problem it was introduced for.
2020-07-01 15:40:11 -04:00
Evan You
f6da6bf999
release: v3.0.0-beta.17
2020-06-30 12:10:15 -04:00
Evan You
6b23216e6d
chore: comment on slot optimization hint [ci skip]
2020-06-30 12:01:05 -04:00
Evan You
d2bf3cc4a8
chore: remove unnecessary loop
2020-06-30 11:43:15 -04:00
Evan You
b3536d87a5
fix(runtime-dom): allow force updating value bindings for controlled inputs
...
fix #1471
2020-06-30 11:23:09 -04:00
Evan You
062835d45a
fix(slots): make compiled slot marker non-enumerable
...
fix #1470
2020-06-30 09:27:06 -04:00
Jian Zhang
0017caf68b
chore: avoid unnecessary function call ( #1464 )
2020-06-29 18:52:44 -04:00
Evan You
ec3c12ee10
release: v3.0.0-beta.16
2020-06-29 18:34:50 -04:00
Evan You
86d3972855
fix(transition-group): vue 2 compatible handling of transition-group w/ multiple v-for children
...
fix #1126
2020-06-29 18:16:10 -04:00
underfin
d4cd12887e
fix(BaseTransition): collect correct children with slot passthrough in Transition
( #1456 )
...
fix #1455
2020-06-29 12:04:28 -04:00
Evan You
afe13e0584
fix(ssr): fix ssr scopeId on component root
2020-06-27 00:27:44 -04:00
Evan You
978d9522e8
fix(runtime-core): fix scopeId inheritance for component inside slots
2020-06-26 22:28:55 -04:00
Evan You
0dd5cde861
fix(runtime-core): handle patch flag de-op from cloned vnode
...
close #1426
2020-06-26 18:05:53 -04:00
Evan You
f3f94e4deb
fix(runtime-core): component root should inherit scopeId from vnode
...
fix #1399
2020-06-26 17:54:44 -04:00
Evan You
70ea76ae0c
fix(slots): filter out compiler marker from resolved slots
...
fix #1451
2020-06-26 17:18:39 -04:00
Evan You
d5dbd27193
fix(ssr): handle fallthrough attrs in ssr compile output
2020-06-26 16:55:37 -04:00
Stanislav Lashmanov
6bc0e0a31a
feat(ssr): renderToStream ( #1197 )
2020-06-26 11:09:47 -04:00
Evan You
e0d19a6953
fix(runtime-core): always check props presence in public instance proxy
...
When the there are props merged from mixins or extends, the component itself
may not have a props property.
fix #1236 where merged props are not exposed in production
2020-06-26 10:19:07 -04:00
Evan You
5453e791ae
chore: fix types
2020-06-26 10:07:07 -04:00
edison
178e89305d
chore(reactivity): use consistent naming for ReactiveFlags enum ( #1428 )
2020-06-26 09:32:09 -04:00
Evan You
e765d81404
fix(runtime-core): fix component name inference in warnings
...
Should not pollute component definition name property
fix #1418
2020-06-26 09:28:15 -04:00
underfin
1c4e1b6792
fix(runtime-core): should remove no longer present camelCase props ( #1413 )
...
fix #1412
2020-06-26 09:16:06 -04:00
Evan You
056cac9185
feat(runtime-core): expose version on app instance
...
close #1449
2020-06-26 09:03:55 -04:00
Evan You
9edbc27f45
fix(transition): fix css:false with hooks with no explicit done callback
...
close #1149
2020-06-25 17:40:49 -04:00
underfin
2ff8dcab0a
fix(BaseTransition): fix BaseTransition
delayed leave with mode in-out
( #1404 )
...
fix #1400
2020-06-25 17:00:19 -04:00