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