On Thu, 19 Mar 2020 15:40:20 -0400
Mike Gilbert <flop...@gentoo.org> wrote:

> I'm not sure what you mean by "stabilization graph". I'm guessing you
> mean the dependency graph for stable keywords?
> 
> Valid dependency graphs are determined by whatever our tooling deems
> valid. The tooling could be updated to permit amd64 packages to depend
> on noarch packages, and vice-versa.

No, its worse than that :/

If X is "noarch" and its dependency Y is "amd64", then a user on "sparc"
will be able to install "X", but not its dependency "Y".

And thus, the error from portage will:

- Take longer to produce
- Be less clear

And any tooling that exposes "noarch" as "you can install this" will be
wrong, because instead of the KEYWORDS being an independent declaration
of usability, the entire dependency graph has to be checked for usability.

Thus, end users will have portage erroring that a no-arch package is
not available due to its dependencies being impossible to satisfy.

And, as a QA measure, we'd have to make that condition illegal.

And the only way to do that, would be for CI to reject packages that
are "noarch" and depend on things that are in turn, not "noarch".

Attachment: pgpihB4EjbGxi.pgp
Description: OpenPGP digital signature

Reply via email to