Commit Graph

1313 Commits

Author SHA1 Message Date
edison
3efa2aff13
chore(runtime-core): remove unnecessary variables (#2680) 2021-02-05 20:06:50 +01:00
Alan Wang
1f567264a7
test: fix typo in expect message (#2678) 2021-02-05 20:06:21 +01:00
Cédric Exbrayat
73117f6b5b
fix(runtime-core): allow overriding properties other than props (#3105)
This is useful for testing, as Jest can't spy on an object without `hasOwnProperty`.
VTU can add it, but this commit is needed first.
2021-02-05 19:59:46 +01:00
HcySunYang
48f0d2944f
fix(types): extract the correct props type for the DateConstructor (#2676) 2021-02-05 19:56:23 +01:00
Thorsten Lünborg
288ae0a8d9
feat(runtime-core): improve render context warning (#2496)
Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-05 19:55:45 +01:00
Yang Mingshan
01fdbf4b06
types: use non-null assertion instead of explicit type cast (#2974) 2021-02-05 19:55:23 +01:00
HcySunYang
347a8798a4
fix(runtime-core): check the DEV_ROOT_FRAGMENT flag correctly in the dev environment (#2750) 2021-02-05 19:54:59 +01:00
HcySunYang
2587f36fe3
fix(runtime-core): component methods should override global properties in DEV (#3074) 2021-02-05 19:52:40 +01:00
Yang Mingshan
e109f7b898
chore: remove overloads numbers in comments (#2976) 2021-02-04 14:34:40 +08:00
edison
ffd5288545
feat(runtime-core): props type support BigInt (#2891) 2021-02-03 19:25:45 +01:00
hiroki
18b0c9a011
docs(type): remove unmount parameters (#2601) 2021-02-03 19:09:59 +01:00
Thorsten Lünborg
60e05eff23
fix(runtime-core): ensure app instance can be garbage collected after unmount (close #2907) (#2909)
close #2907

Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-03 19:09:20 +01:00
Evan You
310cb8cfab chore: fix useSSRContext casing in warning message 2021-01-29 15:03:52 -05:00
Guillaume Chau
4fecb27f86 fix(devtools): send instance to devtools when it's mounted instead of created 2021-01-29 16:48:37 +01:00
Godpu
f2228a87d4
chore: typo (#2953) 2021-01-06 10:46:51 +01:00
Bruno P. Kinoshita
ee266af42a
chore: typo "depdendency" (#2920) 2020-12-31 11:15:57 +01:00
Evan You
5a5d037dbb release: v3.0.5 2020-12-30 15:50:28 -05:00
Guillaume Chau
3626ff07fe feat(devtools): send instance 2020-12-18 18:24:01 +01:00
Bas van Meurs
3867bb4c14
fix(runtime-core): component mount anchor memory leak (#2459)
fix #2458
2020-12-04 18:03:10 -05:00
edison
82bf7ebf36
refactor(runtime-core): extract common getComponentName function (#2454) 2020-12-04 17:03:03 -05:00
Zcating
d2d27b2e66
types(watch): better typing when watching multiple sources (#2425) 2020-12-04 16:32:26 -05:00
Carlos Rodrigues
6684c6334d
types: mixin and extends typing on data and setup (#2404)
close #2350
2020-12-04 16:06:34 -05:00
edison
c59897c7b0
fix(runtime-core): skip patchBlockChildren if n1.dynamicChildren is null (#2717)
fix #2715 

The bug was introduced by #2485 where a compiled slot may result in a bailed Fragment
which then gets its dynamicChildren set to `null` by the renderer.
2020-12-03 12:17:04 -05:00
Evan You
d067fb2dbb release: v3.0.4 2020-12-02 17:23:43 -05:00
Evan You
3523f743e5 build(deps-dev): handle @types/jest bump 2020-12-02 17:05:30 -05:00
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