diff options
author | Matthias Beyer <matthias.beyer@atos.net> | 2021-07-27 16:36:37 +0200 |
---|---|---|
committer | Matthias Beyer <matthias.beyer@atos.net> | 2021-07-27 16:36:37 +0200 |
commit | 45cda0f70ab0f1d717c3dc2b481ad84a4ff0f00f (patch) | |
tree | 838317e911d46039ba928a476135177227710227 | |
parent | 69d2334a5121edbbaa7356428e2d6e8fbd5d3443 (diff) | |
parent | b140c12b53931bf463f706d28ddb3be0c0fb0e4f (diff) |
Merge branch 'optional-dag-loading-progress'
-rw-r--r-- | src/commands/build.rs | 2 | ||||
-rw-r--r-- | src/commands/tree_of.rs | 9 | ||||
-rw-r--r-- | src/main.rs | 2 | ||||
-rw-r--r-- | src/package/dag.rs | 6 |
4 files changed, 6 insertions, 13 deletions
diff --git a/src/commands/build.rs b/src/commands/build.rs index bb0c2d9..db8d7a4 100644 --- a/src/commands/build.rs +++ b/src/commands/build.rs @@ -226,7 +226,7 @@ pub async fn build( let dag = { let bar_tree_building = progressbars.bar(); - let dag = Dag::for_root_package(package.clone(), &repo, &bar_tree_building)?; + let dag = Dag::for_root_package(package.clone(), &repo, Some(&bar_tree_building))?; bar_tree_building.finish_with_message("Finished loading Dag"); dag }; diff --git a/src/commands/tree_of.rs b/src/commands/tree_of.rs index 4f78c61..6b297e3 100644 --- a/src/commands/tree_of.rs +++ b/src/commands/tree_of.rs @@ -21,13 +21,11 @@ use crate::package::Dag; use crate::package::PackageName; use crate::package::PackageVersionConstraint; use crate::repository::Repository; -use crate::util::progress::ProgressBars; /// Implementation of the "tree_of" subcommand pub async fn tree_of( matches: &ArgMatches, repo: Repository, - progressbars: ProgressBars, ) -> Result<()> { let pname = matches .value_of("package_name") @@ -46,12 +44,7 @@ pub async fn tree_of( .map(|v| v.matches(p.version())) .unwrap_or(true) }) - .map(|package| { - let bar_tree_building = progressbars.bar(); - let tree = Dag::for_root_package(package.clone(), &repo, &bar_tree_building)?; - bar_tree_building.finish_with_message("Finished loading Tree"); - Ok(tree) - }) + .map(|package| Dag::for_root_package(package.clone(), &repo, None)) .and_then_ok(|tree| { let stdout = std::io::stdout(); let mut outlock = stdout.lock(); diff --git a/src/main.rs b/src/main.rs index 4c5ce5d..38460a6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -235,7 +235,7 @@ async fn main() -> Result<()> { Some(("tree-of", matches)) => { let repo = load_repo()?; - crate::commands::tree_of(matches, repo, progressbars) + crate::commands::tree_of(matches, repo) .await .context("tree-of command failed")? } diff --git a/src/package/dag.rs b/src/package/dag.rs index 1075dda..102355a 100644 --- a/src/package/dag.rs +++ b/src/package/dag.rs @@ -40,14 +40,14 @@ impl Dag { pub fn for_root_package( p: Package, repo: &Repository, - progress: &ProgressBar, + progress: Option<&ProgressBar>, ) -> Result<Self> { fn add_sub_packages<'a>( repo: &'a Repository, mappings: &mut HashMap<&'a Package, daggy::NodeIndex>, dag: &mut daggy::Dag<&'a Package, i8>, p: &'a Package, - progress: &ProgressBar + progress: Option<&ProgressBar> ) -> Result<()> { p.get_self_packaged_dependencies() .and_then_ok(|(name, constr)| { @@ -63,7 +63,7 @@ impl Dag { // recurse packs.into_iter() .try_for_each(|p| { - progress.tick(); + progress.as_ref().map(|p| p.tick()); let idx = dag.add_node(p); mappings.insert(p, idx); |