Language-tools: Svelte Beta casse d'autres extensions comme vscode-javascript et prettier-vscode

Créé le 19 juin 2020  ·  17Commentaires  ·  Source: sveltejs/language-tools

Décrivez le bogue
JavaScriptSnippets cesse de fonctionner ou devient très lent dans les composants Svelte. Également en train de casser constamment le formatage plus joli-vscode.

Reproduire
Installez JavaScriptSnippets , ouvrez un fichier svelte raisonnablement volumineux et essayez de déclencher un extrait.

Comportement prévisible
Les extraits de code doivent s'ouvrir instantanément comme ils le font dans les fichiers js et ne pas se bloquer pendant des secondes / indéfiniment

Système (veuillez compléter les informations suivantes) :

  • Système d'exploitation : MacOS 10.15.5
  • IDE : VSCode 1.46.1
  • Plugin/Package : Svelte Beta et JavaScriptSnippets
bug

Tous les 17 commentaires

Svelte Beta est également un fournisseur de format, nous avons notre propre ensemble de plus jolis en utilisant le package npm de plus jolis. Pour autant que je sache, vous ne pouvez pas utiliser les deux. Votre configuration fonctionne-t-elle ou fonctionne-t-elle mais extrêmement lentement.

J'ai supprimé le plus joli mais JavaScriptSnippets ne fonctionne toujours pas.

Vidéo du problème : https://streamable.com/23vdzs

Il faut 40 secondes pour que l'extrait apparaisse !

Ce que j'ai dit ne concerne que plus joli cependant. Ces deux problèmes sont distincts.

À propos de JavaScriptSnippets, les autres complétions javascript sont-elles aussi lentes ?

@jarrodldavis assez juste, je

Oui, tout l'auto-complétion est plus lent, mais pas tout à fait 40 s lent, plus de 5/10 s

@rob-balfre Vouliez-vous parler de moi ou de @jasonulu123 ?

Oui, accident total. Pardon

Le ven 19 juin 2020, 16:49 Jarrod Davis, [email protected] a écrit :

@rob-balfre https://github.com/rob-balfre Vouliez-vous me mentionner ou
@jasonulu123 https://github.com/jasonulu123 ?

-
Vous recevez ceci parce que vous avez été mentionné.
Répondez directement à cet e-mail, consultez-le sur GitHub
https://github.com/sveltejs/language-tools/issues/207#issuecomment-646468314 ,
ou se désinscrire
https://github.com/notifications/unsubscribe-auth/AAUAM7RDP47JKUF5JGMLFBTRXMC57ANCNFSM4OCHZ2ZA
.

J'ai ouvert un composant d'environ 150 lignes et la suggestion est apparue instantanément.

Pourriez-vous reproduire l'erreur après un rechargement de la fenêtre, puis coller le journal VSCode de Output-Svelte ici ?

