Subject: Re: bug#30155: 'bag-transitive-inputs' behaves non-deterministically

From: [email-masked] (Ludovic Courtès)
Date: Thu, 18 Jan 2018 18:09:09 +0100

[email-masked] (Ludovic Courtès) skribis:

> Notice the “kernel-headers” repetition, which is not in the correct
> build script.
>
> The repetition stems from the traversal done by ‘bag-transitive-inputs’,
> which relies on pointer identity when comparing packages (via the ‘eq?’
> vhash in ‘transitive-inputs’), and for some reason there are two non-eq?
> linux-libre-headers packages encountered here.  ‘master’ doesn’t have
> this problem.

This is fixed by 8102cf0b37e100f760d25b500cf91ed38928615c, which makes
sure there’s only one “linux-libre-boot0” package object.

At some point we could change the way ‘transitive-inputs’ checks for
already-visited node, though I think it’d be hard to avoid relying on
eq?-ness.

Ludo’.