diff options
author | Matthias Beyer <matthias.beyer@atos.net> | 2021-01-27 11:13:34 +0100 |
---|---|---|
committer | Matthias Beyer <matthias.beyer@atos.net> | 2021-02-02 19:19:21 +0100 |
commit | e5c852291fc1368f9286310b55be22c2ee9e80e3 (patch) | |
tree | 8e2e6f3d464c0080c4b0d70841cecd8000633275 /src | |
parent | 72601651407754270a66ac5c1e8fc2ce24832f7c (diff) |
Add bytes written/total bytes to status bar message
Signed-off-by: Matthias Beyer <matthias.beyer@atos.net>
Diffstat (limited to 'src')
-rw-r--r-- | src/commands/source.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/commands/source.rs b/src/commands/source.rs index 5284678..8b1cf3e 100644 --- a/src/commands/source.rs +++ b/src/commands/source.rs @@ -271,10 +271,18 @@ pub async fn download( bar.set_length(len); } let mut stream = reqwest::get(source.url().as_ref()).await?.bytes_stream(); + let mut bytes_written = 0; while let Some(bytes) = stream.next().await { let bytes = bytes?; file.write_all(bytes.as_ref()).await?; + bytes_written += bytes.len(); + bar.inc(bytes.len() as u64); + if let Some(len) = response.content_length() { + bar.set_message(&format!("Downloading {} ({}/{} bytes)", source.url(), bytes_written, len)); + } else { + bar.set_message(&format!("Downloading {} ({} bytes)", source.url(), bytes_written)); + } } file.flush().await?; |