diff options
Diffstat (limited to 'src/backup_progress.rs')
-rw-r--r-- | src/backup_progress.rs | 44 |
1 files changed, 30 insertions, 14 deletions
diff --git a/src/backup_progress.rs b/src/backup_progress.rs index f119210..e3995f0 100644 --- a/src/backup_progress.rs +++ b/src/backup_progress.rs @@ -2,7 +2,7 @@ use crate::generation::GenId; use indicatif::{ProgressBar, ProgressStyle}; -use std::path::Path; +use std::{path::Path, time::Duration}; const SHOW_PROGRESS: bool = true; @@ -22,15 +22,19 @@ impl BackupProgress { } else { ProgressBar::hidden() }; - let parts = vec![ + let parts = [ "initial backup", "elapsed: {elapsed}", "files: {pos}", "current: {wide_msg}", "{spinner}", ]; - progress.set_style(ProgressStyle::default_bar().template(&parts.join("\n"))); - progress.enable_steady_tick(100); + progress.set_style( + ProgressStyle::default_bar() + .template(&parts.join("\n")) + .expect("create indicatif ProgressStyle value"), + ); + progress.enable_steady_tick(Duration::from_millis(100)); Self { progress } } @@ -42,7 +46,7 @@ impl BackupProgress { } else { ProgressBar::hidden() }; - let parts = vec![ + let parts = [ "incremental backup", "{wide_bar}", "elapsed: {elapsed}", @@ -50,8 +54,12 @@ impl BackupProgress { "current: {wide_msg}", "{spinner}", ]; - progress.set_style(ProgressStyle::default_bar().template(&parts.join("\n"))); - progress.enable_steady_tick(100); + progress.set_style( + ProgressStyle::default_bar() + .template(&parts.join("\n")) + .expect("create indicatif ProgressStyle value"), + ); + progress.enable_steady_tick(Duration::from_millis(100)); Self { progress } } @@ -59,13 +67,17 @@ impl BackupProgress { /// Create a progress bar for uploading a new generation's metadata. pub fn upload_generation() -> Self { let progress = ProgressBar::new(0); - let parts = vec![ + let parts = [ "uploading new generation metadata", "elapsed: {elapsed}", "{spinner}", ]; - progress.set_style(ProgressStyle::default_bar().template(&parts.join("\n"))); - progress.enable_steady_tick(100); + progress.set_style( + ProgressStyle::default_bar() + .template(&parts.join("\n")) + .expect("create indicatif ProgressStyle value"), + ); + progress.enable_steady_tick(Duration::from_millis(100)); Self { progress } } @@ -74,9 +86,13 @@ impl BackupProgress { /// metadata. pub fn download_generation(gen_id: &GenId) -> Self { let progress = ProgressBar::new(0); - let parts = vec!["{msg}", "elapsed: {elapsed}", "{spinner}"]; - progress.set_style(ProgressStyle::default_bar().template(&parts.join("\n"))); - progress.enable_steady_tick(100); + let parts = ["{msg}", "elapsed: {elapsed}", "{spinner}"]; + progress.set_style( + ProgressStyle::default_bar() + .template(&parts.join("\n")) + .expect("create indicatif ProgressStyle value"), + ); + progress.enable_steady_tick(Duration::from_millis(100)); progress.set_message(format!( "downloading previous generation metadata: {}", gen_id @@ -102,7 +118,7 @@ impl BackupProgress { /// Update progress bar about number of actual files found. pub fn found_live_file(&self, filename: &Path) { self.progress.inc(1); - if self.progress.length() < self.progress.position() { + if self.progress.length() < Some(self.progress.position()) { self.progress.set_length(self.progress.position()); } self.progress.set_message(format!("{}", filename.display())); |