- feat(typescript-plugin): allow triggering file references on
<template>(#5734) - Thanks to @KazariEX!
- fix(vscode): correct syntax highlight in template with
lang="html"(#5728) - Thanks to @serkodev!
- refactor(language-core): generate intrinsic elements variable into global types (#5730) - Thanks to @KazariEX!
- refactor(typescript-plugin): remove go to definition trick for auto imported components (#5733) - Thanks to @KazariEX!
- fix(component-meta): import type helpers by relative path
- fix(language-core): fix syntax error when
propTypeshas no elements (#5704) - Thanks to @so1ve! - fix(language-core): omit defined emit props only (#5705) - Thanks to @so1ve!
- docs: fix
vue-tscbroken link to example boilerplate inREADME.md(#5721) - Thanks to @heyakyra!
- feat(language-server): support
--tsdkcommand line arg (#5691)
- fix(language-core): tolerate non-literal export default (#5675) - Thanks to @KazariEX!
- fix(language-core): use component instance props as fallthrough attributes (#5686) - Thanks to @KazariEX!
- fix(typescript-plugin): determine if variable is
RefbyRefSymbolproperty (#5687) - Thanks to @KazariEX! - fix(language-core): exclude effect of comments on root node (#5689) - Thanks to @KazariEX!
- fix(typescript-plugin): place
__vue__in project instead of program (#5690) - fix(component-type-helpers): remove deprecated
$scopedSlotssupport for Vue 2 - fix(language-core): replace markdown links after sfc blocks processing (#5695) - Thanks to @KazariEX!
- fix(language-core): do not report unused error on
__VLS_export(#5696) - Thanks to @KazariEX!
- refactor(language-core): reimplement
writeGlobalTypeswithout side effects
- perf(language-core): drop internal component (#5532) - Thanks to @KazariEX!
- refactor: drop Vue 2 support (#5636) - Thanks to @KazariEX!
- chore(lint): enforce use of type-only imports (#5658) - Thanks to @so1ve!
- ci: upgrade node version (#5668) - Thanks to @so1ve!
- refactor(typescript-plugin): move reactivity analysis logic to a seperate typescript plugin (#5672) - Thanks to @KazariEX!
- fix(typescript-plugin): place
__vue__in project instead of program (#5690)
- feat(language-server): support
--tsdkcommand line arg (#5691)
- feat(vscode): introduce
vue.server.pathsetting (#5647)
- fix(language-core): initialize properties of
VueVirtualCodein constructor (#5635) - Thanks to @KazariEX! - fix(vscode): flatten reactivity visualization decorators (#5642) - Thanks to @KazariEX!
- fix(vscode): normalize reactivity visualization ranges
- fix(vscode): patch
typescriptServerPluginlanguages without FS hack - fix(language-service): do not provide semantic tokens and document highlights for non-
filescheme files (#5653) - Thanks to @KazariEX!
- perf(typescript-plugin): redo single-file language service for reactivity visualization (#5652)
- refactor(typescript-plugin): externalize reactivity analysis logic (#5645) - Thanks to @KazariEX!
- fix(vscode): show welcome page only when opening a Vue file
- fix(language-core): generate slot parameters in the same way as interpolation (#5618) - Thanks to @KazariEX!
- fix(language-core): do not generate variables for builtin directives - Thanks to @KazariEX!
- docs(vscode): add descriptions for premium feature configurations (#5612) - Thanks to @KazariEX!
- refactor(typescript-plugin): explicitly request parameters (#5623)
- chore(lint): enable
@typescript-eslint/no-unnecessary-condition(#5630) - refactor(language-server): reimplement Reactivity Visualization in typescript plugin (#5632)
- refactor(language-server): parsing interpolations in extension client (#5633)
- refactor(vscode): reimplement Focus Mode base on folding ranges (#5634)
- chore(vscode): disable Focus Mode by default (#5578)
- refactor(vscode): set delay of reactivity visualization updates to 250ms - Thanks to @KazariEX!
- fix(language-core): wrap
:classexpression with parens - Thanks to @KazariEX! - fix(vscode): revert Vue 2 versions in
targetoption (#5583) - Thanks to @gxres042! - fix(language-service): skip document highlight from tsserver within element tags (#5584) - Thanks to @KazariEX!
- fix(component-meta): re-export
vue-component-type-helperstolib/helpers(#5600) - fix(language-core): remove the non-strict
configFileNamedefault value (#5606) - fix(language-core): don't look for input files during evaluation of vueCompilerOptions (#5598)
- fix(vscode): Improved reliability of handling extension activation contention (#5588)
- chore: update volar to 2.4.23
- Support
js/ts.hover.maximumLengthandtypescript.experimental.expandableHover(#5577)
- Support
- feat(lint): update tsslint config (#5602)
- refactor(language-core): generate setup returns on demand - Thanks to @KazariEX!
- chore(language-service): remove
excludeconfig suggestion from global types error message (#5579) - Thanks to @Ciallo-Chiaki - chore(vscode): update extension display name "Vue.js" (#5582)
- chore: update
vue-component-type-helpersto current version (#5589) - Thanks to @kingyue737!
- feat(language-core): introduce
compileSFCStyleto provide style related infomation (#5548) - Thanks to @KazariEX! - feat(language-service): completion snippet for
v-for(#5553) - Thanks to @KazariEX!
- fix(language-core): generate
modelModifiersfor explicitly declared default model name (#5558) - Thanks to @KazariEX! - fix(language-service): more responsive
.valueinsertion - fix(vscode): add
classscope fallback forcomponentsemantic tokens (#5559) - Thanks to @KazariEX! - fix(vscode): make sure extension is loaded immediately
- fix(language-service): only check
globalTypesPathfor FS files - fix(vscode): handle fail tsserver requests to avoid memory leak
- fix(vscode): do not delay the execution of
restartExtensionHost - fix(language-core): avoid references highlight of unrelated native element tags (#5563) - Thanks to @KazariEX!
- fix(language-core): tolerance for incomplete root template tag
- fix(language-core): enable navigation code feature on directive modifiers - Thanks to @KazariEX!
- chore(language-service): improve global types error message for JS projects (#5574) - Thanks to @Ciallo-Chiaki!
- feat(language-service): check casing when dropping component into template - Thanks to @KazariEX!
- feat(language-service): native completion experience for slot names (#5552) - Thanks to @KazariEX!
- fix(language-core): avoid clearing global types path when local compiler options is present - Thanks to @KazariEX!
- fix(language-core): do not evaluate
skipTemplateCodegenwhen exposing$slots- Thanks to @KazariEX! - fix(language-service): correct kind and order of component completion items - Thanks to @KazariEX!
- fix(component-meta): filter events out of props (#5547) - Thanks to @Akryum!
- refactor(language-core): allow configuring
checkUnknownEventsandcheckUnknownComponentsin sfc (#5537) - Thanks to @KazariEX! - chore(language-service): add restart server hint to global types warning - Thanks to @KazariEX!
- fix(language-core): find
node_modulesbased on file's directory (#5525) - Thanks to @KazariEX! - fix(language-core): do not spread exposed object (#5526) - Thanks to @KazariEX!
- fix(vscode): prompt manual reload in remote envs (#5530)
- refactor(tsc): return the result of runTsc (#5517) - Thanks to @escaton!
- feat(language-core): introduce
globalTypesPathoption for non-npm like environment (#5505) - Thanks to @KazariEX! - feat: forward tsserver's semantic tokens via language server (#5512) - Thanks to @KazariEX!
- fix(vscode): correct syntax highlight of control directives ending with
/or)- Thanks to @KazariEX! - fix(language-core): infer parameter type of union slots to be union instead of intersection (#5475) - Thanks to @KazariEX!
- fix(vscode): remove
colorizedBracketPairsconfig for plaintext - fix(language-core): avoid early access to local types to skip unnecessary type generation - Thanks to @KazariEX!
- fix(language-core): treat
<component>withoutisprop as normal component - Thanks to @KazariEX! - fix(vscode): make sure tsserver loads
@vue/typescript-pluginlast (#5483) - fix(language-core): only keep navigation code feature on static
namevalue of<slot>- Thanks to @KazariEX! - fix(language-server): add
allowJsto reactivity analyze host - Thanks to @KazariEX! - fix(language-core): do not set template lang to
mdfor markdown (#5497) - Thanks to @KazariEX! - fix(typescript-plugin): exclude items of kind
modulefrom template completion - Thanks to @KazariEX! - fix(language-core): walk identifiers correctly within type nodes in interpolation (#5501) - Thanks to @KazariEX!
- fix(language-service): correct position calculation of twoslash queries (#5503) - Thanks to @KazariEX!
- fix(language-core): avoid redundant increment of block variable depth (#5511) - Thanks to @KazariEX!
- fix(language-service): re-implement twoslash queries in script - Thanks to @KazariEX!
- refactor(vscode): make welcome page code public - Thanks to @KazariEX!
- refactor(vscode): add premium feature settings
- chore: migrate from
minimatchtopicomatch(#5499) - Thanks to @KazariEX! - chore: update volar to 2.4.19
- fix(typescript): skip source file search when
.d.${ext}.tsfile exists (volarjs/volar.js#277)
- fix(typescript): skip source file search when
- revert: type support of slot children (#5137) (#5514) - Thanks to @KazariEX!
- fix(language-core): remove calculation logic of element inner loc (#5460) - Thanks to @KazariEX!
- fix(vscode): correct syntax highlight of
v-else(#5470) - Thanks to @KazariEX!
- docs(vscode): update Russian translation for VS Code extension (#5461) - Thanks to @AndreyYolkin!
- chore: update volar to 2.4.17
- typescript: correctly use
getModeForUsageLocationto calculate the resolution mode
- typescript: correctly use
- feat(typescript-plugin): skip declaration files in goto components definition (#5221) - Thanks to @KazariEX!
- feat(language-core): introduce
strictVModeloption (#5229) - Thanks to @KazariEX! - feat(vscode, language-server, typescript-plugin): communicate with tsserver based on request forwarding (#5252, #5395, #5443)
- feat(language-core): support navigation of events with
v-onsyntax (#5275) - Thanks to @KazariEX! - feat(language-core): type support of slot children (#5137) - Thanks to @KazariEX!
- feat(language-service): autocomplete for props with union type
- feat(language-service): document links for template refs (#5385) - Thanks to @alex-snezhko!
- feat(language-core): resolve external stylesheets (#5136) - Thanks to @KazariEX!
- feat(language-core): add
strictCssModulesoption (#5164) - Thanks to @KazariEX! - feat(component-type-helpers): add
ComponentAttrstype for attribute extraction - feat(vscode): add support for
typescript.sortImports,typescript.removeUnusedImportscommands (#5444) - feat(vscode): i18n support of configurations and commands with
zh-CN,zh-TW,ruandja(#5330, #5340, #5404) - Thanks to @KazariEX, @PurplePlanen and @zyoshoka!
- fix(language-core): generate condition guards for model events (#5225) - Thanks to @KazariEX!
- fix(language-core): prevent global types generation in declaration files (#5239) - Thanks to @KazariEX!
- fix(language-core): prevent eager inference of slot props from generics (#5247) - Thanks to @KazariEX!
- fix(typescript-plugin): prevent highlighting native element tags with same name as components (#5253) - Thanks to @KazariEX!
- fix(language-service): do not provide required props inlay hints for intrinsic elements (#5258) - Thanks to @KazariEX!
- fix(vscode): handle
typescript-language-featuresmodule loading race condition (#5260) - fix(component-meta): update event type representation to include array notation
- fix(language-core): correct error mapping when prop exp is arrow function (#5262) - Thanks to @KazariEX!
- fix(language-service): add document highlights support (#5263) - Thanks to @KazariEX!
- fix(language-core): correct type inference of multiple template refs with same name (#5271) - Thanks to @KazariEX!
- fix(language-core): skip AST parsing when the expression is an identifier (#5268) - Thanks to @KazariEX!
- fix(language-core): do not drop leading comments of
defineModels(#5273) - Thanks to @KazariEX! - fix(language-core): improve fault tolerance for unsupported script languages
- fix(language-core): avoid invalid auto import edit position when setup global types fails
- fix(language-core): transform slot parameter list into equivalent binding pattern (#5245) - Thanks to @KazariEX!
- fix(language-core): correct codegen when src path does not match the generated length - Thanks to @KazariEX!
- fix(language-service): exclude
data-attribute completion from sfc level nodes - Thanks to @KazariEX! - fix(language-core): remove semantic highlight of v-bind shorthand (#5321) - Thanks to @KazariEX!
- fix(vscode): inline html comment pattern in Vue syntax definition (#5327) - Thanks to @zyoshoka!
- fix(language-core): avoid unrelated virtual code recomputes on style and template change - Thanks to @KazariEX!
- fix(component-meta): attach namespace prefix correctly on generated types (#5326) - Thanks to @KazariEX!
- fix(language-core): drop
undefinedfrom optional prop type with default in template (#5339) - Thanks to @Dylancyclone! - fix: depend on exact volar version (#5345) - Thanks to @tomblachut!
- fix(language-core): ignore frontmatter block in markdown files (#5362) - Thanks to @brc-dd!
- fix(component-meta): only exclude vnode events from props (#5369) - Thanks to @KazariEX!
- fix(language-core): skip css references for position within virtual code with
navigation: true(#5378) - Thanks to @KazariEX! - fix(language-core): hoist export declarations from generic script block (#5398) - Thanks to @KazariEX!
- fix(vscode): correct syntax highlight for directives starting with
v-for(#5399) - Thanks to @KazariEX! - fix(language-core): correct support for flatten plugins (#5392) - Thanks to @zhiyuanzmj!
- fix(language-core): remove
semanticcode feature on first argument ofuseCssModuleanduseTemplateRef- Thanks to @KazariEX! - fix(typescript-plugin): filter completion items of macros and global variables in template and styles (#5425) - Thanks to @KazariEX!
- fix(language-core): do not generate redundant function scopes to affect type narrowing (#5430) - Thanks to @KazariEX!
- fix(component-meta): add new file name in
updateFile(#5438) - Thanks to @Akryum! - fix(language-core):
Prettify<T>breaks generics inferencing (#5424) - Thanks to @so1ve! - fix(language-core): use
varinstead ofletto declareattrsVarthat may be hoisted - Thanks to @KazariEX!
- perf(language-core): cache and reuse inline ts asts during full updates (#5435) - Thanks to @KazariEX!
- refactor(vscode, language-server): remove hybrid mode configuration (#5248)
- refactor(vscode): remove write virtual files command
- chore(vscode): correct
directorypath in package.json (#5283) - Thanks to @zyoshoka! - chore(vscode): use rolldown for bundling (#5337) - Thanks to @KazariEX!
- refactor(vscode): remove doctor - Thanks to @KazariEX!
- docs: update instructions for neovim lsp configuration (#5361) - Thanks to @kshksdrt!
- refactor(vscode): remove Vite problem matcher (#5375)
- chore(docs): update vue language package name (#5376) - Thanks to @marktlinn!
- chore(ci): set pre-release status when publishing to Open VSX (#5377) - Thanks to @lukashass!
- docs: fallback workaround of
vue_language_server_pathin nvim setup example (#5391) - Thanks to @menuRivera! - test(component-meta): simplify code with snapshots (#5403) - Thanks to @KazariEX!
- docs(nvim): move neovim lspconfig docs to wiki page (#5408) - Thanks to @RayGuo-ergou!
- refactor(language-server): drop
typescript.tsdkinitialization option (#5409) - refactor(language-service): drop name casing convertion and its language status item (#5411) - Thanks to @KazariEX!
- refactor(language-core): drop
definePropsupport (#5415) - Thanks to @KazariEX! - chore(vscode): change display name to "Vue (Official)"
- refactor: cleanup dependencies relationship (#5421)
- refactor(component-meta): use type-helpers as a peer dependency
- refactor(vscode): cleanup extension client (#5422)
- refactor(language-server): move in server code from insiders edition (#5423)
- chore: introduce oxlint for faster linting (#5416) - Thanks to @KazariEX!
- refactor(vscode): remove split editor feature (#5446)
- refactor(vscode): rename configuration keys from
completetosuggestfor clarity
See changelog v2
See changelog v1
See changelog v0