--- 1 2016-05-29 13:26:34.486191149 +0200 +++ 2 2016-05-29 13:26:41.254747492 +0200 @@ -4,6 +4,7 @@ |Type=Standards Track |Status=Final |Author=Michał Górny +|Requires=GLEP:39, }} ==Abstract== Within this GLEP, the issues with the current package maintainer description system are explained, and a new system that aims to solve those issues is proposed. The current complex structure is replaced with two well-defined maintainer types — people and projects. Herds are removed in favor of projects, and project member listings are provided in XML format. Maintainer listings in ''metadata.xml'' become uniform, and can be used directly to assign bugs. @@ -77,10 +78,10 @@ The project structure is exported from wiki.gentoo.org into a ''projects.xml'' file. The file consists of root '''' element which contains one or more '''' element. Each '''' element contains the following sub-elements: -* '''' element stating the project contact e-mail (must be registered on bugs.gentoo.org), -* '''' element stating the human-readable project name, -* '''' element stating the project homepage URL, -* '''' element shortly describing the project, +* exactly one '''' element stating the project contact e-mail (must be registered on bugs.gentoo.org, and unique throughout the projects), +* exactly one '''' element stating the human-readable project name (must be unique throughout the projects), +* exactly one '''' element stating the project homepage URL (must be unique throughout the projects), +* at most one '''' element shortly describing the project, * zero or more '''' elements listing subprojects of the particular project, * zero or more '''' elements listing direct project members. @@ -89,9 +90,9 @@ * optional ''inherit-members=""'' attribute whose non-empty value indicates that subproject members are to be considered members of the parent project as well. Each '''' has the following sub-elements: -* '''' stating the member's e-mail address, -* optional '''' stating the member's human-readable name, -* optional '''' stating the member's role in team. +* exactly one '''' stating the member's e-mail address, +* at most one '''' stating the member's human-readable name, +* at most one '''' stating the member's role in team. In addition, '''' can have optional ''is-lead=""'' attribute whose non-empty value indicates that the particular member is the project's lead.