Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Gentoo Development (http://www.linux-archive.org/gentoo-development/)
-   -   About herds and their non-existant use (http://www.linux-archive.org/gentoo-development/92996-about-herds-their-non-existant-use.html)

Marius Mauch 05-21-2008 11:36 PM

About herds and their non-existant use
 
Moving the discussion to -dev per leios request.

On Wed, 21 May 2008 23:42:19 +0200
Marius Mauch <genone@gentoo.org> 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.
>
> 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)
> - 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
> - 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
> - as others said in #-dev: it makes sense ;)
>
> Now there of course are a few things to consider:
> - obviously, some tools, docs and processes would have to be updated,
> but that's always the case with changes
> - someone said that it might no longer be obvious if a package is
> maintained by an individual or a group of people. But is that really
> necessary? And it's not even obvious now, as some herds are maintained
> by a single person.
> - when I brought this up several months ago it was mentioned that
> sometimes people want to be on the mail alias of a herd, but don't
> want to be listed as members (and therefore be responsible). But that
> can likely be just implemented by some kind of blacklist in the
> relevant tools instead of using this whole indirection layer all the
> time.
>
> So, what do you think? Is there some benefit in keeping this concept,
> or can we live without it and make life simpler for everyone?
>
> Marius
>
> --
> Public Key at http://www.genone.de/info/gpg-key.pub
>
> In the beginning, there was nothing. And God said, 'Let there be
> Light.' And there was still nothing, but you could see a bit better.


--
Public Key at http://www.genone.de/info/gpg-key.pub

In the beginning, there was nothing. And God said, 'Let there be
Light.' And there was still nothing, but you could see a bit better.

Tiziano Müller 05-22-2008 06:05 AM

About herds and their non-existant use
 
Marius Mauch wrote:

> Moving the discussion to -dev per leios request.
>
> On Wed, 21 May 2008 23:42:19 +0200
> Marius Mauch <genone@gentoo.org> 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@lists.gentoo.org mailing list

Luis Francisco Araujo 05-22-2008 07:15 AM

About herds and their non-existant use
 
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Tiziano Müller wrote:
| Marius Mauch wrote:
|
|> Moving the discussion to -dev per leios request.
|>
|> On Wed, 21 May 2008 23:42:19 +0200
|> Marius Mauch <genone@gentoo.org> 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")
|

I am also for renaming or making clear that these are 'teams' instead f
'herds'[0].

Unless a team can maintain several herds, I find the term 'herd'
confusing and better understood as 'team' instead.

My 2 cents.

[0]http://www.gentoo.org/proj/en/metastructure/herds/herds.xml


- --

Luis F. Araujo "araujo at gentoo.org"
Gentoo Linux

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAkg1HX4ACgkQNir3WYj9aLp6xQCghXkp7wZS4X Mjx/xKtinOMzRk
xpkAoI9TqpYukYUQZ8FD3HmiyLSFs8W+
=xAMS
-----END PGP SIGNATURE-----
--
gentoo-dev@lists.gentoo.org mailing list

05-22-2008 09:04 AM

About herds and their non-existant use
 
Luis Francisco Araujo <araujo@gentoo.org> writes:

> Unless a team can maintain several herds, I find the term 'herd'
> confusing and better understood as 'team' instead.

+1 on this. I always thought that if almost every dev misuses the term
herd, it was because the term had to be changed, rather than the devs
corrected...


--
Diego "Flameeyes" Pettenò
http://blog.flameeyes.eu/

"Arun Raghavan" 05-22-2008 03:50 PM

About herds and their non-existant use
 
On Thu, May 22, 2008 at 2:34 PM, Diego 'Flameeyes' Pettenò
<flameeyes@gmail.com> wrote:
> Luis Francisco Araujo <araujo@gentoo.org> writes:
>
>> Unless a team can maintain several herds, I find the term 'herd'
>> confusing and better understood as 'team' instead.
>
> +1 on this. I always thought that if almost every dev misuses the term
> herd, it was because the term had to be changed, rather than the devs
> corrected...

Till very recently, I too misunderstood the meaning of the term. I
think one problem is that the term really hasn't been defined anywhere
(at least I couldn't find a proper definition on [1]).

I really do like the herds terminology because it is unique and has
become a Gentoo-ism of sorts. It also is reminiscent of Larry, in some
sense (herds -> grazing -> moo -> cow -> larry). :)

[1] http://www.gentoo.org/proj/en/metastructure/herds/

Just my ${currency} 0.02,
--
Arun Raghavan
(http://nemesis.accosted.net)
v2sw5Chw4+5ln4pr6$OFck2ma4+9u8w3+1!m?l7+9GSCKi056
e6+9i4b8/9HTAen4+5g4/8APa2Xs8r1/2p5-8 hackerkey.com
--
gentoo-dev@lists.gentoo.org mailing list

"Marijn Schouten (hkBst)" 05-23-2008 05:18 AM

About herds and their non-existant use
 
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Tiziano � wrote:
| Marius Mauch wrote:
|>> - 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...

While we're changing things around, perhaps we can then also standardize the mail alias to
team@gentoo.org.
What Marius is saying though is that there are two files that handle people and their
herds. One XML for saying who is in a herd and one for each herd mail alias on woodpecker
with a list of developer email prefixes.

Marijn

- --
Marijn Schouten (hkBst), Gentoo Lisp project, Gentoo ML
<http://www.gentoo.org/proj/en/lisp/>, #gentoo-{lisp,ml} on FreeNode
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkg2U5gACgkQp/VmCx0OL2wIVQCfVRE1/lP60+cspM6Zay5kyVwl
yUUAn1rBssAT2ndNpo55NLI3vzLrWdIN
=RMvL
-----END PGP SIGNATURE-----
--
gentoo-dev@lists.gentoo.org mailing list

Tiziano Müller 05-23-2008 08:39 AM

About herds and their non-existant use
 
Marijn Schouten (hkBst) wrote:
> While we're changing things around, perhaps we can then also standardize
> the mail alias to team@gentoo.org.
> What Marius is saying though is that there are two files that handle
> people and their herds. One XML for saying who is in a herd and one for
> each herd mail alias on woodpecker with a list of developer email
> prefixes.

Which could be generated out of the XML file, right?


--
gentoo-dev@lists.gentoo.org mailing list

"Santiago M. Mola" 05-23-2008 10:26 AM

About herds and their non-existant use
 
On Fri, May 23, 2008 at 10:39 AM, Tiziano Müller <dev-zero@gentoo.org> wrote:
> Marijn Schouten (hkBst) wrote:
>> While we're changing things around, perhaps we can then also standardize
>> the mail alias to team@gentoo.org.
>> What Marius is saying though is that there are two files that handle
>> people and their herds. One XML for saying who is in a herd and one for
>> each herd mail alias on woodpecker with a list of developer email
>> prefixes.
>
> Which could be generated out of the XML file, right?
>

It could, but it would be nice to preserve a method for allowing
lurkers on aliases.

Regards,
--
Santiago M. Mola
Jabber ID: cooldwind@gmail.com

Tiziano Müller 05-23-2008 12:07 PM

About herds and their non-existant use
 
Santiago M. Mola wrote:

> On Fri, May 23, 2008 at 10:39 AM, Tiziano Müller <dev-zero@gentoo.org>
> wrote:
>> Marijn Schouten (hkBst) wrote:
>>> While we're changing things around, perhaps we can then also standardize
>>> the mail alias to team@gentoo.org.
>>> What Marius is saying though is that there are two files that handle
>>> people and their herds. One XML for saying who is in a herd and one for
>>> each herd mail alias on woodpecker with a list of developer email
>>> prefixes.
>>
>> Which could be generated out of the XML file, right?
>>
>
> It could, but it would be nice to preserve a method for allowing
> lurkers on aliases.

I'm sure something like this should be possible:

### AUTOGENERATED PART, DO NOT EDIT ###
...
### AUTOGENERATED END ###

### Add additional aliases here:
...


--
gentoo-dev@lists.gentoo.org mailing list

Marius Mauch 05-23-2008 01:11 PM

About herds and their non-existant use
 
On Thu, 22 May 2008 08:05:07 +0200
Tiziano Müller <dev-zero@gentoo.org> wrote:

> 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")

Hmm, in that case maybe it's be possible to use a similar system for
devs, e.g.
<maintainer>
<dev>genone</dev>
</maintainer>
and only use the <email> element for non-dev maintainers and upstream
contacts. Anyway, as long as we use the same tag to list both
individual and group maintainers it would be an improvement IMO.

> >> 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?

My point is that it's an unneccessary extra step Sometimes you only
have the raw XML file. Anyway, that's maybe more of a policy problem,
we just need to enforce 'name == mail alias' (or would that be such a
horrible requirement?)

> >> - 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.

Relying on the order of <maintainer> elements doesn't work because ...?
(Assign to first listed maintainer, CC others)

> >> - 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...

Why do you need to separate the name from the alias? Sure, sometimes
there are technical reasons why you can't use your preferred name as
mail alias (when it matches a system account), but then you can just
adjust your name a bit (e.g. adding some suffix).
Don't know if you're aware of this, but the separation of herd names
and aliases of the herd maintainers has always been something that
bug-wranglers complained about.
But my main issue is that currently we have multiple unconnected
locations where teams are defined, some more and some less important:
- herds.xml
- project pages
- mail aliases
- cvs access groups
- role definitions in ldap/roll-call
So when someone wants to change his roles there are a lot of places to
care about, and it's likely that one or more are forgotten and things
get out of sync, so you have different views of who actually belongs to
a group depending on what source you use. Don't know if it has improved
in the last years, but it used to happen quite often that herds.xml was
completely out of sync with reality simply because it didn't
really affect anything (now that jeeves is using it it's probably
become a bit better).
Ideally we could list that information in just one authorative
location, but that's not feasable for technical reasons, but if we can
eliminate one source (or auto-generate it from another source) the
problem is already reduced quite a bit. And herds.xml is IMO the most
likely candidates for that, but there are of course also other ways to
improve the situation.

Marius
--
gentoo-dev@lists.gentoo.org mailing list


All times are GMT. The time now is 09:54 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.