Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] master from vuejs:master #140

Merged
merged 102 commits into from
Sep 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
0020c08
test(language-service): migrate tests to `@volar/test-utils` (#4719)
johnsoncodehk Aug 25, 2024
0b99c60
test(tsc): test all typecheck cases in one tsconfig (#4723)
johnsoncodehk Aug 25, 2024
4618cdc
ci(lint): auto-fix
github-actions[bot] Aug 25, 2024
a243f94
test(vscode): add grammar test (#3861)
so1ve Aug 25, 2024
e4d3683
test(tsc): add test for TS-next (#4724)
johnsoncodehk Aug 25, 2024
de50847
test(tsc): add tests for #3779, #3820 (#3838)
so1ve Aug 25, 2024
74c763e
test(tsc): only test TS-next in CI
johnsoncodehk Aug 25, 2024
21e3b71
chore(component-type-helpers): fix typo
johnsoncodehk Aug 25, 2024
9da831f
feat(language-core): typed fallthrough attributes (#4103)
so1ve Aug 25, 2024
bee8ef5
feat(language-core): document links for classname within `:class` (#4…
KazariEX Aug 25, 2024
4dd5ee9
feat(language-core): auto infer type for $refs & useTemplateRef (#4644)
zhiyuanzmj Aug 25, 2024
0b22735
fix(language-service): consistent data from provider for sfc completi…
KazariEX Aug 25, 2024
6bb7820
fix(language-core): local name support for prop using runtime api (#4…
KazariEX Aug 25, 2024
6722371
ci(lint): auto-fix
github-actions[bot] Aug 25, 2024
812592c
fix(language-plugin-pug): compute offset correctly of pug class (#4652)
KazariEX Aug 25, 2024
08dddce
ci(lint): auto-fix
github-actions[bot] Aug 25, 2024
d6bd797
feat(language-service): better sorting & filtering of completion (#4671)
KazariEX Aug 25, 2024
c7fe96f
feat(language-core): type support for CSS Modules API (#4674)
KazariEX Aug 25, 2024
d35cb82
fix(language-core): optimize matching of scoped class and `v-bind()` …
KazariEX Aug 25, 2024
22eea60
fix(language-core): should preserve generic info in directive (#4686)
kermanx Aug 25, 2024
ebc8710
fix(language-core): generate `ref` as identifier instead of interpola…
KazariEX Aug 25, 2024
fc22bf7
fix(language-core): correct type narrowing from script to template (#…
KazariEX Aug 25, 2024
8eda337
fix(language-core): should camelize prop name in `experimentalModelPr…
kermanx Aug 25, 2024
23dbcea
fix(language-core): drop duplicate hints on incomplete tag (#4696)
KazariEX Aug 25, 2024
333d73e
feat(language-service): add style scoped and module completion (#4705)
runyasak Aug 26, 2024
66920c8
fix(language-core): correct inlay hints for v-bind with modifier (#4721)
KazariEX Aug 26, 2024
0e2db19
fix(language-core): tsNode.text is missing in tsc
johnsoncodehk Aug 26, 2024
29b13cf
test: add scoped classes renaming case (#4727)
KazariEX Aug 26, 2024
b2707f0
fix(language-core): fallthrough attributes should be optional
johnsoncodehk Aug 26, 2024
3070691
fix(language-core): don't fallthrough attributes if defineEmits exists
johnsoncodehk Aug 26, 2024
5a9bb12
refactor(language-core): rewrite generatePropsOption
johnsoncodehk Aug 26, 2024
21205fb
fix(language-core): fallthrough attributes break component type when …
johnsoncodehk Aug 27, 2024
d94bd3c
fix(language-core): improve fallthrough attributes and defineEmit com…
johnsoncodehk Aug 27, 2024
ebb8490
feat(language-core): add fallthroughAttributes compiler option
johnsoncodehk Aug 27, 2024
180af0b
fix(language-core): fix __VLS_template returns when skipTemplateCodeg…
johnsoncodehk Aug 27, 2024
5936c82
refactor(language-core): reduce virtual code generated by component t…
johnsoncodehk Aug 27, 2024
13924d1
refactor(language-core): do not wrap template virtual code with funct…
johnsoncodehk Aug 27, 2024
a162f04
refactor(component-meta): remove deprecated functions and exports
johnsoncodehk Aug 28, 2024
38c1e48
refactor: write real files to FS for shared global types (#4736)
johnsoncodehk Aug 28, 2024
7437e3b
fix(language-core): transform range of `file-md` correctly (#4735)
KazariEX Aug 28, 2024
e41e56b
chore: bump deps
johnsoncodehk Aug 28, 2024
08c5476
chore: changelog
johnsoncodehk Aug 29, 2024
5100637
v2.1.0
johnsoncodehk Aug 29, 2024
ecaa9f9
chore: update insiders.json
johnsoncodehk Aug 29, 2024
194e77c
fix: write globalTypes into `dist` for correct export (#4740)
KazariEX Aug 29, 2024
92523f2
fix(language-core): don't default `vueCompilerOptions.lib` to `@vue/r…
johnsoncodehk Aug 29, 2024
cdb52d2
chore: changelog
johnsoncodehk Aug 29, 2024
4e4b839
v2.1.2
johnsoncodehk Aug 29, 2024
4cf3c33
chore: update insiders.json
johnsoncodehk Aug 29, 2024
d18cade
fix: apply snake case on globalTypes filename (#4749)
KazariEX Aug 29, 2024
07bc594
feat: generate global types file into `node_modules/.vue-global-types…
KazariEX Aug 30, 2024
931444f
ci(lint): auto-fix
github-actions[bot] Aug 30, 2024
ac1bec7
chore: code consistency
johnsoncodehk Aug 30, 2024
a94ed38
chore: Add optional "dependencies" textarea to issue template [ci ski…
davidmatter Aug 30, 2024
950c9e1
fix: Whitelist ms-dynamics-smb.al extension for Vue Hybrid Mode. (#4765)
kyleweishaupt Aug 30, 2024
306936b
fix(language-core): hoist `$refs` type (#4763)
johnsoncodehk Aug 30, 2024
8bc2416
fix(language-server): leaking named pipes
johnsoncodehk Aug 30, 2024
63fca0b
fix(language-core): disable lib check on global types file (#4767)
KazariEX Aug 30, 2024
69be985
feat(language-core): navigation support for template-ref (#4726)
KazariEX Aug 31, 2024
923f835
fix(vscode): correct highlighting on tag starting with `template` (#4…
KazariEX Aug 31, 2024
af7fc39
fix(typescript-plugin): compatible with Yarn PnP
johnsoncodehk Aug 31, 2024
a081e07
fix(language-core): prevent circular reference of templateRef (#4768)
zhiyuanzmj Aug 31, 2024
05a8020
Revert "fix(vscode): correct highlighting on tag starting with `templ…
johnsoncodehk Aug 31, 2024
8d8e069
fix(language-core): using interface merging for GlobalComponents
johnsoncodehk Aug 31, 2024
9e2aaf7
fix(language-core): `fallthroughAttributes` causes global components …
johnsoncodehk Aug 31, 2024
4fae9dd
fix(language-core): re-fix Yarn PnP compatibility
johnsoncodehk Aug 31, 2024
87a804a
fix(language-core): auto-completion for the last line of template blo…
zhiyuanzmj Aug 31, 2024
ea9bb02
fix(language-core): update ast correctly on repeated `v-for` modifica…
KazariEX Aug 31, 2024
a95b51a
v2.1.4 (#4773)
johnsoncodehk Aug 31, 2024
f12667f
chore: update insiders.json
johnsoncodehk Aug 31, 2024
836a606
feat(language-plugin-pug): support initial indentation
johnsoncodehk Aug 31, 2024
b809d01
pref: don't emit event lnlayhint when content is none (#4776)
Gehbt Sep 1, 2024
0fd9a7a
fix(language-core): wrap template refs with `unref` in interpolation …
KazariEX Sep 1, 2024
7a0337b
fix(language-core): __VLS_unref is any
johnsoncodehk Sep 1, 2024
2bb3cc1
refactor(language-core): split `__VLS_templateResult` (#4781)
KazariEX Sep 1, 2024
fd30217
fix(language-core): ensure to pass tsc on inline global types (#4782)
KazariEX Sep 1, 2024
ece125b
refactor(language-core): wrap template virtual code into a function (…
johnsoncodehk Sep 1, 2024
1a734cf
refactor(language-core): rename `__VLS_internalComponent` to `__VLS_s…
johnsoncodehk Sep 2, 2024
acccf11
fix(language-core): infer native template ref as build-in element int…
KazariEX Sep 2, 2024
97ce6d8
refactor(language-core): move `templateRef` into `composibles` (#4791)
KazariEX Sep 2, 2024
6a403c8
fix(language-core): generate `__VLS_StyleModules` after template (#4790)
KazariEX Sep 2, 2024
16b1b36
refactor(language-core): remove `__VLS_name`
johnsoncodehk Sep 2, 2024
bdf5d41
refactor(language-core): determine skipTemplateCodegen in advance
johnsoncodehk Sep 2, 2024
b9d5f9c
test: add renaming case for template `ref()` (#4794)
KazariEX Sep 3, 2024
4c89e20
test(tsc): update to Vue 3.5 (#4725)
johnsoncodehk Sep 3, 2024
cd7c2fd
test: always run TS-next test for `test:update` script
johnsoncodehk Sep 3, 2024
8064338
fix(typescript-plugin): disconnect socket on error
johnsoncodehk Sep 3, 2024
2bb5379
ci(language-service): update html data
github-actions[bot] Sep 4, 2024
858d7c4
fix(language-core): make `expose` of non-generic template ref require…
zhiyuanzmj Sep 4, 2024
e90ea65
fix(language-core): avoid using `__typeProps` with runtime props (#4800)
KazariEX Sep 4, 2024
f1d453c
fix(language-core): ignore unknown attrs error when strictTemplates i…
johnsoncodehk Sep 4, 2024
1eabe25
chore: update to Vue 3.5.1
johnsoncodehk Sep 4, 2024
282f6e1
test: unknown props on non-strict generic component (#4792)
KazariEX Sep 4, 2024
5c7e153
feat(language-service): JSDoc display support when typing props on co…
joy-yu Sep 4, 2024
e3f8b91
fix(language-core): prevent append globalTypes to virtual file (#4806)
zhiyuanzmj Sep 4, 2024
b14b8a9
refactor(language-core): generate global types for the first parsed V…
johnsoncodehk Sep 4, 2024
408dca1
refactor(language-core): update path import to use posix style
johnsoncodehk Sep 4, 2024
410f929
feat(language-core): typed directives in template (#4807)
KazariEX Sep 4, 2024
b43708e
fix(language-core): prevent type error when use defineSlots and non-t…
zhiyuanzmj Sep 4, 2024
a8038a6
v2.1.6 (#4808)
johnsoncodehk Sep 4, 2024
52e3066
chore: update insiders.json
johnsoncodehk Sep 4, 2024
1dafe62
ci(language-service): update html data
github-actions[bot] Sep 5, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,17 @@ body:
description: Output of `npx envinfo --system --binaries --browsers`
render: shell
placeholder: System, Binaries, Browsers
- type: textarea
id: dependencies
attributes:
label: package.json dependencies
description: You may add your list of dependencies here as it helps us to investigate your report.
render: json
placeholder: |
{
"dependencies": {},
"devDependencies": {},
}
- type: textarea
id: steps-to-reproduce
attributes:
Expand Down
133 changes: 132 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,137 @@

> [Join the Insiders Program](https://github.com/vuejs/language-tools/wiki/Get-Insiders-Edition) for more exclusive features and updates.

## 2.1.6 <sup>official</sup>, 2.1.7 <sup>insiders</sup> (2024-09-05)

### Features

- **language-plugin-pug:** support initial indentation (#4774)
- **language-service:** JSDoc display support when typing props on component template (#4796) - Thanks to @joy-yu!
- **language-core:** typed directives in template (#4807) - Thanks to @KazariEX!

### Bug Fixes

- **language-core:** wrap template refs with `unref` in interpolation (#4777) - Thanks to @KazariEX!
- **language-core:** ensure to pass tsc on inline global types (#4782) - Thanks to @KazariEX!
- **language-core:** infer native template ref as build-in element interface (#4786) - Thanks to @KazariEX!
- **language-core:** generate `__VLS_StyleModules` after template (#4790) - Thanks to @KazariEX!
- **language-core:** make `expose` of non-generic template ref required (#4795) - Thanks to @zhiyuanzmj!
- **language-core:** avoid using `__typeProps` with runtime props (#4800) - Thanks to @KazariEX!
- **language-core:** ignore unknown attrs error when strictTemplates is not enabled (#4785)
- **language-core:** prevent append globalTypes to virtual file (#4806) - Thanks to @zhiyuanzmj!
- **language-core:** prevent type error when use defineSlots and non-template (#4809) - Thanks to @zhiyuanzmj!
- **typescript-plugin:** disconnect socket on error (#4672)

### Performance

- **language-core:** don't emit event lnlayhint when content is none (#4776) - Thanks to @Gehbt!

### Other Changes

- **language-core:** split `__VLS_templateResult` (#4781) - Thanks to @KazariEX!
- **language-core:** wrap template virtual code into a function (#4784)
- **language-core:** move `templateRef` into `composibles` (#4791) - Thanks to @KazariEX!
- **language-core:** generate global types for the first parsed Vue component if cannot write global types file

### Tests

- **language-server:** add renaming case for template `ref()` (#4794) - Thanks to @KazariEX!
- **tsc:** update to Vue 3.5 (#4725)
- **tsc:** unknown props on non-strict generic component (#4792)

## 2.1.4 <sup>official</sup>, 2.1.5 <sup>insiders</sup> (2024-09-01)

### Features

- **typescript-plugin, language-server:** generate global types file into `node_modules/.vue-global-types` (#4752) - Thanks to @KazariEX!
- **language-core:** navigation support for template-ref (#4726) - Thanks to @KazariEX!

### Bug Fixes

- **language-core, typescript-plugin, language-server:** apply snake case on globalTypes filename (#4749) - Thanks to @KazariEX!
- **language-core:** hoist `$refs` type (#4763)
- **language-core:** disable lib check on global types file (#4767) - Thanks to @KazariEX!
- **language-core:** prevent circular reference of templateRef (#4768) - Thanks to @zhiyuanzmj!
- **language-core:** using interface merging for `GlobalComponents`
- **language-core:** `fallthroughAttributes` causes global components to be self-referential (#4761)
- **language-core:** auto-completion for the last line of template block (#4771) - Thanks to @zhiyuanzmj!
- **language-core:** update ast correctly on repeated `v-for` modifications (#4772) - Thanks to @KazariEX!
- **language-server:** leaking named pipes (#4672)
- **typescript-plugin:** compatible with Yarn PnP (#4751)
- **vscode:** whitelist `ms-dynamics-smb.al` extension for Vue Hybrid Mode. (#4765) - Thanks to @kyleweishaupt!

### Other Changes

- Add optional "dependencies" textarea to issue template (#4758) - Thanks to @davidmatter!

## 2.1.2 <sup>official</sup>, 2.1.3 <sup>insiders</sup> (2024-08-29)

### Bug Fixes

- **language-core, typescript-plugin, language-server:** write globalTypes into dist for correct export (#4740) (#4737) (#4738) (#4739) - Thanks to @KazariEX!
- **language-core:** don't default `vueCompilerOptions.lib` to `@vue/runtime-dom` for Vue 2

## 2.1.0 <sup>official</sup>, 2.1.1 <sup>insiders</sup> (2024-08-29)

### Features

- **language-core:** inlay hints for destructured props (#4634) - Thanks to @KazariEX!
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add tests for new features.

Ensure that tests are added for the new features to verify their correctness and prevent future regressions.

Do you want me to generate the unit testing code or open a GitHub issue to track this task?

- **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!
Comment on lines +79 to +85
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ensure proper documentation for new features.

Make sure that the new features are properly documented to help users understand and utilize them effectively.

Do you want me to generate the documentation or open a GitHub issue to track this task?

- **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`:
- Ensure unopened files are synced to project (#4711) (#4632) - Thanks to @davidmatter!
- **ci:** integrated [pkg.pr.new](https://github.com/stackblitz-labs/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!

## 2.0.28 <sup>official</sup>, 2.0.29 <sup>insiders</sup> (2024-07-22)

### Features
Expand All @@ -15,7 +146,7 @@
- **language-service:** remove `v-bind` code action (#4601)
- **vscode:** add empty pattern to codeblock attributes scope (#4590) - Thanks @KermanX

### Fixes
### Bug Fixes

- **tsc:** errors should be thrown instead of being console.log printed
- **language-server:** observe named pipes changes when server startup (#4292)
Expand Down
18 changes: 11 additions & 7 deletions extensions/vscode/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"private": true,
"name": "volar",
"version": "2.0.28",
"version": "2.1.6",
"repository": {
"type": "git",
"url": "https://github.com/vuejs/language-tools.git",
Expand Down Expand Up @@ -255,7 +255,10 @@
"description": "Traces the communication between VS Code and the language server."
},
"vue.server.hybridMode": {
"type": ["boolean", "string"],
"type": [
"boolean",
"string"
],
"default": "auto",
"enum": [
"auto",
Expand Down Expand Up @@ -548,14 +551,15 @@
"devDependencies": {
"@types/semver": "^7.5.3",
"@types/vscode": "^1.82.0",
"@volar/vscode": "~2.4.0",
"@volar/vscode": "~2.4.1",
"@vscode/vsce": "latest",
"@vue/language-core": "2.0.28",
"@vue/language-server": "2.0.28",
"@vue/typescript-plugin": "2.0.28",
"@vue/language-core": "2.1.6",
"@vue/language-server": "2.1.6",
"@vue/typescript-plugin": "2.1.6",
"esbuild": "~0.21.0",
"esbuild-plugin-copy": "latest",
"esbuild-visualizer": "latest",
"semver": "^7.5.4"
"semver": "^7.5.4",
"vscode-tmlanguage-snapshot": "latest"
}
}
3 changes: 2 additions & 1 deletion extensions/vscode/src/common.ts
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ function isExtensionCompatibleWithHybridMode(extension: vscode.Extension<any>) {
|| extension.id === 'Divlo.vscode-styled-jsx-languageserver'
|| extension.id === 'nrwl.angular-console'
|| extension.id === 'ShenQingchuan.vue-vine-extension'
|| extension.id === 'ms-dynamics-smb.al'
) {
return true;
}
Expand Down Expand Up @@ -263,7 +264,7 @@ async function doActivate(context: vscode.ExtensionContext, createLc: CreateLang
]) {
try {
const res = await fetch(url);
onJson(await res.json());
onJson(await res.json() as any);
succeed = true;
break;
} catch { }
Expand Down
Loading
Loading