Skip to content

feat(acp-client): make nix dependency conditional on Unix platforms - #554

Merged
matt2e merged 1 commit into
mainfrom
acp
Mar 31, 2026
Merged

feat(acp-client): make nix dependency conditional on Unix platforms#554
matt2e merged 1 commit into
mainfrom
acp

Conversation

@matt2e

@matt2e matt2e commented Mar 31, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Makes the nix crate dependency conditional on Unix platforms via cfg(unix) in Cargo.toml
  • Guards Unix-specific imports (nix::sys::signal, nix::unistd::Pid) and usage sites (process_group, graceful_stop) with #[cfg(unix)] attributes
  • Enables the acp-client crate to compile on non-Unix platforms (e.g., Windows)

Test plan

  • Verify the crate compiles on Unix platforms with no regressions
  • Verify the crate compiles on a non-Unix platform (e.g., Windows)

🤖 Generated with Claude Code

Move the nix crate to a [target.'cfg(unix)'.dependencies] section in
Cargo.toml and gate all Unix-specific code paths in driver.rs behind
#[cfg(unix)] attributes:

- nix imports (signal, Pid)
- process_group(0) call for remote proxies
- SIGINT-to-process-group logic in graceful_stop()

On non-Unix platforms the gated blocks compile out entirely, and
graceful_stop falls through to child.kill() which is the existing
fallback behavior.
@matt2e
matt2e requested review from baxen and wesbillman as code owners March 31, 2026 02:34
@matt2e
matt2e merged commit 17e6098 into main Mar 31, 2026
6 checks passed
@matt2e
matt2e deleted the acp branch March 31, 2026 02:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant