eclipse-wildwebdeveloper / eclipse-wildwebdeveloper/wildwebdeveloper

JS/TS server is started multiple time

Abierto
#598 5 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

upstream-typescript-language-server
Lenguaje dominante
Java
Estrellas
201
Forks
76
Merge medio
4 d 7 h
PR fusionados (30 d)
21

Descripción

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.

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza inspeccionando la configuración del servidor de lenguaje JS/TS y su ajuste singleton; después, compara cómo se inician los demás servidores de lenguaje. Se considera terminado cuando se confirme que hay un servidor por workspace y que se han solucionado las propuestas duplicadas de content-assist, el exceso de procesos de Node y la ralentización al escribir.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
javascript, node.js, typescript
Área
developer-experience, tooling
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.