First pass on fixes

This commit is contained in:
Piotr Osiewicz 2025-08-19 14:23:59 +02:00
parent 5826d89b97
commit 2f3be75fc7
269 changed files with 1593 additions and 2574 deletions

View file

@ -131,8 +131,8 @@ impl super::LspAdapter for GoLspAdapter {
if let Some(version) = *version {
let binary_path = container_dir.join(format!("gopls_{version}_go_{go_version}"));
if let Ok(metadata) = fs::metadata(&binary_path).await {
if metadata.is_file() {
if let Ok(metadata) = fs::metadata(&binary_path).await
&& metadata.is_file() {
remove_matching(&container_dir, |entry| {
entry != binary_path && entry.file_name() != Some(OsStr::new("gobin"))
})
@ -144,7 +144,6 @@ impl super::LspAdapter for GoLspAdapter {
env: None,
});
}
}
} else if let Some(path) = this
.cached_server_binary(container_dir.clone(), delegate)
.await

View file

@ -244,12 +244,11 @@ pub fn init(languages: Arc<LanguageRegistry>, node: NodeRuntime, cx: &mut App) {
cx.observe_flag::<BasedPyrightFeatureFlag, _>({
let languages = languages.clone();
move |enabled, _| {
if enabled {
if let Some(adapter) = basedpyright_lsp_adapter.take() {
if enabled
&& let Some(adapter) = basedpyright_lsp_adapter.take() {
languages
.register_available_lsp_adapter(adapter.name(), move || adapter.clone());
}
}
}
})
.detach();

View file

@ -338,8 +338,8 @@ impl LspAdapter for PythonLspAdapter {
let interpreter_path = toolchain.path.to_string();
// Detect if this is a virtual environment
if let Some(interpreter_dir) = Path::new(&interpreter_path).parent() {
if let Some(venv_dir) = interpreter_dir.parent() {
if let Some(interpreter_dir) = Path::new(&interpreter_path).parent()
&& let Some(venv_dir) = interpreter_dir.parent() {
// Check if this looks like a virtual environment
if venv_dir.join("pyvenv.cfg").exists()
|| venv_dir.join("bin/activate").exists()
@ -365,7 +365,6 @@ impl LspAdapter for PythonLspAdapter {
}
}
}
}
// Always set the python interpreter path
// Get or create the python section
@ -1519,8 +1518,8 @@ impl LspAdapter for BasedPyrightLspAdapter {
let interpreter_path = toolchain.path.to_string();
// Detect if this is a virtual environment
if let Some(interpreter_dir) = Path::new(&interpreter_path).parent() {
if let Some(venv_dir) = interpreter_dir.parent() {
if let Some(interpreter_dir) = Path::new(&interpreter_path).parent()
&& let Some(venv_dir) = interpreter_dir.parent() {
// Check if this looks like a virtual environment
if venv_dir.join("pyvenv.cfg").exists()
|| venv_dir.join("bin/activate").exists()
@ -1546,7 +1545,6 @@ impl LspAdapter for BasedPyrightLspAdapter {
}
}
}
}
// Always set the python interpreter path
// Get or create the python section

View file

@ -598,13 +598,11 @@ impl ContextProvider for RustContextProvider {
if let Some(path) = local_abs_path
.as_deref()
.and_then(|local_abs_path| local_abs_path.parent())
{
if let Some(package_name) =
&& let Some(package_name) =
human_readable_package_name(path, project_env.as_ref()).await
{
variables.insert(RUST_PACKAGE_TASK_VARIABLE.clone(), package_name);
}
}
if let Some(path) = local_abs_path.as_ref()
&& let Some((target, manifest_path)) =
target_info_from_abs_path(path, project_env.as_ref()).await

View file

@ -341,11 +341,10 @@ async fn detect_package_manager(
fs: Arc<dyn Fs>,
package_json_data: Option<PackageJsonData>,
) -> &'static str {
if let Some(package_json_data) = package_json_data {
if let Some(package_manager) = package_json_data.package_manager {
if let Some(package_json_data) = package_json_data
&& let Some(package_manager) = package_json_data.package_manager {
return package_manager;
}
}
if fs.is_file(&worktree_root.join("pnpm-lock.yaml")).await {
return "pnpm";
}