1 |
As this topic jus came up in #-dev, and most people there seemed to |
2 |
agree with me I thought it might be worth to bring this topic up again. |
3 |
The topic is that I think that the whole 'herd' concept we're using is |
4 |
a huge mess and should be removed. Now before eveyone starts screaming, |
5 |
lets look at what this concept actually is, as many people are quite |
6 |
confused by it: |
7 |
|
8 |
1) a herd is a group of packages (not a group of people) |
9 |
2) the herds.xml file is used to assign people and mail aliases as |
10 |
maintainers of a given herd. Unfortuntely the syntax there give |
11 |
the impression that those people/mail aliases actually form the herd |
12 |
3) the <herd> tag in metadata.xml is used to assign a package to a |
13 |
certain group. |
14 |
4) the <maintainer> tag in metadata.xml can be used to assign |
15 |
individual maintainers for a package in addition to/instead of the herd |
16 |
maintainers |
17 |
5) the combination of 2), 3) and 4) is used to determine the |
18 |
maintainers of a given package |
19 |
|
20 |
Now most people will be familiar with 5) to some degree, and that is |
21 |
actually the only valid use case for the herd concept that I'm aware of. |
22 |
Or has anyone some use case where you'd like to know what herd a |
23 |
package belongs to, but don't care about by whom that herd is |
24 |
maintained? |
25 |
If we can agree that this is the only real use case for the herd |
26 |
concept, then I think the concept is quite useless as it's just a |
27 |
redundant layer of indirection. You could just list mail aliases |
28 |
directly as maintainers, without having to consult herds.xml first. |
29 |
|
30 |
This would have a number of benefits: |
31 |
- you no longer have to look at herds.xml to determine the actual |
32 |
maintainers of a given package (as herd-name and associated mail alias |
33 |
don't always match) |
34 |
- it would simplify bug assignment rules, as the current case where a |
35 |
package has both a <herd> and a <maintainer> tag in metadata.xml no |
36 |
longer exists |
37 |
- eliminate confusion about what a herd actually is |
38 |
- only have one location where members of a given team are listed, |
39 |
currently it's possible and quite likely that herds.xml and the mail |
40 |
alias files get out of sync |
41 |
- as others said in #-dev: it makes sense ;) |
42 |
|
43 |
Now there of course are a few things to consider: |
44 |
- obviously, some tools, docs and processes would have to be updated, |
45 |
but that's always the case with changes |
46 |
- someone said that it might no longer be obvious if a package is |
47 |
maintained by an individual or a group of people. But is that really |
48 |
necessary? And it's not even obvious now, as some herds are maintained |
49 |
by a single person. |
50 |
- when I brought this up several months ago it was mentioned that |
51 |
sometimes people want to be on the mail alias of a herd, but don't want |
52 |
to be listed as members (and therefore be responsible). But that can |
53 |
likely be just implemented by some kind of blacklist in the relevant |
54 |
tools instead of using this whole indirection layer all the time. |
55 |
|
56 |
So, what do you think? Is there some benefit in keeping this concept, or |
57 |
can we live without it and make life simpler for everyone? |
58 |
|
59 |
Marius |
60 |
|
61 |
-- |
62 |
Public Key at http://www.genone.de/info/gpg-key.pub |
63 |
|
64 |
In the beginning, there was nothing. And God said, 'Let there be |
65 |
Light.' And there was still nothing, but you could see a bit better. |