Hello, On Sat 15 Mar 2025 at 06:11pm +11, Stuart Prescott wrote:
> I would, however, reject that claim that the text is not ambiguous as > TAGOBJID is defined nowhere in policy, TAG2UPLOAD-DESIGN.txt, the dgit > documentation, dgit source code, git documentation, or even in the git > source code. The only mentions of a TAGOBJID I can find anywhere are > in the gitk and cgit source code and that's not a source of normative > definition for policy. It's fine to make up terms for the purposes of > documentation but when it's not a well-known term, it cannot be used > without some definition somewhere. I didn't follow you here because my patch says "TAGOBJID is ..." which is a definition. Otherwise, I've revised the patch to address everything, I think. Note that these new fields are in the archive, now, indeed in trixie. Seeking seconds. Thanks! -- Sean Whitton
From 1dd537efa7bff1993273f24f85daf0468f73b302 Mon Sep 17 00:00:00 2001 From: Sean Whitton <spwhit...@spwhitton.name> Date: Wed, 1 Jan 2025 19:14:06 +0000 Subject: [PATCH v4] Document Git-Tag-Tagger and Git-Tag-Info fields --- policy/ch-controlfields.rst | 61 ++++++++++++++++++++++++++++++++++ policy/upgrading-checklist.rst | 9 +++++ 2 files changed, 70 insertions(+) diff --git a/policy/ch-controlfields.rst b/policy/ch-controlfields.rst index 3151816..9769235 100644 --- a/policy/ch-controlfields.rst +++ b/policy/ch-controlfields.rst @@ -237,6 +237,10 @@ is described above, in :ref:`s-controlsyntax`. - :ref:`Dgit <s-f-Dgit>` +- :ref:`Git-Tag-Tagger <s-f-Git-Tag-Tagger>` + +- :ref:`Git-Tag-Info <s-f-Git-Tag-Info>` + - :ref:`Standards-Version <s-f-Standards-Version>` (mandatory) - :ref:`Build-Depends et al <s-sourcebinarydeps>` @@ -291,6 +295,10 @@ The fields in this file are: - :ref:`Changed-By <s-f-Changed-By>` +- :ref:`Git-Tag-Tagger <s-f-Git-Tag-Tagger>` + +- :ref:`Git-Tag-Info <s-f-Git-Tag-Info>` + - :ref:`Description <s-f-Description>` (mandatory in some cases) - :ref:`Closes <s-f-Closes>` @@ -1307,6 +1315,53 @@ This list is intentionally incomplete. You should consult the documentation of the tool or package in question for which keywords it defines and when they are needed. +.. _s-f-Git-Tag-Tagger: + +``Git-Tag-Tagger`` +~~~~~~~~~~~~~~~~~~ + +Name and e-mail address of the person who made the Git tag from which this +upload was generated (and to which it corresponds) in accordance with the +tagging protocol described in the :manpage:`tag2upload(5)` manual page and +`TAG2UPLOAD-DESIGN.txt +<https://salsa.debian.org/dgit-team/dgit/-/blob/master/TAG2UPLOAD-DESIGN.txt>`_. +The syntax is the same as for the :ref:`Maintainer field <s-f-Maintainer>`. +The values for the name and e-mail address originate in the ``tagger`` line of +the raw Git tag; they are transformed as necessary to satisfy the field's +syntax. + +Uploads signed by an implemention of the tag2upload service must include this +field. Uploads not generated in accordance with the tag2upload protocol must +not include this field. + +.. _s-f-Git-Tag-Info: + +``Git-Tag-Info`` +~~~~~~~~~~~~~~~~ + +Other information about the Git tag from which this upload was generated (and +to which it corresponds) in accordance with the tagging protocol described in +the :manpage:`tag2upload(5)` manual page and `TAG2UPLOAD-DESIGN.txt +<https://salsa.debian.org/dgit-team/dgit/-/blob/master/TAG2UPLOAD-DESIGN.txt>`_. + +The value is of the form ``tag=TAGOBJID fp=FINGERPRINT`` where ``TAGOBJID`` is +the Git object ID of the Git annotated tag object, [#]_ and ``FINGERPRINT`` is the +fingerprint (in hexadecimal, without spaces) of the PGP key used to sign the +Git tag. Other space-separated ``keyword=value`` items may be introduced in +the future, and users of this field must ignore items with unknown keywords. + +``FINGERPRINT`` is taken from the first field of the ``VALIDSIG`` line emitted +by :manpage:`gpgv(1)`, as specified in ``/usr/share/doc/gnupg/DETAILS.gz`` +from the ``gnupg`` package. This will generally be the fingerprint of the +signing subkey, if one was used, and the primary key's fingerprint otherwise. + +The Git annotated tag object is obtainable from the *dgit-repos* server, as +described under ``Dgit``, above. + +Uploads signed by an implemention of the tag2upload service must include this +field. Uploads not generated in accordance with the tag2upload protocol must +not include this field. + .. _s5.7: User-defined fields @@ -1443,3 +1498,9 @@ details. .. [#] That is, the parts which are not the ``.dsc``. + +.. [#] + Annotated tag objects have distinct IDs from the IDs of the commits to + which they point. Many Git commands on operating on tags dereference the + tag immediately, and show you the ID of the commit object and not of the + tag object, but these are not the same. diff --git a/policy/upgrading-checklist.rst b/policy/upgrading-checklist.rst index 3ead284..2f12a72 100644 --- a/policy/upgrading-checklist.rst +++ b/policy/upgrading-checklist.rst @@ -39,6 +39,15 @@ The sections in this checklist match the values for the except in the two anomalous historical cases where normative requirements were changed in a minor patch release. +Version 4.7.3 +------------- + +Unreleased. + +5.6.32 & 5.6.33 + New sections documenting the ``Git-Tag-Tagger`` and ``Git-Tag-Info`` + fields in Debian source control and ``.changes`` files. + Version 4.7.2 ------------- -- 2.47.2
signature.asc
Description: PGP signature