GNU bug report logs - #29177
Hidden packages are not accounted for by `guix refresh`

Previous Next

Package: guix;

Reported by: Marius Bakke <mbakke <at> fastmail.com>

Date: Mon, 6 Nov 2017 20:48:01 UTC

Severity: normal

Done: Marius Bakke <mbakke <at> fastmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 29177 in the body.
You can then email your comments to 29177 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#29177; Package guix. (Mon, 06 Nov 2017 20:48:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Marius Bakke <mbakke <at> fastmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Mon, 06 Nov 2017 20:48:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Marius Bakke <mbakke <at> fastmail.com>
To: bug-guix <at> gnu.org
Subject: Hidden packages are not accounted for by `guix refresh`
Date: Mon, 06 Nov 2017 21:47:21 +0100
[Message part 1 (text/plain, inline)]
Currently, some packages are marked as "hidden".  This makes `guix
refresh` fail to realize the full impact of a change.  Most notably this
affects 'xorg-server': there have already been a few commits that
rebuilds the for-test variant (and thus GTK) because they seemed to only
cause ~150 rebuilds, where in reality it's more than 400:

97ecd75e289d96a8b4f9b1ae877d9d1a2f6774b4 gnu: libxfont: Fix CVE-2017-13720, CVE-2017-13722.
c2eb8cd98c82277e851eb4302b7f12614e215a76 gnu: xorg-server: Build reproducibly.
9371600ec8397ab3d596dea89c388b4acb1c2437 gnu: libxres: Update to 1.2.0.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#29177; Package guix. (Mon, 06 Nov 2017 22:17:02 GMT) Full text and rfc822 format available.

Message #8 received at 29177 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Marius Bakke <mbakke <at> fastmail.com>
Cc: 29177 <at> debbugs.gnu.org
Subject: Re: bug#29177: Hidden packages are not accounted for by `guix refresh`
Date: Mon, 06 Nov 2017 23:16:46 +0100
Hi Marius,

Marius Bakke <mbakke <at> fastmail.com> skribis:

> Currently, some packages are marked as "hidden".  This makes `guix
> refresh` fail to realize the full impact of a change.  Most notably this
> affects 'xorg-server': there have already been a few commits that
> rebuilds the for-test variant (and thus GTK) because they seemed to only
> cause ~150 rebuilds, where in reality it's more than 400:
>
> 97ecd75e289d96a8b4f9b1ae877d9d1a2f6774b4 gnu: libxfont: Fix CVE-2017-13720, CVE-2017-13722.
> c2eb8cd98c82277e851eb4302b7f12614e215a76 gnu: xorg-server: Build reproducibly.
> 9371600ec8397ab3d596dea89c388b4acb1c2437 gnu: libxres: Update to 1.2.0.

Oooops!  I’m the guilty party here.  The real dependency count can be
found with:

--8<---------------cut here---------------start------------->8---
$ guix refresh -l -e '(@ (gnu packages xorg) xorg-server-1.19.3)' xorg-server
Building the following 276 packages would ensure 516 dependent packages are rebuilt: snd <at> 17.7 ardour <at> 5.12 …
--8<---------------cut here---------------end--------------->8---

The problem is not that ‘xorg-server-1.19.3’ is hidden (we can work
around it with -e), but that it inherits from ‘xorg-server’, and thus
ended up being rebuilt.

That’s a “known limitation” of ‘guix refresh -l’ and not something
easily addressed since inheritance is purely syntactic.  Tricky!

So I think it’s “not a bug” from the ‘guix refresh’ viewpoint, but it’s
definitely a mistake on my side.  Apologies!

I think at this stage it’s no longer useful to revert this commit
though.  WDYT?

Thanks for the heads-up!

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#29177; Package guix. (Mon, 06 Nov 2017 23:15:02 GMT) Full text and rfc822 format available.

Message #11 received at 29177 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Marius Bakke <mbakke <at> fastmail.com>
Cc: 29177 <at> debbugs.gnu.org
Subject: Re: bug#29177: Hidden packages are not accounted for by `guix refresh`
Date: Tue, 07 Nov 2017 00:14:50 +0100
ludo <at> gnu.org (Ludovic Courtès) skribis:

> The problem is not that ‘xorg-server-1.19.3’ is hidden (we can work
> around it with -e), but that it inherits from ‘xorg-server’, and thus
> ended up being rebuilt.

Nevertheless, commit 8e57e416c0a6431a14d487ff8b69dece76d37c03 makes sure
‘guix refresh -l’ accounts for hidden packages.

For instance, previously it would not report the hidden ‘xorg-server’
when running ‘guix refresh -l dri2proto’; it now does.

I think it doesn’t change results significantly though.

Ludo’.




Reply sent to Marius Bakke <mbakke <at> fastmail.com>:
You have taken responsibility. (Tue, 07 Nov 2017 19:10:02 GMT) Full text and rfc822 format available.

Notification sent to Marius Bakke <mbakke <at> fastmail.com>:
bug acknowledged by developer. (Tue, 07 Nov 2017 19:10:02 GMT) Full text and rfc822 format available.

Message #16 received at 29177-done <at> debbugs.gnu.org (full text, mbox):

From: Marius Bakke <mbakke <at> fastmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 29177-done <at> debbugs.gnu.org
Subject: Re: bug#29177: Hidden packages are not accounted for by `guix refresh`
Date: Tue, 07 Nov 2017 20:09:44 +0100
[Message part 1 (text/plain, inline)]
Ludovic Courtès <ludo <at> gnu.org> writes:

> ludo <at> gnu.org (Ludovic Courtès) skribis:
>
>> The problem is not that ‘xorg-server-1.19.3’ is hidden (we can work
>> around it with -e), but that it inherits from ‘xorg-server’, and thus
>> ended up being rebuilt.
>
> Nevertheless, commit 8e57e416c0a6431a14d487ff8b69dece76d37c03 makes sure
> ‘guix refresh -l’ accounts for hidden packages.
>
> For instance, previously it would not report the hidden ‘xorg-server’
> when running ‘guix refresh -l dri2proto’; it now does.

Thanks, that was fast!  Closing the bug.

> I think it doesn’t change results significantly though.

Maybe not, but at least people won't accidentally trigger a GTK rebuild
and soon 'net-tools-for-tests' because `guix refresh` missed it.

It would be good to reduce the inputs of these packages to the absolute
minimum in order to minimize the impact.  Something to think about.
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 06 Dec 2017 12:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 6 years and 150 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.