From f12b0dddf4af5f99015e75dd11605be3b055b201 Mon Sep 17 00:00:00 2001 From: Cole Miller Date: Fri, 27 Jun 2025 15:34:21 -0400 Subject: [PATCH] Touch up extension DAP schemas fix (#33548) Updates #33546 Release Notes: - N/A Co-authored-by: Piotr --- crates/extension_cli/src/main.rs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/crates/extension_cli/src/main.rs b/crates/extension_cli/src/main.rs index 7e87a5fd9e..45a7e3b641 100644 --- a/crates/extension_cli/src/main.rs +++ b/crates/extension_cli/src/main.rs @@ -260,17 +260,20 @@ async fn copy_extension_resources( } if !manifest.debug_adapters.is_empty() { - let output_debug_adapter_schemas_dir = output_dir.join("debug_adapter_schemas"); - fs::create_dir_all(&output_debug_adapter_schemas_dir)?; for (debug_adapter, entry) in &manifest.debug_adapters { let schema_path = entry.schema_path.clone().unwrap_or_else(|| { PathBuf::from("debug_adapter_schemas".to_owned()) - .join(format!("{debug_adapter}.json")) + .join(debug_adapter.as_ref()) + .with_extension("json") }); + let parent = schema_path + .parent() + .with_context(|| format!("invalid empty schema path for {debug_adapter}"))?; + fs::create_dir_all(output_dir.join(parent))?; copy_recursive( fs.as_ref(), - &extension_path.join(schema_path.clone()), - &output_debug_adapter_schemas_dir.join(format!("{debug_adapter}.json")), + &extension_path.join(&schema_path), + &output_dir.join(&schema_path), CopyOptions { overwrite: true, ignore_if_exists: false,