From: Simon Tournier <zimon.toutoune@gmail.com>
To: "Ludovic Courtès" <ludo@gnu.org>, "Steve George" <steve@futurile.net>
Cc: guix-devel <guix-devel@gnu.org>
Subject: Re: ‘core-updates’ is gone; long live ‘core-packages-team’!
Date: Mon, 09 Sep 2024 17:30:25 +0200 [thread overview]
Message-ID: <87jzfksv3i.fsf@gmail.com> (raw)
In-Reply-To: <87h6at2m11.fsf@gnu.org>
Hi Ludo,
On Fri, 06 Sep 2024 at 11:01, Ludovic Courtès <ludo@gnu.org> wrote:
> Once it’s “known good”, I see two possibilities:
[...]
> • Attach to a “merge train”. For instance, assume there’s a branch
> changing ‘gsl’: this is totally unrelated to ‘ffmpeg’ but it also
> triggers a lot of rebuilds. We could tack that second branch on top
> of the known-good ‘ffmpeg’ branch, and, once it’s all good, merge
> that “train” into ‘master’.
As Andreas pointed out:
Once the first branch is good, why not simply merge it to master and then
rebase the second branch on master and test it, instead of postponing the
merge? After all, building is costly, not merging.
Somehow, I have the same question: if “gsl” branch is “known good”, why
not directly merge it to master. As the other possibility suggests…
> • Merge into ‘master’, especially if it turns out that binaries are
> already available on the build farms.
…However, in this case, if the branch changing ’ffmpeg’ is “known good”
because it had been built, then the 521 rebuilds are wasted because the
branch “gsl” is cooking and also triggers these same 521 rebuilds.
Therefore, it would be wiser to merge the ’ffmpeg’ branch into the ’gsl’
branch and rebuild only once. (I am not pushing the button “please save
the planet” but I am thinking about it very strongly. ;-))
Somehow, a tool is missing, IMHO.
How to know which branch needs to be rebased onto which other one? How
to know which rebuilds from one specific branch are not independent to
some other branch?
Maybe it would help as a first step to have the intersection list of
“guix refresh” applied to two sets of packages.
Assuming two 2 branches are not continuously built but only when ready
to merge, I still have the same question [1]:
Bah the question how to merge different branches containing world
rebuilds without the big catch-all old core-updates branch is not
addressed under the constraint of reducing as much as possible the
number of world rebuilds, for what my opinion is worth.
Cheers,
simon
--8<---------------cut here---------------start------------->8---
$ guix refresh -l gsl
| cut -d':' -f2 | tr ' ' '\n' | tail -n +2 | sort | uniq > gsl.deps
$ for i in $(seq 2 7); do guix refresh -l ffmpeg@$i \
| cut -d':' -f2 | tr ' ' '\n' | tail -n +2 ;done | sort | uniq > ffmpeg.deps
$ wc -l gsl.deps ffmpeg.deps
1473 gsl.deps
521 ffmpeg.deps
1994 total
$ for line in $(cat ffmpeg.deps); do grep -n ^$line gsl.deps ;done | wc -l
521
--8<---------------cut here---------------end--------------->8---
1: Re: ‘core-updates’ is gone; long live ‘core-packages-team’!
Simon Tournier <zimon.toutoune@gmail.com>
Wed, 04 Sep 2024 14:58:37 +0200
id:87v7zby3r6.fsf@gmail.com
https://lists.gnu.org/archive/html/guix-devel/2024-09
https://yhetil.org/guix/87v7zby3r6.fsf@gmail.com
next prev parent reply other threads:[~2024-09-09 17:37 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-31 13:03 ‘core-updates’ is gone; long live ‘core-packages-team’! Ludovic Courtès
2024-09-01 16:34 ` Steve George
2024-09-01 17:06 ` Christopher Baines
2024-09-03 14:02 ` Christopher Baines
2024-09-06 9:01 ` Ludovic Courtès
2024-09-09 15:30 ` Simon Tournier [this message]
2024-09-04 12:58 ` Simon Tournier
2024-09-05 8:39 ` Marek Paśnikowski
2024-09-05 9:40 ` Ricardo Wurmus
2024-09-06 9:11 ` Ludovic Courtès
2024-09-06 10:09 ` Andreas Enge
2024-09-06 11:35 ` Marek Paśnikowski
2024-09-06 13:25 ` Andreas Enge
2024-09-06 13:17 ` indieterminacy
2024-09-26 12:52 ` Ludovic Courtès
2024-09-06 17:44 ` Vagrant Cascadian
2024-09-06 18:06 ` Leo Famulari
2024-09-06 20:29 ` Rebasing commits and re-signing before mergeing (Was: ‘core-updates’ is gone; long live ‘core-packages-team’!) Vagrant Cascadian
2024-09-07 17:45 ` Leo Famulari
2024-09-08 2:33 ` Vagrant Cascadian
2024-09-06 19:49 ` ‘core-updates’ is gone; long live ‘core-packages-team’! Christopher Baines
2024-09-09 17:28 ` Naming “build train” instead of “merge train”? Simon Tournier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87jzfksv3i.fsf@gmail.com \
--to=zimon.toutoune@gmail.com \
--cc=guix-devel@gnu.org \
--cc=ludo@gnu.org \
--cc=steve@futurile.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.