From 941c34a7fc86e613b41887174c699be52ab202a8 Mon Sep 17 00:00:00 2001 From: Blaž Hrastnik Date: Wed, 6 Jan 2021 17:48:14 +0900 Subject: lsp: Move timeouts into client.request --- helix-term/src/commands.rs | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) (limited to 'helix-term') diff --git a/helix-term/src/commands.rs b/helix-term/src/commands.rs index 4f250247..8216437d 100644 --- a/helix-term/src/commands.rs +++ b/helix-term/src/commands.rs @@ -857,21 +857,15 @@ pub fn completion(cx: &mut Context) { let language_server = cx.language_servers.get("rust", &cx.executor).unwrap(); use log::info; - use smol_timeout::TimeoutExt; - use std::time::Duration; - // TODO: blocking here is not ideal let pos = helix_lsp::util::pos_to_lsp_pos( &cx.view.doc.text().slice(..), cx.view.doc.selection().cursor(), ); - let res = smol::block_on( - language_server - .completion(cx.view.doc.identifier(), pos) - .timeout(Duration::from_secs(2)), - ) - .expect("completion failed!") - .unwrap_or_default(); // if timeout, just return + + // TODO: handle fails + let res = smol::block_on(language_server.completion(cx.view.doc.identifier(), pos)) + .unwrap_or_default(); // TODO: if no completion, show some message or something if !res.is_empty() { -- cgit v1.2.3-70-g09d2