microsoft/vscode-languageserver-node

Error handler unable to intercept and suppress error notification

オープン

#1,608 opened on 2025/02/03

 (5 件のコメント) (2 件のリアクション) (0 人の担当者)TypeScript (397 件のフォーク)auto 404
feature-requesthelp wanted

Repository metrics

Stars
 (1,776 個のスター)
PR merge metrics
 (PR metrics pending)

説明

https://github.com/microsoft/vscode-languageserver-node/blob/dadd73f7fc283b4d0adb602adadcf4be16ef3a7b/client/src/common/client.ts#L1793-L1803

I am developing a language server with an external dependency so I want to start/stop it myself. Unfortunately, if the dependency goes missing then the "Connection to server got closed. Server will not be restarted." message will appear if this.$state === ClientState.Stopping because I can't use the this._clientOptions.errorHandler to try to suppress it. Now when the dependency comes back the language server will restart even though the notification claimed that it "will not be restarted".

Essentially, I do not want the vscode-languageclient to popup any errors about the server being dead because I want to control everything myself but I can't avoid this particular notification (there may be others I have not encountered yet...?) because of this if statement.

コントリビューターガイド