refactor: lsp performace
Chronostasys opened this issue · 1 comments
Chronostasys commented
目前的lsp分析,在用户修改文件A时,会需要重新分析A以及所有直接或间接依赖A的文件。这会导致项目越大响应越慢。
实际上,用户修改当前文件时,用不太上别的文件的diagnotic信息,所以我们其实可以在用户频繁修改的时候,只重新分析A,跳过依赖A的文件。在用户保存的时候再对依赖A的文件进行分析,以保证最终一致性。
xieyuschen commented
@Chronostasys looks like the pivot-lang doesn't have such problem now anymore as the introduction of salsa
.
Hence I close it directly, if we do really need to optimize further, let us ro re-open it.