Releases: vuejs/language-tools
v3.2.5
language-core
language-service
- fix: use default html data provider for document symbols (#5968) - Thanks to @liangmiQwQ!
language-plugin-pug
- fix: handle backtick attributes containing both quote types (#5970) - Thanks to @baptistejamin!
workspace
- docs: document all packages with consistent README structure (#5953)
- docs: update tsconfig schema of
pluginsoption - Thanks to @KazariEX!
Our Sponsors ❤️
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development
v3.2.4
language-core
- feat: place plugin configs under
ctx.configand support type annotation via generics (#5944) - Thanks to @KazariEX!
workspace
- chore: publish to npm with OIDC (#5912) - Thanks to @ghiscoding!
Our Sponsors ❤️
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development
v3.2.3
language-core
- feat: support configuration for language plugins (#5678) - Thanks to @KazariEX!
- fix: avoid
defineModelbreaking ast inlang="js"(#5935) - Thanks to @KazariEX! - fix: infer object keys as string if it does not extend string (#5933) - Thanks to @serkodev!
typescript-plugin
- feat: correct rename behavior on same name shorthands in template (#5907) - Thanks to @KazariEX!
- fix: only forward quick info for original results without tags (#5938) - Thanks to @KazariEX!
vscode
Our Sponsors ❤️
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development
v3.2.2
language-core
- fix: correct code features on v-bind shorthands of special attributes - Thanks to @KazariEX!
language-plugin-pug
language-service
- feat: strip
=""for boolean props completion edits (#5888) - Thanks to @KazariEX! - fix: avoid duplicate directive modifiers in completion (#5920) - Thanks to @KazariEX!
typescript-plugin
- fix: only forward quick info and suggestion diagnostics for setup bindings (#5892) - Thanks to @KazariEX!
Our Sponsors ❤️
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development
v3.2.1
language-core
component-meta
component-type-helpers
- fix: npm package is missing build files (#5893)
language-service
- feat: props completion now only suggests
:xxx(shorthand) when no prefix is typed, instead of bothxxxand:xxx
Our Sponsors ❤️
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development
v3.2.0
vscode
- fix: Vue TS highlighting when trailing type alias is missing semicolon (#5853) - Thanks to @serkodev!
- perf: replace
fast-diffwith custom character-by-character alignment algorithm (#5849) (#5851) - refactor: update Vue grammar scope name to "text.html.vue" (#5856)
- test: add test for embedded grammars (#5861) - Thanks to @serkodev!
language-service
- feat: rich hover message (#5881)
- feat: support markdown JSDoc for rich hover message description (#5890) - Thanks to @serkodev!
- chore: adjust rich hover message title layout (#5889) - Thanks to @serkodev!
component-meta
- feat: add
tagsto slots and exposed (#5862) - Thanks to @aj-dev! - feat: filter out irrelevant properties from
exposed(#5868) - Thanks to @aj-dev! - refactor: redundant logic between deduplication and language-core (#5875)
- refactor: de-dependency from component-type-helpers (#5876)
- refactor: search prop defaults with symbol declarations (#5879)
- refactor: deprecate "noDeclarations" and "forceUseTs" options (#5887)
typescript-plugin
- feat: include leading dot when finding references to CSS classes (#5852)
- fix: missing module error after file rename (#5839) - Thanks to @serkodev!
- fix: prioritize non-warning completion entries over warning ones (#5847)
- fix: always pass rest parameters for future compatibility (#5859) - Thanks to @KazariEX!
- fix: add nullish guards before accessing
ts.CompletionEntryData(#5869) - Thanks to @KazariEX! - fix: handle import type nodes in definition proxy (#5873)
- fix: handle type imports in component auto-import(#5874)
language-core
- feat: revert overcorrection of
v-fortype inference (#5836) - feat: align
v-forkey type withObject.keys(#5837) - Thanks to @serkodev! - feat: narrow component and directive types (#5841)
- feat: support
<!-- @strictTemplates -->magic comment (#5845) - fix: correctly resolve
<script src="">(#5838) - fix: preserve template slot wrappers during
createIfBranch(#5844) - Thanks to @serkodev! - fix: include end tag locations when renaming global components
- refactor: replace dynamic types generation with static files (#5872)
- refactor: improve Vue version detection and plugin resolution
component-type-helpers
- refactor: remove
ComponentTypehelper
workspace
- chore: update testing infrastructure (#5848)
- chore: use tsgo in development (#5860)
- chore: reduce local dependencies and update workflows (#5863)
- chore: upgrade tsslint and vite to pre-release versions
- chore: delete tests for Vue 3.4 (#5871)
Our Sponsors ❤️
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development
v3.1.8
Features
- feat(vscode): support multiline attribute for
<script>and<style>tag (#5830) - Thanks to @serkodev! - feat(vscode): supports format with selected range (#5761) - Thanks to @serkodev!
- feat(language-service): add tsconfig-based document link support for Pug
Bug Fixes
- fix(language-core): limit the range of parseDiagnostics checks (#5823)
- fix(language-core): restore default import bindings for template scope (#5824) - Thanks to @serkodev!
- fix(typescript-plugin): get
preferencesandformatOptionsin tsserver (#5829) - fix(language-core): avoid generating component options within the setup scope (#5832)
Other Changes
- perf(language-core): dedupe component options generation (#5831)
❤️ Thanks to Our Sponsors
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development
v3.1.7
Features
Bug Fixes
- fix(language-core): avoid using
Identifier.textproperty (#5810) - fix(language-core): generate script separator on demand (#5816)
- fix(language-core): avoid invalid
__VLS_Slotsgeneration
Other Changes
❤️ Thanks to Our Sponsors
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development
v3.1.6
Features
- feat(vscode): add settings to enable per-block formatting (#5784) - Thanks to @serkodev!
- feat(language-service): enhanced component auto import (#5790)
- feat(component-meta): add component name and description fields (#5797)
- feat(typescript-plugin): add support for template "Add Import" quick fix (#5799) - Thanks to @serkodev!
- feat(typescript-plugin): mapping JSDoc informations from
<script setup>(#5805) - feat(vscode): support tsdk path for Eclipse Theia (#5806) - Thanks to @serkodev!
Bug Fixes
- fix(language-service): ignore intrinsic elements when detect tag name casing (#5771)
- fix(language-core):
createParsedCommandLineByJsonparsed incorrect options since v3.1.5 (#5768 (comment)) - fix(vscode): make
vue.server.pathcompatible with Windows (#5772) - fix(vscode): analyze interpolation highlight ranges based on AST (#5777)
- fix(vscode): sync latest vscode html language configuration (#5740)
- fix(language-core): enhance
getVIfNodeto supportv-else-ifdirectives (#5765) - Thanks to @serkodev! - fix(language-core): generate
{}instead of its string value forstyle="..."(#5781) - Thanks to @KazariEX! - fix(language-core):
v-bind="$attrs"loses navigation wheninferTemplateDollarAttrsis disabled (#5783) - fix(language-service): skip
const props =completion in StringLiteral (#5786) - fix(language-core): unable to get completion for the second scoped class name
- fix(language-service): format components with HTML void-element names (#5788) - Thanks to @serkodev!
- fix(language-service): properly handle promise when resolving CSS links (#5785)
- fix(language-core): infer
$eltype for generic components usinginferComponentDollarEl(#5794) - fix(language-core): ensure
<script>content generates before<script setup>(#5795) - fix(language-core): remove
bypassDefineComponenthack for better JS support (#4876) (#5379) - fix(language-core):
Prettify<T>caused generic props gets inferred asunknown(#5667) - Thanks to @so1ve! - fix(vscode): handle leading
<as operator in SFC scripts (#5801) - Thanks to @serkodev! - fix(vscode): patch
isTypeScriptDocumentin VSCode fortypescript.preferences.autoImportSpecifierExcludeRegexesconfig support (#5364) - fix(language-core): ensure type consistency for optional boolean props (#5803)
- fix(language-core): add compatibility for
vaporattr (#5496) - fix(language-core): AST fault tolerance for key binding on template (#5807)
Performance
- perf(language-core): reuse ts asts for
:class- Thanks to @KazariEX!
Other Changes
- Revert "refactor(typescript-plugin): remove go to definition trick for auto imported components (#5733)"
- docs(typescript-plugin): update Neovim configuration link (#5775) - Thanks to @AlexVagrant!
- refactor(language-core): normalize template AST (#5782)
- refactor(language-core): split style codegen (#5787)
- refactor(language-core): remove
debuggerfrom virtual code for tsslint compatibility - refactor(language-core): remove legacy navigation support in
ref="xxx" - refactor(language-core): reduce codegen options (#5804)
- refactor(component-meta): deprecated
rawTypeand__internal__.tsLs(#5808) - chore: update volar to 2.4.26
- feat: fallback resolution mode for
createResolveModuleName(volarjs/volar.js#293) (#5644) - Thanks to @serkodev!
- feat: fallback resolution mode for
❤️ Thanks to Our Sponsors
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development
v3.1.5
Features
- feat(language-service): support tsconfig path alias resolution for document links (#5562) - Thanks to @KazariEX!
- feat(language-server): add
serverInfoto initialized result (#5767) - Thanks to @kada49!
Bug Fixes
- fix(vscode): correct highlighting of tags starting with
template(#5755) - Thanks to @serkodev and @KazariEX! - fix(language-core): allow loose props checks on generic components (#5748) - Thanks to @serkodev!
- fix(language-core): avoid
vue-tsccrash during single file checks (#5768) - Thanks to @KazariEX! - fix(language-core): dispose virtual code correctly - Thanks to @KazariEX!
Performance
❤️ Thanks to Our Sponsors
This project is made possible thanks to our generous sponsors:
Become a sponsor to support Vue tooling development