From 49acfd2602cf4aa46dd583936c8cd731de02acc7 Mon Sep 17 00:00:00 2001 From: Abdelhakim Qbaich Date: Wed, 15 Oct 2025 14:17:56 -0400 Subject: [PATCH] repl: List kernelspecs of the current worktree (#40154) Closes #25564 Release Notes: - Fix virtual env REPLs not showing up --- crates/repl/src/repl_store.rs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/crates/repl/src/repl_store.rs b/crates/repl/src/repl_store.rs index b9a36a18aec44a3460e099858cc33360b76ee4f9..a5dc7b6c7b642b3c8afb46924fcb6e54620cb19b 100644 --- a/crates/repl/src/repl_store.rs +++ b/crates/repl/src/repl_store.rs @@ -214,8 +214,9 @@ impl ReplStore { let selected_kernelspec = self.selected_kernel_for_worktree.get(&worktree_id).cloned(); if let Some(language_at_cursor) = language_at_cursor { - selected_kernelspec - .or_else(|| self.kernelspec_legacy_by_lang_only(language_at_cursor, cx)) + selected_kernelspec.or_else(|| { + self.kernelspec_legacy_by_lang_only(worktree_id, language_at_cursor, cx) + }) } else { selected_kernelspec } @@ -223,6 +224,7 @@ impl ReplStore { fn kernelspec_legacy_by_lang_only( &self, + worktree_id: WorktreeId, language_at_cursor: Arc, cx: &App, ) -> Option { @@ -232,8 +234,7 @@ impl ReplStore { .get(language_at_cursor.code_fence_block_name().as_ref()); let found_by_name = self - .kernel_specifications - .iter() + .kernel_specifications_for_worktree(worktree_id) .find(|runtime_specification| { if let (Some(selected), KernelSpecification::Jupyter(runtime_specification)) = (selected_kernel, runtime_specification) @@ -249,8 +250,7 @@ impl ReplStore { return Some(found_by_name); } - self.kernel_specifications - .iter() + self.kernel_specifications_for_worktree(worktree_id) .find(|kernel_option| match kernel_option { KernelSpecification::Jupyter(runtime_specification) => { runtime_specification.kernelspec.language.to_lowercase()