Re: [PATCH v2 2/2] Documentation: best practices for using Link trailers
From: Michael S. Tsirkin
Date: Fri Jun 21 2024 - 06:34:45 EST
On Wed, Jun 19, 2024 at 02:24:07PM -0400, Konstantin Ryabitsev wrote:
> Based on multiple conversations, most recently on the ksummit mailing
> list [1], add some best practices for using the Link trailer, such as:
>
> - how to use markdown-like bracketed numbers in the commit message to
> indicate the corresponding link
> - when to use lore.kernel.org vs patch.msgid.link domains
>
> Cc: ksummit@xxxxxxxxxxxxxxx
> Link: https://lore.kernel.org/20240617-arboreal-industrious-hedgehog-5b84ae@meerkat # [1]
> Signed-off-by: Konstantin Ryabitsev <konstantin@xxxxxxxxxxxxxxxxxxx>
> ---
> Documentation/process/maintainer-tip.rst | 30 ++++++++++++++++++++++--------
> 1 file changed, 22 insertions(+), 8 deletions(-)
>
> diff --git a/Documentation/process/maintainer-tip.rst b/Documentation/process/maintainer-tip.rst
> index 64739968afa6..ba312345d030 100644
> --- a/Documentation/process/maintainer-tip.rst
> +++ b/Documentation/process/maintainer-tip.rst
> @@ -372,17 +372,31 @@ following tag ordering scheme:
>
> - Link: ``https://link/to/information``
>
> - For referring to an email on LKML or other kernel mailing lists,
> - please use the lore.kernel.org redirector URL::
> + For referring to an email posted to the kernel mailing lists, please
> + use the lore.kernel.org redirector URL::
>
> - https://lore.kernel.org/r/email-message@id
> + Link: https://lore.kernel.org/email-message-id@here
>
> - The kernel.org redirector is considered a stable URL, unlike other email
> - archives.
> + This URL should be used when referring to relevant mailing list
> + topics, related patch sets, or other notable discussion threads.
> + A convenient way to associate ``Link:`` trailers with the commit
> + message is to use markdown-like bracketed notation, for example::
>
> - Maintainers will add a Link tag referencing the email of the patch
> - submission when they apply a patch to the tip tree. This tag is useful
> - for later reference and is also used for commit notifications.
> + A similar approach was attempted before as part of a different
> + effort [1], but the initial implementation caused too many
> + regressions [2], so it was backed out and reimplemented.
> +
> + Link: https://lore.kernel.org/some-msgid@here # [1]
> + Link: https://bugzilla.example.org/bug/12345 # [2]
> +
> + You can also use ``Link:`` trailers to indicate the origin of the
> + patch when applying it to your git tree. In that case, please use the
> + dedicated ``patch.msgid.link`` domain instead of ``lore.kernel.org``.
> + This practice makes it possible for automated tooling to identify
> + which link to use to retrieve the original patch submission. For
> + example::
> +
> + Link: https://patch.msgid.link/patch-source-message-id@here
>
> Please do not use combined tags, e.g. ``Reported-and-tested-by``, as
> they just complicate automated extraction of tags.
Could you please add a hint on configuring git am to create these?
I think something like this in .git/hooks/applypatch-msg will work:
. git-sh-setup
perl -pi -e 's|^Message-Id:\s*<?([^>]+)>?$|Link: https://patch.msgid.link/$1|g;' "$1"
test -x "$GIT_DIR/hooks/commit-msg" &&
exec "$GIT_DIR/hooks/commit-msg" ${1+"$@"}
:
but I didn't actually try.
Thanks!
> --
> 2.45.2
>