summaryrefslogtreecommitdiffstats
path: root/src/commands/source.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/commands/source.rs')
-rw-r--r--src/commands/source.rs10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/commands/source.rs b/src/commands/source.rs
index 6a58017..505e7dd 100644
--- a/src/commands/source.rs
+++ b/src/commands/source.rs
@@ -270,7 +270,15 @@ pub async fn download(
})?;
let mut file = tokio::io::BufWriter::new(file);
- let response = match reqwest::get(source.url().as_ref()).await {
+ let client = reqwest::Client::builder()
+ .redirect(reqwest::redirect::Policy::limited(10))
+ .build()
+ .context("BUilding HTTP client failed")?;
+ let request = client.get(source.url().as_ref())
+ .build()
+ .with_context(|| anyhow!("Building request for {} failed", source.url().as_ref()))?;
+
+ let response = match client.execute(request).await {
Ok(resp) => resp,
Err(e) => {
bar.finish_with_message(format!("Failed: {}", source.url()));