-
Notifications
You must be signed in to change notification settings - Fork 317
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow manually killing the server process #834
Comments
You can simply call stop() on the client. That kills / stops the server. |
I tried using The server process that was started is still hanging after calling What is the mechanism by which If it is by sending a shutdown message via LSP, then that is not sufficient for my case, because the server may not be responsive. I tried explaining the situation in this related issue for Sublime LSP: |
It is killed using this piece of code:
But it sounds like the super stop call fails in our case. Can you check this? |
I have not had success in the past with setting up debugging of my language server extension, but I will try it again. |
OK. Let me know any outcome. |
I believe that the This is the version of
When a functioning language server is setup, the When a malfunctioning language server is setup, the And this makes sense, because caveat: this is all based on my reading, I may not be understanding the code, etc. |
Added code that ensure that the server gets killed even if the shutdown times out / connection got closed |
I am developing an LSP client extension.
Let's say that I had a typo in my
command
of theServerOptions
object that I'm creating.The command is now some command that hangs when given the usual traffic from an LSP client.
I am already showing an error message after 10 seconds if this happens.
I am interested in also manually killing the server process that was started.
I could not see if there was already an API for doing that, so I am creating this issue.
This is not anything to do with the actual protocol, because I am talking about a process that does not even understand the protocol.
This is low-level error handling and cleanup.
The real-world case that I am trying to solve is running a command that may not have the proper packages installed yet, and so hangs on startup.
The text was updated successfully, but these errors were encountered: