title: Volar 3.0 Breaking Changes impact: HIGH impactDescription: fixes editor integration after Volar/vue-language-server upgrade type: capability
Impact: HIGH - fixes editor integration after Volar/vue-language-server upgrade
Volar 3.0 (vue-language-server 3.x) introduced breaking changes to the language server protocol. Editors configured for Volar 2.x will break with errors like "vue_ls doesn't work with ts_ls.. it expects vtsls".
vue_ls doesn't work with ts_lsUpdate the "Vue - Official" extension to latest version. It manages the language server automatically.
Option 1: Use vtsls instead of ts_ls
-- Replace ts_ls/tsserver with vtsls
require('lspconfig').vtsls.setup({})
require('lspconfig').volar.setup({})
Option 2: Downgrade vue-language-server
npm install -g @vue/language-server@2.1.10
Update to latest Vue plugin. If issues persist, disable and re-enable the Vue plugin.
| Feature | Volar 2.x | Volar 3.0 |
|---|---|---|
| TypeScript integration | ts_ls/tsserver | vtsls recommended (Neovim) |
| Hybrid mode | Optional | Default |
If upgrading is not possible:
npm install -g @vue/language-server@^2.0.0
Pin in your project's package.json to prevent accidental upgrades.