Commit Graph

2570 Commits

Author SHA1 Message Date
Evan You
084e932e85 refactor: simplify lifecycle hook call logic 2021-03-25 16:48:51 -04:00
HcySunYang
b58bb16959
fix(runtime-core): should call chained mixins and extends (#3040)
fix #3038
2021-03-25 16:39:57 -04:00
HcySunYang
86ceef4352
fix(runtime-core): fix warning for absent props (#3363)
fix #3362
2021-03-25 16:22:43 -04:00
bartenra
e4a5712a33
fix(types/jsx): llow tabindex to be a string (#3476) 2021-03-25 16:20:38 -04:00
funkyfun
c8aed13711
chore(types): remove redundant 'undefined' type (#3484) 2021-03-25 16:19:02 -04:00
edison
bbc5fe6a97
fix(compiler-sfc): should not rewrite scope variable (#3449)
fix #3445
2021-03-25 16:16:48 -04:00
GU Yiling
ca6aa01181
fix(compiler-dom): stringifyStatic should remove attribute bindings with null value (#3477)
fix #3475
2021-03-25 16:14:06 -04:00
Evan You
7cf143dd4f chore: fix test 2021-03-25 16:06:02 -04:00
HcySunYang
b4b82159e2
fix(compiler-core): should not condense whitespace in RCDATA text mode (#3482)
fix #3479
2021-03-25 15:53:03 -04:00
HcySunYang
6e88156934
fix(runtime-core): should not cache property access during data() invocation (#3299)
fix #3297
2021-03-25 15:48:12 -04:00
HcySunYang
4bf7ba19bf
fix(compiler-core): detect v-if branch root with comment as dev fragment (#2785)
fix #2780
2021-03-25 15:43:44 -04:00
07akioni
3755e60c52
fix(types): union function prop (#3119)
fix #3357
2021-03-25 11:27:54 -04:00
Evan You
41e02f0fac fix(reactivity): ensure computed can be wrapped by readonly
fix #3376
2021-03-25 11:23:34 -04:00
TJ Koblentz
e4b5fccd0c
fix(ssr): watchEffect onInvalidate runner initialization (#3323)
close #3322
2021-03-25 11:17:57 -04:00
edison
bf34e33c90
fix(runtime-core): ensure only skip unflushed job (#3406) 2021-03-25 11:13:35 -04:00
HcySunYang
49f4072c83
fix(compiler-ssr): keep the order of imports expression for the fallback branch of SSR (#3448)
fix #3447
2021-03-25 11:10:25 -04:00
HcySunYang
776951315d
fix(Teleport): component with multi roots should be removed when unmounted (#3157)
fix #3156
2021-03-25 11:02:50 -04:00
HcySunYang
0a583d5ca2
fix(ssr): respect render function from extends/mixins in ssr (#3006)
fix #3004
2021-03-25 10:32:17 -04:00
HcySunYang
5dbe834858
fix(rumtime-core): custom dom props should be cloned when cloning a hoisted DOM (#3080)
fix #3072
2021-03-25 10:21:57 -04:00
edison
eb1fae63f9
fix(runtime-core): handle error in async watchEffect (#3129) 2021-03-23 10:20:52 +01:00
21d1288133
fix(teleport): targetAnchor should also be removed when unmounted (#2870)
* fix(teleport): targetAnchor should also be removed when unmounted

* fix(teleport): targetAnchor should also be removed when unmounted
2021-03-23 10:19:09 +01:00
Cédric Exbrayat
3b3a9a1f52
fix: add display name for suspense component (#3312) 2021-03-23 10:17:15 +01:00
HcySunYang
67a0290c0a
fix(transition): toggling branches with in-out mode should be transitioned correctly (#3109)
fix #3104
2021-03-22 16:56:24 -04:00
Evan You
b2e00f011a test(ssr): test render function Transition usage in SSR 2021-03-22 16:51:51 -04:00
HcySunYang
e8e9b00f81
fix(KeepAlive): adapt keepalive for ssr (#3259)
fix #3255
2021-03-22 16:49:07 -04:00
HcySunYang
602b58ebd1
fix(compiler-core): fix the detection of forwarded slots with v-if or v-for (#3353)
fix #3347
2021-03-22 16:34:46 -04:00
HcySunYang
6cb94752b0
fix(compiler-sfc): scope Id should not be attached to @keyframe breakpoint rules (#3308)
fix #3304
2021-03-19 10:32:30 -04:00
Evan You
540e26f49c chore: only set slotted flag on sfc descriptor if style is scoped 2021-03-05 18:28:12 -05:00
Evan You
ff4d4ec249 chore: fix all test cases 2021-03-05 18:28:12 -05:00
Evan You
68416e988f chore: fix types 2021-03-05 18:28:12 -05:00
Evan You
02cbbb718c perf: support only attaching slot scope ids when necessary
This is done by adding the `slotted: false` option to:

- compiler-dom
- compiler-ssr
- compiler-sfc (forwarded to template compiler)

At runtime, only slotted component will render slot fragments with
slot scope Ids. For SSR, only slotted component will add slot scope Ids
to rendered slot content. This should improve both runtime performance
and reduce SSR rendered markup size.

Note: requires SFC tooling (e.g. `vue-loader` and `vite`) to pass on
the `slotted` option from the SFC descriptoer to the `compileTemplate`
call.
2021-03-05 18:28:12 -05:00
Evan You
f74b16ccfe fix(compiler): properly bail stringfication for nested slot elements 2021-03-05 18:28:12 -05:00
Evan You
aea88c3280 refactor: fix implementation of SFC :slotted id handling
fix #2892
2021-03-05 18:28:12 -05:00
Cédric Exbrayat
57e1aa815b
chore: fix ownKeys signature (#3313) 2021-03-03 11:26:49 -05:00
Evan You
3e4c3ac66d build(deps): bump @babel/parser and @babel/types 2021-03-03 11:25:13 -05:00
dependabot[bot]
9fd66d8edc
build(deps-dev): bump pug from 2.0.4 to 3.0.1 (#3344)
Bumps [pug](https://github.com/pugjs/pug) from 2.0.4 to 3.0.1.
- [Release notes](https://github.com/pugjs/pug/releases)
- [Commits](https://github.com/pugjs/pug/compare/pug@2.0.4...pug@3.0.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-03 11:19:33 -05:00
Evan You
69304cf166 refactor: adjust logic branches 2021-03-01 15:45:55 -05:00
HcySunYang
7562e72c2b
fix(runtime-core): fix async component ref handling (#3191)
fix #3188
2021-03-01 15:00:32 -05:00
Evan You
75fdcd85ce chore: rename test to match src filename 2021-03-01 12:30:04 -05:00
Kadir Yazıcı
13c9d2ca82
fix(types): allow style to be an array in JSX (#2947) 2021-03-01 12:29:13 -05:00
HcySunYang
8ffcde2836
fix(runtime-dom): support mounting app to svg container (#2929)
fix #2926
2021-03-01 11:51:32 -05:00
Evan You
1a955e2278 release: v3.0.7 2021-03-01 10:59:29 -05:00
Evan You
24b35237a0 test: improve e2e test stability 2021-03-01 10:49:23 -05:00
Evan You
1dedc19e1f fix(compiler-sfc): handle more edge cases in default rewrite 2021-02-26 11:05:20 -05:00
lidlanca
012dc5a303
fix(compiler-ssr) ensure that ssrHelpers are unique after merge from parent context (#3269)
fix #3268
2021-02-25 18:25:39 -05:00
zhufengzhufeng
9cd988342c
perf(reactivity): only call Set.add if doesn't already have value (#3307) 2021-02-25 14:57:35 -05:00
HcySunYang
5ad4036e29
fix(v-show): v-show takes higher priority than style attribute (#3230)
fix #2757
2021-02-25 10:26:54 -05:00
HcySunYang
45fae9d308
fix(scheduler): ensure updates are always inserted in ascending id order (#3184)
fix #2768, fix #2829
2021-02-25 09:37:25 -05:00
Evan You
75964aba03 test: test case for #3300, #3301 2021-02-25 09:07:49 -05:00
HcySunYang
e3568bae27
fix(runtime-core): properties in methods should be writable and enumerable in DEV (#3301)
fix #3300
2021-02-25 09:04:28 -05:00
HcySunYang
4a965802e8
types: support object as props type (#3165) 2021-02-24 16:20:41 -05:00
HcySunYang
354966204e
dx(runtime-dom): warn config.isCustomElement usage in runtime-only build (#2945) 2021-02-24 16:18:55 -05:00
Evan You
d0ea74556f fix: init devtools after feature flag checks 2021-02-24 15:59:38 -05:00
Evan You
d9f91e26f9 release: v3.0.6 2021-02-24 15:19:31 -05:00
Evan You
180310cbe9 refactor(runtime-dom): avoid form attribtue tag check
the tag check while technically stricter, is not really necessary
and introduces too much weight
2021-02-24 15:06:51 -05:00
Thorsten Lünborg
c5d147c57f
fix(runtime-dom): ensure readonly type prop on textarea is handled patched as attribute (#2888)
close #2766

Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-24 14:51:19 -05:00
Evan You
fcb6c8920c fix(compiler-dom): fix cdn entries
ref #3181 #3185
2021-02-23 10:00:48 -05:00
Evan You
5a7a1b8293 fix(hmr): deep clone reused hoisted trees during dev
fix vitejs/vite#2022
2021-02-15 15:09:27 -05:00
Evan You
c69f4ea857 fix(compiler-ssr): avoid duplicated asset imports merged from component slot client branch
fix vitejs/vite#2034
2021-02-15 12:12:50 -05:00
Matias Capeletto
6d762a84ca
fix(compiler-sfc): removeSpecifier issue when removing initial imports (script-setup) (#2729) 2021-02-13 10:06:34 +01:00
Evan You
03360cefa1 fix(compiler-sfc): treat const reactive() bindings as mutable 2021-02-10 11:39:07 -05:00
Evan You
734c65badd fix(compiler-core): do not mark v-for as stable on const bindings
since the source value may be a reactive array

fix vitejs/vite#1956
2021-02-09 11:57:09 -05:00
edison
ec8fd10cec
fix(runtime-core): instanceWatch should pass this.proxy to source as the first argument (#2753) 2021-02-09 08:00:32 +01:00
JokcyLou
bd1240c127
feat: remove useless option in KeepAlive (#3170) 2021-02-09 07:58:53 +01:00
shadowings-zy
b302cbbbd3
fix: kebab-case events are attached correctly on web components, see #2841 (#2847) 2021-02-09 07:58:36 +01:00
xiejiahe
1cc8712235
chore: comment initial space (#3192) [skip ci]
fix(typo): Comment add spaces.
2021-02-08 12:32:12 +01:00
Thorsten Lünborg
96b6433524
fix(compiler-dom): ensure global build filename matches the one defined in package.json (close #3181) (#3185)
Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-07 14:40:14 +01:00
HcySunYang
f43a3b0beb
fix(runtime-core): align $parent/$root with the template ref when using expose (#3158) 2021-02-07 14:39:52 +01:00
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
Albert Kaaman
4b551420fc
fix: remove superfluous spaces when normalizing class (#3083)
Co-authored-by: Jacek Karczmarczyk <jkarczm@gmail.com>
2021-02-04 14:41:46 +01:00
Evan You
49bc2e4db5
feat(compiler-sfc): upgrade to postcss 8 (#2710) 2021-02-04 14:37:55 +01:00
07akioni
a89d985375
types: focusin & out events (#3136) 2021-02-04 14:05:24 +01:00
Yang Mingshan
e109f7b898
chore: remove overloads numbers in comments (#2976) 2021-02-04 14:34:40 +08:00
edison
c9f94fa3cf
feat(compiler-core): support BigInt in template (#2900) 2021-02-03 19:28:46 +01:00
HcySunYang
dd02cf37d5
perf(reactivity): should not track __isVue (#2940) 2021-02-03 19:28:07 +01:00
underfin
9dc816d634
fix(compiler-sfc): compiler blank srcset (#3005)
fix https://github.com/vitejs/vite/issues/1523
2021-02-03 19:27:34 +01:00
edison
ffd5288545
feat(runtime-core): props type support BigInt (#2891) 2021-02-03 19:25:45 +01:00
Thorsten Lünborg
6a48d23749
fix: ensure all published packages contan a LICENCE file (close #2650) (#2857)
close #2650

Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-03 19:24:47 +01:00
07akioni
4ca4666d58
fix(toRef): ref created from union typed prop can't be used in watch (#3048) 2021-02-03 19:12:51 +01:00
HcySunYang
6d5b623512
fix(compiler-sfc): the empty lang attribute should be treated as no lang specified (#3051) 2021-02-03 19:11:45 +01:00
luwuer
f262438073
fix(runtime-dom): enable set form attr to null on form-elements (#2840) (#2849)
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com>
Co-authored-by: Thorsten Lünborg <t.luenborg@googlemail.com>
2021-02-03 19:11:09 +01:00
Haoqun Jiang
97d6f1a716
fix: should prefix ShadowRoot with window. (#2943)
Otherwise this expression would throw in environments that does not
support `ShadowRoot` which includes the common mocha testing environment
setup that uses `jsdom` and `jsdom-global`.

It is because `ShadowRoot` is not an enumerable property on `window`,
`jsdom-global` fails to expose it on the `global` object.

See the error message at: https://app.circleci.com/pipelines/github/vuejs/vue-cli/779/workflows/17d7d7c4-7605-4588-878a-ddb3a6d37102/jobs/24147
2021-02-03 19:10:27 +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
Evan You
fd16f2bd78 refactor: avoid global scope parentStack 2021-01-15 16:28:55 -05:00
Godpu
f2228a87d4
chore: typo (#2953) 2021-01-06 10:46:51 +01:00
underfin
4d9bcb768d
fix(devtools): init devtools in production (#2906) 2021-01-05 12:54:43 -05:00
Evan You
2ea9867398 fix(compiler-sfc): transformAssetUrls.base should not affect known module requests
fix https://github.com/vitejs/vite/issues/1343
2021-01-04 15:10:51 -05: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
Evan You
8ad1aab068 test(ssr): refactor ssr render tests
Merge renderToString and renderToStream to run the same tests
2020-12-30 15:40:55 -05:00
Evan You
88f6b33d05 fix(ssr): properly handle ssr empty slot and fallback 2020-12-30 15:40:28 -05:00
Guillaume Chau
3626ff07fe feat(devtools): send instance 2020-12-18 18:24:01 +01:00
Cédric Exbrayat
dbe22ba356
dx(runtime-core): add selector in mount warning (#2563) 2020-12-04 18:25:13 -05:00
meteorlxy
5b9b37fc9b
fix(compiler-sfc): should keep template nodes with no content (#2468)
close #2463
2020-12-04 18:23:01 -05:00
Joel Denning
db786b1afe
fix(compiler-sfc): support transforming asset urls with full base url. (#2477) 2020-12-04 18:20:25 -05: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
ᴜɴвʏтᴇ
b2189ba2f3
fix(runtime-dom): support mounting app on ShadowRoot (#2447)
fix #2399
2020-12-04 16:51:38 -05:00
Evan You
338d869c70 test(compiler-core): test expression transform w/ bindingMetadata 2020-12-04 16:46:00 -05:00
Zcating
d2d27b2e66
types(watch): better typing when watching multiple sources (#2425) 2020-12-04 16:32:26 -05:00
edison
47b3652ecd
chore(compiler-core): improve types (#2428) 2020-12-04 16:28: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
Evan You
cbaa380506 fix(transition): ensure manual style manipulation in transition leave hooks work
ref #2720
2020-12-03 16:10:22 -05:00
童欧巴
df48fc225a
chore: fix file path in comments (#2709) [ci skip] 2020-12-03 12:27:03 -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
a8352506f6 refactor: cache constant check result on transform context
also fix edge case for missed createVNode import on static svg nodes
2020-12-03 11:10:40 -05:00
Evan You
ad4d3915d3 fix(compiler-core): fix missing createVNode import on nested v-for
fix #2718
2020-12-03 11:03:06 -05:00
luwuer
3f8f9b67b3
fix(transition): ensure styles from *-leave-active trigger transition (#2716)
fix #2712
2020-12-03 10:37:47 -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
e315d84936 fix(types): fix ToRefs type on union value types
fix #2687
2020-12-02 14:58:03 -05:00
luwuer
e2618a632d
fix(transition): respect rules in *-leave-from transition class (#2597)
fix #2593
2020-12-02 14:41:20 -05:00
Evan You
eaf8a67c72 fix(transition): avoid invoking stale transition end callbacks
fix #2482
2020-12-02 12:15:57 -05:00
Evan You
fe5428db12 fix(compiler-ssr): handle v-model checkbox with true-value binding 2020-12-01 12:43:59 -05:00
Evan You
48f00c0f1b fix(v-model): respect checkbox true-value/false-value on initial render
fix #2694
2020-12-01 12:02:37 -05:00
Evan You
085bbd5fe0 fix(compiler-sfc): named imports from .vue file should not be treated as constant
fix #2699
2020-12-01 11:52:29 -05:00
Evan You
f2b0a8e81d fix(v-model): avoid mutation when using Set models + fix multi select Set model update 2020-12-01 11:40:14 -05:00
Evan You
83a79a829c Revert "fix(v-model): mutate original array for v-model multi checkbox (#2663)"
This reverts commit 87581cd266.

ref: #2700
2020-12-01 11:16:40 -05:00
Evan You
11a76ebd94 chore: fix snapshot 2020-12-01 09:21:39 -05:00
Evan You
4307610c35 chore: fix setRef usage 2020-11-30 20:07:06 -05:00
Evan You
5a19bb5320 refactor(runtime-dom): avoid unnecessary typeof checks during props patching 2020-11-30 20:05:02 -05:00
edison
fb6b9f8e8f
fix(runtime-dom): attribute should be removed with nullish values (#2679)
fix #2677
2020-11-30 19:28:03 -05:00
Evan You
64d4681e4b fix(async-component): forward refs on async component wrapper
fix #2671
2020-11-30 18:59:14 -05:00
HcySunYang
87581cd266
fix(v-model): mutate original array for v-model multi checkbox (#2663)
Note: this change will break non-deep `watch` on the `v-model` bound array since the array is no longer replaced. This can be considered part of the Array watch changes in v3 as detailed at https://v3.vuejs.org/guide/migration/watch.html

This is unfortunate but unavoidable since the issue that it fixes is more important: `v-model` should definitely work with a non-ref reactive array.

fix #2662
2020-11-30 17:48:51 -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
e4f09c1419 fix(compiler-core/v-on): handle falsy values when caching v-on handlers
fix #2605
2020-11-30 16:30:36 -05:00
Evan You
3cd30c5245 fix(v-show): ensure v-show conflict with inline string style binding
fix #2583
2020-11-30 15:48:34 -05:00
Evan You
9db7095962 fix(compiler-core): fix scope var reference check for v-on expressions
fix #2564
2020-11-30 15:19:32 -05:00
Evan You
e41b46c396 chore: annotate generated slot flag 2020-11-30 15:19:32 -05:00
edison
5f2a8533ac
fix(compiler-sfc): fix parsing error when lang="" is used on plain element (#2569)
fix #2566
2020-11-30 14:45:26 -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
43eab923ea fix(compiler-sfc): should not remove import statements with no specifier when compiling script setup 2020-11-28 13:51:32 -05:00
Evan You
a76e58e5fd build: avoid shipping patch flag name strings in prod 2020-11-27 18:13:04 -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