Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: "Michał Górny" <mgorny@g.o>
Subject: [gentoo-dev] [PATCH v2] glep-0067: Add proxied="" attribute to distinguish proxied maints
Date: Sun, 28 Feb 2021 19:03:12
Message-Id: 20210228190302.64706-1-mgorny@gentoo.org
1 Introduce an additional proxied="" attribute to make it possible
2 to explicitly distinguish proxied maintainers from regular maintainers.
3 This is supposed to resolve false positives in the QA check responsible
4 for detecting leftover proxy-maint project usage. Currently it wrongly
5 assumes that all Gentoo devs (as in people with @gentoo.org) have direct
6 push access and therefore don't need a proxy.
7
8 Signed-off-by: Michał Górny <mgorny@g.o>
9 ---
10 glep-0067.rst | 53 +++++++++++++++++++++++++++++++++++++++++++++------
11 1 file changed, 47 insertions(+), 6 deletions(-)
12
13 diff --git a/glep-0067.rst b/glep-0067.rst
14 index e22f216..8140b15 100644
15 --- a/glep-0067.rst
16 +++ b/glep-0067.rst
17 @@ -4,10 +4,10 @@ Title: Package maintenance structure
18 Author: Michał Górny <mgorny@g.o>
19 Type: Standards Track
20 Status: Final
21 -Version: 1
22 +Version: 1.1
23 Created: 2015-12-13
24 -Last-Modified: 2016-01-13
25 -Post-History: 2015-11-03, 2016-05-29
26 +Last-Modified: 2021-02-28
27 +Post-History: 2015-11-03, 2016-05-29, 2021-02-28
28 Content-Type: text/x-rst
29 ---
30
31 @@ -23,6 +23,13 @@ Maintainer listings in ``metadata.xml`` become uniform, and can be used
32 directly to assign bugs.
33
34
35 +Change log
36 +==========
37 +
38 +v1.1
39 + Added the ``proxied`` attribute to the package ``<maintainer/>``.
40 +
41 +
42 Motivation
43 ==========
44
45 @@ -144,19 +151,35 @@ of the ``<maintainer/>`` element. The e-mail address, human-readable name
46 and maintenance description are placed in ``<email/>``, ``<name/>``
47 and ``<description/>`` sub-elements appropriately.
48
49 +Optionally, a ``proxied`` attribute can be specified having one
50 +of the three possible values:
51 +
52 +- ``yes`` indicating that the maintainer is a proxied maintainer
53 + (i.e. is unable to push changes directly)
54 +
55 +- ``no`` indicating that the maintainer is a real maintainer (i.e. can
56 + push changes directly)
57 +
58 +- ``proxy`` indicating that the listed developer is serving only
59 + as a proxy for other maintainers
60 +
61 +If the attribute is not specified, the default value of ``no``
62 +is assumed. If at least one maintainer is listed as a proxied
63 +maintainer (``proxied="yes"``), then at least one other maintainer
64 +should be listed as a proxy (``proxied="proxy"``), and vice versa.
65 +
66 .. code:: xml
67
68 <pkgmetadata>
69 - <maintainer type="person">
70 + <maintainer type="person" proxied="yes">
71 <email>foo@×××××××.com</email>
72 <name>Foo Barsky</name>
73 - <description>Proxied maintainer</description>
74 </maintainer>
75 <maintainer type="person">
76 <email>example@g.o</email>
77 <name>Example Developer</name>
78 </maintainer>
79 - <maintainer type="project">
80 + <maintainer type="project" proxied="proxy">
81 <email>proxy-maint@g.o</email>
82 </maintainer>
83 </pkgmetadata>
84 @@ -428,6 +451,24 @@ maintainers can add themselves to ``metadata.xml`` in a single commit to
85 the repository. If external database was used, the database would have to be
86 updated in addition to the repository commit.
87
88 +Proxied maintainers
89 +-------------------
90 +
91 +As of version 1.1, an additional ``proxied`` attribute has been added
92 +to the ``<maintainer/>`` element for package maintainers. This is used
93 +to explicitly distinguish regular developers, proxied maintainers
94 +and proxies.
95 +
96 +The primary purpose is to resolve false positives in the QA report used
97 +to report leftover proxy-maint project instances, as well as improve
98 +detection of maintainers without a proxy. Currently, these checks
99 +unconditionally assume that all Gentoo developers have commit access,
100 +and everyone else is a proxied maintainer. This does not account for
101 +developers without commit access that maintain packages via a proxy.
102 +
103 +The property is added as a separate attribute in order to ensure
104 +backwards compatibility.
105 +
106
107 Backwards Compatibility
108 =======================
109 --
110 2.30.1