/[gentoo]/xml/htdocs/proj/en/glep/glep-0046.html
Gentoo

Diff of /xml/htdocs/proj/en/glep/glep-0046.html

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.6 Revision 1.9
26<tbody valign="top"> 26<tbody valign="top">
27<tr class="field"><th class="field-name">GLEP:</th><td class="field-body">46</td> 27<tr class="field"><th class="field-name">GLEP:</th><td class="field-body">46</td>
28</tr> 28</tr>
29<tr class="field"><th class="field-name">Title:</th><td class="field-body">Allow upstream tags in metadata.xml</td> 29<tr class="field"><th class="field-name">Title:</th><td class="field-body">Allow upstream tags in metadata.xml</td>
30</tr> 30</tr>
31<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.3</td> 31<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.5</td>
32</tr> 32</tr>
33<tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0046.txt?cvsroot=gentoo">2007/04/21 03:13:16</a></td> 33<tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0046.txt?cvsroot=gentoo">2008/04/03 13:35:26</a></td>
34</tr> 34</tr>
35<tr class="field"><th class="field-name">Author:</th><td class="field-body">Marcelo Goes &lt;vanquirius&#32;&#97;t&#32;gentoo.org&gt;, Ciaran McCreesh &lt;ciaranm&#32;&#97;t&#32;gentoo.org&gt;</td> 35<tr class="field"><th class="field-name">Author:</th><td class="field-body">Marcelo Goes &lt;vanquirius&#32;&#97;t&#32;gentoo.org&gt;, Ciaran McCreesh &lt;ciaranm&#32;&#97;t&#32;gentoo.org&gt;, Tiziano Müller &lt;dev-zero&#32;&#97;t&#32;gentoo.org&gt;</td>
36</tr> 36</tr>
37<tr class="field"><th class="field-name">Status:</th><td class="field-body">Deferred</td> 37<tr class="field"><th class="field-name">Status:</th><td class="field-body">Deferred</td>
38</tr> 38</tr>
39<tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td> 39<tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td>
40</tr> 40</tr>
41<tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0002.html">text/x-rst</a></td> 41<tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0002.html">text/x-rst</a></td>
42</tr> 42</tr>
43<tr class="field"><th class="field-name">Created:</th><td class="field-body">26-Dec-2005</td> 43<tr class="field"><th class="field-name">Created:</th><td class="field-body">26-Dec-2005</td>
44</tr> 44</tr>
45<tr class="field"><th class="field-name">Post-History:</th><td class="field-body">26-Dec-2005, 5-Mar-2006</td> 45<tr class="field"><th class="field-name">Post-History:</th><td class="field-body">26-Dec-2005, 5-Mar-2006, 24-Jan-2008</td>
46</tr> 46</tr>
47</tbody> 47</tbody>
48</table> 48</table>
49<hr /> 49<hr />
50<div class="contents topic"> 50<div class="contents topic">
52<ul class="simple"> 52<ul class="simple">
53<li><a class="reference" href="#abstract" id="id2" name="id2">Abstract</a></li> 53<li><a class="reference" href="#abstract" id="id2" name="id2">Abstract</a></li>
54<li><a class="reference" href="#motivation" id="id3" name="id3">Motivation</a></li> 54<li><a class="reference" href="#motivation" id="id3" name="id3">Motivation</a></li>
55<li><a class="reference" href="#specification" id="id4" name="id4">Specification</a></li> 55<li><a class="reference" href="#specification" id="id4" name="id4">Specification</a></li>
56<li><a class="reference" href="#backwards-compatibility" id="id5" name="id5">Backwards Compatibility</a></li> 56<li><a class="reference" href="#backwards-compatibility" id="id5" name="id5">Backwards Compatibility</a></li>
57<li><a class="reference" href="#notes" id="id6" name="id6">Notes</a></li>
57<li><a class="reference" href="#copyright" id="id6" name="id6">Copyright</a></li> 58<li><a class="reference" href="#copyright" id="id7" name="id7">Copyright</a></li>
58</ul> 59</ul>
59</div> 60</div>
60<div class="section"> 61<div class="section">
61<h1><a class="toc-backref" href="#id2" id="abstract" name="abstract">Abstract</a></h1> 62<h1><a class="toc-backref" href="#id2" id="abstract" name="abstract">Abstract</a></h1>
62<p>Tree <tt class="docutils literal"><span class="pre">metadata.xml</span></tt> files are currently used to specify maintainer and 63<p>Tree <tt class="docutils literal"><span class="pre">metadata.xml</span></tt> files are currently used to specify maintainer and
83<ul class="simple"> 84<ul class="simple">
84<li>It will allow systems such as the Packages website to provide more 85<li>It will allow systems such as the Packages website to provide more
85useful information to end users.</li> 86useful information to end users.</li>
86<li>It will reduce the time spent by developers trying to find how to 87<li>It will reduce the time spent by developers trying to find how to
87contact upstream.</li> 88contact upstream.</li>
89<li>It will give treecleaners additional information to decide whether
90a package can be removed from the tree.</li>
88</ul> 91</ul>
89</div> 92</div>
90<div class="section"> 93<div class="section">
91<h1><a class="toc-backref" href="#id4" id="specification" name="specification">Specification</a></h1> 94<h1><a class="toc-backref" href="#id4" id="specification" name="specification">Specification</a></h1>
92<p><tt class="docutils literal"><span class="pre">metadata.dtd</span></tt> should allow the use of a upstream tag in 95<p><tt class="docutils literal"><span class="pre">metadata.dtd</span></tt> should allow the use of a upstream tag in
93<tt class="docutils literal"><span class="pre">metadata.xml</span></tt>. Inside the upstream tag, developers should be able to 96<tt class="docutils literal"><span class="pre">metadata.xml</span></tt>. Inside the upstream tag, developers should be able to
94add upstream related information.</p> 97add upstream related information.</p>
95<p>This GLEP defines the following four tags for <tt class="docutils literal"><span class="pre">upstream</span></tt>: 98<p>This GLEP defines the following five tags for <tt class="docutils literal"><span class="pre">upstream</span></tt>:
96<tt class="docutils literal"><span class="pre">maintainer</span></tt>, <tt class="docutils literal"><span class="pre">changelog</span></tt>, <tt class="docutils literal"><span class="pre">bugs-to</span></tt> and <tt class="docutils literal"><span class="pre">remote-id</span></tt>, none of 99<tt class="docutils literal"><span class="pre">maintainer</span></tt>, <tt class="docutils literal"><span class="pre">changelog</span></tt>, <tt class="docutils literal"><span class="pre">bugs-to</span></tt>, <tt class="docutils literal"><span class="pre">remote-id</span></tt> and <tt class="docutils literal"><span class="pre">doc</span></tt> none of
97which are mandatory. Future GLEPs may extend this -- tools processing 100which are mandatory. Future GLEPs may extend this -- tools processing
98metadata.xml should ignore unrecognized elements.</p> 101metadata.xml should ignore unrecognized elements.</p>
99<p><tt class="docutils literal"><span class="pre">maintainer</span></tt> can contain the tags <tt class="docutils literal"><span class="pre">name</span></tt> and <tt class="docutils literal"><span class="pre">email</span></tt>, indicating 102<p><tt class="docutils literal"><span class="pre">maintainer</span></tt> can contain the tags <tt class="docutils literal"><span class="pre">name</span></tt> and <tt class="docutils literal"><span class="pre">email</span></tt>, indicating
100the person or organization responsible for upstream maintainership of 103the person or organization responsible for upstream maintainership of
101the package.</p> 104the package. The tag may appear more than once.</p>
105<p>The <tt class="docutils literal"><span class="pre">maintainer</span></tt> element has a <tt class="docutils literal"><span class="pre">status</span></tt> attribute, which is one of
106<tt class="docutils literal"><span class="pre">active</span></tt> or <tt class="docutils literal"><span class="pre">inactive</span></tt>. This attribute is not mandatory. The absence of it
107shall be interpreted as <tt class="docutils literal"><span class="pre">unknown</span></tt>.</p>
108<p>The <tt class="docutils literal"><span class="pre">maintainer</span></tt> element can be the same as the top-level <tt class="docutils literal"><span class="pre">maintainer</span></tt>
109element in cases where a developer decides to maintain the package in
110addition to/instead of the original upstream. In such cases a <tt class="docutils literal"><span class="pre">maintainer</span></tt>
111entry for the original upstream should be present.</p>
102<p><tt class="docutils literal"><span class="pre">name</span></tt> should contain a block of text with upstream's name.</p> 112<p><tt class="docutils literal"><span class="pre">name</span></tt> should contain a block of text with upstream's name, is mandatory
113and can only appear once.</p>
103<p><tt class="docutils literal"><span class="pre">email</span></tt> should contain an e-mail address in the format <a class="reference" href="mailto:foo&#64;bar.bar">foo&#64;bar.bar</a>.</p> 114<p><tt class="docutils literal"><span class="pre">email</span></tt> should contain an e-mail address in the format <tt class="docutils literal"><span class="pre">foo&#64;bar.bar</span></tt>.</p>
104<p><tt class="docutils literal"><span class="pre">changelog</span></tt> should contain a URL prefixed with <tt class="docutils literal"><span class="pre">http://</span></tt> or 115<p><tt class="docutils literal"><span class="pre">changelog</span></tt> should contain a URL where the location of the upstream
105<tt class="docutils literal"><span class="pre">https://</span></tt> where the location of the upstream changelog can be found.</p> 116changelog can be found. The URL must be version independent and must point to
117a changelog which is only updated on new releases of the corresponding
118package. (This also implies that one can link to an automatically updated
119changelog in case of vcs snapshots only.)</p>
120<p><tt class="docutils literal"><span class="pre">doc</span></tt> should contain a URL where the location of the upstream
121documentation can be found. The link must not point to any third party
122documentation and must be version independent. If the documentation is
123available in more than one language, a <tt class="docutils literal"><span class="pre">lang</span></tt> attribute can be used
124which follows the same rules as the one for <tt class="docutils literal"><span class="pre">longdescription</span></tt>.</p>
106<p><tt class="docutils literal"><span class="pre">bugs-to</span></tt> should contain a place where bugs can be filed, a URL 125<p><tt class="docutils literal"><span class="pre">bugs-to</span></tt> should contain a place where bugs can be filed, a URL or an
107prefixed with <tt class="docutils literal"><span class="pre">http://</span></tt> or <tt class="docutils literal"><span class="pre">https://</span></tt> or an e-mail address prefixed
108with <tt class="docutils literal"><span class="pre">mailto:</span></tt>.</p> 126e-mail address prefixed with <tt class="docutils literal"><span class="pre">mailto:</span></tt>.</p>
109<p><tt class="docutils literal"><span class="pre">remote-id</span></tt> should specify a type of package identification tracker 127<p><tt class="docutils literal"><span class="pre">remote-id</span></tt> should specify a type of package identification tracker
110and the identification that corresponds to the package in question. 128and the identification that corresponds to the package in question.
111<tt class="docutils literal"><span class="pre">remote-id</span></tt> should make it easier to index information such as its 129<tt class="docutils literal"><span class="pre">remote-id</span></tt> should make it easier to index information such as its
112Freshmeat ID or its CPAN name.</p> 130Freshmeat ID or its CPAN name.</p>
113<p>The <tt class="docutils literal"><span class="pre">remote-id</span></tt> element has a <tt class="docutils literal"><span class="pre">type</span></tt> attribute, which is a string 131<p>The <tt class="docutils literal"><span class="pre">remote-id</span></tt> element has a <tt class="docutils literal"><span class="pre">type</span></tt> attribute, which is a string
114identifying the type of upstream source. Examples are <tt class="docutils literal"><span class="pre">freshmeat</span></tt>, in 132identifying the type of upstream source. Examples are <tt class="docutils literal"><span class="pre">freshmeat</span></tt>, in
115which case the element content should be the Freshmeat ID or <tt class="docutils literal"><span class="pre">vim</span></tt>, in 133which case the element content should be the Freshmeat ID or <tt class="docutils literal"><span class="pre">vim</span></tt>, in
116which case the element content should be the <tt class="docutils literal"><span class="pre">vim.org</span></tt> script 134which case the element content should be the <tt class="docutils literal"><span class="pre">vim.org</span></tt> script
117identifier. This GLEP does not specify a complete list of legal values 135identifier. This GLEP does not specify a complete list of legal values
118for <tt class="docutils literal"><span class="pre">type</span></tt> -- developers should email the <tt class="docutils literal"><span class="pre">gentoo-dev</span></tt> mailing list 136for <tt class="docutils literal"><span class="pre">type</span></tt> -- developers should email the <tt class="docutils literal"><span class="pre">gentoo-dev</span></tt> mailing list
119before using a new <tt class="docutils literal"><span class="pre">type</span></tt> value.</p> 137before using a new <tt class="docutils literal"><span class="pre">type</span></tt> value. The list of valid tags should be kept
138in <tt class="docutils literal"><span class="pre">metadata/dtd/remote-id-tags.dtd</span></tt> or <tt class="docutils literal"><span class="pre">metadata/dtd/metadata.dtd</span></tt>.</p>
120<p>For example, a <tt class="docutils literal"><span class="pre">metadata.xml</span></tt> upstream snippet may look like:</p> 139<p>For example, a <tt class="docutils literal"><span class="pre">metadata.xml</span></tt> upstream snippet may look like:</p>
121<pre class="literal-block"> 140<pre class="literal-block">
122&lt;upstream&gt; 141&lt;upstream&gt;
123 &lt;maintainer&gt; 142 &lt;maintainer status=&quot;inactive&quot;&gt;
124 &lt;name&gt;Foo Bar&lt;/name&gt; 143 &lt;name&gt;Foo Bar&lt;/name&gt;
125 &lt;email&gt;foo&#64;bar.bar&lt;/email&gt; 144 &lt;email&gt;foo&#64;bar.bar&lt;/email&gt;
126 &lt;/maintainer&gt; 145 &lt;/maintainer&gt;
146 &lt;maintainer status=&quot;active&quot;&gt;
147 &lt;name&gt;Foo Gentoo&lt;/name&gt;
148 &lt;email&gt;foo&#64;gentoo.org&lt;/email&gt;
149 &lt;/maintainer&gt;
127 &lt;changelog&gt;http://foo.bar/changelog.txt&lt;/changelog&gt; 150 &lt;changelog&gt;http://foo.bar/changelog.txt&lt;/changelog&gt;
151 &lt;doc lang=&quot;en&quot;&gt;http://foo.bar/doc/index.html&lt;/doc&gt;
152 &lt;doc lang=&quot;de&quot;&gt;http://foo.bar/doc/index.de.html&lt;/doc&gt;
128 &lt;bugs-to&gt;https://bugs.foo.bar&lt;/bugs-to&gt; 153 &lt;bugs-to&gt;https://bugs.foo.bar&lt;/bugs-to&gt;
129 &lt;remote-id type=&quot;freshmeat&quot;&gt;12345&lt;/remote-id&gt; 154 &lt;remote-id type=&quot;freshmeat&quot;&gt;foobar&lt;/remote-id&gt;
130 &lt;remote-id type=&quot;sourceforge&quot;&gt;foobar&lt;/remote-id&gt; 155 &lt;remote-id type=&quot;sourceforge&quot;&gt;foobar&lt;/remote-id&gt;
131&lt;/upstream&gt; 156&lt;/upstream&gt;
132</pre> 157</pre>
133</div> 158</div>
134<div class="section"> 159<div class="section">
135<h1><a class="toc-backref" href="#id5" id="backwards-compatibility" name="backwards-compatibility">Backwards Compatibility</a></h1> 160<h1><a class="toc-backref" href="#id5" id="backwards-compatibility" name="backwards-compatibility">Backwards Compatibility</a></h1>
136<p>No changes are necessary to existing <tt class="docutils literal"><span class="pre">metadata.xml</span></tt> files. Information 161<p>No changes are necessary to existing <tt class="docutils literal"><span class="pre">metadata.xml</span></tt> files. Information
137in the new tags is not be mandatory. Any sane tool that currently 162in the new tags is not mandatory. Tools that currently read
138handles <tt class="docutils literal"><span class="pre">metadata.xml</span></tt> files will simply ignore unrecognised elements.</p> 163<tt class="docutils literal"><span class="pre">metadata.xml</span></tt> files may break if written poorly; well written tools
164should just ignore the additional elements.</p>
139</div> 165</div>
140<div class="section"> 166<div class="section">
167<h1><a class="toc-backref" href="#id6" id="notes" name="notes">Notes</a></h1>
168<p>The specified URLs must include a protocol as described in <a class="reference" href="http://www.faqs.org/rfcs/rfc3986.html">RFC 3986</a>.
169Furthermore the most common protocol should be used in case of several
170possibilities (http should be favoured over https or ftp over gopher or svn,
171etc).</p>
172</div>
173<div class="section">
141<h1><a class="toc-backref" href="#id6" id="copyright" name="copyright">Copyright</a></h1> 174<h1><a class="toc-backref" href="#id7" id="copyright" name="copyright">Copyright</a></h1>
142<p>This document has been placed in the public domain.</p> 175<p>This document has been placed in the public domain.</p>
143<!-- vim: set ft=glep tw=72 : --> 176<!-- vim: set ft=glep tw=72 : -->
144</div> 177</div>
145 178
146</div> 179</div>
147<div class="footer"> 180<div class="footer">
148<hr class="footer" /> 181<hr class="footer" />
149<a class="reference" href="glep-0046.txt">View document source</a>. 182<a class="reference" href="glep-0046.txt">View document source</a>.
150Generated on: 2007-10-13 13:39 UTC. 183Generated on: 2008-04-03 13:35 UTC.
151Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source. 184Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
152 185
153</div> 186</div>
154</body> 187</body>
155</html> 188</html>

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.20