Package: guix;
Reported by: Jan Nieuwenhuizen <janneke <at> gnu.org>
Date: Wed, 17 Jun 2020 09:29:01 UTC
Severity: serious
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: zimoun <zimon.toutoune <at> gmail.com> To: Ludovic Courtès <ludo <at> gnu.org>, Jan Nieuwenhuizen <janneke <at> gnu.org> Cc: 41908 <at> debbugs.gnu.org, Marius Bakke <marius <at> gnu.org> Subject: bug#41908: guix time-machine fails; XXXX is not related to introductory commit of channel 'guix' Date: Sat, 20 Jun 2020 01:22:17 +0200
Hi Ludo, On Fri, 19 Jun 2020 at 23:17, Ludovic Courtès <ludo <at> gnu.org> wrote: > (+Cc: Marius.) Not sure you +CC'ed Marius. So I did. > I think ‘commit-relation’ is right: the two commits are unrelated. > > AIUI, commit 36640207c9543e48cd6daa92930f023f80065a5d was made on master > (May 29) after commit 9edb3f66fd807b096b48283debdcddccfea34bad (May > 26). Thus, they really existed in different branches, and they’re > unrelated. > > So we probably need to choose another introductory commit, one on > ‘master’, and that has to be the merge commit for ‘staging’ > (8ab70bae52f8d4b6356ec3b8a88cebf9debe8520, June 13!). > > That sucks because that means that any branch forked before that is not > mergeable. That includes at least ‘core-updates’ (but there are few > commits there, so it can be rebased, I think.) > > I don’t think we can relax the relation check with the introductory > commit or we’d allow jumping anywhere. I do not know if I add noise but below what I observed and it is not what I am expecting. For the record, the commit history. Maybe I misread, well I think the first 2 commits used for pulling and the 5 others used for time-machine are/were each on the same branch, i.e. they are related (direct path), and the 2 groups (pull vs time-machine) are/were not in the same branch. And I do not think the issue comes from the branching. --8<---------------cut here---------------start------------->8--- 559491ea5b * gnu: Transmission: Clean up the package definition. e7a7a483bc * gnu: papirus-icon-theme: Update to 20200602. [...] 41a2d6a8b9 * gnu: emacs-evil: Update to 1.14.0. [...] e70e097882 * size: Document that positional arguments can be store items. [...] b56cbe8974 * syscalls: Properly match %HOST-TYPE. 36640207c9 * quirks: Build 'compute-guix-derivation' modules with 2.2 when needed. 60b81ec2f3 * gnu: emacs-2048-game: Update home page. --8<---------------cut here---------------end--------------->8--- This first sequence appears expected: --8<---------------cut here---------------start------------->8--- guix pull --commit=e7a7a483bc -p /tmp/a cat ~/.cache/guix/authentication/channels/guix cat: /home/simon/.cache/guix/authentication/channels/guix: No such file or directory /tmp/a/bin/guix time-machine --commit=36640207c9 -- help Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... Authenticating channel 'guix', commits 9edb3f6 to 3664020 (664 new commits)... cat ~/.cache/guix/authentication/channels/guix ;; List of previously-authenticated commits. ("36640207c9543e48cd6daa92930f023f80065a5d") /tmp/a/bin/guix time-machine --commit=b56cbe8974 -- help Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... Authenticating channel 'guix', commits 9edb3f6 to b56cbe8 (1 new commits)... cat ~/.cache/guix/authentication/channels/guix ;; List of previously-authenticated commits. ("b56cbe8974c328a6c7bc28906478ef1b191ada4c" "36640207c9543e48cd6daa92930f023f80065a5d") --8<---------------cut here---------------end--------------->8--- Then this one is not for me: --8<---------------cut here---------------start------------->8--- /tmp/a/bin/guix time-machine --commit=60b81ec2f3 -- help Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... guix time-machine: error: '60b81ec2f324c18d026e9ae05199493bc644960b' is not related to introductory commit of channel 'guix' /tmp/a/bin/guix time-machine --commit=b56cbe8974 -- help Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... guix time-machine: error: 'b56cbe8974c328a6c7bc28906478ef1b191ada4c' is not related to introductory commit of channel 'guix' /tmp/a/bin/guix time-machine --commit=36640207c9 -- help Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... guix time-machine: error: '36640207c9543e48cd6daa92930f023f80065a5d' is not related to introductory commit of channel 'guix' --8<---------------cut here---------------end--------------->8--- Why I cannot go to 60b81ec2f3? I mean I cannot go before the first time-machine I did which is unexpected for me. Why I cannot re-do the same time-machine twice? I pull again but it is not the point. :-) --8<---------------cut here---------------start------------->8--- guix pull --commit=559491ea5b -p /tmp/b cat ~/.cache/guix/authentication/channels/guix ;; List of previously-authenticated commits. ("b56cbe8974c328a6c7bc28906478ef1b191ada4c" "36640207c9543e48cd6daa92930f023f80065a5d") /tmp/b/bin/guix time-machine --commit=36640207c9 -- help Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... guix time-machine: error: '36640207c9543e48cd6daa92930f023f80065a5d' is not related to introductory commit of channel 'guix' /tmp/b/bin/guix time-machine --commit=41a2d6a8b9 -- help Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... Authenticating channel 'guix', commits 9edb3f6 to 41a2d6a (7 new commits)... cat ~/.cache/guix/authentication/channels/guix ;; List of previously-authenticated commits. ("41a2d6a8b9294a6eb8e97aaefd569e755f5f461e" "b56cbe8974c328a6c7bc28906478ef1b191ada4c" "36640207c9543e48cd6daa92930f023f80065a5d") /tmp/b/bin/guix time-machine --commit=e70e097882 -- help Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... guix time-machine: error: 'e70e097882699865f63eabc5fb29b4fe4468a97b' is not related to introductory commit of channel 'guix' --8<---------------cut here---------------end--------------->8--- Well, again it is not expected for me that 36640207c9 is not reachable even it is already authenticated. But it is similar than previously, I guess. However, because 41a2d6a8b9 is descendant, then it is reachable. The surprise to me is that e70e097882 which is in direct relation between the two authenticated commits 41a2d6a8b9 and b56cbe8974 is not reachable. BTW, from a security perspective, it is easy to cheat by removing some commits so the file ~/.cache/guix/authentication/channels/guix should be protected: read-only and only writable by the daemon. Cheers, simon
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.