Expand description
BuildErrorDisplay - Specialized display for compilation and build errors.
This module provides rich error display for build-related issues, including compilation failures, timeouts, signal kills, and artifact errors.
§Key Design Principle
For compilation errors, we preserve and enhance rustc/cargo error formatting rather than overriding it. RCH adds context (worker info, command, timing) around the compiler output, not replacing it.
§Features
- Compilation errors with compiler output passthrough
- Build timeout with resource usage at timeout
- Signal kills with OOM killer detection
- Artifact retrieval failures with path details
- Worker resource state display
- JSON serialization for structured output
§Example
ⓘ
use rch_common::ui::errors::BuildErrorDisplay;
use rch_common::ui::OutputContext;
let display = BuildErrorDisplay::build_timeout("cargo build --release")
.worker("build1.internal")
.duration_secs(300)
.timeout_secs(300)
.last_output("Compiling serde_derive v1.0.152")
.cpu_usage(98.0)
.memory_usage(14.2, 16.0)
.load_average(8.5);
display.render(OutputContext::detect());Structs§
- Build
Error Display - BuildErrorDisplay - Rich error display for build/compilation errors.
- Signal
Info - Signal information for killed builds.
- Worker
Resource State - Worker resource state at the time of error.