Skip to content

Commit

Permalink
Unnest rustup's utils crate
Browse files Browse the repository at this point in the history
  • Loading branch information
dwijnand committed Mar 14, 2019
1 parent 432c29e commit 2572d20
Show file tree
Hide file tree
Showing 53 changed files with 126 additions and 200 deletions.
40 changes: 2 additions & 38 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ vendored-openssl = ['openssl/vendored']
no-self-update = []

[dependencies]
rustup-utils = { path = "src/rustup-utils" }
dirs = "1.0"
download = { path = "download" }
clap = "2.18.0"
error-chain = "0.12.0"
Expand All @@ -43,6 +43,7 @@ rand = "0.5.2"
regex = "1.0.1"
remove_dir_all = "0.5.1"
same-file = "1.0"
semver = "0.9.0"
scopeguard = "0.3"
sha2 = "0.7.0"
tar = "0.4.0"
Expand All @@ -57,12 +58,11 @@ xz2 = "0.1.3"
openssl = { version = '0.10.15', optional = true }

[target."cfg(windows)".dependencies]
winapi = { version = "0.3", features = ["handleapi", "jobapi", "jobapi2", "processthreadsapi", "psapi", "synchapi", "sysinfoapi", "tlhelp32", "winnt", "winuser"] }
winapi = { version = "0.3", features = ["combaseapi", "errhandlingapi", "fileapi", "handleapi", "ioapiset", "jobapi", "jobapi2", "minwindef", "processthreadsapi", "psapi", "shlobj", "shtypes", "synchapi", "sysinfoapi", "tlhelp32", "userenv", "winbase", "winerror", "winioctl", "winnt", "winuser"] }
winreg = "0.5.0"
gcc = "0.3.50"

[dev-dependencies]
rustup-mock = { path = "src/rustup-mock", version = "1.1.0" }
lazy_static = "1.0.0"

[workspace]
Expand Down
4 changes: 2 additions & 2 deletions src/command.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ use std::io;
use std::process::{self, Command};

use crate::errors::*;
use rustup_utils::utils::ExitCode;
use crate::utils::utils::ExitCode;

