pylsp: Prefer version from user venv (#21069)

Closes #ISSUE

Release Notes:

- pylsp will now use version installed in user venv, if one is
available.
This commit is contained in:
Piotr Osiewicz 2024-11-25 00:54:47 +01:00 committed by GitHub
parent 20bffaf93f
commit e85848a695
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 37 additions and 23 deletions

View file

@ -5523,10 +5523,16 @@ impl LspStore {
.unwrap_or_default(),
allow_binary_download,
};
let toolchains = self.toolchain_store(cx);
cx.spawn(|_, mut cx| async move {
let binary_result = adapter
.clone()
.get_language_server_command(delegate.clone(), lsp_binary_options, &mut cx)
.get_language_server_command(
delegate.clone(),
toolchains,
lsp_binary_options,
&mut cx,
)
.await;
delegate.update_status(adapter.name.clone(), LanguageServerBinaryStatus::None);
@ -7783,6 +7789,7 @@ impl LspAdapter for SshLspAdapter {
async fn check_if_user_installed(
&self,
_: &dyn LspAdapterDelegate,
_: Arc<dyn LanguageToolchainStore>,
_: &AsyncAppContext,
) -> Option<LanguageServerBinary> {
Some(self.binary.clone())