diff --git a/src/cargo_cmd.rs b/src/cargo_cmd.rs index eabf8a37..6aa97ea0 100644 --- a/src/cargo_cmd.rs +++ b/src/cargo_cmd.rs @@ -564,6 +564,7 @@ fn filter_cargo_build(output: &str) -> String { let mut compiled = 0; let mut in_error = false; let mut current_error = Vec::new(); + let mut finished_line: Option = None; for line in output.lines() { if line.trim_start().starts_with("Compiling") || line.trim_start().starts_with("Checking") { @@ -576,6 +577,7 @@ fn filter_cargo_build(output: &str) -> String { continue; } if line.trim_start().starts_with("Finished") { + finished_line = Some(line.trim_start().to_string()); continue; } @@ -622,7 +624,11 @@ fn filter_cargo_build(output: &str) -> String { } if error_count == 0 && warnings == 0 { - return format!("cargo build ({} crates compiled)", compiled); + return if let Some(finished) = finished_line { + format!("cargo build ({} crates compiled)\n{}", compiled, finished) + } else { + format!("cargo build ({} crates compiled)", compiled) + }; } let mut result = String::new();