Marius Mauch wrote:
> Moving the discussion to -dev per leios request.
>
> On Wed, 21 May 2008 23:42:19 +0200
> Marius Mauch <genone@g.o> wrote:
>
>> As this topic jus came up in #-dev, and most people there seemed to
>> agree with me I thought it might be worth to bring this topic up
>> again. The topic is that I think that the whole 'herd' concept we're
>> using is a huge mess and should be removed. Now before eveyone starts
>> screaming, lets look at what this concept actually is, as many people
>> are quite confused by it:
>>
>> 1) a herd is a group of packages (not a group of people)
>> 2) the herds.xml file is used to assign people and mail aliases as
>> maintainers of a given herd. Unfortuntely the syntax there give
>> the impression that those people/mail aliases actually form the herd
>> 3) the <herd> tag in metadata.xml is used to assign a package to a
>> certain group.
>> 4) the <maintainer> tag in metadata.xml can be used to assign
>> individual maintainers for a package in addition to/instead of the
>> herd maintainers
>> 5) the combination of 2), 3) and 4) is used to determine the
>> maintainers of a given package
>>
>> Now most people will be familiar with 5) to some degree, and that is
>> actually the only valid use case for the herd concept that I'm aware
>> of. Or has anyone some use case where you'd like to know what herd a
>> package belongs to, but don't care about by whom that herd is
>> maintained?
>> If we can agree that this is the only real use case for the herd
>> concept, then I think the concept is quite useless as it's just a
>> redundant layer of indirection. You could just list mail aliases
>> directly as maintainers, without having to consult herds.xml first.
While I think the herds concecpt is somewhat useless, I'd rather like to see
something like this instead:
<maintainer>
<team>foobar</team>
</maintainer>
This makes it clear that it is a team instead of a person (where <name>
would have been used)
And the herds.xml isn't completely useless, but I'd rather name it teams.xml
and list the teams there. This way we can validated the team mentioned in
<team>...</team> against the list of available teams and make sure the
complete thing is valid (can be done in the current metadata.dtd or in a
future metadata.xsd).
(If we're gonna re-use the <email>...</email> element for the herd-alias, we
can never validate it. And I'm personally for the: "if something can be
automatically validated, it should be")
>>
>> This would have a number of benefits:
>> - you no longer have to look at herds.xml to determine the actual
>> maintainers of a given package (as herd-name and associated mail alias
>> don't always match)
I don't consider this much of a problem. You just have to know xsl/xpath to
cope with this as generating the list of mail-aliases to assign this bug to
is a simple xsl-transformation...
When we use XML we can also use the right tools to handle them, can't we?
>> - it would simplify bug assignment rules, as the current case where a
>> package has both a <herd> and a <maintainer> tag in metadata.xml no
>> longer exists
It doesn't. You can still have more than one <maintainer> in there.
We'd have to introduce an attribute to mark the primary maintainer.
>> - eliminate confusion about what a herd actually is
++
>> - only have one location where members of a given team are listed,
>> currently it's possible and quite likely that herds.xml and the mail
>> alias files get out of sync
Well, we need one location where the name of the team is mapped to the
actual mail-alias. But I don't get what you're trying to say...
Cheers,
Tiziano
--
gentoo-dev@g.o mailing list
|