diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs index 0fb66e56a8c38..b804cefd3fcde 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs @@ -227,7 +227,7 @@ impl StepDescription { fn is_excluded(&self, builder: &Builder<'_>, pathset: &PathSet) -> bool { if builder.config.exclude.iter().any(|e| pathset.has(&e.path, e.kind)) { - eprintln!("Skipping {:?} because it is excluded", pathset); + println!("Skipping {:?} because it is excluded", pathset); return true; } diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs index 843d276cd7a88..b82c1505b2495 100644 --- a/src/bootstrap/config.rs +++ b/src/bootstrap/config.rs @@ -765,7 +765,7 @@ impl Config { { Ok(table) => table, Err(err) => { - println!("failed to parse TOML configuration '{}': {}", file.display(), err); + eprintln!("failed to parse TOML configuration '{}': {}", file.display(), err); process::exit(2); } } diff --git a/src/bootstrap/flags.rs b/src/bootstrap/flags.rs index 4cd835ade6421..9827a6c590b57 100644 --- a/src/bootstrap/flags.rs +++ b/src/bootstrap/flags.rs @@ -367,8 +367,8 @@ To learn more about a subcommand, run `./x.py -h`", } } if !pass_sanity_check { - println!("{}\n", subcommand_help); - println!( + eprintln!("{}\n", subcommand_help); + eprintln!( "Sorry, I couldn't figure out which subcommand you were trying to specify.\n\ You may need to move some options to after the subcommand.\n" ); @@ -532,7 +532,7 @@ Arguments: Kind::Build => Subcommand::Build { paths }, Kind::Check => { if matches.opt_present("all-targets") { - eprintln!( + println!( "Warning: --all-targets is now on by default and does not need to be passed explicitly." ); } @@ -606,7 +606,7 @@ Arguments: if matches.opt_str("keep-stage").is_some() || matches.opt_str("keep-stage-std").is_some() { - println!("--keep-stage not yet supported for x.py check"); + eprintln!("--keep-stage not yet supported for x.py check"); process::exit(1); } } diff --git a/src/bootstrap/format.rs b/src/bootstrap/format.rs index 10b846e6db208..d1a450f1bff8e 100644 --- a/src/bootstrap/format.rs +++ b/src/bootstrap/format.rs @@ -96,7 +96,7 @@ pub fn format(build: &Build, check: bool, paths: &[PathBuf]) { entry.split(' ').nth(1).expect("every git status entry should list a path") }); for untracked_path in untracked_paths { - eprintln!("skip untracked path {} during rustfmt invocations", untracked_path); + println!("skip untracked path {} during rustfmt invocations", untracked_path); // The leading `/` makes it an exact match against the // repository root, rather than a glob. Without that, if you // have `foo.rs` in the repository root it will also match @@ -105,10 +105,10 @@ pub fn format(build: &Build, check: bool, paths: &[PathBuf]) { ignore_fmt.add(&format!("!/{}", untracked_path)).expect(&untracked_path); } } else { - eprintln!("Not in git tree. Skipping git-aware format checks"); + println!("Not in git tree. Skipping git-aware format checks"); } } else { - eprintln!("Could not find usable git. Skipping git-aware format checks"); + println!("Could not find usable git. Skipping git-aware format checks"); } let ignore_fmt = ignore_fmt.build().unwrap(); diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs index 591f9a1ca50d3..0f0cf0762ab5d 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs @@ -689,9 +689,9 @@ impl Build { // Check for postponed failures from `test --no-fail-fast`. let failures = self.delayed_failures.borrow(); if failures.len() > 0 { - println!("\n{} command(s) did not execute successfully:\n", failures.len()); + eprintln!("\n{} command(s) did not execute successfully:\n", failures.len()); for failure in failures.iter() { - println!(" - {}\n", failure); + eprintln!(" - {}\n", failure); } process::exit(1); } diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs index 09b8cbe9014d4..7bfcfcdef2c7d 100644 --- a/src/bootstrap/native.rs +++ b/src/bootstrap/native.rs @@ -138,10 +138,10 @@ pub(crate) fn maybe_download_ci_llvm(builder: &Builder<'_>) { let llvm_sha = llvm_sha.trim(); if llvm_sha == "" { - println!("error: could not find commit hash for downloading LLVM"); - println!("help: maybe your repository history is too shallow?"); - println!("help: consider disabling `download-ci-llvm`"); - println!("help: or fetch enough history to include one upstream commit"); + eprintln!("error: could not find commit hash for downloading LLVM"); + eprintln!("help: maybe your repository history is too shallow?"); + eprintln!("help: consider disabling `download-ci-llvm`"); + eprintln!("help: or fetch enough history to include one upstream commit"); panic!(); } diff --git a/src/bootstrap/setup.rs b/src/bootstrap/setup.rs index b730730854f14..82f55440ce50c 100644 --- a/src/bootstrap/setup.rs +++ b/src/bootstrap/setup.rs @@ -85,12 +85,12 @@ pub fn setup(config: &Config, profile: Profile) { let path = &config.config; if path.exists() { - println!( + eprintln!( "error: you asked `x.py` to setup a new config file, but one already exists at `{}`", path.display() ); - println!("help: try adding `profile = \"{}\"` at the top of {}", profile, path.display()); - println!( + eprintln!("help: try adding `profile = \"{}\"` at the top of {}", profile, path.display()); + eprintln!( "note: this will use the configuration in {}", profile.include_path(&config.src).display() ); @@ -115,7 +115,7 @@ pub fn setup(config: &Config, profile: Profile) { println!(); if !rustup_installed() && profile != Profile::User { - println!("`rustup` is not installed; cannot link `stage1` toolchain"); + eprintln!("`rustup` is not installed; cannot link `stage1` toolchain"); } else if stage_dir_exists(&stage_path[..]) { attempt_toolchain_link(&stage_path[..]); } @@ -173,7 +173,7 @@ fn attempt_toolchain_link(stage_path: &str) { } if !ensure_stage1_toolchain_placeholder_exists(stage_path) { - println!( + eprintln!( "Failed to create a template for stage 1 toolchain or confirm that it already exists" ); return; @@ -184,8 +184,8 @@ fn attempt_toolchain_link(stage_path: &str) { "Added `stage1` rustup toolchain; try `cargo +stage1 build` on a separate rust project to run a newly-built toolchain" ); } else { - println!("`rustup` failed to link stage 1 build to `stage1` toolchain"); - println!( + eprintln!("`rustup` failed to link stage 1 build to `stage1` toolchain"); + eprintln!( "To manually link stage 1 build to `stage1` toolchain, run:\n `rustup toolchain link stage1 {}`", &stage_path @@ -292,8 +292,8 @@ pub fn interactive_path() -> io::Result { break match parse_with_abbrev(&input) { Ok(profile) => profile, Err(err) => { - println!("error: {}", err); - println!("note: press Ctrl+C to exit"); + eprintln!("error: {}", err); + eprintln!("note: press Ctrl+C to exit"); continue; } }; @@ -320,8 +320,8 @@ undesirable, simply delete the `pre-push` file from .git/hooks." "y" | "yes" => true, "n" | "no" | "" => false, _ => { - println!("error: unrecognized option '{}'", input.trim()); - println!("note: press Ctrl+C to exit"); + eprintln!("error: unrecognized option '{}'", input.trim()); + eprintln!("note: press Ctrl+C to exit"); continue; } }; @@ -337,7 +337,7 @@ undesirable, simply delete the `pre-push` file from .git/hooks." )); let dst = git.join("hooks").join("pre-push"); match fs::hard_link(src, &dst) { - Err(e) => println!( + Err(e) => eprintln!( "error: could not create hook {}: do you already have the git hook installed?\n{}", dst.display(), e diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs index 2f4d07d77a51f..f39cbb57b8271 100644 --- a/src/bootstrap/tool.rs +++ b/src/bootstrap/tool.rs @@ -152,43 +152,43 @@ impl Step for ToolBuild { }); if is_expected && !duplicates.is_empty() { - println!( + eprintln!( "duplicate artifacts found when compiling a tool, this \ typically means that something was recompiled because \ a transitive dependency has different features activated \ than in a previous build:\n" ); - println!( + eprintln!( "the following dependencies are duplicated although they \ have the same features enabled:" ); let (same, different): (Vec<_>, Vec<_>) = duplicates.into_iter().partition(|(_, cur, prev)| cur.2 == prev.2); for (id, cur, prev) in same { - println!(" {}", id); + eprintln!(" {}", id); // same features - println!(" `{}` ({:?})\n `{}` ({:?})", cur.0, cur.1, prev.0, prev.1); + eprintln!(" `{}` ({:?})\n `{}` ({:?})", cur.0, cur.1, prev.0, prev.1); } - println!("the following dependencies have different features:"); + eprintln!("the following dependencies have different features:"); for (id, cur, prev) in different { - println!(" {}", id); + eprintln!(" {}", id); let cur_features: HashSet<_> = cur.2.into_iter().collect(); let prev_features: HashSet<_> = prev.2.into_iter().collect(); - println!( + eprintln!( " `{}` additionally enabled features {:?} at {:?}", cur.0, &cur_features - &prev_features, cur.1 ); - println!( + eprintln!( " `{}` additionally enabled features {:?} at {:?}", prev.0, &prev_features - &cur_features, prev.1 ); } - println!(); - println!( + eprintln!(); + eprintln!( "to fix this you will probably want to edit the local \ src/tools/rustc-workspace-hack/Cargo.toml crate, as \ that will update the dependency graph to ensure that \ diff --git a/src/bootstrap/util.rs b/src/bootstrap/util.rs index 710b3588b845b..848d9a7dc92ed 100644 --- a/src/bootstrap/util.rs +++ b/src/bootstrap/util.rs @@ -455,7 +455,7 @@ fn dir_up_to_date(src: &Path, threshold: SystemTime) -> bool { } fn fail(s: &str) -> ! { - println!("\n\n{}\n\n", s); + eprintln!("\n\n{}\n\n", s); std::process::exit(1); }