fix: surface zccache daemon start failures - #624
Conversation
|
Caution Review failedPull request was closed or merged during review 📝 WalkthroughWalkthrough
Changeszccache startup error propagation
Sequence Diagram(s)sequenceDiagram
participant ESP32Orchestrator as ESP32 Build Orchestrator
participant ensure_running
participant ZccacheProcess as zccache start (subprocess)
participant format_zccache_start_failure
ESP32Orchestrator->>ensure_running: ensure_running(zcc)?
ensure_running->>ZccacheProcess: Command::new(zccache).arg("start").stdout(Piped).stderr(Piped).output()
alt spawn/output error or non-zero exit
ZccacheProcess-->>ensure_running: Err or Output{status!=0, stdout, stderr}
ensure_running->>format_zccache_start_failure: (path, exit_status, stderr, stdout)
format_zccache_start_failure-->>ensure_running: formatted error string
ensure_running-->>ESP32Orchestrator: Err(FbuildError::BuildFailed(...))
note over ESP32Orchestrator: build aborted via ?
else zero exit
ZccacheProcess-->>ensure_running: Output{status==0}
ensure_running-->>ESP32Orchestrator: Ok(())
end
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
zccache startfailures from the ESP32 build path instead of logging and continuingzccache[err][D]: cannot start daemonreach the CLINotes
main.C:\Users\niteris\.soldr\cache\zccache\private\soldr-dev-5c2d0a9ed30121ce; they show lifecycle events such asreplaced-comm-errorand cache-store warnings, but not the exact orphan-pipe message from the issue. The useful fix is still to surface process stderr directly.Tests
soldr cargo fmt --all --checksoldr cargo test --locked -p fbuild-build zccache --libgit diff --checkFixes #623
Summary by CodeRabbit