Commit Graph

3347 Commits

Author SHA1 Message Date
Evan You 98bc9a26e9 wip: more compat tweaks 2021-04-22 09:49:25 -04:00
Evan You 12abd4af85 wip: class/style fallthrough compat 2021-04-21 22:04:26 -04:00
Evan You a75b00c558 wip: treat compat model listener as already declared 2021-04-21 19:13:26 -04:00
Evan You 5566d39d46 perf: only trigger $attrs update when it has actually changed 2021-04-21 19:05:20 -04:00
Evan You 66b6b4226b chore: include component info in recursive update warning 2021-04-21 15:20:15 -04:00
Evan You 1b8f14ee76 wip: more compat progress 2021-04-21 15:09:18 -04:00
Evan You 62b8f4a39c fix(watch): avoid traversing non-plain objects 2021-04-20 17:13:58 -04:00
Evan You f6dee53270 wip: compat integration progress 2021-04-20 09:25:12 -04:00
Evan You 7dc681c196 wip: filters compat 2021-04-19 12:29:55 -04:00
Evan You 467076361a wip: warn against `<template functional>` 2021-04-17 23:51:40 -04:00
Evan You 3ea68691e2 wip: inline-template compat 2021-04-17 23:19:40 -04:00
Evan You 1390ece04f wip: refactor 2021-04-17 22:50:16 -04:00
Evan You 505269405e wip: plain template tag compat 2021-04-17 22:16:48 -04:00
Evan You 048ac299f3 perf(compiler): skip unncessary checks when parsing end tag 2021-04-17 22:05:18 -04:00
Evan You 2c31227e7c wip: warn v-bind object ordering 2021-04-17 20:53:55 -04:00
Evan You bf41354abd wip: remove unncessary deprecation messages 2021-04-17 16:13:57 -04:00
Evan You 810fe4d583 wip: default mode for compat build 2021-04-17 16:05:27 -04:00
Evan You c5c304af14 wip: compiler should default to v3 behavior 2021-04-17 15:55:14 -04:00
Evan You 3528ced0b4 wip: warn key usage of v-if branches 2021-04-17 15:35:44 -04:00
Evan You ab21468982 wip: warn v-if/v-for co-usage 2021-04-17 14:38:30 -04:00
Evan You 7ceb873783 wip: v-bind.sync compat 2021-04-16 17:11:44 -04:00
Evan You ad97bbab85 wip: invert compiler compat behavior default during tests 2021-04-16 12:26:17 -04:00
Evan You bbf708dbe9 wip: support configuring compiler deprecations at runtime + warn invalid deprecation configs 2021-04-16 12:19:12 -04:00
Evan You 79cbf21c3e wip: generate codeframe for compiler deprecations 2021-04-16 11:51:47 -04:00
Evan You d974adb327 wip: is usage compat 2021-04-16 11:43:05 -04:00
Evan You e130c7db23 wip: compiler deprecation config 2021-04-12 19:43:53 -04:00
Evan You 115372dd5b wip: refactor deprecations into a single file 2021-04-12 18:47:50 -04:00
Evan You af9e6999e1 feat: support casting plain element to component via is="vue:xxx"
In Vue 3's custom elements interop, we no longer process `is` usage on
known native elements as component casting. (ref:
https://v3.vuejs.org/guide/migration/custom-elements-interop.html)
This introduced the need for `v-is`. However, since it is a directive,
its value is considered a JavaScript expression. This makes it awkward
to use (e.g. `v-is="'foo'"`) when majority of casting is non-dynamic,
and also hinders static analysis when casting to built-in Vue
components, e.g. transition-group.

This commit adds the ability to cast a native element to a Vue component
by simply adding a `vue:` prefix:

```html
<button is="vue:my-button"></button>
<ul is="vue:transition-group" tag="ul"></ul>
```
2021-04-12 13:08:07 -04:00
Evan You 422b13e798 wip: testing compiler deprecation warnings 2021-04-12 09:09:00 -04:00
Evan You 24bab94a72 wip: staticStyle and staticClass 2021-04-11 22:21:10 -04:00
Evan You 62bfdae043 wip: Vue.util compat 2021-04-11 16:53:43 -04:00
Evan You c55f3ed0e8 wip: fix render fn compat detection 2021-04-11 11:15:40 -04:00
Evan You a2f441dc0e wip: refactor compat check utils 2021-04-09 23:51:50 -04:00
Evan You 7a25cbb7a7 wip: fix compat utils usage 2021-04-09 23:21:54 -04:00
Evan You 183f9b0013 wip: component v-model compat 2021-04-09 23:10:29 -04:00
Evan You f05d6dfd98 wip: render function compat 2021-04-09 18:56:31 -04:00
Evan You 457a56e331 wip: compat for legacy functional component 2021-04-09 15:14:14 -04:00
Evan You d71c488540 chore: fix dts 2021-04-08 17:15:02 -04:00
Evan You 3db29eb773 wip: support per-component compatConfig 2021-04-08 17:11:05 -04:00
Evan You f8e2361d83 wip: make tests pass again 2021-04-08 16:33:53 -04:00
Evan You 18cf63ff05 wip: async component compat 2021-04-08 16:11:28 -04:00
Evan You d7957a7440 wip: tweak warning dedupe logic 2021-04-08 11:09:40 -04:00
Evan You d4af747a50 wip: $attrs class/style warning 2021-04-08 10:41:25 -04:00
Evan You c9a93a5c4c wip: $scopedSlots compat 2021-04-08 10:21:14 -04:00
Evan You 960e9deaed wip: vm.$listeners compat 2021-04-08 10:06:12 -04:00
Evan You c1e5cfe7d6 wip: attr coersion compat 2021-04-07 17:42:03 -04:00
Evan You cf6bcdf895 wip: transition group root compat 2021-04-07 16:19:25 -04:00
Evan You 1c2c77eb9f wip: apply compat enabled flags to currently implemented features 2021-04-07 16:19:25 -04:00
Evan You 208bef5d97 wip: watch array compat 2021-04-07 16:19:25 -04:00
Evan You 69fafb437a chore: log runtime build file size 2021-04-07 16:19:25 -04:00