about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlex Macleod <alex@macleod.io>2023-05-05 11:45:24 +0000
committerAlex Macleod <alex@macleod.io>2023-05-05 12:10:36 +0000
commit0f7b61d729e20fd486bb26663993f63cce5a68eb (patch)
treeb9181930ef9b210ab0dcde93bbf424c221df84af
parentf9c1d155b4c9cad224fe96aad486993dc123c9b6 (diff)
downloadrust-0f7b61d729e20fd486bb26663993f63cce5a68eb.tar.gz
rust-0f7b61d729e20fd486bb26663993f63cce5a68eb.zip
Inherit stdout/stderr for `cargo dev dogfood`
-rw-r--r--clippy_dev/src/dogfood.rs8
-rw-r--r--clippy_dev/src/lib.rs13
-rw-r--r--clippy_dev/src/lint.rs17
3 files changed, 19 insertions, 19 deletions
diff --git a/clippy_dev/src/dogfood.rs b/clippy_dev/src/dogfood.rs
index b69e9f649ec..a0d57f5ab48 100644
--- a/clippy_dev/src/dogfood.rs
+++ b/clippy_dev/src/dogfood.rs
@@ -1,4 +1,4 @@
-use crate::clippy_project_root;
+use crate::{clippy_project_root, exit_if_err};
 use std::process::Command;
 
 /// # Panics
@@ -10,7 +10,7 @@ pub fn dogfood(fix: bool, allow_dirty: bool, allow_staged: bool) {
     cmd.current_dir(clippy_project_root())
         .args(["test", "--test", "dogfood"])
         .args(["--features", "internal"])
-        .args(["--", "dogfood_clippy"]);
+        .args(["--", "dogfood_clippy", "--nocapture"]);
 
     let mut dogfood_args = Vec::new();
     if fix {
@@ -27,7 +27,5 @@ pub fn dogfood(fix: bool, allow_dirty: bool, allow_staged: bool) {
 
     cmd.env("__CLIPPY_DOGFOOD_ARGS", dogfood_args.join(" "));
 
-    let output = cmd.output().expect("failed to run command");
-
-    println!("{}", String::from_utf8_lossy(&output.stdout));
+    exit_if_err(cmd.status());
 }
diff --git a/clippy_dev/src/lib.rs b/clippy_dev/src/lib.rs
index 3a8b070d735..56a269288c0 100644
--- a/clippy_dev/src/lib.rs
+++ b/clippy_dev/src/lib.rs
@@ -10,7 +10,9 @@
 extern crate rustc_driver;
 extern crate rustc_lexer;
 
+use std::io;
 use std::path::PathBuf;
+use std::process::{self, ExitStatus};
 
 pub mod bless;
 pub mod dogfood;
@@ -58,3 +60,14 @@ pub fn clippy_project_root() -> PathBuf {
     }
     panic!("error: Can't determine root of project. Please run inside a Clippy working dir.");
 }
+
+pub fn exit_if_err(status: io::Result<ExitStatus>) {
+    match status.expect("failed to run command").code() {
+        Some(0) => {},
+        Some(n) => process::exit(n),
+        None => {
+            eprintln!("Killed by signal");
+            process::exit(1);
+        },
+    }
+}
diff --git a/clippy_dev/src/lint.rs b/clippy_dev/src/lint.rs
index aafd0f71a59..a19be1bca6c 100644
--- a/clippy_dev/src/lint.rs
+++ b/clippy_dev/src/lint.rs
@@ -1,17 +1,6 @@
-use crate::cargo_clippy_path;
-use std::process::{self, Command, ExitStatus};
-use std::{fs, io};
-
-fn exit_if_err(status: io::Result<ExitStatus>) {
-    match status.expect("failed to run command").code() {
-        Some(0) => {},
-        Some(n) => process::exit(n),
-        None => {
-            eprintln!("Killed by signal");
-            process::exit(1);
-        },
-    }
-}
+use crate::{cargo_clippy_path, exit_if_err};
+use std::fs;
+use std::process::{self, Command};
 
 pub fn run<'a>(path: &str, args: impl Iterator<Item = &'a String>) {
     let is_file = match fs::metadata(path) {