On 10/26/24 1:03 AM, Robin H. Johnson wrote:
> This does not actually do it "last" as you claim.
> 
> Portage shuffles the list of thirdpartymirrors:
> https://gitweb.gentoo.org/proj/portage.git/tree/lib/portage/package/ebuild/fetch.py#n1140
> 
> While it increases mirror burden; this should likely be done as a
> distinct thirdpartymirror:
> apache-historical https://archive.apache.org/dist/


Thanks for pointing this out. It's disappointing but my opinion is that
this changes nothing other than the commit message I should use when
committing it.


> And that gets used in ebuilds when distfiles fall off the main mirrors
> [until such time as strictly ordered behavior is available].


This is an unreasonable and irrational burden on ebuild maintainers, and
regardless of your choice of remediation, if it isn't automatically and
transparently handling it via the thirdpartymirrors handling itself,
nobody wins. Not ebuild maintainers (who have to both know the quirks of
apache and watch more closely than usual for updates), not bug triagers
(who run the risk of getting trivially solvable issues to sort through),
and not users (who run a supported configuration and end up with
availability issues).

It's a bug (albeit low priority) if SRC_URI doesn't point to a valid
download location -- why should the fact that thirdpartymirrors has no
priority selection change that fact?

The suggestion downthread about extending this somehow in EAPI 9 is
clever -- we should do it, but we also shouldn't leave the current state
of affairs broken until some unspecified time years in the future.


> In likelihood, unless the ebuild has RESTRICT=mirror, I'd hope that that
> the primary request is made to Gentoo's mirrors before the upstreams: so
> that we are better open-source participants.


Yes. This is why I think any change to thirdpartymirrors is low risk.


> Users who are also trying to use old ebuilds, where the distfile is no
> longer on the Gentoo mirrors should also consider thirdpartymirrors in
> their profiles, in which case inserting this entry locally would be
> appropriate.


Unacceptable.

This isn't about old ebuilds. It's about the very latest ebuilds.
Distfiles go missing from the upstream CDN and are only available via
long-term archival, the same minute (AFAIK, based on their
documentation) that a new patchlevel release is tagged upstream. It is
physically impossible for Gentoo to be that fast in packaging new
versions, and it doesn't matter anyway because it won't help for another
month due to stabilization. And that is assuming it gets packaged as
fast as the maintainer can package it -- forgive me for being skeptical
about that one, we are all human after all. :)

It is reasonable, expected, normal use of computers, and reasonable,
expected, normal use of Gentoo, to download and install "old" versions
of a program minutes or hours after another patch release is out. We
must not penalize those users by requiring them to manually implement
this patch at global scope, running the risk that they will get it wrong
and list only the slow site which they then overload for *all* traffic
rather than at least having shuffle().

For indeed, overriding a mirror in /etc/portage/mirrors is just going to
force that to be used first for ALL packages using mirror://apache/ at
all. At least it respects your listed ordering I guess...


-- 
Eli Schwartz

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to