GNU bug report logs -
#35872
'guix upgrade' misdiagnoses upgrades in the presence of propagated inputs
Previous Next
Reported by: Andy Tai <atai <at> atai.org>
Date: Thu, 23 May 2019 20:42:01 UTC
Severity: important
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Tue, 31 Mar 2020 00:12:00 +0200
with message-id <87imilwkzz.fsf <at> gnu.org>
and subject line Re: bug#35872: messages that are redundant can be eliminated?
has caused the debbugs.gnu.org bug report #35872,
regarding 'guix upgrade' misdiagnoses upgrades in the presence of propagated inputs
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
35872: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=35872
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
[Message part 3 (text/plain, inline)]
on my guix installation (on an Ubuntu system but that detail should not
matter)
after running
%guix pull && guix package -u
these were printed:
----
...
New in this revision:
...
hint: Run `guix pull --news' to view the complete list of package changes.
hint: After setting `PATH', run `hash guix' to make sure your shell refers
to `/home/.../.config/guix/current/bin/guix'.
guix package: warning: Consider running 'guix pull' followed by
'guix package -u' to get up-to-date packages and security updates.
The following packages will be upgraded:
glibc-locales 2.28 → 2.28
/gnu/store/acl2wxzzkkcjv74rlqswdf9p8pwddlmk-glibc-locales-2.28
meson 0.50.0 → 0.50.0
/gnu/store/zc6r8b1rx3q7lqd8kvvpnm38ky925kmj-meson-0.50.0
guile 2.2.4 → 2.2.4
/gnu/store/9alic3caqhay3h8mx4iihpmyj6ymqpcx-guile-2.2.4
font-adobe-source-han-sans:cn 1.004 → 1.004
/gnu/store/zf59mg6g0afay9458aarh0rqcz852hhb-font-adobe-source-han-sans-1.004-cn
fontconfig 2.13.1 → 2.13.1
/gnu/store/cnafj0dn09qzy23xnrrjsq5zcdj4739j-fontconfig-2.13.1
epiphany 3.28.3.1 → 3.28.3.1
/gnu/store/n56bdjhqgq7a4a6ndqc3aymyrzvs12hl-epiphany-3.28.3.1
gnome-terminal 3.28.2 → 3.28.2
/gnu/store/r6i61wji0qmv9fqdyk65kx73nzxw8v80-gnome-terminal-3.28.2
nothing to be done
----
Now there seems nothing to be done during the guix package -u step so these
messages
glibc-locales 2.28 → 2.28...
were confusing and probably not necessary?
[Message part 4 (text/html, inline)]
[Message part 5 (message/rfc822, inline)]
Hi!
Ludovic Courtès <ludo <at> gnu.org> skribis:
> (+Cc: Efraim following our discussion on IRC.)
>
> Ludovic Courtès <ludo <at> gnu.org> skribis:
>
>> This is a bug where the presence of propagated inputs leads ‘guix
>> upgrade’ to assume something would be upgraded, even when that’s not the
>> case. This can be reproduced with:
>>
>> guix install -p foo guile
>> guix upgrade -p foo
>
> I came up with an actual fix for that (attached), nice and clean, which
> would allow ‘guix upgrade’ to correctly determine whether something is
> going to be upgraded.
>
> But then I realized that this cannot work in the presence of grafts:
> first because ‘-n’ currently implies ‘--no-grafts’, so this is an apple
> to orange comparison, and then because computing the output file name of
> a grafted package can require building the package (grafts are “dynamic
> dependencies”.)
I saw the light :-) and came up with a simple solution to this in commit
a357849f5b1314c2a35efeee237645b9b08c39f5. Basically, we do the complete
manifest entry comparison as in the patch I posted earlier, but we punt
if doing so would require building things (for grafts).
Anecdotal data: on my 288-item profile, “guix upgrade -n” would
previously report that 124 things need to be upgraded, and now it
reports 97 instead.
Ludo’.
This bug report was last modified 5 years and 50 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.