eclipse-wildwebdeveloper / eclipse-wildwebdeveloper/wildwebdeveloper

JS/TS server is started multiple time

Đang mở
#598 5 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

upstream-typescript-language-server
Ngôn ngữ chính
Java
Star
201
Fork
76
Merge trung bình
4 ngày 7 giờ
Pull request đã merge (30 ngày)
21

Mô tả

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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu bằng cách kiểm tra cấu hình language server JS/TS và thiết lập singleton của nó, sau đó so sánh cách các language server khác được khởi động. Hoàn tất nghĩa là xác nhận mỗi workspace có một server và đã xử lý các đề xuất content-assist trùng lặp, số lượng tiến trình Node dư thừa và tình trạng chậm khi gõ.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
javascript, node.js, typescript
Lĩnh vực
developer-experience, tooling
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.