diagprint 0.8.1

A Rust diagnostics lifecycle framework for structured diagnostics, rendering, remediation, CI, editors, and telemetry.
Documentation
use diagprint::{Reporter, RotationCadence, Severity};
fn main() -> diagprint::Result<()> {
    let r = Reporter::builder()
        .application("omniscient")
        .min_severity(Severity::Info)
        .file("reports/omniscient.log")
        .max_file_size(1024 * 1024)
        .rotation_count(5)
        .rotation_cadence(RotationCadence::Daily)
        .show_metadata(true)
        .width(82)
        .build()?;
    let d = r
        .error("Network initialization failed")
        .code("NET-001")
        .label(
            "examples/basic.rs",
            4,
            Some(8),
            Some(8),
            Some("diagnostic creation"),
        )
        .cause("failed to open network interface")
        .cause("permission denied")
        .note("Fallback interface was not selected")
        .help("Check interface permissions and driver state");
    r.emit(&d)?;
    Ok(())
}