allegro / allegro/typescript-strict-plugin

Idea: Proxy strict/non-strict semantics requests to two child tsserver instances?

未關閉
#40 0 則留言 1 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
TypeScript
星號
397
分支
34
PR 合併指標
PR 指標待擷取

描述

## Description

We've been looking at adopting this plugin in our very large project and noticed that switching between files which are marked as strict and files which are not can be very slow (in the order of 10s of seconds). That seems to be because the plugin needs to switch `strict` on and off in the language server based on the presence of the `@ts-strict-ignore` comments. This slowness makes the plugin very disruptive to use on a day-to-day basis, at least until most of our codebase has been made strict and we don't need to switch `strict` on/off so often.

## Idea

Maybe this occurred to you as well but the following came to mind: could we run two tsserver instances in parallel, one with `strict` enabled and the other one with it disabled? If possible, it should avoid the cost of switching a single tsserver between strict and non-strict mode in very large codebases (those which typically are harder to make strict).

I suppose to make this happen one would have to create a custom tsserver which would start two child tsserver processes and proxy any requests from the IDE to the right child process based on the presence (or lack) of the `@ts-strict-ignore` comment.

What do you think? Have you maybe tried going down this route?

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。