Skip to content

Commit

Permalink
added speed to progress bar
Browse files Browse the repository at this point in the history
  • Loading branch information
chanderlud committed Dec 26, 2023
1 parent 9f790e8 commit 1baa28b
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ use simple_logging::{log_to_file, log_to_stderr};
use tokio::fs::File;
use tokio::io::{AsyncReadExt, BufReader};
use tokio::net::{TcpListener, TcpSocket, TcpStream, UdpSocket};
use tokio::time::{interval, sleep};
use tokio::time::{Instant, interval, sleep};
use tokio::{io, select};

use crate::cipher::CipherStream;
Expand Down Expand Up @@ -330,10 +330,11 @@ fn password_auth() -> io::Result<AuthMethod> {
async fn print_progress(stats: TransferStats) {
let bar = ProgressBar::new(100);
let mut interval = interval(Duration::from_secs(1));
let now = Instant::now();

bar.set_style(
ProgressStyle::default_bar()
.template("{spinner:.green} [{elapsed_precise}] [{bar:40.cyan/blue}] {pos:>7}% ({eta})")
.template("{spinner:.green} [{elapsed_precise}] [{bar:40.cyan/blue}] {pos:>7}% {msg}MB/s ({eta})")
.unwrap()
.progress_chars("=>-"),
);
Expand All @@ -342,6 +343,8 @@ async fn print_progress(stats: TransferStats) {
interval.tick().await;
let progress =
stats.confirmed_data.load(Relaxed) as f64 / stats.total_data.load(Relaxed) as f64;
let speed = stats.confirmed_data.load(Relaxed) as f64 / now.elapsed().as_secs_f64() / 1_000_000_f64;
bar.set_message(format!("{:.2}", speed));
bar.set_position((progress * 100_f64) as u64);
}
}
Expand Down

0 comments on commit 1baa28b

Please sign in to comment.