Language-tools: [LS] Les actions de code ne renvoient pas la version avec textDocument

Créé le 2 mars 2021  ·  5Commentaires  ·  Source: sveltejs/language-tools

Cela empêche les actions de code de fonctionner sur les éditeurs qui s'attendent à ce que le numéro de version renvoyé soit >= de ce qui a été envoyé au LS.

tsserver renvoie la même version et les actions de code fonctionnent très bien.

https://github.com/neovim/neovim/blob/c1fbc2ddf15b2f44b615f90b2511349ab974cb83/runtime/lua/vim/lsp/util.lua#L265 -L272
Voici le code de neovim-lsp qui vérifie le numéro de version.

J'éditerai plus d'informations lorsque je trouverai les différences entre svelteserver et tsserver concernant l'envoi du numéro de version.

Edit : pour l'instant ça ne marche pas :

Code Actions:                                                                     
1. (svelte) Disable missing-declaration for this line
2. Import 'teenStyle' from module "./helpers"
Fixed bug

Tous les 5 commentaires

Pour les fichiers Svelte, cela devrait être faisable, pour les fichiers TS / JS, cependant, nous devrions le laisser tel qu'il est actuellement car nous ne savons tout simplement pas sur quoi le définir car nous n'obtenons pas les versions de document actuelles de ceux-ci.

Pour les fichiers Svelte, cela devrait être faisable, pour les fichiers TS / JS, cependant, nous devrions le laisser tel qu'il est actuellement car nous ne savons tout simplement pas sur quoi le définir car nous n'obtenons pas les versions de document actuelles de ceux-ci.

Voulez-vous dire la situation dans laquelle nous devons appliquer des modifications aux fichiers js/ts externes en raison d'une action de code dans un composant svelte ?

Je ne peux pas penser à un exemple pour le moment. :pensée:

C'est intéressant, je n'ai pas testé ce qui se passerait si j'utilisais renommer dans le fichier .ts . Ce changement se refléterait-il dans les composants sveltes... :pensée:
Brb. :le sourire:

Wow... ça ne le fera pas. Il semble donc que le serveur de langue svelte devrait également être configuré pour les fichiers .ts|.js dans les projets svelte ?

Ce n'est pas le cas et rendre cela possible est suivi dans #580

Les changements de nom dans les fichiers Svelte qui affectent les fichiers JS sont un exemple où le serveur de langue renvoie des modifications pour les fichiers JS/TS.

Pour les fichiers Svelte, cela devrait être faisable, pour les fichiers TS / JS, cependant, nous devrions le laisser tel qu'il est actuellement car nous ne savons tout simplement pas sur quoi le définir car nous n'obtenons pas les versions de document actuelles de ceux-ci.

Dans la spécification, le textDocument du TextDocumentEdit est un OptionalVersionedTextDocumentIdentifier , donc la version peut être null , et elle devrait être null place de 0 si le serveur ne peut pas fournir le numéro de version correct.

Cette page vous a été utile?
0 / 5 - 0 notes