Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Jan 2026 17:09:32 +0100 (CET)
From:      Ronald Klop <ronald-lists@klop.ws>
To:        ruby R53 <red_M95@proton.me>
Cc:        Current FreeBSD <freebsd-current@freebsd.org>
Subject:   Re: Change fetch addresses for Rust crates, Python packages and whatnot?
Message-ID:  <1541007573.1910.1768406972044@localhost>
In-Reply-To: <9Qp2LaDX-QG6aXtsRcjekPDWOjni9Cy4LLmza8jhB2cD15_VfdTY7znjCzIClM1qtEhVuK4P_cL1yKl8AMJZ3m8UnE3EEC67polveeC_Zys=@proton.me>
References:  <DRM-6bM0Q-ebeu_NeL6Ju4ZXLScQGlf_3hNxqhtw6e2kA8gwAV36SGgPD08G2H0H-xeChQPYAs6HRGeey6DaoD77gxqCCd_YFR81YgIfETk=@proton.me> <1503278086.9.1768374682910@localhost> <9Qp2LaDX-QG6aXtsRcjekPDWOjni9Cy4LLmza8jhB2cD15_VfdTY7znjCzIClM1qtEhVuK4P_cL1yKl8AMJZ3m8UnE3EEC67polveeC_Zys=@proton.me>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
Van: ruby R53 <red_M95@proton.me>
Datum: woensdag, 14 januari 2026 15:41
Aan: Ronald Klop <ronald-lists@klop.ws>, Current FreeBSD <freebsd-current@freebsd.org>
Onderwerp: Re: Change fetch addresses for Rust crates, Python packages and whatnot?
> 
> On Wednesday, January 14th, 2026 at 4:11 AM, Ronald Klop <ronald-lists@klop.ws> wrote:
> 
> >
> >
> > Van: ruby R53 <red_M95@proton.me>
> > Datum: woensdag, 14 januari 2026 03:26
> > Aan: freebsd-current@freebsd.org
> > Onderwerp: Change fetch addresses for Rust crates, Python packages and whatnot?
> >
> > > I've been trying to compile www/chromium for literal days now, all because whenever `make` runs `fetch`, it goes to an address that's actually supposed to redirect to another one, but `fetch` instead keeps trying for a whole minute until it ultimately falls back to distcache.freebsd.org, which is another whole minute of waiting for the file to download. The cherry on top is that the file is, most of the time, just hundreds of kilobytes in size.
> > >
> > > Hell, I even had to manually download part of these individual files using that Links web browser··· it'd do it a lot faster than `fetch`, all because it actually followed the redirection and didn't just keep trying over and over. But of course I wouldn't manually download hundreds upon hundreds of archive files, this is the reason why such tool exists.
> > >
> > > So here's an example: currently one of the missing dependencies for www/chromium is GTK3, which depends on graphics/librsvg2-rust, which then depends on cargo-c. It's now trying to fetch dunce-1.0.5.crate, which is one of the crates required for it, from https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate. Running `curl` on this link does literally nothing, no files are downloaded. But running it on any web browser instantly downloads the crate in question, all because that link actually redirects to https://static.crates.io/crates/dunce/dunce-1.0.5.crate. Even `curl`ing that new link does give the file I want. Same applies for Python packages.
> > >
> > > Now imagine this for all the remaining files··· if it takes about 2 minutes to download a single file, and there's 398 crate entries on cargo-c's `Makefile.crates`, that means it'd take a whole 796 minutes to download everything, which is literally more than half a day (~13.6 hours) :)
> > >  
> >
> >
> >
> > Can you copy-paste the output of the following command in a reply?
> > fetch -vv "https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate"
> >
> > For me it immediately follows the redirect and downloads the file in half a second. See the output below.
> >
> > Regards,
> > Ronald.
> >
> >
> > -- 
> >
> > time fetch -vv "https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate"
> > scheme:   "https"
> > user:     ""
> > password: ""
> > host:     "crates.io"
> > port:     "0"
> > document: "/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate"
> > ---> crates.io:443
> > resolving server address: crates.io:443
> > SSL options: 82004850
> > Peer verification enabled
> > Using OpenSSL default CA cert file and path
> > Verify hostname
> > TLSv1.3 connection established using TLS_AES_128_GCM_SHA256
> > Certificate subject: /CN=crates.io
> > Certificate issuer: /C=US/O=Amazon/CN=Amazon RSA 2048 M01
> > requesting https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate
> > >>> GET /api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate HTTP/1.1
> > >>> Host: crates.io
> > >>> Accept: */*
> > >>> User-Agent: fetch libfetch/2.0
> > >>> Connection: close
> > >>>
> > <<< HTTP/1.1 302 Moved Temporarily
> > <<< Content-Length: 0
> > <<< Connection: close
> > content length: [0]
> > <<< Access-Control-Allow-Origin: *
> > <<< Date: Wed, 14 Jan 2026 07:10:06 GMT
> > <<< Location: https://static.crates.io/crates/dunce/dunce-1.0.5.crate
> > <<< Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
> > 302 redirect to https://static.crates.io/crates/dunce/dunce-1.0.5.crate
> > scheme:   "https"
> > user:     ""
> > password: ""
> > host:     "static.crates.io"
> > port:     "0"
> > document: "/crates/dunce/dunce-1.0.5.crate"
> > <<< Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=VOwdWzeBall4rSiByZHUwCe6zIbVFdxy%2FIgcGEUOIZo%3D\u0026sid=af571f24-03ee-46d1-9f90-ab9030c2c74c\u0026ts=1768374606"}],"max_age":3600}
> > <<< Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=VOwdWzeBall4rSiByZHUwCe6zIbVFdxy%2FIgcGEUOIZo%3D&sid=af571f24-03ee-46d1-9f90-ab9030c2c74c&ts=1768374606"
> > <<< Server: Heroku
> > <<< Strict-Transport-Security: max-age=31536000; includeSubDomains
> > <<< Via: 1.1 heroku-router, 1.1 c2905f891f96a0ec9c7fab16916dbb46.cloudfront.net (CloudFront)
> > <<< X-Cache: Miss from cloudfront
> > <<< X-Amz-Cf-Pop: AMS58-P6
> > <<< X-Amz-Cf-Id: Xa10pwbYp4MCA5eToVa0shahNpzr2epWFUuQZS63bMpmbiDLKc2dmQ==
> > <<<
> > ---> static.crates.io:443
> > resolving server address: static.crates.io:443
> > SSL options: 82004850
> > Peer verification enabled
> > Using OpenSSL default CA cert file and path
> > Verify hostname
> > TLSv1.3 connection established using TLS_AES_128_GCM_SHA256
> > Certificate subject: /CN=static.crates.io
> > Certificate issuer: /C=BE/O=GlobalSign nv-sa/CN=GlobalSign Atlas R3 DV TLS CA 2025 Q3
> > requesting https://static.crates.io/crates/dunce/dunce-1.0.5.crate
> > >>> GET /crates/dunce/dunce-1.0.5.crate HTTP/1.1
> > >>> Host: static.crates.io
> > >>> Accept: */*
> > >>> User-Agent: fetch libfetch/2.0
> > >>> Connection: close
> > >>>
> > <<< HTTP/1.1 200
> > <<< Connection: close
> > <<< Content-Length: 8244
> > <<< etag: "198d7f7c37f632bc83502b28870b6d60"
> > content length: [8244]
> > <<< cache-control: public,max-age=31536000,immutable
> > <<< x-amz-version-id: PO7xZdimM08F9npIqG8PYtpqpEuWdV9D
> > <<< x-amz-id-2: Dj7mFoaqQJUc61mB1FcouUQcy0tajnacJvU+xOR3Be5//jo3GaSmdCwSSgtYyDMnYE4cPCiPv7PV9m7z1Jk0WazYHTFPbYhm
> > <<< x-amz-request-id: KWXPQ4JP20HSYSY2
> > <<< date: Wed, 14 Jan 2026 00:09:56 GMT
> > <<< x-amz-server-side-encryption: AES256
> > <<< x-amz-replication-status: COMPLETED
> > <<< last-modified: Sun, 04 Aug 2024 01:36:47 GMT
> > <<< accept-ranges: bytes
> > last modified: [2024-08-04 01:36:47]
> > <<< content-type: application/gzip
> > <<< x-served-by: cache-ams21058-AMS
> > <<< server: AmazonS3
> > <<< age: 25212
> > <<< x-cache: HIT
> > <<< x-cache-hits: 148
> > <<<
> > offset 0, length -1, size -1, clength 8244
> > local size / mtime: 8244 / 1722735407
> > remote size / mtime: 8244 / 1722735407
> > dunce-1.0.5.crate                                     8244  B   10 MBps    00s
> >
> > real    0m0.429s
> > user    0m0.023s
> > sys    0m0.027s
> 
> ```
> # time fetch -vv "https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate"
> scheme:   "https"
> user:     ""
> password: ""
> host:     "crates.io"
> port:     "0"
> document: "/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate"
> ---> crates.io:443
> resolving server address: crates.io:443 (<- it gets stuck here for like a minute)
> SSL options: 82004850
> Peer verification enabled
> Using OpenSSL default CA cert file and path
> Verify hostname
> TLSv1.3 connection established using TLS_AES_128_GCM_SHA256
> Certificate subject: /CN=crates.io
> Certificate issuer: /C=US/O=Amazon/CN=Amazon RSA 2048 M01
> requesting https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate
> >>> GET /api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate HTTP/1.1
> >>> Host: crates.io
> >>> Accept: */*
> >>> User-Agent: fetch libfetch/2.0
> >>> Connection: close
> >>>
> <<< HTTP/1.1 302 Moved Temporarily
> <<< Content-Length: 0
> <<< Connection: close
> content length: [0]
> <<< Access-Control-Allow-Origin: *
> <<< Date: Wed, 14 Jan 2026 14:34:21 GMT
> <<< Location: https://static.crates.io/crates/dunce/dunce-1.0.5.crate
> <<< Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
> 302 redirect to https://static.crates.io/crates/dunce/dunce-1.0.5.crate
> scheme:   "https"
> user:     ""
> password: ""
> host:     "static.crates.io"
> port:     "0"
> document: "/crates/dunce/dunce-1.0.5.crate"
> <<< Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=9t0rqIH4lMlfE9ncVibRPy8hCUlMqBmippMeWunG5M0%3D\u0026sid=af571f24-03ee-46d1-9f90-ab9030c2c74c\u0026ts=1768401261"}],"max_age":3600}
> <<< Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=9t0rqIH4lMlfE9ncVibRPy8hCUlMqBmippMeWunG5M0%3D&sid=af571f24-03ee-46d1-9f90-ab9030c2c74c&ts=1768401261"
> <<< Server: Heroku
> <<< Strict-Transport-Security: max-age=31536000; includeSubDomains
> <<< Via: 1.1 heroku-router, 1.1 608555ff8069f08e821e1679cd412294.cloudfront.net (CloudFront)
> <<< X-Cache: Miss from cloudfront
> <<< X-Amz-Cf-Pop: GRU3-P10
> <<< X-Amz-Cf-Id: LvtqT2cBMH7thFfdy3ktelkhg-ALuajh-ucfDhnv7l_s73okAxXp7Q==
> <<<
> ---> static.crates.io:443
> resolving server address: static.crates.io:443
> SSL options: 82004850
> Peer verification enabled
> Using OpenSSL default CA cert file and path
> Verify hostname
> TLSv1.3 connection established using TLS_AES_128_GCM_SHA256
> Certificate subject: /CN=static.crates.io
> Certificate issuer: /C=BE/O=GlobalSign nv-sa/CN=GlobalSign Atlas R3 DV TLS CA 2025 Q3
> requesting https://static.crates.io/crates/dunce/dunce-1.0.5.crate
> >>> GET /crates/dunce/dunce-1.0.5.crate HTTP/1.1
> >>> Host: static.crates.io
> >>> Accept: */*
> >>> User-Agent: fetch libfetch/2.0
> >>> Connection: close
> >>>
> <<< HTTP/1.1 200
> <<< Connection: close
> <<< Content-Length: 8244
> <<< cache-control: public,max-age=31536000,immutable
> content length: [8244]
> <<< x-amz-version-id: PO7xZdimM08F9npIqG8PYtpqpEuWdV9D
> <<< x-amz-id-2: EzDoao06Q7mYZgq0ecISLqKGCrHOV1gBvzNGaaAfOg4QCWZ/d3G4pjY4ZAoo2BNA0jACxYFWJQQ=
> <<< x-amz-request-id: 7JJDJ8X4GESHDW5P
> <<< date: Wed, 14 Jan 2026 04:21:53 GMT
> <<< x-amz-replication-status: COMPLETED
> <<< x-amz-server-side-encryption: AES256
> <<< last-modified: Sun, 04 Aug 2024 01:36:47 GMT
> <<< etag: "198d7f7c37f632bc83502b28870b6d60"
> last modified: [2024-08-04 01:36:47]
> <<< accept-ranges: bytes
> <<< content-type: application/gzip
> <<< x-served-by: cache-gru-sbgr1930032-GRU
> <<< server: AmazonS3
> <<< age: 36813
> <<< x-cache: HIT
> <<< x-cache-hits: 107
> <<<
> offset 0, length -1, size -1, clength 8244
> fetch: transfer timed out
> fetch: dunce-1.0.5.crate appears to be truncated: 0/8244 bytes
>       184.03 real         0.02 user         0.00 sys
> 
> so it's even worse, it does follow the redirect but somehow can't get the file at all, and all of that actually takes 3 minutes to do
> 
> 
> 


That looks weird. It is hard to diagnose from a distance. How is you general network access? Do you have a lot of package loss?

Regards,
Ronald.

 
[-- Attachment #2 --]
<html><head></head><body><br>
<p><strong>Van:</strong> ruby R53 &lt;red_M95@proton.me&gt;<br>
<strong>Datum:</strong> woensdag, 14 januari 2026 15:41<br>
<strong>Aan:</strong> Ronald Klop &lt;ronald-lists@klop.ws&gt;, Current FreeBSD &lt;freebsd-current@freebsd.org&gt;<br>
<strong>Onderwerp:</strong> Re: Change fetch addresses for Rust crates, Python packages and whatnot?</p>

<blockquote style="padding-right: 0px; padding-left: 5px; margin-left: 5px; border-left: #000000 2px solid; margin-right: 0px">
<div class="MessageRFC822Viewer" id="P">
<div class="TextPlainViewer" id="P.P">On Wednesday, January 14th, 2026 at 4:11 AM, Ronald Klop &lt;ronald-lists@klop.ws&gt; wrote:<br>
<br>
&gt;<br>
&gt;<br>
&gt; Van: ruby R53 &lt;red_M95@proton.me&gt;<br>
&gt; Datum: woensdag, 14 januari 2026 03:26<br>
&gt; Aan: freebsd-current@freebsd.org<br>
&gt; Onderwerp: Change fetch addresses for Rust crates, Python packages and whatnot?<br>
&gt;<br>
&gt; &gt; I've been trying to compile www/chromium for literal days now, all because whenever `make` runs `fetch`, it goes to an address that's actually supposed to redirect to another one, but `fetch` instead keeps trying for a whole minute until it ultimately falls back to distcache.freebsd.org, which is another whole minute of waiting for the file to download. The cherry on top is that the file is, most of the time, just hundreds of kilobytes in size.<br>
&gt; &gt;<br>
&gt; &gt; Hell, I even had to manually download part of these individual files using that Links web browser··· it'd do it a lot faster than `fetch`, all because it actually followed the redirection and didn't just keep trying over and over. But of course I wouldn't manually download hundreds upon hundreds of archive files, this is the reason why such tool exists.<br>
&gt; &gt;<br>
&gt; &gt; So here's an example: currently one of the missing dependencies for www/chromium is GTK3, which depends on graphics/librsvg2-rust, which then depends on cargo-c. It's now trying to fetch dunce-1.0.5.crate, which is one of the crates required for it, from <a href="https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate">https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate</a>. Running `curl` on this link does literally nothing, no files are downloaded. But running it on any web browser instantly downloads the crate in question, all because that link actually redirects to <a href="https://static.crates.io/crates/dunce/dunce-1.0.5.crate">https://static.crates.io/crates/dunce/dunce-1.0.5.crate</a>. Even `curl`ing that new link does give the file I want. Same applies for Python packages.<br>
&gt; &gt;<br>
&gt; &gt; Now imagine this for all the remaining files··· if it takes about 2 minutes to download a single file, and there's 398 crate entries on cargo-c's `Makefile.crates`, that means it'd take a whole 796 minutes to download everything, which is literally more than half a day (~13.6 hours) :)<br>
&gt; &gt; &nbsp;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; Can you copy-paste the output of the following command in a reply?<br>
&gt; fetch -vv "<a href="https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate">https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate</a>"<br>;
&gt;<br>
&gt; For me it immediately follows the redirect and downloads the file in half a second. See the output below.<br>
&gt;<br>
&gt; Regards,<br>
&gt; Ronald.<br>
&gt;<br>
&gt;<br>
&gt; --&nbsp;<br>
&gt;<br>
&gt; time fetch -vv "<a href="https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate">https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate</a>"<br>;
&gt; scheme: &nbsp;&nbsp;"https"<br>
&gt; user: &nbsp;&nbsp;&nbsp;&nbsp;""<br>
&gt; password: ""<br>
&gt; host: &nbsp;&nbsp;&nbsp;&nbsp;"crates.io"<br>
&gt; port: &nbsp;&nbsp;&nbsp;&nbsp;"0"<br>
&gt; document: "/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate"<br>
&gt; ---&gt; crates.io:443<br>
&gt; resolving server address: crates.io:443<br>
&gt; SSL options: 82004850<br>
&gt; Peer verification enabled<br>
&gt; Using OpenSSL default CA cert file and path<br>
&gt; Verify hostname<br>
&gt; TLSv1.3 connection established using TLS_AES_128_GCM_SHA256<br>
&gt; Certificate subject: /CN=crates.io<br>
&gt; Certificate issuer: /C=US/O=Amazon/CN=Amazon RSA 2048 M01<br>
&gt; requesting <a href="https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate">https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate</a><br>;
&gt; &gt;&gt;&gt; GET /api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate HTTP/1.1<br>
&gt; &gt;&gt;&gt; Host: crates.io<br>
&gt; &gt;&gt;&gt; Accept: */*<br>
&gt; &gt;&gt;&gt; User-Agent: fetch libfetch/2.0<br>
&gt; &gt;&gt;&gt; Connection: close<br>
&gt; &gt;&gt;&gt;<br>
&gt; &lt;&lt;&lt; HTTP/1.1 302 Moved Temporarily<br>
&gt; &lt;&lt;&lt; Content-Length: 0<br>
&gt; &lt;&lt;&lt; Connection: close<br>
&gt; content length: [0]<br>
&gt; &lt;&lt;&lt; Access-Control-Allow-Origin: *<br>
&gt; &lt;&lt;&lt; Date: Wed, 14 Jan 2026 07:10:06 GMT<br>
&gt; &lt;&lt;&lt; Location: <a href="https://static.crates.io/crates/dunce/dunce-1.0.5.crate">https://static.crates.io/crates/dunce/dunce-1.0.5.crate</a><br>;
&gt; &lt;&lt;&lt; Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}<br>
&gt; 302 redirect to <a href="https://static.crates.io/crates/dunce/dunce-1.0.5.crate">https://static.crates.io/crates/dunce/dunce-1.0.5.crate</a><br>;
&gt; scheme: &nbsp;&nbsp;"https"<br>
&gt; user: &nbsp;&nbsp;&nbsp;&nbsp;""<br>
&gt; password: ""<br>
&gt; host: &nbsp;&nbsp;&nbsp;&nbsp;"static.crates.io"<br>
&gt; port: &nbsp;&nbsp;&nbsp;&nbsp;"0"<br>
&gt; document: "/crates/dunce/dunce-1.0.5.crate"<br>
&gt; &lt;&lt;&lt; Report-To: {"group":"heroku-nel","endpoints":[{"url":"<a href="https://nel.heroku.com/reports?s=VOwdWzeBall4rSiByZHUwCe6zIbVFdxy%2FIgcGEUOIZo%3D\u0026sid=af571f24-03ee-46d1-9f90-ab9030c2c74c\u0026ts=1768374606">https://nel.heroku.com/reports?s=VOwdWzeBall4rSiByZHUwCe6zIbVFdxy%2FIgcGEUOIZo%3D\u0026sid=af571f24-03ee-46d1-9f90-ab9030c2c74c\u0026ts=1768374606</a>"}],"max_age":3600}<br>;
&gt; &lt;&lt;&lt; Reporting-Endpoints: heroku-nel="<a href="https://nel.heroku.com/reports?s=VOwdWzeBall4rSiByZHUwCe6zIbVFdxy%2FIgcGEUOIZo%3D&amp;sid=af571f24-03ee-46d1-9f90-ab9030c2c74c&amp;ts=1768374606">https://nel.heroku.com/reports?s=VOwdWzeBall4rSiByZHUwCe6zIbVFdxy%2FIgcGEUOIZo%3D&amp;sid=af571f24-03ee-46d1-9f90-ab9030c2c74c&amp;ts=1768374606</a>"<br>;
&gt; &lt;&lt;&lt; Server: Heroku<br>
&gt; &lt;&lt;&lt; Strict-Transport-Security: max-age=31536000; includeSubDomains<br>
&gt; &lt;&lt;&lt; Via: 1.1 heroku-router, 1.1 c2905f891f96a0ec9c7fab16916dbb46.cloudfront.net (CloudFront)<br>
&gt; &lt;&lt;&lt; X-Cache: Miss from cloudfront<br>
&gt; &lt;&lt;&lt; X-Amz-Cf-Pop: AMS58-P6<br>
&gt; &lt;&lt;&lt; X-Amz-Cf-Id: Xa10pwbYp4MCA5eToVa0shahNpzr2epWFUuQZS63bMpmbiDLKc2dmQ==<br>
&gt; &lt;&lt;&lt;<br>
&gt; ---&gt; static.crates.io:443<br>
&gt; resolving server address: static.crates.io:443<br>
&gt; SSL options: 82004850<br>
&gt; Peer verification enabled<br>
&gt; Using OpenSSL default CA cert file and path<br>
&gt; Verify hostname<br>
&gt; TLSv1.3 connection established using TLS_AES_128_GCM_SHA256<br>
&gt; Certificate subject: /CN=static.crates.io<br>
&gt; Certificate issuer: /C=BE/O=GlobalSign nv-sa/CN=GlobalSign Atlas R3 DV TLS CA 2025 Q3<br>
&gt; requesting <a href="https://static.crates.io/crates/dunce/dunce-1.0.5.crate">https://static.crates.io/crates/dunce/dunce-1.0.5.crate</a><br>;
&gt; &gt;&gt;&gt; GET /crates/dunce/dunce-1.0.5.crate HTTP/1.1<br>
&gt; &gt;&gt;&gt; Host: static.crates.io<br>
&gt; &gt;&gt;&gt; Accept: */*<br>
&gt; &gt;&gt;&gt; User-Agent: fetch libfetch/2.0<br>
&gt; &gt;&gt;&gt; Connection: close<br>
&gt; &gt;&gt;&gt;<br>
&gt; &lt;&lt;&lt; HTTP/1.1 200<br>
&gt; &lt;&lt;&lt; Connection: close<br>
&gt; &lt;&lt;&lt; Content-Length: 8244<br>
&gt; &lt;&lt;&lt; etag: "198d7f7c37f632bc83502b28870b6d60"<br>
&gt; content length: [8244]<br>
&gt; &lt;&lt;&lt; cache-control: public,max-age=31536000,immutable<br>
&gt; &lt;&lt;&lt; x-amz-version-id: PO7xZdimM08F9npIqG8PYtpqpEuWdV9D<br>
&gt; &lt;&lt;&lt; x-amz-id-2: Dj7mFoaqQJUc61mB1FcouUQcy0tajnacJvU+xOR3Be5//jo3GaSmdCwSSgtYyDMnYE4cPCiPv7PV9m7z1Jk0WazYHTFPbYhm<br>
&gt; &lt;&lt;&lt; x-amz-request-id: KWXPQ4JP20HSYSY2<br>
&gt; &lt;&lt;&lt; date: Wed, 14 Jan 2026 00:09:56 GMT<br>
&gt; &lt;&lt;&lt; x-amz-server-side-encryption: AES256<br>
&gt; &lt;&lt;&lt; x-amz-replication-status: COMPLETED<br>
&gt; &lt;&lt;&lt; last-modified: Sun, 04 Aug 2024 01:36:47 GMT<br>
&gt; &lt;&lt;&lt; accept-ranges: bytes<br>
&gt; last modified: [2024-08-04 01:36:47]<br>
&gt; &lt;&lt;&lt; content-type: application/gzip<br>
&gt; &lt;&lt;&lt; x-served-by: cache-ams21058-AMS<br>
&gt; &lt;&lt;&lt; server: AmazonS3<br>
&gt; &lt;&lt;&lt; age: 25212<br>
&gt; &lt;&lt;&lt; x-cache: HIT<br>
&gt; &lt;&lt;&lt; x-cache-hits: 148<br>
&gt; &lt;&lt;&lt;<br>
&gt; offset 0, length -1, size -1, clength 8244<br>
&gt; local size / mtime: 8244 / 1722735407<br>
&gt; remote size / mtime: 8244 / 1722735407<br>
&gt; dunce-1.0.5.crate &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8244 &nbsp;B &nbsp;&nbsp;10 MBps &nbsp;&nbsp;&nbsp;00s<br>
&gt;<br>
&gt; real &nbsp;&nbsp;&nbsp;0m0.429s<br>
&gt; user &nbsp;&nbsp;&nbsp;0m0.023s<br>
&gt; sys &nbsp;&nbsp;&nbsp;0m0.027s<br>
<br>
```<br>
# time fetch -vv "<a href="https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate">https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate</a>"<br>;
scheme: &nbsp;&nbsp;"https"<br>
user: &nbsp;&nbsp;&nbsp;&nbsp;""<br>
password: ""<br>
host: &nbsp;&nbsp;&nbsp;&nbsp;"crates.io"<br>
port: &nbsp;&nbsp;&nbsp;&nbsp;"0"<br>
document: "/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate"<br>
---&gt; crates.io:443<br>
resolving server address: crates.io:443 (&lt;- it gets stuck here for like a minute)<br>
SSL options: 82004850<br>
Peer verification enabled<br>
Using OpenSSL default CA cert file and path<br>
Verify hostname<br>
TLSv1.3 connection established using TLS_AES_128_GCM_SHA256<br>
Certificate subject: /CN=crates.io<br>
Certificate issuer: /C=US/O=Amazon/CN=Amazon RSA 2048 M01<br>
requesting <a href="https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate">https://crates.io/api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate</a><br>;
&gt;&gt;&gt; GET /api/v1/crates/dunce/1.0.5/download?dummy=/rust/crates/dunce-1.0.5.crate HTTP/1.1<br>
&gt;&gt;&gt; Host: crates.io<br>
&gt;&gt;&gt; Accept: */*<br>
&gt;&gt;&gt; User-Agent: fetch libfetch/2.0<br>
&gt;&gt;&gt; Connection: close<br>
&gt;&gt;&gt;<br>
&lt;&lt;&lt; HTTP/1.1 302 Moved Temporarily<br>
&lt;&lt;&lt; Content-Length: 0<br>
&lt;&lt;&lt; Connection: close<br>
content length: [0]<br>
&lt;&lt;&lt; Access-Control-Allow-Origin: *<br>
&lt;&lt;&lt; Date: Wed, 14 Jan 2026 14:34:21 GMT<br>
&lt;&lt;&lt; Location: <a href="https://static.crates.io/crates/dunce/dunce-1.0.5.crate">https://static.crates.io/crates/dunce/dunce-1.0.5.crate</a><br>;
&lt;&lt;&lt; Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}<br>
302 redirect to <a href="https://static.crates.io/crates/dunce/dunce-1.0.5.crate">https://static.crates.io/crates/dunce/dunce-1.0.5.crate</a><br>;
scheme: &nbsp;&nbsp;"https"<br>
user: &nbsp;&nbsp;&nbsp;&nbsp;""<br>
password: ""<br>
host: &nbsp;&nbsp;&nbsp;&nbsp;"static.crates.io"<br>
port: &nbsp;&nbsp;&nbsp;&nbsp;"0"<br>
document: "/crates/dunce/dunce-1.0.5.crate"<br>
&lt;&lt;&lt; Report-To: {"group":"heroku-nel","endpoints":[{"url":"<a href="https://nel.heroku.com/reports?s=9t0rqIH4lMlfE9ncVibRPy8hCUlMqBmippMeWunG5M0%3D\u0026sid=af571f24-03ee-46d1-9f90-ab9030c2c74c\u0026ts=1768401261">https://nel.heroku.com/reports?s=9t0rqIH4lMlfE9ncVibRPy8hCUlMqBmippMeWunG5M0%3D\u0026sid=af571f24-03ee-46d1-9f90-ab9030c2c74c\u0026ts=1768401261</a>"}],"max_age":3600}<br>;
&lt;&lt;&lt; Reporting-Endpoints: heroku-nel="<a href="https://nel.heroku.com/reports?s=9t0rqIH4lMlfE9ncVibRPy8hCUlMqBmippMeWunG5M0%3D&amp;sid=af571f24-03ee-46d1-9f90-ab9030c2c74c&amp;ts=1768401261">https://nel.heroku.com/reports?s=9t0rqIH4lMlfE9ncVibRPy8hCUlMqBmippMeWunG5M0%3D&amp;sid=af571f24-03ee-46d1-9f90-ab9030c2c74c&amp;ts=1768401261</a>"<br>;
&lt;&lt;&lt; Server: Heroku<br>
&lt;&lt;&lt; Strict-Transport-Security: max-age=31536000; includeSubDomains<br>
&lt;&lt;&lt; Via: 1.1 heroku-router, 1.1 608555ff8069f08e821e1679cd412294.cloudfront.net (CloudFront)<br>
&lt;&lt;&lt; X-Cache: Miss from cloudfront<br>
&lt;&lt;&lt; X-Amz-Cf-Pop: GRU3-P10<br>
&lt;&lt;&lt; X-Amz-Cf-Id: LvtqT2cBMH7thFfdy3ktelkhg-ALuajh-ucfDhnv7l_s73okAxXp7Q==<br>
&lt;&lt;&lt;<br>
---&gt; static.crates.io:443<br>
resolving server address: static.crates.io:443<br>
SSL options: 82004850<br>
Peer verification enabled<br>
Using OpenSSL default CA cert file and path<br>
Verify hostname<br>
TLSv1.3 connection established using TLS_AES_128_GCM_SHA256<br>
Certificate subject: /CN=static.crates.io<br>
Certificate issuer: /C=BE/O=GlobalSign nv-sa/CN=GlobalSign Atlas R3 DV TLS CA 2025 Q3<br>
requesting <a href="https://static.crates.io/crates/dunce/dunce-1.0.5.crate">https://static.crates.io/crates/dunce/dunce-1.0.5.crate</a><br>;
&gt;&gt;&gt; GET /crates/dunce/dunce-1.0.5.crate HTTP/1.1<br>
&gt;&gt;&gt; Host: static.crates.io<br>
&gt;&gt;&gt; Accept: */*<br>
&gt;&gt;&gt; User-Agent: fetch libfetch/2.0<br>
&gt;&gt;&gt; Connection: close<br>
&gt;&gt;&gt;<br>
&lt;&lt;&lt; HTTP/1.1 200<br>
&lt;&lt;&lt; Connection: close<br>
&lt;&lt;&lt; Content-Length: 8244<br>
&lt;&lt;&lt; cache-control: public,max-age=31536000,immutable<br>
content length: [8244]<br>
&lt;&lt;&lt; x-amz-version-id: PO7xZdimM08F9npIqG8PYtpqpEuWdV9D<br>
&lt;&lt;&lt; x-amz-id-2: EzDoao06Q7mYZgq0ecISLqKGCrHOV1gBvzNGaaAfOg4QCWZ/d3G4pjY4ZAoo2BNA0jACxYFWJQQ=<br>
&lt;&lt;&lt; x-amz-request-id: 7JJDJ8X4GESHDW5P<br>
&lt;&lt;&lt; date: Wed, 14 Jan 2026 04:21:53 GMT<br>
&lt;&lt;&lt; x-amz-replication-status: COMPLETED<br>
&lt;&lt;&lt; x-amz-server-side-encryption: AES256<br>
&lt;&lt;&lt; last-modified: Sun, 04 Aug 2024 01:36:47 GMT<br>
&lt;&lt;&lt; etag: "198d7f7c37f632bc83502b28870b6d60"<br>
last modified: [2024-08-04 01:36:47]<br>
&lt;&lt;&lt; accept-ranges: bytes<br>
&lt;&lt;&lt; content-type: application/gzip<br>
&lt;&lt;&lt; x-served-by: cache-gru-sbgr1930032-GRU<br>
&lt;&lt;&lt; server: AmazonS3<br>
&lt;&lt;&lt; age: 36813<br>
&lt;&lt;&lt; x-cache: HIT<br>
&lt;&lt;&lt; x-cache-hits: 107<br>
&lt;&lt;&lt;<br>
offset 0, length -1, size -1, clength 8244<br>
fetch: transfer timed out<br>
fetch: dunce-1.0.5.crate appears to be truncated: 0/8244 bytes<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;184.03 real &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.02 user &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.00 sys<br>
<br>
so it's even worse, it does follow the redirect but somehow can't get the file at all, and all of that actually takes 3 minutes to do</div>

<hr></div>
</blockquote>
<br>
<br>
That looks weird. It is hard to diagnose from a distance. How is you general network access? Do you have a lot of package loss?<br>
<br>
Regards,<br>
Ronald.<br>
<br>
&nbsp;</body></html>
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1541007573.1910.1768406972044>