Subject: Re: bug#47986: [PATCH] inferior: Support querying package replacements.

From: Christopher Baines <[email-masked]>
Date: Sat, 15 May 2021 12:15:49 +0100

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

> Hi,
>
> Christopher Baines <[email-masked]> skribis:
>
>> I'm looking at this to help with adding support for looking up package
>> replacements to store in the Guix Data Service.
>>
>> * guix/inferior.scm (inferior-package-replacement): New procedure.
>> * tests/inferior.scm ("inferior-package-replacement"): New test.
>
> [...]
>
>> +(test-equal "inferior-package-replacement"
>> +  (package-derivation %store
>> +                      (or (package-replacement sqlite) sqlite)
>> +                      "x86_64-linux")
>> +  (let* ((inferior (open-inferior %top-builddir
>> +                                  #:command "scripts/guix"))
>> +         (packages (inferior-packages inferior)))
>> +    (match (lookup-inferior-packages inferior
>> +                                     (package-name sqlite)
>> +                                     (package-version sqlite))
>> +      ((inferior-sqlite rest ...)
>> +       (inferior-package-derivation %store
>> +                                    (or (inferior-package-replacement
>> +                                         inferior-sqlite)
>> +                                        inferior-sqlite)
>> +                                    "x86_64-linux")))))
>
> Problem is that this test assumes sqlite has a replacement.  Maybe
> precede it:
>
>   (unless (package-replacement sqlite)
>     (test-skip 1))
>
> and remove (or (package-replacement …) …) and similar.
>
> That way we’ll notice when the test is skipped.

Sure, I've made those changes now.

> Otherwise LGTM, thanks!

Great, I've pushed this as 97d615b1761c2054561057f6b56e2a0caed13aa4.