Clarify performance impact of project references on ts-server, and recommended usage of 'disableSourceOfProjectReferenceRedirect' or alternatives
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tài liệu
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- typescript
- Lĩnh vực
- documentation
Hướng nghiên cứu
Bắt đầu với tài liệu tham chiếu tsconfig được liên kết cho disableSourceOfProjectReferenceRedirect và trang handbook về project references, sau đó xem xét issue 42607 và câu hỏi Stack Overflow được liên kết. Làm rõ hiệu năng của tsserver với project references khi source redirects vẫn được bật, đồng thời ghi lại mọi thiết lập được khuyến nghị hoặc hạn chế đối với monorepo mà không cần tái tạo declaration thủ công.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
From the docs (https://www.typescriptlang.org/tsconfig/#disableSourceOfProjectReferenceRedirect, https://www.typescriptlang.org/docs/handbook/project-references.html), it's clear that:
- project references enable
tsc -bfor improved type-checking performance - they can also improve tsserver (and therefore IDE) performance if declaration files are 'pre-emitted' and you enable
disableSourceOfProjectReferenceRedirect
In a monorepo, where most change units touch multiple projects, you want the behaviour of disableSourceOfProjectReferenceRedirect: false, ie you don't want to have to manually re-generate declaration files if you're changing a leaf project. Here's what's unclear: how is tsserver (and therefore IDE) performance affected by project references in this case? The docs should clarify:
- whether tsserver performance is expected to improve with project references and
disableSourceOfProjectReferenceRedirect: false, compared to without project references? - if not, whether there is a recommended setup to let tsserver benefit from project references without having to manually regenerate declaration files?
See also https://stackoverflow.com/questions/67093879/are-typescript-project-references-helpful-with-noemit (no real answer) and https://github.com/microsoft/TypeScript/issues/42607 (where according to the last benchmark by the submitter, project references actually slightly worsen performance, even after the patch).
- Ngôn ngữ chính
- TypeScript
- Star
- 2.6k
- Fork
- 1.5k
- Merge trung bình
- 2 ngày 12 giờ
- Pull request đã merge (30 ngày)
- 8
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của microsoft/TypeScript-Website
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
microsoft/TypeScript-Website#3611 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
microsoft/TypeScript-Website#3607 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 65/100
microsoft/TypeScript-Website#3039 ·
-
More examples of `infer` Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
microsoft/TypeScript-Website#2998 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 68/100
microsoft/TypeScript-Website#3614 ·
Tất cả issue của microsoft/TypeScript-Website
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
mksglu/context-mode#1200 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
jaegertracing/jaeger-ui#4506 ·
-
area:desktop area:ui bug platform:macos
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
anthropics/claude-code#96687 ·
-
good first issue
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 95/100
AOSSIE-Org/DebateAI#582 · 2 bình luận ·