eclipse-wildwebdeveloper / eclipse-wildwebdeveloper/wildwebdeveloper

JS/TS server is started multiple time

Ouverte
#598 5 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

upstream-typescript-language-server
Langage dominant
Java
Étoiles
201
Forks
76
Merge moyen
4 j 7 h
PR mergées (30 j)
21

Description

Hi,
I'm beginning to test WildWebDeveloper in a fairly large workspace, with many projects containing TypeScript sources.

I see some strange effects, like:

  • multiple identical Content Assist proposals (I have seen up to six),
  • lots and lots of Node processes as children of Eclipse, even for projects for which I have no editor active,
  • most importantly, a considerable slowdown while typing.

I still need to do more tests, so I cannot give you exact reproduction steps right now.

To give you the picture, I have 22 Eclipse projects that contain TS sources (and a tsconfig.json).
I am also using monorepo-like tooling, so my common libraries are all installed in a top-level node_modules directory.
The fact that there are multiple Node processes running does worry me, since I suspect that the same huge JS libraries are being parsed and evaluated multiple times, by every one of the servers.

I noticed that language server have a singleton property that guarantees that they are started only once per workspace.
However, the JS/TS language server is the only one that is not marked as singleton.
Why is that? Is it a deliberate choice or just an oversight?

A while back I had tried setting it as singleton and everything appeared to work perfectly.

Thanks.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par examiner la configuration du serveur de langage JS/TS et son paramètre singleton, puis comparez la manière dont les autres serveurs de langage sont démarrés. Le travail est terminé lorsqu’il est confirmé qu’il y a un serveur par workspace et que les propositions en double de content-assist, l’excès de processus Node et le ralentissement de la saisie sont résolus.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
javascript, node.js, typescript
Domaine
developer-experience, tooling
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.