Releases: vuejs/language-tools
v2.0.12
Bug Fixes
- vscode: restart tsserver before restart vue language server (#4242)
- tsc: remove exit early condition
- typescript-plugin: handle named pipe server timeout
- language-core:
@vue-ignore
not working for fragment v-if/v-for nodes (#4232)
Other Changes
- Upgrade Volar from
v2.2.0-alpha.6
tov2.2.0-alpha.7
for a typescript plugin bug fixes
Please refer to CHANGELOG.md for details.
Insiders Program 🚀
This project is community-driven. If you would like to support this project, consider joining the Insiders Program to improve the sustainability of this project and unlock more features.
Sponsors
v2.0.11
Features
- vscode: support for enabling/disabling typescript plugin (#4226)
- Added
typeScriptPluginOnly
option forvue.server.hybridMode
setting. - When Hybrid Mode is disabled, the Vue TypeScript Plugin will be disabled by default.
- Added
- vscode: support for
vue.format.wrapAttributes
setting (#4212) - vscode: add
vue.codeActions.askNewComponentName
setting (#4217)
Bug Fixes
- vscode:
Find File References
not working when hybrid mode is disabled (#4221) - language-core: type narrowing not working for inline event handlers (#4209)
- language-core:
@vue-ignore
,@vue-expect-error
not working for interpolations - language-core: improve reliability for
@vue-ignore
,@vue-expect-error
(#4203) - language-core: duplicated items in suggestion list for prop values (#3922)
- language-server:
vueCompilerOptions
not working with hybrid mode (#4211) (#3959)
Other Changes
- Upgrade Volar from
v2.2.0-alpha.5
tov2.2.0-alpha.6
for avue-tsc
bug fixes- volarjs/volar.js#162 - Thanks @wangshunnn
- test: add test for #4203 (#4207) - Thanks @tinco
Please refer to CHANGELOG.md for details.
Insiders Program 🚀
This project is community-driven. If you would like to support this project, consider joining the Insiders Program to improve the sustainability of this project and unlock more features.
Sponsors
v2.0.10
Features
- vscode: enable
vue.updateImportsOnFileMove.enabled
by default (#3646) - vscode: re-add restart server command (#4174)
- vscode: automatically enable Hybrid Mode if possible (#4206)
- component-meta: add typing resolution for defineModel modifiers (#4175) - Thanks @stafyniaksacha
- language-service: drag and drop import respects tsconfig path aliases (#4184)
- language-service: supports auto insertion of multiple cursors (#4140)
Bug Fixes
- language-server:
additionalExtensions
option not working for inferred project - language-core: avoid interpolation indentation affecting each other
- language-core: generate each interpolation into separate virtual code (#4165)
- language-service: ignore html
wrapAttributes
format settings for vue document (#3987) - vscode: remove duplicate ts version status (#4167)
- language-server:
.html
,.md
file language id incorrect - typescript-plugin: formatting settings not working for ts completion
- tsc: remove fake global types holder for composite projects compatibility (#4196) - Thanks @blake-newman
Performance
- language-core: cache canonical root file names with string Set
Other Changes
- Upgrade Volar from
v2.1.3
tov2.2.0-alpha.5
for a few bug fixes and performance improves, please refer to CHANGELOG.md for details. - vscode: update required VSCode version to
^1.88.0
- docs: update readme with neovim lspconfig setup (#4134) - Thanks @RayGuo-ergou
- language-core: split inline css codegen into separate plugin
- language-core: move global types codegen into separate script
- language-core: resolve virtual code features before push code
- test: added simple tests for vue-tsc and custom SFC extensions. (#4181) - Thanks @cabal95
Please refer to CHANGELOG.md for details.
Sponsors
v2.0.7
Note
Hybrid Mode is now disabled by default, you need to enable vue.server.hybridMode
in settings to enable it explicitly.
Features
- language-server: reintroducing full TS support and disable Hybrid Mode by default (#4119)
- vscode: check outdated
@vue/language-plugin-pug
in doctor - vscode: significantly reduces the status bar space occupied
Bug Fixes
- vscode: vueCompilerOptions no longer prompts for deprecated options
- component-meta:
defineSlots
allows empty params (#4093) - thanks @Evertvdw - typescript-plugin: fault tolerance for named pipe servers json file (#4075) - thanks @Simon-He95
- language-core: generate
defineModel
emits type on-demand (#4052) - thanks @so1ve - language-core: special treatment for number elements inside
v-for
(#3859) - thanks @so1ve - language-plugin-pug: semantic tokens mapping failed (#4070)
Other Changes
- language-service update neovim lsp set up info (#4085) - thanks @CofCat456
- lint: add
tsl
linter and auto fix workflow (#4100) - vscode: remove embedded language IDs (#4081) - thanks @remcohaszing
Please refer to CHANGELOG.md for details.
(This project is mainly supported by StackBlitz)
Our Platinum Sponsors
![]() |
Our Silver Sponsors
|
v2.0.6
Important
If the TypeScript language server crashes since 2.0, please try using VSCode Insiders and install JavaScript and TypeScript Nightly, or temporarily downgrade to 1.8.27.
Issue: #3962
If false positive errors occur, please try disabling unrelated extensions in the Vue workspace.
Issue: #3942
Fixes
- language-core: use local variables in v-bind shorthand (#4017) - thanks @so1ve
- language-core: sfc folding end position failed to mapping (#4038) - thanks @so1ve
- language-service: remove
extraLiners
option for formatting (#3943) - language-service: bump
volar-service-typescript
for fix jsx formatting (#3949) - language-service: bump
@volar/typescript
for fix 2.0.5 auto-complete performance regression (#4024)
Refactors
- vscode: rename
vue.inlayHints.vbindShorthand
setting tovue.inlayHints.vBindShorthand
(#3995) - thanks @l4dybird
Please refer to CHANGELOG.md for details.
(This project is mainly supported by StackBlitz)
Our Platinum Sponsors
![]() |
Our Silver Sponsors
|
v2.0.5
Important
If the TypeScript language server crashes since 2.0, please try using VSCode Insiders and install JavaScript and TypeScript Nightly, or temporarily downgrade to 1.8.27.
Issue: #3962
If false positive errors occurs, please try disabling unrelated extensions in the Vue workspace.
Issue: #3942
Features
- language-core: support
v-bind
shorthand (#3990) - thanks @so1ve - language-service: support inlay hints for
v-bind
shorthand (#3990) - thanks @so1ve - vscode: prompt to disable Svelte extension in Vue workspace to avoid conflicts
Fixes
- typescript-plugin: fault tolerance for named pipe server data
- language-core: avoid
globalTypesHolder
being specified from anode_modules
file (#3990) - language-core: fault tolerance for plugin creation
- language-plugin-pug: failed to load due to an invalid require path (#3930)
- typescript-plugin: custom extensions do not work (#3977)
- language-service: html custom data not working (#3975)
Refactors
- typescript-plugin add README (#3974) - thanks @WhyNotHugo
- component-meta update demo (#3994) - thanks @zzfn
Please refer to CHANGELOG.md for details.
(This project is mainly supported by StackBlitz)
Our Platinum Sponsors
![]() |
Our Silver Sponsors
|
v2.0.0
New Features
- Hybrid Mode
- Takeover Mode has been deprecated. The extension now has the same performance as Takeover Mode by default.
- TypeScript language support has been moved from Vue language server to TypeScript plugin (#3788)
- Integrated all TypeScript editor features
- Warn when internal TypeScript extension is disabled or "TypeScript Vue Plugin" extension is installed
- Migrated to named pipe server using TypeScript LanguageService (#3908, #3916)
typescript.tsdk
duplicate registration errors are no longer reported- language-service: reimplemented component tag semantic tokens in TypeScript plugin (#3915)
- language-service: reimplemented auto-import patching in TypeScript plugin (#3917)
- language-service: ensured tsserver readiness when requesting auto insert
.value
(#3914)
- Upgraded to Volar 2.0 and 2.1 (#3736, #3906)
- vscode: extension now compatible with Volar Labs v2
- vscode: removed
volar.format.initialIndent
option, replaced with 3 new options:vue.format.template.initialIndent
vue.format.script.initialIndent
vue.format.style.initialIndent
- language-server:
ignoreTriggerCharacters
,reverseConfigFilePriority
andfullCompletionList
options are no longer supported
- Supported Component Drag and Drop Import (#3692)
- tsc: supported
vueCompilerOptions.extensions
option (#3800) - language-core: achieved compatibility with Vue 3.4 type changes (#3860)
Fixes
- vscode: prevented reading undefined properties in non-VS Code editors (#3836)
- vscode: prevented extension activation with TS files
- vscode: corrected trace server ID
- language-core: implemented emit codegen for defineModel (#3895)
- language-core: addressed transition type incompatibility with Vue 2.7.16 (#3882)
- language-core: excluded vue directive syntax injection in Angular bindings (#3891)
- component-type-helpers: resolved inference issue for Vue 3.4.20 functional component
Refactors
- Renamed "Volar Language Features (Volar)" extension to "Vue - Official"
- "TypeScript Vue Plugin" extension has been deprecated
- Relocated source scripts from
src
tolib
(#3913) - Replaced
typescript/lib/tsserverlibrary
imports withtypescript
- language-core: implemented codegen based on Generator (#3778)
- language-core: generated global types in a single virtual file (#3803)
- language-core: implemented plugin API v2 (#3918)
- language-core: ignored nested codeblocks in markdown file (#3839)
- language-core: removed
experimentalAdditionalLanguageModules
and deprecated APIs (#3907) - language-service: made service plugins independent of project context
- language-server:
volar.config.js
is no longer supported - component-meta: renamed APIs
- typescript-plugin: renamed package to
@vue/typescript-plugin
(#3910) - tsc: rewritten based on first-party TS API and no longer relies on TypeScript module (#3795)
- tsc: deprecated hooks API (#3793)
Please refer to CHANGELOG.md for details.
(This project is mainly supported by StackBlitz)
Our Platinum Sponsors
![]() |
Our Silver Sponsors
|
v1.8.0
2.0 schedule has been postponed: #3294
Highlights
-
Support for Scripts API
If you want to use the formatting feature through the Scripts API, please refer to #3133.
If you want to use the diagnostic feature through the Scripts API, please refer to https://github.com/withastro/language-tools/blob/main/packages/language-server/src/check.ts.
-
Support for Volar.js Labs (Ref)
-
Improved Vue 3.3 syntax support
-
TS 5.1.3 compatible
-
Upgrade to Volar.js 1.7 to big improve support for Monaco and TypeScript IntelliSense for Web
-
Support for new
@vue-ignore
,@vue-skip
,@vue-expect-error
directive comments syntax (#3215)
Breaking changes
-
volar.config.js
plugins
option has been renamed toservices
-
Renaming packages from
@volar/vue-*
to@vue/*
(#3134)
Please refer to CHANGELOG.md for details.