This MR contains the following updates:
Package | Change | Age | Adoption | Passing | Confidence |
---|---|---|---|---|---|
vue-tsc | ^0.34.11 -> ^0.40.0 |
Release Notes
johnsoncodehk/volar
v0.40.13
- fix: cycle reactive reference lead to memory leak
v0.40.12
- perf: fix incremental template compile not working
- perf: cache path resolve result on
getScriptVersion
- perf: faster code mapping range transform
v0.40.11
- feat: support for typescript class/object literal method completions (#1835)
- fix: language server crash if client did not support
onDidChangeWorkspaceFolders
(#1834) - fix: "Format Selection" embedded range incorrect with initialIndentBracket
- fix: formatting break document with
editor.formatOnPaste
enabled (#1840) (#1841) (#1842) (#1843) (#1835)
v0.40.10
- feat: improve "Format Selection" for html content
- feat: uniquely scope attribute shorthands (#1812)
- feat: add server name, version infos to LSP initialize response
- fix: "Format Selection" should not format whole language block (#1833)
- fix: formatting break document content randomly (#1827) (#1832)
- fix: pug syntax highlighting confuses element id with interpolation (#1826)
- fix: don't cache IDE settings if IDE do not support config change notification
v0.40.9
- feat: improve vue document formatting
- fix: script format loss indent (#1823)
v0.40.8
- feat: add
volar.format.initialIndent
option for format<style>
,<script>
with initial indent (#1806) - perf: cache
ts.ScriptSnapshot.fromString
result on formatting - fix: volar.config.js not working since v0.40.7 (#1819)
- fix: should not incremental update if SFC parse failed (https://github.com/johnsoncodehk/volar/issues/1807#issuecomment-1236857296)
v0.40.7
- feat: support multiple workspaces for document features
- feat: add
initializationOptions.completion.ignoreTriggerCharacters
for LSP-Volar (https://github.com/sublimelsp/LSP-volar/issues/114) - feat: add
vueCompilerOptions.experimentalComponentOptionsWrapper
option for custom component options warpper (#1517) - fix: add missing surrounding pair "`" (#1659)
- fix: formatting edit range incorrect edge case (#1814)
- fix: typescript onType format do not respect
typescript.format.enable
- fix: document features stop working for script block (#1813)
- fix: pug formatter extra spaces in
{{ }}
(#1784) - fix: template incremental parser broken when typing slot name
Breaking changes
- vueCompilerOptions properties
experimentalImplicitWrapComponentOptionsWithDefineComponent
,experimentalImplicitWrapComponentOptionsWithVue2Extend
replaced byexperimentalComponentOptionsWrapper
.
v0.40.6
- feat: support language features for Web IDE (#612)
- feat: update vite problemMatcher (#1801)
- feat: add
volar.vueserver.textDocumentSync
option to disable incremental update (#1807) - fix:
v-for
,v-if
textmate scopes incorrect (#1810)
v0.40.5
- feat: suppor add or switch workspaces without restart server (#1574)
- fix: sfc offset incremental update broken when input at block start
- fix: document incremental update break document content on Sublime LSP (https://github.com/sublimelsp/LSP-volar/issues/120)
- fix: unexpected prop types behavior with
compilerOptions.exactOptionalPropertyTypes
(https://github.com/vuejs/core/issues/6532) - fix: false positive error on
<input typeof="radio" value="...">
(#1775) - fix: false positive style attribute inconsistent string type error (#1781)
- fix: language server broken with
outDir
+rootDir
+composite/incremental
tsconfig options (#1782) - fix: json format should not trim first / end new line
- fix: interpolation format adding redundant spaces (#1784)
v0.40.4
- feat: respect VSCode
*.format.enable
settings - fix: template should not compile if content no change
- fix: component preview not working on windows (#1737)
v0.40.3
- perf: incremental update SFC blocks without full parse SFC and mitigate memory leak
- perf: incremental update html template interpolation without recompile template
- perf: cache
ts.createSourceFile
for tsx code gen - fix(vue-component-meta): cannot create checker with TS 4.8.2
- fix: document features not working on Web IDE (#1479)
- fix: avoid auto complete triggers too aggressive in Sublime (https://github.com/sublimelsp/LSP-volar/issues/114)
v0.40.2
- feat(vue-component-meta): add
createComponentMetaCheckerByJsonConfig
API to support create checker without tsconfig - feat: move
highlight dom elements ☑
codeLens to status bar (#1535) - feat: incremental update diagnostics cache range and avoid flicker (#1718)
- perf: incremental update TS script snapshot (#1718)
- perf: faster source map code mapping
- fix: pug template tag mapping range incorrect (#1723)
- fix: vite plugin import path incorrect on windows (#1772)
- fix: false positive error on style attr when enabled
compilerOptions.exactOptionalPropertyTypes
(#1560) - fix: .html intellisense of petite-vue not working
- fix: .html intellisense of alpie not working
- fix: intellisense not working for node_modules files with takeover mode on windows (#1641)
- fix: avoid vue-tsc type check .html, .md files (#1661)
- fix:
compilerOptions.types
resolve path incorrect on multiple workspaces (#1679) - fix: cannot count script setup variable usage in template if disalbe jsx (#1729)
- fix: cannot resolve indirect circular reference components types (#1708)
- fix: cannot recognize namespace component (#1726)
- fix: template components types break by regular SFC
components
option (#1731) - fix: indentation behavior incorrect (#1762)
- fix: TS1308 'async' error missing when use script setup (#1753)
v0.40.1
- fix: cycle reactive reference lead to memory leak
v0.40.0
- feat: support document highlights cross
<script>
,<template>
(#462) - feat: support reference types from script setup in template (#891)
- feat: support auto import in template (#823)
- feat: support plugin api (#185) (#1687)
- fix: template scope variables completion missing (#1284)
- fix: prefer
defineComponent
instead ofVue.extend
to wrap component options by default (#1584) - fix: bracket pair colorization in VSCode v1.70 (#1677)
v0.39.5
- feat(vue-component-meta): add option to expose raw type (#1674)
- fix(vue-component-meta): recursive schema parsing (#1660)
- fix(vue-component-meta): parse defineProps in script setup with option (#1665)
- fix: SFC syntax broken in vscode v1.70.0 (#1566) (#1675)
- fix: vite app preview not working (#1668)
- fix: diagnosis is slow on windows after v0.39.2 (#1663)
- fix:
compilerOptions.types
not working since v0.39.2 (#1650) - fix: avoid auto-import path append
.js
(#1667) - fix: avoid variables defined after export default report TS_2454
- perf: cache semver result on auto-complete
v0.39.4
- feat: support ESM project (#1543)
- fix: "Volar: Reload Project" command cannot detect node_modules change
- fix: webview buttons show to unrelated extensions (#1611)
v0.39.3
- feat(vue-component-meta): component schema improves (#1656)
- feat(vue-component-meta): support options api props default (#1649)
- feat: add "Volar: Reload Project" command (#1605)
- fix: vue-tsc watch not working (#1647)
v0.39.2
- feat: vue-component-meta (#1627)
- feat: support for "JavaScript and TypeScript Nightly" (#1332)
- fix: tsx, jsx syntax break by vue directives syntax inject (#1617)
- fix: any type components missing in template when use script setup (#1608)
- fix: ignore X_V_IF_SAME_KEY error in vue 2 (#1638)
- perf: fix
fileExists
is always calculate for .ts on each time update (https://github.com/johnsoncodehk/volar/commit/07f3bd55b6bdf3875a60796f7c9eb9a838eed463) - perf: cache
fileExists
,directoryExists
result in language server (https://github.com/johnsoncodehk/volar/commit/34a4435284311c88248a44222f49c017a6b408a9)
v0.39.0
- feat: updated vite problemMatcher (#1606)
- feat: support Vite app preview for Vite v3 (#1616)
- feat: support organizeImports in vue-typescript for prettier-plugin-organize-imports (#1480) (#1577)
- feat: avoid takeover enabled with built-in TS extension do not disabled (#1622)
- feat: expose vue-tsconfig.schema.json from
@volar/vue-language-core
- fix: fix workspaceTrust description (#1610)
Breaking changes
-
@volar/vue-typescript
,@volar/vue-language-service
apis refactored
v0.38.9
- fix: path resolution incorrect in multi root workspaces on windows (#1585)
- fix: goto definition not working for import path on windows (#1591) (#1593)
- fix: update imports on file move not working (#1599)
- fix: wrong check for whether jsx option is set (#1595)
- fix: renaming .vue files breaks resolving import paths (#1125)
v0.38.8
- feat: support for TS 4.8 (#1507)
- feat: support
--incremental
flag for vue-tsc (#787) - fix: vue-tsc watch memory leak (#1106)
- fix: re-fix template directives syntax highlight incorrect edge cases (#1423)
v0.38.7
- feat: add
volar.updateImportsOnFileMove.enabled
option to disable file move refactoring (#1181) - feat: add
volar.diagnostics.delay
option for reduce CPU usage (#1295) - feat: add
vueCompilerOptions.experimentalImplicitWrapComponentOptionsWithVue2Extend
to support wrap component options byVue.extend
(#1337) - feat: support takeover mode for .cjs and .mjs (#1578)
- fix: template syntax highlight broken if quotes missing (#761)
- fix: self closing tag syntax highlight incorrect (#948)
- fix: re-fix vue file import path auto-complete not working on windows (#1304)
- fix: ts plugin stuck on empty project (#1146)
- fix: tsconfig picking inaccurate (#1193)
- fix: cannot resolve modules from extend tsconfg
types
option (#1262) - fix: file move refactoring unpredictable (#1273)
- fix: avoid duplicate class attribute in pug (#1525)
- fix: intellisense incorrect in new file (#1548)
- fix:
insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis
break v-for format (#1398) - fix: document features not working in *.ts on takeover mode (#1563)
v0.38.5
v0.38.4
- feat: add
vueCompilerOptions.strictTemplates
(#1418) - fix: don't auto close ``` (#1428)
- fix: change unknown slot type from
unknown
toany
(#1541) - fix: SFC templates outline incorrect (#1531)
- fix: slot shorthand highlighting incorrect if have not
=
(#1423) - fix: vue file import path auto-complete not working on windows (#1304)
- fix: avoid duplicate result in html (#1552) (#1530)
- fix: code action document edit version incorrect (#1490)
Breaking changes
-
experimentalSuppressUnknownJsxPropertyErrors
,experimentalSuppressInvalidJsxElementTypeErrors
is replaced bystrictTemplates
.{ "vueCompilerOptions": { - "experimentalSuppressUnknownJsxPropertyErrors": false, - "experimentalSuppressInvalidJsxElementTypeErrors": false, + "strictTemplates": true }, }
v0.38.3
- feat: support html, css intellisense for petite-vue (#1471)
- fix: avoid unknown jsx property error for vue 2.7 (#1533)
- fix: fixed
GlobalComponents
interface not working edge case (#1489) - fix: stricter slots type extracting (#1522)
- fix: nuxt app preview not working
v0.38.2
- feat: update support for vite-plugin-vue-component-preview v0.2
- feat: improve component preview UX
- feat: add --version flag for vue-language-server (#1510)
- fix: css class name codeLens range inaccurate (#1485)
v0.38.1
- fix: fixed isIntrinsicElement is not a function error (#1478)
v0.38.0
- feat: support component preview for Vite + Vue 3 (#1476)
you need to install vite-plugin-vue-component-preview manually to support this feature - feat: support auto insert
.value
for vue 2 (#1466) - fix: cannot define global components types with
@vue/runtime-core
in Vue 2 (#1469) - fix: cannot emit declaration with script setup on vue-tsc (#1459)
- fix: component auto import unreliable (#1470)
- fix: camel case scope css class name intellisense not working (#1447)
- fix(petite-vue): cannot access script tag local variables (#1471)
v0.37.9
- perf: only support VitePress, petite-vue when
*.md
,*.html
explicitly added in tsconfig include property (#1463) - fix: respect
codeAction.disabledSupport
capability (#1454) - fix: auto import component tag name including "Vue" on import (#1461)
- fix: don't recognize components without script blocks as js languages (#1452) (#1455)
- fix: scope class name doesn't show underline (#1447)
- fix: withDefaults syntax break in
lang="tsx"
(#1458) - fix: alpine-language-server bin script name incorrect (#1460)
v0.37.8
- feat: create alpine-language-features extension for support Alpine.js via reuse petite-vue language support works
- fix: petite-vue createApp arg range inaccurate
- fix: vue component context properties missing in petite-vue template
v0.37.7
- fix: cannot resolve external vue file path (#1445)
- fix: petite-vue v-scope data type loss in inline handlers (#1442)
- fix: petite-vue createApp() initialData type missing in template (#1444)
v0.37.5
- feat: support petite-vue
- fix: don't active VitePress intellisense for
.md
if file path in not include by tsconfig (#1430) - fix: cannot direct execution of fileReferences command (#1419)
- fix: avoid "`" auto close break markdown code block input (#1428)
- fix: component props completion info box missing in template
- fix: false positive props type error when JS component usage in TS component (#1426)
- fix: cannot recognize component properties in type reference in template (#1422)
- fix: slot binding type annotation not working if parent component is
<component :is>
(#1425) - fix: patch invalid
:
character in tag name (#1435) - fix: auto closing pairs not working in template expressions (#1437)
- perf: faster markdown content parsing for vitepress
v0.37.3
- feat: support find file references
- feat: improve vitepress markdown parse reliability (#1410)
- feat:
vueCompilerOptions.experimentalSuppressInvalidJsxElementTypeErrors
default true (#1405) - fix: fixed TS error with props beginning with data* (#1413)
v0.37.2
- feat: show deprecation message for
experimentalCompatMode
- fix: kebab case component type broken in vue 2 (#1405)
v0.37.1
- feat: add
experimentalSuppressInvalidJsxElementTypeErrors
option to ignore missing component import error (#1404) - perf: support auto-import cache even TS version < 4.7 (#1406)
- perf: simplify template generated tsx code
v0.37.0
- feat: VitePress support (#1399)
- feat: support
html.autoCreateQuotes
for pug - feat: enabled references codeLens for slots when use script setup
- feat: detect missing component import (#1203)
- feat: support
--generateTrace
for vue-tsc (#1375) - fix: dynamic slot name breaks template type checking (#1392)
- fix: don't report property does not exist error for
data-*
andaria-*
- fix: html selection highlight ranges incorrect (#1393)
- fix: avoid
DefineComponent
type loss when use script setup (#1391) - fix: css module
$style
inconsistent between vue-tsc and vscode (#1089) - fix: css class name and v-bind should not active in style comments
- fix: unused
console.log
to adapt vim-lsp (#1391) - fix: language server stuck on incomplete style variable injection expression (#1359)
- fix: remove
__VLS_
result from code actions
Breaking changes
-
vueCompilerOptions.experimentalCompatMode
is renamed tovueCompilerOptions.target
.{ "vueCompilerOptions": { - "experimentalCompatMode": 2 + "target": 2 }, }
v0.36.1
- feat: add
vueCompilerOptions.experimentalSuppressUnknownJsxPropertyErrors
option for unkonwn props reporting - fix: template slots types missing when use export default in
<script>
with<script setup>
(#1389) - fix: fixed false positive
__VLS_radioBinding
on radio input tag. (#1390)
v0.36.0
- feat: support format selection (range formatting) (#1370)
- feat: support format on type
- feat: support
@ts-check
,@ts-nocheck
for template (#1369) - feat: improve slots auto-complete (#1251)
- feat: support jsdoc for jsx IntrinsicElement (#1212)
- feat: experimental support for vue 2.7 with
"experimentalCompatMode": 2.7
- feat: support typed template slots for script setup (#1253)
- fix:
--extendedDiagnostics
not working on vue-tsc (#1375) - fix: template diagnostics incomplete on vue-tsc (#1372)
- fix: respected
textDocument.completion.completionItem.insertReplaceSupport
(#1373)
Breaking changes
- ~~feat: report error for unkonwn props (#1077)~~ (Disabled by default in v0.36.1)
v0.35.2
- feat: add tsc problemMatchers settings (#1277)
- fix: cannot watch external .d.ts file changes (#1343)
- fix: incorrect typescript error report with hgroup in template (#1340)
- fix: style variable injection syntax highlight not working for style languages other then
css
(#1365) - fix: false positive type check for method arguments with
defineExpose
(#1364) - fix: avoid html emmet active in style block (#1358)
- fix: unable to recognize the type of parameters as alongside
<script setup>
(#1324) - fix: component export default jsdoc loss when use
<script setup>
(#1327) - fix: false positive
@ts-expect-error
error inwithDefaults()
(#1336)
v0.35.1
v0.35.0
- perf: support TS auto-import cache for TS 4.7 (#1360)
- Please use 0.34.17 for TS 4.6.4 or lower
v0.34.17
- feat: do not show unknown tag as red (#1247)
- feat: do not default enable
editor.semanticHighlighting.enabled
- feat: support syntax highlight for style variable injection
- fix: auto import creates wrong identifier when dot in file name (#1335)
- fix: avoid language server crash on TS 4.7 (#1300)
- fix: namespaced component type-check not working
v0.34.16
- feat: add experimental option
vueCompilerOptions.experimentalRuntimeMode
for adapt uni-app (#1308) - fix: type narrowing broken by local variable declare in template (#1312)
- fix: cannot recognize component context on arg typeof of arrow function in template (#1326)
- fix: emmet suggestion interrupt when input symbol (#1322)
- fix: split editors layout not following settings
volar.splitEditors.layout.*
(#1330)
v0.34.15
- feat: support auto-complete for template local variables (#1284)
- feat: check if vetur is active on doctor panel (#1305)
- feat: enabled
experimentalImplicitWrapComponentOptionsWithDefineComponent
forlang="js"
by default (#1298) - feat: add
vueCompilerOption.experimentalDowngradePropsAndEmitsToSetupReturnOnScriptSetup
option to improve intellisense on script setup forlang="js"
(#1192)
v0.34.13
- feat: list vue meetup events on preview loading
- feat: show basic infos by doctor command (#1254)
- fix: avoid tsconfig include
.vue
files outside rootDir with typescript plugin (#1276)
Breaking changes
- Changed
vueCompilerOptions
propertyexperimentalShamefullySupportOptionsApi
toexperimentalImplicitWrapComponentOptionsWithDefineComponent
and disabled by default (#1291)
v0.34.12
- chore: change extensions publisher (#1124)
- feat: add
"warning"
option toexperimentalShamefullySupportOptionsApi
and make default - feat: allow type narrowing in inline handlers bu config
"experimentalAllowTypeNarrowingInInlineHandlers": true
in vueCompilerOptions (#1249) - fix: avoid report error with config
"module": "es2015"
in tsconfig (#1263) - fix: find references result has invalid item
- fix: property access errors loss in template (#1264)
- fix: cannot rename html tag in some cases (#1272)
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.