Subject: Re: bug#68822: Channel dependencies picked at the wrong commit

From: Ludovic Courtès <[email-masked]>
Date: Wed, 31 Jan 2024 09:14:32 +0100

Ludovic Courtès <[email-masked]> skribis:

> When a channel is specified both implicitly, as the dependency of
> another channel, and explicitly, in the user-provided channels file, the
> “most specific” one wins—the one that has a non-#f ‘commit’ field.
>
> However, the dependencies of that channel may be read from the wrong
> one—the least-specific one.  And they can be wrong.

This is fixed by 323b58ac18af8417d5b206288d09d9bb9385d7ae.

The patch changes the order in which channels and their dependencies are
traversed from depth-first to breadth-first.  That gives more precedence
to user-supplied channels, which are likely more specific than what
appears in ‘.guix-channel’ files.  So the fix kinda sidesteps the issue
but I think it makes sense to do it that way.

Ludo’.