[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Help Sending Patch Series
From: |
Steve George |
Subject: |
Re: Help Sending Patch Series |
Date: |
Sat, 2 Nov 2024 10:07:56 +0000 |
Hi Lee,
You aren't the first person to find this difficult, I'm pretty much guaranteed
to create multiple Debbugs issues every time!
On 1 Nov, Lee Thompson wrote:
> Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:
>
> > It should be guix-patches@gnu.org, not @debbugs.gnu.org
>
> Okay I think I've found the source of the issue, it looks like I've read
> some slightly older documentation that says to send to
> guix-patches@gnu.org but includes an example command to send to
> guix-patches@debbugs.gnu.org.
>
> This is the HTML version of the info page I was working against:
> https://guix.gnu.org/manual/en/html_node/Sending-a-Patch-Series.html#Multiple-Patches-1
>
> and this is the latest which appears to be fixed:
> https://guix.gnu.org/manual/devel/en/html_node/Sending-a-Patch-Series.html#Multiple-Patches-1
>
> I'll now try sending the cover letter to guix-patches@gnu.org, thanks!
>
(...)
It's worth knowing what's going on. We send the first email in a series (the
cover letter) to guix-patches [0]. The bug system (debbugs) will see this and
it creates an issue, it notifies you with the new issue number.
Then subsequent emails (the rest of the series), go the NNN@debbugs.gnu.org.
Note that you do NOT send them to guix-patches. Instead debbugs will reflect
them to the mailing list for you.
So that the series threads correctly on the mailing list the follow-on emails
have to have the `--in-reply-to` header set with the header of the cover letter.
If the team was cc'd onto the cover letter then debbugs picks this up and will
automatically cc them onto the subsequent patches. Because I'm paranoid and
don't trust debbugs I *also* add them to the follow-on patches. There's a
special Debbugs header that's used, so then you know Debbugs has definitely
added them to the bug for all emails after this.
So my final steps are:
# 1. I use StackedGit, but this should work with the standard git format-patch
git format-patch --output-directory <output dir> --numbered --base=auto
--thread=shallow --cover-letter --all
# 2. check if a patch should cc a particular team by doing it explicitly
# I don't like the magic Guix injects and it always breaks on my system
./pre-inst-env etc/teams.scm get-maintainer
~/workspace/guix-packages/worktrees/stg-out/0002-gnu-borgmatic-Update-to-1.8.14.patch
# 3. send the cover letter
git send-email --to=guix-patches@gnu.org --annotate --dry-run <output-dir>
# to also cc someone
#git send-email --to=guix-patches@gnu.org --cc="person@blah.com,
person2@other.com" --annotate --dry-run <output-dir>
# 4. rm the cover letter so you don't send it again!
rm <outputdir/cover-letter>
# 5. get the Message-ID for the cover letter email by looking on Issues
https://issues.gnu.guix.org/NNNNN
# 6. re-export the emails TO: <debbugs>
stg email format --output-directory <output-dir> --numbered --base=auto \
--to NNNN@debbugs.gnu.org \
--add-header="X-Debbugs-Cc: person1@blah.com, person2@other.com" \
--in-reply-to XXXXX \
--thread=shallow --all
# 7. Send them
git send-email --to=NNNN@debbugs.gnu.org --no-thread --no-chain-reply-to
--dry-run <export-dir>
Maybe there are better ways, but this is the least 'magic' way to do it that I
know.
Steve / Futurile
[0] and CC the people on any team that should be notified