commit:     824f0fcd9a466ca69e9705bd2f380ccac768151a
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 28 11:33:38 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Feb 28 19:02:54 2021 +0000
URL:        https://gitweb.gentoo.org/data/glep.git/commit/?id=824f0fcd

glep-0067: Add proxied="" attribute to distinguish proxied maints

Introduce an additional proxied="" attribute to make it possible
to explicitly distinguish proxied maintainers from regular maintainers.
This is supposed to resolve false positives in the QA check responsible
for detecting leftover proxy-maint project usage.  Currently it wrongly
assumes that all Gentoo devs (as in people with @gentoo.org) have direct
push access and therefore don't need a proxy.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 glep-0067.rst | 53 +++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 47 insertions(+), 6 deletions(-)

diff --git a/glep-0067.rst b/glep-0067.rst
index e22f216..8140b15 100644
--- a/glep-0067.rst
+++ b/glep-0067.rst
@@ -4,10 +4,10 @@ Title: Package maintenance structure
 Author: Michał Górny <[email protected]>
 Type: Standards Track
 Status: Final
-Version: 1
+Version: 1.1
 Created: 2015-12-13
-Last-Modified: 2016-01-13
-Post-History: 2015-11-03, 2016-05-29
+Last-Modified: 2021-02-28
+Post-History: 2015-11-03, 2016-05-29, 2021-02-28
 Content-Type: text/x-rst
 ---
 
@@ -23,6 +23,13 @@ Maintainer listings in ``metadata.xml`` become uniform, and 
can be used
 directly to assign bugs.
 
 
+Change log
+==========
+
+v1.1
+  Added the ``proxied`` attribute to the package ``<maintainer/>``.
+
+
 Motivation
 ==========
 
@@ -144,19 +151,35 @@ of the ``<maintainer/>`` element. The e-mail address, 
human-readable name
 and maintenance description are placed in ``<email/>``, ``<name/>``
 and ``<description/>`` sub-elements appropriately.
 
+Optionally, a ``proxied`` attribute can be specified having one
+of the three possible values:
+
+- ``yes`` indicating that the maintainer is a proxied maintainer
+  (i.e. is unable to push changes directly)
+
+- ``no`` indicating that the maintainer is a real maintainer (i.e. can
+  push changes directly)
+
+- ``proxy`` indicating that the listed developer is serving only
+  as a proxy for other maintainers
+
+If the attribute is not specified, the default value of ``no``
+is assumed.  If at least one maintainer is listed as a proxied
+maintainer (``proxied="yes"``), then at least one other maintainer
+should be listed as a proxy (``proxied="proxy"``), and vice versa.
+
 .. code:: xml
 
     <pkgmetadata>
-      <maintainer type="person">
+      <maintainer type="person" proxied="yes">
         <email>[email protected]</email>
         <name>Foo Barsky</name>
-        <description>Proxied maintainer</description>
       </maintainer>
       <maintainer type="person">
         <email>[email protected]</email>
         <name>Example Developer</name>
       </maintainer>
-      <maintainer type="project">
+      <maintainer type="project" proxied="proxy">
         <email>[email protected]</email>
       </maintainer>
     </pkgmetadata>
@@ -428,6 +451,24 @@ maintainers can add themselves to ``metadata.xml`` in a 
single commit to
 the repository. If external database was used, the database would have to be
 updated in addition to the repository commit.
 
+Proxied maintainers
+-------------------
+
+As of version 1.1, an additional ``proxied`` attribute has been added
+to the ``<maintainer/>`` element for package maintainers.  This is used
+to explicitly distinguish regular developers, proxied maintainers
+and proxies.
+
+The primary purpose is to resolve false positives in the QA report used
+to report leftover proxy-maint project instances, as well as improve
+detection of maintainers without a proxy.  Currently, these checks
+unconditionally assume that all Gentoo developers have commit access,
+and everyone else is a proxied maintainer.  This does not account for
+developers without commit access that maintain packages via a proxy.
+
+The property is added as a separate attribute in order to ensure
+backwards compatibility.
+
 
 Backwards Compatibility
 =======================

Reply via email to