--- Begin Message ---
Subject: |
package-with-explicit-inputs leaks-in additional inputs |
Date: |
Mon, 17 Sep 2018 12:03:10 +0200 |
Hi!
Rewriting the bootstrap on the wip-bootstrap branch I found additional
inputs in packages that use `package-with-explicit-inputs', such as
diffutils-boot0.
I would expect diffutils-boot0 to list just one extra input in addition
to gnu-make-boot0; namely the package gnu-make-boot0; however it has
many more.
To reproduce this I created a test file with two simple packages
gnu-make-explicit-inputs, gnu-make-no-implicit-inputs.
Put the attached file in gnu/packages and producing a graph for both
test packages
--8<---------------cut here---------------start------------->8---
11:56:03 address@hidden:~/src/guix-master
$ ./pre-inst-env guix graph --type=bag -e '(begin (use-modules (guix packages))
(@@ (gnu packages pawei) gnu-make-no-implicit-inputs))' | wc -l
14
11:56:22 address@hidden:~/src/guix-master
$ ./pre-inst-env guix graph --type=bag -e '(begin (use-modules (guix packages))
(@@ (gnu packages pawei) gnu-make-explicit-inputs))' | wc -l
79
--8<---------------cut here---------------end--------------->8---
Should `package-with-explicit-inputs' behave like I think it does, i.e.,
should both test packages list the same dependencies, or am I missing
something?
pawei.scm
Description: Binary data
make-no-implicit-inputs.dot
Description: Binary data
make-explicit-inputs.dot
Description: Binary data
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#32749: package-with-explicit-inputs leaks-in additional inputs |
Date: |
Wed, 19 Sep 2018 22:42:35 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
Jan Nieuwenhuizen <address@hidden> skribis:
> Ludovic Courtès writes:
[...]
>> I just realized that there’s already a fix for this, which is to pass
>> ‘package-with-explicit-inputs’ a procedure rather than the input list,
>> like this:
>>
>> (package-with-explicit-inputs gnu-make
>> %bootstrap-inputs+toolchain
>> …)
>>
>> Does it work for you?
>
> Yes! I'm reverting my `...leak' commits and create thunks as input of
> package-with-explicit-inputs. Thanks!
Awesome, thank you!
Ludo’.
--- End Message ---