Skip to content

Commit 8df70a2

Browse files
committed
lsp: Check server provider capabilities
Language Servers may signal that they do not support a method in the initialization result (server capabilities). We can check these when making LSP requests and hint in the status line when a method is not supported by the server. This can also prevent crashes in servers which assume that clients do not send requests for methods which are disabled in the server capabilities. There is an existing pattern the LSP client module where a method returns `Option<impl Future<Output = Result<_>>>` with `None` signaling no support in the server. This change extends this pattern to the rest of the client functions. And we log an error to the statusline for manually triggered LSP calls which return `None`.
1 parent 758bace commit 8df70a2

File tree

4 files changed

+290
-98
lines changed

4 files changed

+290
-98
lines changed

0 commit comments

Comments
 (0)