Subject: bug#41908: guix time-machine fails; XXXX is not related to introductory commit of channel 'guix'

From: Ludovic Courtès <[email-masked]>
Date: Fri, 19 Jun 2020 23:17:53 +0200

Hi,

(+Cc: Marius.)

Jan Nieuwenhuizen <[email-masked]> skribis:

> $ guix pull --commit=559491ea5b36b89b2a2f9d48dacf6a2d7e219910
> Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
> Building from this channel:
>   guix      https://git.savannah.gnu.org/git/guix.git	559491e
> [...]
> hint: Run `guix pull --news' to read all the news.
>
> 11:23:19 janneke@dundal:~/src/guix/master
> $ guix time-machine --commit=36640207c9543e48cd6daa92930f023f80065a5d -- environment hello
> 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'
>
> [1]11:23:25 janneke@dundal:~/src/guix/master
> git log --pretty=oneline | grep 36640207c9543e48cd6daa92930f023f80065a5d
> 36640207c9543e48cd6daa92930f023f80065a5d quirks: Build 'compute-guix-derivation' modules with 2.2 when needed.

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.

Thoughts?

Ludo’.