mirror of
https://github.com/denoland/deno.git
synced 2025-08-04 02:48:24 +00:00
feat: improve download progress bar (#16984)
Co-authored-by: David Sherret <dsherret@gmail.com>
This commit is contained in:
parent
4a17c93088
commit
8c026dab92
17 changed files with 852 additions and 306 deletions
|
@ -409,26 +409,18 @@ impl NpmCache {
|
|||
);
|
||||
}
|
||||
|
||||
let _guard = self.progress_bar.update(&dist.tarball);
|
||||
let response = self.http_client.get(&dist.tarball).send().await?;
|
||||
|
||||
if response.status() == 404 {
|
||||
bail!("Could not find npm package tarball at: {}", dist.tarball);
|
||||
} else if !response.status().is_success() {
|
||||
let status = response.status();
|
||||
let maybe_response_text = response.text().await.ok();
|
||||
bail!(
|
||||
"Bad response: {:?}{}",
|
||||
status,
|
||||
match maybe_response_text {
|
||||
Some(text) => format!("\n\n{}", text),
|
||||
None => String::new(),
|
||||
}
|
||||
);
|
||||
} else {
|
||||
let bytes = response.bytes().await?;
|
||||
|
||||
verify_and_extract_tarball(package, &bytes, dist, &package_folder)
|
||||
let guard = self.progress_bar.update(&dist.tarball);
|
||||
let maybe_bytes = self
|
||||
.http_client
|
||||
.download_with_progress(&dist.tarball, &guard)
|
||||
.await?;
|
||||
match maybe_bytes {
|
||||
Some(bytes) => {
|
||||
verify_and_extract_tarball(package, &bytes, dist, &package_folder)
|
||||
}
|
||||
None => {
|
||||
bail!("Could not find npm package tarball at: {}", dist.tarball);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue