Some checks failed
Update All Top Ranking Issues / update_top_ranking_issues (push) Has been cancelled
Triage Project Sync (#84) / Sync triage project (push) Has been cancelled
release_nightly / notify_on_failure (push) Has been cancelled
release_nightly / check_style (push) Has been cancelled
release_nightly / run_tests_windows (push) Has been cancelled
release_nightly / clippy_windows (push) Has been cancelled
release_nightly / bundle_linux_aarch64 (push) Has been cancelled
release_nightly / bundle_linux_x86_64 (push) Has been cancelled
release_nightly / bundle_mac_aarch64 (push) Has been cancelled
release_nightly / bundle_mac_x86_64 (push) Has been cancelled
release_nightly / bundle_windows_aarch64 (push) Has been cancelled
release_nightly / bundle_windows_x86_64 (push) Has been cancelled
release_nightly / build_nix_linux_x86_64 (push) Has been cancelled
release_nightly / build_nix_mac_aarch64 (push) Has been cancelled
release_nightly / update_nightly_tag (push) Has been cancelled
Hotfix Review Monitor / check-hotfix-reviews (push) Has been cancelled
Stale PR Review Reminder / check-stale-prs (push) Has been cancelled
Update Weekly Top Ranking Issues / update_top_ranking_issues (push) Has been cancelled
Bump collab-staging Tag / update-collab-staging-tag (push) Has been cancelled
compliance_check / scheduled_compliance_check (push) Has been cancelled
Single-commit orphan branch: full zed-industries/zed @ 8c74db0 source tree with a 3-file patch applied (no upstream history). Patch (crates/gpui_linux/src/linux/wayland/): - serial.rs: add SerialKind::KeyboardEnter - client.rs: store wl_keyboard.enter serial; add latest_serial_of() - window.rs: activate() uses keyboard-enter serial (Mutter focus gate) Mutter honors window activation only when the token carries the keyboard- focus serial from wl_keyboard.enter; GPUI used a stale mouse-press serial. See docs/tray-window-focus-wayland.md in logiguard. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
124 lines
4.2 KiB
Plaintext
124 lines
4.2 KiB
Plaintext
interface dap {
|
|
use common.{env-vars};
|
|
|
|
/// Resolves a specified TcpArgumentsTemplate into TcpArguments
|
|
resolve-tcp-template: func(template: tcp-arguments-template) -> result<tcp-arguments, string>;
|
|
|
|
record launch-request {
|
|
program: string,
|
|
cwd: option<string>,
|
|
args: list<string>,
|
|
envs: env-vars,
|
|
}
|
|
|
|
record attach-request {
|
|
process-id: option<u32>,
|
|
}
|
|
|
|
variant debug-request {
|
|
launch(launch-request),
|
|
attach(attach-request)
|
|
}
|
|
|
|
record tcp-arguments {
|
|
port: u16,
|
|
host: u32,
|
|
timeout: option<u64>,
|
|
}
|
|
|
|
record tcp-arguments-template {
|
|
port: option<u16>,
|
|
host: option<u32>,
|
|
timeout: option<u64>,
|
|
}
|
|
|
|
/// Debug Config is the "highest-level" configuration for a debug session.
|
|
/// It comes from a new process modal UI; thus, it is essentially debug-adapter-agnostic.
|
|
/// It is expected of the extension to translate this generic configuration into something that can be debugged by the adapter (debug scenario).
|
|
record debug-config {
|
|
/// Name of the debug task
|
|
label: string,
|
|
/// The debug adapter to use
|
|
adapter: string,
|
|
request: debug-request,
|
|
stop-on-entry: option<bool>,
|
|
}
|
|
|
|
record task-template {
|
|
/// Human readable name of the task to display in the UI.
|
|
label: string,
|
|
/// Executable command to spawn.
|
|
command: string,
|
|
args: list<string>,
|
|
env: env-vars,
|
|
cwd: option<string>,
|
|
}
|
|
|
|
/// A task template with substituted task variables.
|
|
type resolved-task = task-template;
|
|
|
|
/// A task template for building a debug target.
|
|
type build-task-template = task-template;
|
|
|
|
variant build-task-definition {
|
|
by-name(string),
|
|
template(build-task-definition-template-payload )
|
|
}
|
|
record build-task-definition-template-payload {
|
|
locator-name: option<string>,
|
|
template: build-task-template
|
|
}
|
|
|
|
/// Debug Scenario is the user-facing configuration type (used in debug.json). It is still concerned with what to debug and not necessarily how to do it (except for any
|
|
/// debug-adapter-specific configuration options).
|
|
record debug-scenario {
|
|
/// Unsubstituted label for the task.DebugAdapterBinary
|
|
label: string,
|
|
/// Name of the Debug Adapter this configuration is intended for.
|
|
adapter: string,
|
|
/// An optional build step to be ran prior to starting a debug session. Build steps are used by Zed's locators to locate the executable to debug.
|
|
build: option<build-task-definition>,
|
|
/// JSON-encoded configuration for a given debug adapter.
|
|
config: string,
|
|
/// TCP connection parameters (if they were specified by user)
|
|
tcp-connection: option<tcp-arguments-template>,
|
|
}
|
|
|
|
enum start-debugging-request-arguments-request {
|
|
launch,
|
|
attach,
|
|
}
|
|
|
|
record debug-task-definition {
|
|
/// Unsubstituted label for the task.DebugAdapterBinary
|
|
label: string,
|
|
/// Name of the Debug Adapter this configuration is intended for.
|
|
adapter: string,
|
|
/// JSON-encoded configuration for a given debug adapter.
|
|
config: string,
|
|
/// TCP connection parameters (if they were specified by user)
|
|
tcp-connection: option<tcp-arguments-template>,
|
|
}
|
|
|
|
record start-debugging-request-arguments {
|
|
/// JSON-encoded configuration for a given debug adapter. It is specific to each debug adapter.
|
|
/// `configuration` will have it's Zed variable references substituted prior to being passed to the debug adapter.
|
|
configuration: string,
|
|
request: start-debugging-request-arguments-request,
|
|
}
|
|
|
|
/// The lowest-level representation of a debug session, which specifies:
|
|
/// - How to start a debug adapter process
|
|
/// - How to start a debug session with it (using DAP protocol)
|
|
/// for a given debug scenario.
|
|
record debug-adapter-binary {
|
|
command: option<string>,
|
|
arguments: list<string>,
|
|
envs: env-vars,
|
|
cwd: option<string>,
|
|
/// Zed will use TCP transport if `connection` is specified.
|
|
connection: option<tcp-arguments>,
|
|
request-args: start-debugging-request-arguments
|
|
}
|
|
}
|