microsoft/vscode-languageserver-node

Error handler unable to intercept and suppress error notification

開放

#1,608 建立於 2025年2月3日

 (5 則留言) (2 個反應) (0 位負責人)TypeScript (397 個分叉)auto 404
feature-requesthelp wanted

倉庫指標

星標
 (1,776 顆星)
PR 合併指標
 (PR 指標待抓取)

描述

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.

貢獻者指南