Skip to content

Releases: vuejs/language-tools

v2.1.0

29 Aug 00:37
Compare
Choose a tag to compare

Features

  • language-core: inlay hints for destructured props (#4634) - Thanks to @KazariEX!
  • language-core: typed fallthrough attributes (#4103) - Thanks to @A5rocks, @so1ve!
  • language-core: document links for classname within :class (#4642) - Thanks to @KazariEX!
  • language-core: auto infer type for $refs & useTemplateRef (#4644) - Thanks to @zhiyuanzmj!
  • language-core: type support for CSS Modules API (#4674) - Thanks to @KazariEX!
  • language-service: better completion for directives (#4640) - Thanks to @KazariEX!
  • language-service: better sorting & filtering of completion (#4671) - Thanks to @KazariEX!
  • language-service: add style scoped and module completion (#4705) - Thanks to @runyasak!

Bug Fixes

  • vscode: type of vue.server.hybridMode config (#4703) - Thanks to @kermanx!
  • language-core: dependency on vulnerable version of vue-template-compiler (#4613) - Thanks to @yyx990803!
  • language-core: support parse method to access ctx var in object (#4609) - Thanks to @linghaoSu!
  • language-core: escape \ and ' in className avoid type error (#4619) - Thanks to @linghaoSu!
  • language-core: semantic highlight of the end tag of namespaced elements (#4623) - Thanks to @kermanx!
  • language-core: nullable modelvalues (#4648) - Thanks to @davidmatter!
  • language-core: should try casting dynamic slot name into constant (#4669) - Thanks to @kermanx!
  • language-core: local name support for prop using runtime api (#4650) - Thanks to @KazariEX!
  • language-core: optimize matching of scoped class and v-bind() (#4679) - Thanks to @KazariEX!
  • language-core: should preserve generic info in directive (#4686) - Thanks to @kermanx!
  • language-core: generate ref as identifier instead of interpolation (#4688) - Thanks to @KazariEX!
  • language-core: correct type narrowing from script to template (#4689) - Thanks to @KazariEX!
  • language-core: should camelize prop name in experimentalModelPropName (#4691) - Thanks to @kermanx!
  • language-core: drop duplicate hints on incomplete tag (#4696) - Thanks to @KazariEX!
  • language-core: correct inlay hints for v-bind with modifier (#4721) - Thanks to @KazariEX!
  • language-core: transform range of file-md correctly (#4735) - Thanks to @KazariEX!
  • language-plugin-pug: should cache proxyed object (#4626) - Thanks to @kermanx!
  • language-plugin-pug: compute offset correctly of pug class (#4652) - Thanks to @KazariEX!
  • language-service: completion documentations for binding attributes (#4667) - Thanks to @KazariEX!
  • language-service: avoid converting internal id of special tags (#4643) - Thanks to @KazariEX!
  • language-service: reinstate the completion for modifiers (#4639) - Thanks to @KazariEX!
  • language-service: consistent data from provider for sfc completion (#4645) - Thanks to @KazariEX!
  • typescript-plugin: unknown request type warning (#4715) - Thanks to @davidmatter!

Refactors

  • language-core: extract SFC root tags to separate virtual code
  • language-core: removed __hint trick from codegen
  • language-core: rewrite a part of confusing codegen code
  • language-core: reduce virtual code generated by component tags (#4714)
  • language-core: do not wrap template virtual code with function (#4731)
  • language-core: write real files to FS for shared global types (#4736)
  • component-meta: remove deprecated createComponentMetaCheckerByJsonConfig, createComponentMetaChecker api

Other Changes

  • Upgraded Volar from v2.4.0-alpha.18 to v2.4.1:
  • ci: integrated pkg.pr.new
  • tsc: test all typecheck cases in one tsconfig (#4723)
  • tsc: add test for TS-next (#4724)
  • tsc: add tests for for #3779, #3820 (#3838) - Thanks to @so1ve!
  • vscode: add grammar test (#3861) - Thanks to @so1ve!
  • language-service: migrate tests to @volar/test-utils (#4719)
  • language-core: add scoped classes renaming case (#4727) - Thanks to @KazariEX!

Please refer to CHANGELOG.md for details.

Sponsors

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Open Source enables Microsoft products and services to bring choice, technology and community to our customers.

Silver Sponsors

Become a sponsor

v2.0.28

22 Jul 06:50
Compare
Choose a tag to compare

Features

  • vscode: focus mode Insiders (volarjs/insiders#24)
  • language-core: Plugin API 2.1
    • Added plugin hooks: getLanguageId, isValidFile, parseSFC2
    • Improve backward compatibility (#4585) - Thanks @zhiyuanzmj
  • language-core: support default prop when using __typeProps (#4602) - Thanks @zhiyuanzmj
  • language-core: improve nested plugins (#4581) - Thanks @zhiyuanzmj
  • language-service: remove v-bind code action (#4601)
  • vscode: add empty pattern to codeblock attributes scope (#4590) - Thanks @kermanx

Fixes

  • tsc: errors should be thrown instead of being console.log printed
  • language-server: observe named pipes changes when server startup (#4292)
  • language-core: infer define model type from options type (#4545) - Thanks @davidmatter
  • language-core: type-checking not working with hyphen in slot name with JS (#4478) - Thanks @kermanx
  • language-core: add type check for v-model without argument (#4598) - Thanks @zhiyuanzmj
  • language-service: filter special tags (#4596) - Thanks @so1ve
  • typescript-plugin: improve named pipes reliability (#4603)
  • language-core: property access is incorrectly identified as compound expression (#4600)
  • language-core: fix compatibility of generic component virtual code with TS 5.5 (#4577)
  • tsc: TS4082 not reported for functional component (#4569)

Other Changes

  • Upgraded Volar from v2.4.0-alpha.15 to v2.4.0-alpha.18:
    • Fix VS Code IntelliSense will be lost in new created files (#4424)
    • Add workspace symbols support in Hybrid Mode (#4595)
    • Add workspace addMissingImports action support in Hybrid Mode (#4586)
  • Fix yarn 4 compatibility (#4587)
  • Add vue vine to hybrid mode compatible list (#4543) - Thanks @so1ve
  • Add global components prop validation test (#4542) - Thanks @davidmatter

Please refer to CHANGELOG.md for details.

Sponsors

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Open Source enables Microsoft products and services to bring choice, technology and community to our customers.

Silver Sponsors

Become a sponsor

v2.0.26

04 Jul 13:15
Compare
Choose a tag to compare

Features

  • language-service: Support auto-complete for more preprocessing languages.
  • language-core: Improve type compatibility with Vue 3.5. (#4474) - Thanks, @zhiyuanzmj.

Bug Fixes

  • vscode: Fix insider version display condition. Insiders
  • language-service: Fix vue-twoslash-queries not working in LSP mode.
  • language-service: Add null handling for script tag completion items. (#4520)
  • language-core: Fix any in templates if the first checked file was not root. (#4526) - Thanks, @daniluk4000.

Other Changes

  • Upgraded Volar from v2.4.0-alpha.2 to v2.4.0-alpha.15:
    • Fixed an issue where, when Hybrid Mode is disabled, TS support for Vue files not included in tsconfig may be missing.
    • Improved the consistency of vue-tsc and tsc behavior. (#3526)
    • Fixed the --clean flag support for vue-tsc.
  • Updated the high-level overview mermaid diagram.
  • Added 'expected' and 'actually happening' sections to the bug report template. (#4515) - Thanks, @davidmatter.

Please refer to CHANGELOG.md for details.

Sponsors

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Open Source enables Microsoft products and services to bring choice, technology and community to our customers.

Silver Sponsors

Become a sponsor

v2.0.24

04 Jul 13:12
Compare
Choose a tag to compare

Features

  • vscode: pop message box if new insiders version available insiders
  • vscode: if insiders versions information failed to fetch from GitHub, try to fetch from CDN insiders
  • language-service: better sfc-level tag name completion (#4506) - Thanks @kermanx

Bug Fixes

Refactors

  • language-server: reorganize the code structure (#4507)

Other Changes

  • Upgrade Volar from v2.3.1 to v2.4.0-alpha.2.
  • docs: add nvim-cmp integration (#4463) - Thanks @RayGuo-ergou
  • docs: update mermaid
  • The following extensions have been added to Hybrid Mode’s compatibility whitelist (#4206):
    • p42ai.refactor
    • nrwl.angular-console
    • styled-components.vscode-styled-components
    • Divlo.vscode-styled-jsx-languageserver

Please refer to CHANGELOG.md for details.

Sponsors

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Open Source enables Microsoft products and services to bring choice, technology and community to our customers.

Silver Sponsors

Become a sponsor

v2.0.22

22 Jun 13:29
Compare
Choose a tag to compare

Bug Fixes

  • vscode: directive syntax highlighting (#4482) - Thanks @kermanx
  • language-core: move declare defineProp out of function scope (#4454) - Thanks @zhiyuanzmj
  • language-core: compatible with TS 5.5 (#4492)

Other Changes

  • Upgrade Volar from v2.3.0-alpha.14 to v2.3.1.
    • Error tolerant to contentChanges length (#4457)
  • Add feature request template (#4490) - Thanks @so1ve
  • docs: fix wrong links in CHANGELOG.md (#4475) - Thanks @kermanx

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

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Open Source enables Microsoft products and services to bring choice, technology and community to our customers.

Silver Sponsors

Become a sponsor

v2.0.21

08 Jun 14:54
Compare
Choose a tag to compare

Bug Fixes

  • fix(typescript-plugin): TS plugin cause type checking broken in .ts files (#4453)

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

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Open Source enables Microsoft products and services to bring choice, technology and community to our customers.

Silver Sponsors

Become a sponsor

v2.0.20

08 Jun 07:41
Compare
Choose a tag to compare

Features

  • feat(language-service): add localization support for zh-hk/zh-tw
  • feat(vscode): enable syntax highlighting of cue code blocks in MDX (#4425) - Thanks @remcohaszing

Bug Fixes

  • fix(vscode): fix "as"/"instanceof" expressions syntax highlight (#4412)
  • fix(language-core): ForIteratorExpression's returns property may be undefined (#4418) - Thanks @so1ve
  • fix(language-core): use defineEmits calls instead of type infer (#4430) - Thanks @zhiyuanzmj
  • fix(tsc): log catched errors to console (#4451) - Thanks @mik3ybark3r
  • fix(typescript-plugin): TS not working in template when tsconfig missing (#4452)
  • fix(language-core): use type infer instead of await import (#4436) - Thanks @zhiyuanzmj
  • feat(language-core): ignore type error for new functional component (#4445) - Thanks @zhiyuanzmj
  • fix(language-core): ignore type error for possible component name (#4446) - Thanks @zhiyuanzmj
  • fix(language-service): filter internal props in template completion
  • fix(language-service): sort component props in template completion
  • fix(language-core): duplicate completion appears at the beginning of script setup block

Other Changes

  • Upgrade Volar from v2.2.4 to v2.3.0-alpha.14.
    • LSP server performance improved
    • Language server now responds with the exact server capabilities for initialization requests
    • Auto insertion requests can now exit early in the language client
  • The following extensions have been added to Hybrid Mode’s compatibility whitelist:
    • kimuson.ts-type-expand - Thanks @zcf0508

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

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Open Source enables Microsoft products and services to bring choice, technology and community to our customers.

Silver Sponsors

Become a sponsor

v2.0.19

16 May 04:58
Compare
Choose a tag to compare

Bug Fixes

  • language-core: property 'xyz' does not exist on type 'abc' when using v-for (#4386)
  • language-core: avoid report error when events do not accept parameters (#4387)
  • language-core: inline dynamic event handlers should not expect commas (#4387)

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

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Silver Sponsors

Become a sponsor

v2.0.18

15 May 12:15
Compare
Choose a tag to compare

Features

  • language-core: report unknown events when strictTemplates is enabled (#3718)
  • language-core: add compileSFCScript plugin hook (#3200)
  • vscode: add coffeescript syntax highlight support

Bug Fixes

  • language-core: fix event handler type for hyphen-case event names
  • language-core: allow binding multiple events with the same name (#4369)
  • language-core: variable used in key appears as unused in v-for template tag (#329) (#3421)
  • language-core: generics with slots don't work with Vue 2.7 (#3241)
  • language-core: template language of .md files should be markdown (#4299)
  • language-core: no template class links when experimentalResolveStyleCssClasses is set to always (#4379)

Other Changes

  • Upgrade Volar from v2.2.2 to v2.2.4.
    • Fixed a few URI conversion issues
    • fix(typescript): empty items list should be valid completion result (#4368)
    • fix(typescript): path completion not working for meta files
  • Upgrade Volar services from v0.0.44 to v0.0.45.
    • fix(typescript-twoslash-queries): inlay hints not working
    • fix(css, html, json, yaml): failed to resolve relative path
    • feat(emmet): port VSCode emmet extension client logic (volarjs/services#95)
  • The following extensions have been added to Hybrid Mode’s compatibility whitelist:
    • miaonster.vscode-tsx-arrow-definition
    • runem.lit-plugin

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

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Silver Sponsors

Become a sponsor

v2.0.17

10 May 09:18
Compare
Choose a tag to compare

Features

  • language-core: add JSDoc support for component (#2377)
  • language-core: add JSDoc support for script setup binding variables (#3409)
  • language-core: add class component support (#4354)
  • language-service: re-support scoped class links in template (#4357)
  • typescript-plugin: create script setup block when auto import if needed
  • typescript-plugin: add JSDoc support for events in template (#4365)
  • component-meta: add JSDoc tags support for events
  • language-core: support defineOptions (#4362) - Thanks @zhiyuanzmj

Bug Fixes

  • language-core: hover not working for intrinsic element event name
  • language-core: showing false declared but not used errors for functions used in v-on="{}" (#4333)
  • language-core: fix nameless event expression formatting
  • language-core: types imported in the <script setup> should not be used as a variable in template (#4353)
  • language-core: renaming classname within scoped not working (#4355)
  • language-core: <style> completions and html custom data completions not provided in some cases (#4092)
  • language-core: improve code action edits mapping fault tolerance
  • language-core: support defineModel for generic component (#4345) - Thanks @zhiyuanzmj
  • language-service: completion cannot trigger in SFC root
  • component-meta: forceUseTs options not working

Other Changes

  • Upgrade Volar from v2.2.0 to v2.2.2.
    • fix(language-server): pass correct languageId when creating virtual code (volarjs/volar.js#173)
    • fix(typescript): additional completion not working in plugin (#4323)
  • Upgrade Volar services from v0.0.42 to v0.0.44.
    • feat(typescript): code action edits respect editor formatting settings (volarjs/services#30)
    • fix(typescript): not being able to jump to shims module definition
    • fix(typescript): allowTextChangesInNewFiles never true for embedded documents
    • perf(typescript): check command resolve capability only for specific refactors (volarjs/services#94)
  • The following extensions have been added to Hybrid Mode’s compatibility whitelist:
    • mxsdev.typescript-explorer
  • Deprecated vueCompilerOptions.experimentalUseElementAccessInTemplate
  • Specify packageManager (#4358) - Thanks @so1ve
  • docs: emoved possibly redundant duplicate reference (#4348) - Thanks @artshade
  • language-service: temporarily remove references codeLens (#4364)

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

Special Sponsor

Stay in the flow with instant dev experiences.
No more hours stashing/pulling/installing locally

— just click, and start coding.

Platinum Sponsors

An approachable, performant and versatile framework for building web user interfaces.

Astro powers the world's fastest websites, client-side web apps, dynamic API endpoints, and everything in-between.

Essential tools for software developers and teams.

Silver Sponsors

Become a sponsor