Initialize language server at /Users/xx/xxui Initialize new ts service at Warning - unrecognized UnaryExpression operator 53! This is an edge case unaccounted for in svelte2tsx, please file an issue: https://github.com/sveltejs/language-tools/issues/new/choose !$xxelections Warning - unrecognized UnaryExpression operator 53! This is an edge case unaccounted for in svelte2tsx, please file an issue: https://github.com/sveltejs/language-tools/issues/new/choose !$xxelections SnapshotManager File Statistics: Project files: 2211 Svelte files: 0 From node_modules: 0 Total: 2211 Trying to load config for /Users/xx/xxui/svelte/components/xx/_SearchForm.svelte Warning - unrecognized UnaryExpression operator 53! This is an edge case unaccounted for in svelte2tsx, please file an issue: https://github.com/sveltejs/language-tools/issues/new/choose !$userDebtor Warning - unrecognized UnaryExpression operator 53! This is an edge case unaccounted for in svelte2tsx, please file an issue: https://github.com/sveltejs/language-tools/issues/new/choose !$UserIsConsultant Warning - unrecognized UnaryExpression operator 53! This is an edge case unaccounted for in svelte2tsx, please file an issue: https://github.com/sveltejs/language-tools/issues/new/choose !$xxelections Warning - unrecognized UnaryExpression operator 53! This is an edge case unaccounted for in svelte2tsx, please file an issue: https://github.com/sveltejs/language-tools/issues/new/choose !$xxelections Error walking node { start: 478, end: 533, type: 'IfBlock', expression: Node { type: 'MemberExpression', start: 484, end: 502, loc: SourceLocation { start: [Position], end: [Position] }, object: Node { type: 'Identifier', start: 484, end: 490, loc: [SourceLocation], name: 'sector' }, property: Node { type: 'Identifier', start: 491, end: 502, loc: [SourceLocation], name: 'CarrierName' }, computed: false }, children: [ { start: 503, end: 525, type: 'MustacheTag', expression: [Node] }, { start: 525, end: 526, type: 'Text', raw: ' ', data: ' ' } ] } Warning - unrecognized UnaryExpression operator 53! This is an edge case unaccounted for in svelte2tsx, please file an issue: https://github.com/sveltejs/language-tools/issues/new/choose !$helpPanelContentKey

@rob-balfre Est-ce le seul fichier qui a le problème ? Je peux reproduire l'avertissement, mais l'achèvement est toujours affiché pour moi. Je pense que ce n'est pas lié au problème que vous rencontrez.

@ jasonyu123 non seulement ce fichier, mais semble être contenu dans ce projet. D'autres projets de taille similaire semblent beaucoup plus fluides. Essayer d'isoler le problème - je vous tiendrai au courant

Ce qui me frappe, c'est qu'il y a 2211 fichiers initialement chargés (ce qui semble beaucoup), aucun d'entre eux n'est un fichier svelte, ce qui semble étrange. Pourriez-vous décrire approximativement la structure des dossiers à partir de la racine dans laquelle vous exécutez VSCode ? Est-ce un simple projet svelte, ou le projet svelte est-il juste un sous-dossier et des choses comme Backend ou d'autres trucs sont à côté ?

Avez-vous un jsconfig.json à la racine du projet svelte ? Sinon, que se passe-t-il si vous en ajoutez un avec le contenu {} puis redémarrez VSCode ?

@rob-balfre J'active la journalisation de typescript dans cette branche . Pourriez-vous le déboguer avec votre projet en suivant les instructions de débogage ici et publier le résultat ici ?

@jasonulu123 Une pensée générale pour éviter les fuites de mémoire s'il n'y a pas de tsconfig.json ou jsconfig.json -> et si nous ajoutons une propriété include: ["**/*.svelte"] au cas où aucune configuration n'est trouvée (similaire à la logique extends ) ? De cette façon, aucun fichier js/ts ne sera chargé, ce qui pourrait entraîner de nombreux problèmes de mémoire.

Cela semble être un bon moyen. il serait peut-être plus aligné sur la façon dont vscode traite js dans l'espace de travail.

Soit dit en passant, lorsque j'essayais cette méthode et que j'ai supprimé jsconfig.json du projet de notre entreprise, le problème rencontré par @rob-balfre apparaît soudainement. La sortie a enregistré le fichier de projet 1000s, les 2000s de node_modules et l'achèvement prend entre 5 et 10 secondes pour s'afficher. L'utilisation de la mémoire passe également de 200 Mo à 900 Mo. Je suppose que le problème que je rencontre est dû au fait que les fichiers dist et j'ai également des packages d'un autre gestionnaire de packages, NuGet pour être plus précis, donc avoir un jsconfig m'épargne beaucoup de maux de tête.

@rob-balfre pouvez-vous vérifier si l'erreur existe toujours ?

@dummdidumm Je peux confirmer que le problème a disparu - n'hésitez pas à fermer 🎉

Merci beaucoup à tous - j'adore cette extension. 👏

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