Repository navigation
base red: cmux-tui builds for Windows again (cmux-automations unix-only) - #29075
Conversation
…ix-only dependency) cmux-automations uses std::os::unix and libc's unix calls; cmux-tui reaches it only from cli/automation.rs, which is already cfg(unix). Depending on it on every target made build-windows (cargo build -p cmux-tui --target x86_64-pc-windows-gnu) fail with 35 errors. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-ae4029a33c6be100d23c
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
Shipped in:
|
|
Review (codex gpt-6-astra high): SHIP at 592cf2d Every |
|
Review (review_pr26612, independent correctness review): SHIP at 4740ddd No correctness findings. The sole diff moves Executed at this exact head: Windows job completed its This shared repair removes the inherited Windows compiler failure blocking #26612 and other cmux-tui PRs. The release-notary guard failure is also present on base. |
|
Review (review_pr26612, independent correctness review): SHIP at 365416c Fresh review of the full diff and incoming base interactions found no correctness defects. The PR still changes only I merged the current base through GitHub update-branch with the expected previous head, preserving both histories. Autoland had classified the previous release-guard failure as fixed on base but was waiting on a queued compile before updating the branch. This review independently checked the new head against base Observed: the previous-head full Windows job passed, including compilation, long paths, process exit, key handoff and ConPTY resize. Current-head Windows and cargo jobs are still running; no exact-new-head build or runtime pass is claimed. No local builds/tests ran. |
Summary
build-windows / build x86_64-pc-windows-gnufails for every PR whose change routes it on. It runscargo build -p cmux-tui --target x86_64-pc-windows-gnu, and that fails withcould not compile cmux-automations (lib) due to 35 previous errors. The errors arestd::os::unix,std::os::fd, andlibc::localtime_r/gmtime_r/timegm/kill/pid_t(seen on #28678 and #28759, for example job 124460652801).cmux-tuiusescmux-automationsonly fromcli/automation.rs. That module is already#[cfg(unix)], as is itsrun_if_requestedcall incli.rs. Only the dependency was declared for every target. This PR moves it to[target.'cfg(unix)'.dependencies], so a Windows build no longer compiles the crate. Nothing changes on macOS or Linux, andCargo.lockis unchanged.Base push runs don't run
build-windows, so this red never shows on base. next-autoland then counts it as each PR's own red, which holds back otherwise-ready PRs.Testing
Red: base, as
build-windowson #28678 and #28759 at their heads (35 errors incrates\cmux-automations). Green: this PR's ownbuild-windowsjob.Observed / Not run
Observed: the Windows errors in those jobs' logs, all in
cmux-automations, and thatcmux-tuireaches the crate only through cfg(unix) code (git grep cmux_automations).Not run: a local Windows cross-build (this VM has no mingw toolchain); this PR's CI
build-windowsjob runs it.Changelog
none
Agent session: agent session
🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.Summary by cubic
Fixes the Windows build of
cmux-tuiby makingcmux-automationsa unix-only dependency.cmux-automationsusesstd::os::unixand libc unix calls, so compiling it forx86_64-pc-windows-gnufailed with 35 errors.cmux-tuionly reaches the crate fromcli/automation.rs, which is already#[cfg(unix)]. Moving the dependency to[target.'cfg(unix)'.dependencies]means Windows builds skip the crate entirely. macOS and Linux builds are unchanged, andCargo.lockis untouched.Written for commit 365416c. Summary will update on new commits.