debugger: Mark DebugAdapterBinary::program as optional (#32534)

This allows us to support debugging with a debug adapter not managed by
Zed. Note that this is not a user facing change, as DebugAdapterBinary
is used to determine how to spawn a debugger. Thus, this should not
break any configs or anything like that.

Closes #ISSUE

Release Notes:

- N/A
This commit is contained in:
Piotr Osiewicz 2025-06-11 12:38:12 +02:00 committed by GitHub
parent a3cc063107
commit 6c4728f00f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
14 changed files with 80 additions and 53 deletions

View file

@ -69,12 +69,14 @@ impl JsDebugAdapter {
let (host, port, timeout) = crate::configure_tcp_connection(tcp_connection).await?;
Ok(DebugAdapterBinary {
command: delegate
.node_runtime()
.binary_path()
.await?
.to_string_lossy()
.into_owned(),
command: Some(
delegate
.node_runtime()
.binary_path()
.await?
.to_string_lossy()
.into_owned(),
),
arguments: vec![
adapter_path
.join(Self::ADAPTER_PATH)