pub fn run_command_for_dir<S: AsRef<OsStr>>(
mut cmd: Command,
Expand All @@ -16,7 +16,7 @@ pub fn run_command_for_dir<S: AsRef<OsStr>>(
// when and why this is needed.
cmd.stdin(process::Stdio::inherit());

return exec(&mut cmd).chain_err(|| rustup_utils::ErrorKind::RunningCommand {
return exec(&mut cmd).chain_err(|| crate::utils::ErrorKind::RunningCommand {
name: OsStr::new(arg0).to_owned(),
});

Expand Down
2 changes: 1 addition & 1 deletion src/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ use crate::errors::*;
use crate::notifications::*;
use crate::settings::{Settings, SettingsFile, DEFAULT_METADATA_VERSION};
use crate::toolchain::{Toolchain, UpdateStatus};
use rustup_utils::utils;
use crate::utils::utils;

#[derive(Debug)]
pub enum OverrideReason {
Expand Down
2 changes: 1 addition & 1 deletion src/dist/component/components.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ use crate::dist::prefix::InstallPrefix;
/// The representation of the installed toolchain and its components.
/// `Components` and `DirectoryPackage` are the two sides of the
/// installation / uninstallation process.
use rustup_utils::utils;
use crate::utils::utils;

use crate::dist::component::package::{INSTALLER_VERSION, VERSION_FILE};
use crate::dist::component::transaction::Transaction;
Expand Down
2 changes: 1 addition & 1 deletion src/dist/component/package.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use crate::dist::component::transaction::*;

use crate::dist::errors::*;
use crate::dist::temp;
use rustup_utils::utils;
use crate::utils::utils;

use std::collections::HashSet;
use std::fmt;
Expand Down
2 changes: 1 addition & 1 deletion src/dist/component/transaction.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ use crate::dist::errors::*;
use crate::dist::notifications::*;
use crate::dist::prefix::InstallPrefix;
use crate::dist::temp;
use rustup_utils::utils;
use crate::utils::utils;

use std::fs::File;
use std::path::{Path, PathBuf};
Expand Down
2 changes: 1 addition & 1 deletion src/dist/config.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use super::manifest::Component;
use crate::dist::errors::*;
use rustup_utils::toml_utils::*;
use crate::utils::toml_utils::*;

pub const SUPPORTED_CONFIG_VERSIONS: [&'static str; 1] = ["1"];
pub const DEFAULT_CONFIG_VERSION: &'static str = "1";
Expand Down
8 changes: 4 additions & 4 deletions src/dist/dist.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use crate::dist::manifestation::{Changes, Manifestation, UpdateStatus};
use crate::dist::notifications::*;
use crate::dist::prefix::InstallPrefix;
use crate::dist::temp;
use rustup_utils::utils;
use crate::utils::utils;

use std::env;
use std::fmt;
Expand Down Expand Up @@ -563,7 +563,7 @@ pub fn update_from_dist_<'a>(
};
}
Ok(None) => return Ok(None),
Err(Error(ErrorKind::Utils(::rustup_utils::ErrorKind::DownloadNotExists { .. }), _)) => {
Err(Error(ErrorKind::Utils(crate::utils::ErrorKind::DownloadNotExists { .. }), _)) => {
// Proceed to try v1 as a fallback
(download.notify_handler)(Notification::DownloadingLegacyManifest);
}
Expand All @@ -574,7 +574,7 @@ pub fn update_from_dist_<'a>(
// If the v2 manifest is not found then try v1
let manifest = match dl_v1_manifest(download, toolchain) {
Ok(m) => m,
Err(Error(ErrorKind::Utils(rustup_utils::ErrorKind::DownloadNotExists { .. }), _)) => {
Err(Error(ErrorKind::Utils(crate::utils::ErrorKind::DownloadNotExists { .. }), _)) => {
return Err(format!("no release found for '{}'", toolchain.manifest_name()).into());
}
Err(e @ Error(ErrorKind::ChecksumFailed { .. }, _)) => {
Expand All @@ -597,7 +597,7 @@ pub fn update_from_dist_<'a>(
) {
Ok(None) => Ok(None),
Ok(Some(hash)) => Ok(Some(hash)),
e @ Err(Error(ErrorKind::Utils(rustup_utils::ErrorKind::DownloadNotExists { .. }), _)) => e
e @ Err(Error(ErrorKind::Utils(crate::utils::ErrorKind::DownloadNotExists { .. }), _)) => e
.chain_err(|| {
format!(
"could not download nonexistent rust version `{}`",
Expand Down
2 changes: 1 addition & 1 deletion src/dist/download.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use crate::dist::errors::*;
use crate::dist::notifications::*;
use crate::dist::temp;
use rustup_utils::utils;
use crate::utils::utils;
use sha2::{Digest, Sha256};
use url::Url;

Expand Down
2 changes: 1 addition & 1 deletion src/dist/errors.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ pub const TOOLSTATE_MSG: &str =

error_chain! {
links {
Utils(rustup_utils::Error, rustup_utils::ErrorKind);
Utils(crate::utils::Error, crate::utils::ErrorKind);
}

foreign_links {
Expand Down
2 changes: 1 addition & 1 deletion src/dist/manifest.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
//! See tests/channel-rust-nightly-example.toml for an example.

use crate::dist::errors::*;
use rustup_utils::toml_utils::*;
use crate::utils::toml_utils::*;

use crate::dist::dist::TargetTriple;
use std::collections::HashMap;
Expand Down
4 changes: 2 additions & 2 deletions src/dist/manifestation.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ use crate::dist::manifest::{Component, Manifest, TargetedPackage};
use crate::dist::notifications::*;
use crate::dist::prefix::InstallPrefix;
use crate::dist::temp;
use rustup_utils::utils;
use crate::utils::utils;
use std::path::Path;

pub const DIST_MANIFEST: &'static str = "multirust-channel-manifest.toml";
Expand Down Expand Up @@ -206,7 +206,7 @@ impl Manifestation {

let gz;
let xz;
let notification_converter = |notification: rustup_utils::Notification<'_>| {
let notification_converter = |notification: crate::utils::Notification<'_>| {
notify_handler(Notification::Utils(notification));
};
let reader =
Expand Down
8 changes: 4 additions & 4 deletions src/dist/notifications.rs
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
use crate::dist::dist::TargetTriple;
use crate::dist::errors::*;
use crate::dist::temp;
use rustup_utils::notify::NotificationLevel;
use crate::utils::notify::NotificationLevel;
use std::fmt::{self, Display};
use std::path::Path;

#[derive(Debug)]
pub enum Notification<'a> {
Utils(rustup_utils::Notification<'a>),
Utils(crate::utils::Notification<'a>),
Temp(temp::Notification<'a>),

Extracting(&'a Path, &'a Path),
Expand All @@ -33,8 +33,8 @@ pub enum Notification<'a> {
ComponentUnavailable(&'a str, Option<&'a TargetTriple>),
}

impl<'a> From<rustup_utils::Notification<'a>> for Notification<'a> {
fn from(n: rustup_utils::Notification<'a>) -> Notification<'a> {
impl<'a> From<crate::utils::Notification<'a>> for Notification<'a> {
fn from(n: crate::utils::Notification<'a>) -> Notification<'a> {
Notification::Utils(n)
}
}
Expand Down
4 changes: 2 additions & 2 deletions src/dist/temp.rs
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
use rustup_utils::raw;
use crate::utils::raw;
use std::error;
use std::fmt::{self, Display};
use std::fs;
use std::io;
use std::ops;
use std::path::{Path, PathBuf};

use rustup_utils::notify::NotificationLevel;
use crate::utils::notify::NotificationLevel;

#[derive(Debug)]
pub enum Error {
Expand Down
2 changes: 1 addition & 1 deletion src/errors.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use error_chain::{impl_error_chain_kind, impl_error_chain_processed, impl_extrac
error_chain! {
links {
Dist(crate::dist::Error, crate::dist::ErrorKind);
Utils(rustup_utils::Error, rustup_utils::ErrorKind);
Utils(crate::utils::Error, crate::utils::ErrorKind);
}

foreign_links {
Expand Down
2 changes: 1 addition & 1 deletion src/install.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ use crate::dist::prefix::InstallPrefix;
use crate::dist::temp;
use crate::dist::Notification;
use crate::errors::Result;
use rustup_utils::utils;
use crate::utils::utils;
use std::path::Path;

#[derive(Copy, Clone)]
Expand Down
3 changes: 2 additions & 1 deletion src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ pub use crate::config::*;
pub use crate::errors::*;
pub use crate::notifications::*;
pub use crate::toolchain::*;
pub use rustup_utils::{notify, toml_utils, utils};
pub use crate::utils::{notify, toml_utils};

// A list of all binaries which Rustup will proxy.
pub static TOOLS: &'static [&'static str] = &[
Expand Down Expand Up @@ -57,3 +57,4 @@ mod install;
mod notifications;
pub mod settings;
mod toolchain;
pub mod utils;
8 changes: 4 additions & 4 deletions src/notifications.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ use std::path::{Path, PathBuf};
use crate::errors::*;

use crate::dist::temp;
use rustup_utils::notify::NotificationLevel;
use crate::utils::notify::NotificationLevel;

#[derive(Debug)]
pub enum Notification<'a> {
Install(crate::dist::Notification<'a>),
Utils(rustup_utils::Notification<'a>),
Utils(crate::utils::Notification<'a>),
Temp(temp::Notification<'a>),

SetDefaultToolchain(&'a str),
Expand Down Expand Up @@ -38,8 +38,8 @@ impl<'a> From<crate::dist::Notification<'a>> for Notification<'a> {
Notification::Install(n)
}
}
impl<'a> From<rustup_utils::Notification<'a>> for Notification<'a> {
fn from(n: rustup_utils::Notification<'a>) -> Notification<'a> {
impl<'a> From<crate::utils::Notification<'a>> for Notification<'a> {
fn from(n: crate::utils::Notification<'a>) -> Notification<'a> {
Notification::Utils(n)
}
}
Expand Down
4 changes: 2 additions & 2 deletions src/rustup-cli/common.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
use crate::errors::*;
use crate::self_update;
use crate::term2;
use rustup::utils::notify::NotificationLevel;
use rustup::utils::utils;
use rustup::{Cfg, Notification, Toolchain, UpdateStatus};
use rustup_utils::notify::NotificationLevel;
use rustup_utils::utils;
use std::io::{BufRead, BufReader, Write};
use std::path::Path;
use std::process::{Command, Stdio};
Expand Down
4 changes: 2 additions & 2 deletions src/rustup-cli/download_tracker.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use rustup::dist::Notification as In;
use rustup::utils::tty;
use rustup::utils::Notification as Un;
use rustup::Notification;
use rustup_utils::tty;
use rustup_utils::Notification as Un;
use std::collections::VecDeque;
use std::fmt;
use time::precise_time_s;
Expand Down
2 changes: 1 addition & 1 deletion src/rustup-cli/errors.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ error_chain! {
links {
Rustup(rustup::Error, rustup::ErrorKind);
Dist(rustup::dist::Error, rustup::dist::ErrorKind);
Utils(rustup_utils::Error, rustup_utils::ErrorKind);
Utils(rustup::utils::Error, rustup::utils::ErrorKind);
}

foreign_links {
Expand Down
2 changes: 1 addition & 1 deletion src/rustup-cli/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ fn fix_windows_reg_key() {}

// rustup used to be called 'multirust'. This deletes the old bin.
fn delete_multirust_bin() {
use rustup_utils::utils;
use rustup::utils::utils;
use std::env::consts::EXE_SUFFIX;
use std::fs;

Expand Down
2 changes: 1 addition & 1 deletion src/rustup-cli/proxy_mode.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ use crate::common::set_globals;
use crate::errors::*;
use crate::job;
use rustup::command::run_command_for_dir;
use rustup::utils::utils::{self, ExitCode};
use rustup::Cfg;
use rustup_utils::utils::{self, ExitCode};
use std::env;
use std::ffi::OsString;
use std::path::PathBuf;
Expand Down
2 changes: 1 addition & 1 deletion src/rustup-cli/rustup_mode.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ use crate::term2;
use clap::{App, AppSettings, Arg, ArgGroup, ArgMatches, Shell, SubCommand};
use rustup::dist::dist::{PartialTargetTriple, PartialToolchainDesc, TargetTriple};
use rustup::dist::manifest::Component;
use rustup::utils::utils::{self, ExitCode};
use rustup::{command, Cfg, Toolchain};
use rustup_utils::utils::{self, ExitCode};
use std::error::Error;
use std::io::{self, Write};
use std::iter;
Expand Down
Loading

0 comments on commit 2572d20

Please sign in to comment.