-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
Kill LSP gracefully #3482
Comments
https://docs.rs/nix/latest/nix/ may have some useful stuff for this |
Pretty sure this is fixed now wooth us giving lsps a ti.eout to close before force closing them |
Are LS's supposed to terminate themselves? Or is it common to have to send them a SIGTERM? |
There is a multiphase shutdown but in the end they are supposed to do it kn their own https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#exit I think we have a timeout that waits for them to shutdown if they don't we kill |
https://github.com/helix-editor/helix/blob/master/helix-lsp/src/client.rs#L62
It seems
kill_on_drop
sends a SIGKILL which is kind of aggressive, and could cause corruption. It's occurring to me that this may be why rust-analyzer has to reindex everything every time it runs. It also looks like there isn't a way to send a SIGTERM through the built-in tokio API. It looks like we'd have to add platform-specific code to handle this properly.Originally posted by @dead10ck in #3435 (comment)
The text was updated successfully, but these errors were encountered: