Commit Graph

4435 Commits

Author SHA1 Message Date
Evan You 42e0711381 chore: remove merge leftover 2023-12-19 18:20:39 +08:00
Evan You 95f6fffea2 chore: Merge branch 'main' into minor 2023-12-19 18:16:16 +08:00
Evan You 7c49a9c4d8 release: v3.3.13 2023-12-19 18:12:48 +08:00
Evan You e8448b018d fix(ssr): fix hydration prop mismatch check for class on SVG elements 2023-12-19 18:09:42 +08:00
Evan You 8f339ea144 chore: reuse descriptor ast in compileScript inlineTemplate mode by default 2023-12-19 18:06:04 +08:00
edison eb51b23d85
fix(compile-sfc): fix identifier prefixing edge case caused by reused AST (#9867)
close #9853
close #9863
2023-12-19 18:04:36 +08:00
白雾三语 bae79ddf85
fix(compiler-core): fix v-on with modifiers on inline expression of undefined (#9866)
close #9865
improve isMemberExpression check for undefined
2023-12-19 17:08:46 +08:00
Eduardo San Martin Morote 24b1c1dd57
fix(types): extract properties from extended collections (#9854)
close #9852
2023-12-19 17:05:29 +08:00
AlanYu 1d79b64ebc
feat(runtime-core): throw real error when scheduler detects infinite loop during dev (#7447)
close #7437
2023-12-19 16:59:47 +08:00
Thorsten Lünborg 04d2c05054
fix(runtime-dom): cache event handlers by key/modifiers (#9851)
close #9849
2023-12-16 21:54:37 +08:00
Evan You 317b783a53 release: v3.4.0-beta.3 2023-12-16 14:41:29 +08:00
Evan You 9f64d2b681 chore: Merge branch 'main' into minor 2023-12-16 14:37:21 +08:00
Evan You 4e7967f016 release: v3.3.12 2023-12-16 14:23:40 +08:00
Evan You d0b849ac39 test(types): add test for ref/shallowRef generic casting 2023-12-16 13:46:11 +08:00
丶远方 9a571582b5
fix(types): fix `shallowRef` type error (#9839) 2023-12-16 13:45:01 +08:00
edison eb12f211b8
fix(defineModel): ensure trigger effect when prop changed (#9841)
close #9838
2023-12-16 12:15:30 +08:00
edison e70f4c47c5
fix(hydration): handle appear transition before patch props (#9837)
close #9832
2023-12-16 11:55:40 +08:00
Cédric Exbrayat 4070502bd0
test(runtime-core): uncomment assertion in hydration test (#9843) 2023-12-15 23:07:45 +08:00
Cédric Exbrayat 7bc3c9e205
fix(compiler-core): vnode hooks error message (#9842) 2023-12-15 23:07:15 +08:00
Evan You f0f6f7cea6 fix(Suspense): fix edge case of Suspense being patched during async HOC child remount 2023-12-15 11:39:50 +08:00
丶远方 0a387dfb1d
fix(sfc/cssVars): fix loss of CSS v-bind variables when setting inline style with string value (#9824)
close #9821
2023-12-15 09:56:01 +08:00
Divyansh Singh ebd78d2c99
fix(mathml): update known mathML tags (#9829) 2023-12-14 22:08:55 +08:00
Evan You c51ab4c765 release: v3.4.0-beta.2 2023-12-14 10:28:34 +08:00
Evan You 92b8d9cef6 feat(types): remove default jsx global registration
BREAKING CHANGE: Vue no longer registers the global `JSX` namespace by
default.
2023-12-14 10:19:17 +08:00
Evan You e00b160435 release: v3.4.0-beta.1 2023-12-13 18:52:16 +08:00
Evan You 69a2acc6ea fix(runtime-core): properly pop warning context when mounting components with async setup 2023-12-13 17:57:57 +08:00
Evan You 0db336ff6c fix(Suspense): properly fix #6416
previous fix caused regressions in nuxt
2023-12-13 17:56:58 +08:00
Evan You 33159a5916 fix(hydration): should not warn mismatch for nullish prop 2023-12-13 02:41:49 +08:00
Evan You 0b6effb423 chore: preserve error code enum order 2023-12-13 00:48:32 +08:00
Evan You aa0c13f637 fix(Suspense): handle switching away from kept-alive component before resolve
close #6416
using test from #6467
2023-12-12 23:50:28 +08:00
Evan You 96aeb24d66 chore: remove unnecessary statements 2023-12-12 23:47:38 +08:00
Evan You 85c804092f chore(sfc-playground): use dev mode by default 2023-12-12 23:08:23 +08:00
丶远方 20ad475718
workflow(sfc-playground): add reload function (#8674) 2023-12-12 23:06:46 +08:00
mmis1000 bb0c8899ca
fix(runtime-core): fix suspense crash when patching non-resolved async setup component (#7290)
close #5993
close #6463
close #6949
close #6095
close #8121
2023-12-12 21:55:15 +08:00
Evan You e04d821422 fix(ssr): make isInSSRComponentSetup state sharable across copies of Vue
This also fixes the issue when rendering async components in
the SFC playground with SSR enabled.
2023-12-12 21:37:52 +08:00
Evan You f41fd86d5f fix(hydration): swap client/server labels for hydration mismatch warnings
this was swapped in #9098 but lost when merging #5953
2023-12-12 20:05:49 +08:00
三咲智子 Kevin Deng ef688ba92b
feat(compiler-sfc): promote defineModel stable (#9598) 2023-12-12 17:28:40 +08:00
Evan You 74387929cd chore: update defineModel comment docs [ci skip] 2023-12-12 17:04:16 +08:00
Evan You f74785bc4a feat(defineModel): support local mutation by default, remove local option
ref https://github.com/vuejs/rfcs/discussions/503#discussioncomment-7566278
2023-12-12 16:47:34 +08:00
Evan You 7e60d1058f perf: use sync watcher for defineModel local mode
ref https://github.com/vuejs/rfcs/discussions/503#discussioncomment-7566278
2023-12-12 13:49:23 +08:00
Evan You 70eca21f50 chore: remove accidentally kept file from merge 2023-12-12 13:48:42 +08:00
丶远方 a625376ac8
feat(types): improve event type inference when using `h` with native elements (#9756) 2023-12-11 22:10:01 +08:00
Carles Mitjans a41409ed02
feat(types): support passing generics when registering global directives (#9660) 2023-12-11 22:07:24 +08:00
Mehmet fd0b6ba016
feat(types): export AriaAttributes type (#8909) 2023-12-11 22:05:48 +08:00
三咲智子 Kevin Deng fa4969e7a3
feat(types): export ObjectPlugin and FunctionPlugin types (#8946)
close #8577
2023-12-11 22:04:56 +08:00
Evan You 982a145d38 chore: Merge branch 'main' into minor 2023-12-11 22:03:28 +08:00
丶远方 a6503e3e77
refactor(types): simplify `EmitsToProps` types (#9788) 2023-12-11 20:01:36 +08:00
btea 376dac4e6f
chore(sfc-playground): highlight the active version in dropdown (#9045) 2023-12-11 18:47:06 +08:00
Evan You ef432bda77 refactor(reactivity): improve nested readonly ref set check
ref #9094
2023-12-11 18:40:55 +08:00
丶远方 9d1ca320c4
refactor(compiler-sfc): avoid unnecessary switch case fallthrough (#8998) 2023-12-11 18:23:02 +08:00
renovate[bot] 879ea30ab8
chore(deps): update dependency monaco-editor to ^0.45.0 (#9803)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-11 10:49:18 +08:00
renovate[bot] 0550062172
chore(deps): update all non-major dependencies (#9799)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-11 10:48:44 +08:00
三咲智子 Kevin Deng cf77435338
refactor(compiler-core): reuse unwrapTS utility function (#9795) 2023-12-11 10:46:28 +08:00
三咲智子 Kevin Deng 096ba81817
feat(types): expose `DefineProps` type 2023-12-09 00:34:28 +08:00
edison 60415b5d67
fix(ssr): fix suspense hydration of fallback content (#7188) 2023-12-08 23:06:34 +08:00
Carlos Rodrigues 213eba479c
fix(types): support for generic keyof slots (#8374) 2023-12-08 22:54:57 +08:00
Evan You c95ab62936 chore: fix types 2023-12-08 22:34:47 +08:00
三咲智子 Kevin Deng 927ab17cfc
feat(types): add emits and slots type to `FunctionalComponent` (#8644) 2023-12-08 22:24:58 +08:00
Carlos Rodrigues bfb856565d
feat(types): provide ComponentInstance type (#5408) 2023-12-08 22:24:38 +08:00
Carlos Rodrigues 44135dc95f
feat(types): expose `PublicProps` type (#2403) 2023-12-08 22:17:46 +08:00
丶远方 0d61b429ec
fix(types): add `xmlns:xlink` to `SVGAttributes` (#9300)
close #9299
2023-12-08 22:16:25 +08:00
三咲智子 Kevin Deng b1fe48d851
ci: add continuous reactivity benchmark (#9638) 2023-12-08 21:26:48 +08:00
Fabian Gündel d42b6ba3f5
feat: MathML support (#7836)
close #7820
2023-12-08 18:25:01 +08:00
三咲智子 Kevin Deng aa954b969b
test: update snapshot 2023-12-08 18:16:22 +08:00
Divyansh Singh bc7698dbfe
feat(ssr): add `__VUE_PROD_HYDRATION_MISMATCH_DETAILS__` feature flag (#9550) 2023-12-08 16:41:15 +08:00
Evan You 2ffc1e8cfd
feat(ssr): improve ssr hydration mismatch checks (#5953)
- Include the actual element in the warning message
- Also warn class/style/attribute mismatches

Note: class/style/attribute mismatches are check-only and will not be
rectified.

close #5063
2023-12-08 15:49:09 +08:00
Adrien Foulon 638f1abbb6
feat(compiler-core): add current filename to TransformContext (#8950) 2023-12-08 15:23:50 +08:00
三咲智子 Kevin Deng 5b2bd1df78
feat(compiler-sfc): support import attributes and `using` syntax (#8786) 2023-12-08 15:22:27 +08:00
Evan You 19b590fa3a release: v3.3.11 2023-12-08 14:13:52 +08:00
edison b700328342
fix(Suspense): properly get anchor when mount fallback vnode (#9770)
close #9769
2023-12-08 12:29:15 +08:00
Rudy 6784f0b1f8
fix(watch): should not fire pre watcher on child component unmount (#7181)
close #7030
2023-12-08 12:24:44 +08:00
丶远方 cdac12161e
fix(types): ref() return type should not be any when initial value is any (#9768) 2023-12-07 16:28:16 +08:00
Evan You b4ac0e6ac1 chore(dx): fix defineProps jsdoc + update defineEmits jsdoc example 2023-12-07 14:30:32 +08:00
agoni1212 2744a09f3a
chore: typo (#9767) 2023-12-07 13:28:07 +08:00
Evan You 6ecbd5ce2a fix(reactivity): fix mutation on user proxy of reactive Array
close #9742
close #9751
close #9750
2023-12-07 13:26:30 +08:00
Evan You 983d45d4f8 fix(shared): handle more Symbol cases in toDisplayString 2023-12-07 10:40:27 +08:00
Carlos Rodrigues 364821d6bd
fix(shared): handle Map with symbol keys in toDisplayString (#9731)
close #9727
2023-12-07 10:33:48 +08:00
Evan You 5b002869c5 fix(runtime-dom): fix width and height prop check condition
close #9762
2023-12-07 10:09:26 +08:00
白雾三语 d74d364d62
fix(custom-element): correctly handle number type props in prod (#8989)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2023-12-06 08:16:16 +01:00
三咲智子 Kevin Deng 0dc875d53e
fix(compiler-core): use the same resolved options for all compile stages (#9760) 2023-12-06 14:41:21 +08:00
dependabot[bot] af5df91e95
chore(deps-dev): bump vite from 5.0.0 to 5.0.5 (#9758)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-06 14:35:36 +08:00
nandi95 8e27692029
feat(runtime-core): provide full props to props validator functions (#3258) 2023-12-05 17:14:17 +08:00
sunjiang0018 af909b7d45
chore: fix typo (#9752) [ci skip] 2023-12-05 12:05:53 +08:00
Evan You a817883c26 chore: Merge branch 'main' into minor 2023-12-05 10:54:20 +08:00
Evan You e2f2b75b62 chore(deps): bump vitest to 1.0 2023-12-05 10:48:04 +08:00
Carlos Rodrigues 243f504dc5
chore(playground): expose esm-browser files (#9725) 2023-12-05 03:08:21 +08:00
Evan You c0d396b785 release: v3.4.0-alpha.4 2023-12-04 23:24:43 +08:00
Evan You e12b10ac3e chore: Merge branch 'main' into minor 2023-12-04 23:17:41 +08:00
Evan You 53aaa1eb28 fix(parser): fix interpolation parsing in v-pre
ref: https://github.com/vuejs/docs/issues/2586
2023-12-04 23:06:56 +08:00
Evan You d5a88ef9d7 release: v3.3.10 2023-12-04 21:42:18 +08:00
yangxiuxiu c3e2c556b5
fix(compiler-sfc): fix :where and :is selector in scoped mode with multiple selectors (#9735)
close #9707
2023-12-04 16:53:21 +08:00
renovate[bot] bf7269ac47
chore(deps): update compiler (#9745)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-04 16:43:47 +08:00
Carlos Rodrigues ec715854ca
fix(app): prevent template from being cached between apps with different options (#9724)
close #9618
2023-12-04 16:43:30 +08:00
edison 65f3fe2731
fix(runtime-core): Suspense get anchor properly in Transition (#9309)
close #8105
2023-12-04 16:41:55 +08:00
Evan You f12db7fb56 fix(compiler-sfc): avoid passing forEach index to genMap 2023-12-04 15:43:29 +08:00
Carlos Rodrigues 43c3cfdec5
fix(types): improve return type withKeys and withModifiers (#9734) 2023-12-04 07:59:01 +08:00
Reii 9ea2b868be
chore(template-explorer): fix overflow screen problem (#7282) [ci skip] 2023-12-01 21:28:48 +08:00
edison eb5e307c0b
fix(compiler-sfc): support inferring generic types (#8511)
close #8482
2023-12-01 21:21:12 +08:00
Evan You 634519720a fix(compiler-sfc): deindent pug/jade templates
close #3231
close #3842
close #7723
2023-12-01 16:45:53 +08:00
edison 30d5d93a92 fix(ssr): avoid computed being accidentally cached before server render (#9688)
close #5300
2023-12-01 15:55:17 +08:00
Evan You c3b704e446 chore: remove v-is deprecation enum
support is already removed during parser rewrite
2023-12-01 11:57:22 +08:00
Evan You 8abc754d5d feat(compiler): lift vnode hooks deprecation warning to error 2023-12-01 11:56:29 +08:00
Evan You 7f00ec2d97 chore: remove deprecated AppConfig.unwrapInjectedRef option 2023-12-01 11:32:34 +08:00
Evan You e8bbc946cb
feat(compiler-sfc): analyze import usage in template via AST (#9729)
close #8897
close nuxt/nuxt#22416
2023-12-01 11:14:48 +08:00
edison 8d74ca0e6f
fix(compiler-sfc): generate more treeshaking friendly code (#9507)
close #9500
2023-12-01 02:52:26 +08:00
花果山大圣 cdb2df707b
chore(dx): improve color contrast in dark mode for custom formatter (#8704) 2023-12-01 02:45:03 +08:00
Blake Newman 887e54c347
fix(types): expose emits as props in functional components (#9234) 2023-12-01 02:37:51 +08:00
三咲智子 Kevin Deng ad27473701
fix(types): fix reactive collection types (#8960)
close #8904
2023-12-01 02:33:09 +08:00
Evan You f8b74dcf29 chore: group parser edge case tests 2023-11-30 22:39:55 +08:00
Evan You dd26e98233 chore(playground): use CodeMirror during local dev 2023-11-30 21:44:28 +08:00
Evan You 4d94ebfe75 perf(v-on): constant handlers with modifiers should not be treated as dynamic 2023-11-30 19:26:36 +08:00
Evan You da4a4fb5e8 perf(runtime-dom): cache modifier wrapper functions
close #8882
2023-11-30 19:00:00 +08:00
三咲智子 Kevin Deng 4936d2e11a
fix(compiler-sfc): throw error when failing to load TS during type resolution (#8883) 2023-11-30 18:41:21 +08:00
edison 5199a12f88
fix(cssVars): cssVar names should be double-escaped when generating code for ssr (#8824)
close #7823
2023-11-30 18:35:20 +08:00
Evan You 6fcec3b2c7 chore: fix width/height check condition 2023-11-30 18:34:06 +08:00
edison 7cbcee3d83
fix(compiler-sfc): support resolving components from props (#8785) 2023-11-30 18:03:23 +08:00
Evan You 9845f1d2a1 chore: optimize widht/height element check 2023-11-30 17:59:27 +08:00
Evan You 38aaa8c886 perf: optimize on* prop check 2023-11-30 17:52:51 +08:00
zhoulixiang bfc1838f31
fix(runtime-dom): set width/height with units as attribute (#8781)
Technically, width / height on `<img>`, `<video>` etc must be integers and cannot contain units. When set as a DOM property, the DOM force converts strings with units to 0. However, this is such a common mistake that most browsers nowadays supports such usage, and it makes sense for Vue to at least let it be set as an attribute.
2023-11-30 17:27:23 +08:00
Eduardo San Martin Morote bcca475dbc
feat(compiler-core): support accessing Error as global in template expressions (#7018) 2023-11-30 16:39:40 +08:00
Evan You 2a507e32f0 feat(compiler-sfc): bump postcss-modules to v6 2023-11-30 16:37:40 +08:00
Evan You c46f91fd9e chore: bump @vue/repl 2023-11-30 13:11:27 +08:00
ZHAO Jin-Xiang 3071de44bc
fix(compiler-core): fix referencing typo (#9708) 2023-11-29 21:15:44 +08:00
edison 509c192ff4
chore: fix typo (#9689) 2023-11-29 12:26:10 +08:00
ZHAO Jin-Xiang fff7b864f4
feat: use enum to replace const enum (#9261)
close #1228
2023-11-29 12:24:50 +08:00
Evan You 47ea285be3 fix(parser): properly set initial inXML state based on root ns 2023-11-28 18:37:17 +08:00
Evan You ef97e8b07d fix(parser): should reset inRCDATA state 2023-11-28 18:31:17 +08:00
Evan You 7d89887f71 release: v3.4.0-alpha.3 2023-11-28 08:26:01 +08:00
Evan You 5afd04cbb8 chore: Merge branch 'main' into minor 2023-11-28 08:14:04 +08:00
renovate[bot] 3a65134360
chore(deps): update all non-major dependencies (#9682)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-28 08:03:07 +08:00
renovate[bot] 31f6ebc4df
fix(deps): update compiler to ^7.23.4 (#9681)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-28 08:02:38 +08:00
三咲智子 Kevin Deng 9f8ba9821f feat(dx): link errors to docs in prod build (#9165) 2023-11-28 07:39:11 +08:00
Evan You e49dffc9ec fix(parser): directive arg should be undefined on shorthands with no arg 2023-11-27 18:10:00 +08:00
Evan You ebaeb2e0aa release: v3.4.0-alpha.2 2023-11-27 17:26:22 +08:00
Evan You 41ff68ea57 feat(compiler): improve parsing tolerance for language-tools 2023-11-27 16:55:54 +08:00
Evan You 0721daf22d chore: Merge branch 'main' into minor 2023-11-27 15:59:07 +08:00
Evan You fb619cf9a4 fix(compiler-sfc): fix ast reuse for ssr 2023-11-27 15:38:30 +08:00
Evan You 678378afd5 fix(compiler-sfc): use correct compiler when re-parsing in ssr mode 2023-11-27 15:06:07 +08:00
Evan You 2e65ea481f fix(compiler-core): fix line/column tracking when fast forwarding 2023-11-27 14:49:13 +08:00
Evan You 50cde7cfbc perf(compiler-sfc): use faster source map addMapping 2023-11-27 14:42:12 +08:00
Evan You d193666fdc chore: use MappingItem type 2023-11-27 14:16:16 +08:00
Evan You f15d2f6cf6 perf: avoid sfc source map unnecessary serialization and parsing 2023-11-27 12:26:51 +08:00
Evan You 157cfcb796 refactor: restore isSelfClosing as optional property 2023-11-25 22:55:39 +08:00
Evan You bab5bd375b chore: fix tests with rawExp 2023-11-25 22:50:40 +08:00
Evan You e48cbf02be refactor: restore SourceLocation.source
this is used extensively in @vue/language-tools and does not have
noticeable impact on performance
2023-11-25 19:22:39 +08:00
Evan You 08f0baa2ad refactor: preserve source location convention in sfc mode for base parser
For compatibility w/ usage like https://github.com/vue-macros/vue-macros/blob/main/packages/setup-block/src/core/index.ts
2023-11-25 18:07:29 +08:00
Evan You be6cae7dac chore: remove isSelfClosing property 2023-11-25 18:03:22 +08:00
Evan You ceec69c8cc fix: avoid confusing breakage in @vitejs/plugin-vue 2023-11-25 16:39:42 +08:00
Evan You 6ec85ae872 chore: restructure parser files 2023-11-25 16:18:29 +08:00
Evan You c11002f16a perf(codegen): optimize source map generation 2023-11-25 16:18:29 +08:00