Made error output the contents of Cargo's stderr as well.
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
//! another compatible command (f.x. clippy) in a background thread and provide
|
//! another compatible command (f.x. clippy) in a background thread and provide
|
||||||
//! LSP diagnostics based on the output of the command.
|
//! LSP diagnostics based on the output of the command.
|
||||||
|
|
||||||
use std::{fmt, io, process::Command, time::Duration};
|
use std::{fmt, io, process::Command, time::Duration, str::from_utf8};
|
||||||
|
|
||||||
use crossbeam_channel::{never, select, unbounded, Receiver, Sender};
|
use crossbeam_channel::{never, select, unbounded, Receiver, Sender};
|
||||||
use paths::AbsPathBuf;
|
use paths::AbsPathBuf;
|
||||||
@@ -329,8 +329,8 @@ impl CargoActor {
|
|||||||
Ok(output) if output.status.success() => Ok(()),
|
Ok(output) if output.status.success() => Ok(()),
|
||||||
Ok(output) => {
|
Ok(output) => {
|
||||||
Err(io::Error::new(io::ErrorKind::Other, format!(
|
Err(io::Error::new(io::ErrorKind::Other, format!(
|
||||||
"Cargo watcher failed, the command produced no valid metadata (exit code: {:?})\nMake sure you have `cargo clippy` installed and updated.",
|
"Cargo watcher failed, the command produced no valid metadata (exit code: {:?})\nCargo's stderr output:\n{}",
|
||||||
output.status
|
output.status, from_utf8(&output.stderr).unwrap_or("(Error: Could not fetch Cargo's stderr output)")
|
||||||
)))
|
)))
|
||||||
}
|
}
|
||||||
Err(e) => Err(io::Error::new(e.kind(), format!("{:?}: {}", e, error))),
|
Err(e) => Err(io::Error::new(e.kind(), format!("{:?}: {}", e, error))),
|
||||||
|
|||||||
Reference in New Issue
Block a user