From b6b74fb13875dae09706697d36f4b4fbf8e96503 Mon Sep 17 00:00:00 2001 From: Patrick Deuster Date: Wed, 17 May 2017 16:35:17 +0200 Subject: [PATCH 1/3] fixes prompt asking for msvc even though -y is provided --- src/rustup-cli/self_update.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rustup-cli/self_update.rs b/src/rustup-cli/self_update.rs index 7d1a641c5a..18a8ed2f8b 100644 --- a/src/rustup-cli/self_update.rs +++ b/src/rustup-cli/self_update.rs @@ -219,7 +219,7 @@ pub fn install(no_prompt: bool, verbose: bool, try!(do_pre_install_sanity_checks()); try!(do_anti_sudo_check(no_prompt)); - if !try!(do_msvc_check(&opts)) { + if !no_prompt && !try!(do_msvc_check(&opts)) { info!("aborting installation"); return Ok(()); } From ef36a24075528ec5c8208b8c4b82458c56025211 Mon Sep 17 00:00:00 2001 From: pxdeu Date: Sun, 21 May 2017 16:40:11 +0200 Subject: [PATCH 2/3] always performing the check, printing a warning if it is not installed and -y passed --- src/rustup-cli/self_update.rs | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/rustup-cli/self_update.rs b/src/rustup-cli/self_update.rs index 18a8ed2f8b..b5de565fde 100644 --- a/src/rustup-cli/self_update.rs +++ b/src/rustup-cli/self_update.rs @@ -219,9 +219,16 @@ pub fn install(no_prompt: bool, verbose: bool, try!(do_pre_install_sanity_checks()); try!(do_anti_sudo_check(no_prompt)); - if !no_prompt && !try!(do_msvc_check(&opts)) { - info!("aborting installation"); - return Ok(()); + if !try!(do_msvc_check(&opts)) { + if no_prompt { + warn!("installing msvc toolchain without its prerequisites"); + } else { + term2::stdout().md(MSVC_MESSAGE); + if !try!(common::confirm("\nContinue? (Y/n)", true)) { + info!("aborting installation"); + return Ok(()); + } + } } if !no_prompt { @@ -463,10 +470,7 @@ fn do_msvc_check(opts: &InstallOpts) -> Result { let installing_msvc = opts.default_host_triple.contains("msvc"); let have_msvc = windows_registry::find_tool(&opts.default_host_triple, "cl.exe").is_some(); if installing_msvc && !have_msvc { - term2::stdout().md(MSVC_MESSAGE); - if !try!(common::confirm("\nContinue? (Y/n)", true)) { - return Ok(false); - } + return Ok(false); } Ok(true) From b6f105c9b38546faa13bc5c445f05bc3029d8b7e Mon Sep 17 00:00:00 2001 From: pxdeu Date: Sun, 21 May 2017 18:34:43 +0200 Subject: [PATCH 3/3] removed #[cfg(windows)] from MSVC_MESSAGE because the scope changed --- src/rustup-cli/self_update.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/rustup-cli/self_update.rs b/src/rustup-cli/self_update.rs index b5de565fde..1a4fd72e35 100644 --- a/src/rustup-cli/self_update.rs +++ b/src/rustup-cli/self_update.rs @@ -165,7 +165,6 @@ This will uninstall all Rust toolchains and data, and remove } } -#[cfg(windows)] static MSVC_MESSAGE: &'static str = r#"# Rust Visual C++ prerequisites