Re: git: bc18f00c490c - main - bsd.sites.mk: use static CDN to download rust crates

From: Siva Mahadevan <siva_at_freebsd.org>
Date: Tue, 22 Sep 2026 15:35:04 UTC
On Tue Sep 22, 2026 at 96:00 UTC, Mathieu Arnold <mat@freebsd.org> wrote:
> On Fri, Sep 11, 2026 at 02:01:44PM +0000, Siva Mahadevan wrote:
>>     bsd.sites.mk: use static CDN to download rust crates
>>     
>>     static.crates.io is the recommended upstream download
>>     path. This avoids "403 Forbidden" rate limiting results
>>     when trying to download crates too fast. This also
>>     seems to improve download speeds/latency.
>>     
>>     As per https://crates.io/data-access#crate-content,
>>     
>>     > Crates can be downloaded directly from the crates.io CDN
>>     > [...]
>>     > No rate limits apply to static.crates.io at present.
>>     
>>     And as per https://crates.io/data-access#api,
>>     
>>     > you are welcome to use the crates.io API provided you abide by the following limits:
>>     > * A maximum of 1 request per second, and
>>     > * A user-agent header that identifies your application.
>>     
>>     Reviewed by:    mikael
>>     Differential Revision:  https://reviews.freebsd.org/D59575
>
> Since this change, I am unable to make fetch for rust ports, I get this:
>
> => rust/crates/s3req-1.3.1.crate doesn't seem to exist in /portdistfiles.
> => Attempting to fetch https://static.crates.io/crates/s3req/1.3.1?dummy=/rust/crates/s3req-1.3.1.crate
> fetch: https://static.crates.io/crates/s3req/1.3.1?dummy=/rust/crates/s3req-1.3.1.crate: Forbidden
> => Attempting to fetch http://distcache.FreeBSD.org/ports-distfiles/rust/crates/s3req-1.3.1.crate
> fetch: http://distcache.FreeBSD.org/ports-distfiles/rust/crates/s3req-1.3.1.crate: Not Found
> => Couldn't fetch it - please try to retrieve this
> => port manually into /portdistfiles and try again.
> *** Error code 1
>
> For example, to be able to update net/s3req, I had to backout this
> commit to be able to run `make makesum`.

Removing the custom DISTFILES=... in net/s3req fixes it. What was the
purpose of the override there?