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

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

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

Revision 1.6 Revision 1.8
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 3<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4 4
5<head> 5<head>
6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7 <meta name="generator" content="Docutils 0.6: http://docutils.sourceforge.net/" /> 7 <meta name="generator" content="Docutils 0.8.1: http://docutils.sourceforge.net/" />
8 <title>GLEP 55 -- Use EAPI-suffixed ebuilds (.ebuild-EAPI)</title> 8 <title>GLEP 55 -- Use EAPI-suffixed ebuilds (.ebuild-EAPI)</title>
9 <link rel="stylesheet" href="tools/glep.css" type="text/css" /></head> 9 <link rel="stylesheet" href="tools/glep.css" type="text/css" /></head>
10<body bgcolor="white"> 10<body bgcolor="white">
11<table class="navigation" cellpadding="0" cellspacing="0" 11<table class="navigation" cellpadding="0" cellspacing="0"
12 width="100%" border="0"> 12 width="100%" border="0">
25<tbody valign="top"> 25<tbody valign="top">
26<tr class="field"><th class="field-name">GLEP:</th><td class="field-body">55</td> 26<tr class="field"><th class="field-name">GLEP:</th><td class="field-body">55</td>
27</tr> 27</tr>
28<tr class="field"><th class="field-name">Title:</th><td class="field-body">Use EAPI-suffixed ebuilds (.ebuild-EAPI)</td> 28<tr class="field"><th class="field-name">Title:</th><td class="field-body">Use EAPI-suffixed ebuilds (.ebuild-EAPI)</td>
29</tr> 29</tr>
30<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.5</td> 30<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.6</td>
31</tr> 31</tr>
32<tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0055.txt?cvsroot=gentoo">2009/05/17 20:56:53</a></td> 32<tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0055.txt?cvsroot=gentoo">2012/05/09 19:37:01</a></td>
33</tr> 33</tr>
34<tr class="field"><th class="field-name">Author:</th><td class="field-body">Piotr Jaroszyński &lt;peper&#32;&#97;t&#32;gentoo.org&gt;</td> 34<tr class="field"><th class="field-name">Author:</th><td class="field-body">Piotr Jaroszyński &lt;peper&#32;&#97;t&#32;gentoo.org&gt;</td>
35</tr> 35</tr>
36<tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td> 36<tr class="field"><th class="field-name">Status:</th><td class="field-body">Rejected</td>
37</tr> 37</tr>
38<tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td> 38<tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td>
39</tr> 39</tr>
40<tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference external" href="glep-0002.html">text/x-rst</a></td> 40<tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference external" href="glep-0002.html">text/x-rst</a></td>
41</tr> 41</tr>
47</table> 47</table>
48<hr /> 48<hr />
49<div class="contents topic" id="contents"> 49<div class="contents topic" id="contents">
50<p class="topic-title first">Contents</p> 50<p class="topic-title first">Contents</p>
51<ul class="simple"> 51<ul class="simple">
52<li><a class="reference internal" href="#status" id="id3">Status</a></li>
52<li><a class="reference internal" href="#abstract" id="id3">Abstract</a></li> 53<li><a class="reference internal" href="#abstract" id="id4">Abstract</a></li>
53<li><a class="reference internal" href="#problem" id="id4">Problem</a></li> 54<li><a class="reference internal" href="#problem" id="id5">Problem</a></li>
54<li><a class="reference internal" href="#current-behaviour" id="id5">Current behaviour</a><ul> 55<li><a class="reference internal" href="#current-behaviour" id="id6">Current behaviour</a><ul>
55<li><a class="reference internal" href="#incompatible-change-of-inherit-e-g-make-it-look-in-the-package-dir-too" id="id6">Incompatible change of inherit (e.g. make it look in the package dir too)</a></li> 56<li><a class="reference internal" href="#incompatible-change-of-inherit-e-g-make-it-look-in-the-package-dir-too" id="id7">Incompatible change of inherit (e.g. make it look in the package dir too)</a></li>
56<li><a class="reference internal" href="#new-global-scope-function" id="id7">New global scope function</a></li> 57<li><a class="reference internal" href="#new-global-scope-function" id="id8">New global scope function</a></li>
57<li><a class="reference internal" href="#new-version-format" id="id8">New version format</a></li> 58<li><a class="reference internal" href="#new-version-format" id="id9">New version format</a></li>
58<li><a class="reference internal" href="#use-newer-bash-features" id="id9">Use newer bash features</a></li> 59<li><a class="reference internal" href="#use-newer-bash-features" id="id10">Use newer bash features</a></li>
59</ul>
60</li> 60</ul>
61</li>
61<li><a class="reference internal" href="#abstract-solution" id="id10">Abstract solution</a></li> 62<li><a class="reference internal" href="#abstract-solution" id="id11">Abstract solution</a></li>
62<li><a class="reference internal" href="#proposed-solution" id="id11">Proposed solution</a></li> 63<li><a class="reference internal" href="#proposed-solution" id="id12">Proposed solution</a></li>
63<li><a class="reference internal" href="#specification" id="id12">Specification</a></li> 64<li><a class="reference internal" href="#specification" id="id13">Specification</a></li>
64<li><a class="reference internal" href="#summary-of-ideas" id="id13">Summary of ideas</a><ul> 65<li><a class="reference internal" href="#summary-of-ideas" id="id14">Summary of ideas</a><ul>
65<li><a class="reference internal" href="#eapi-suffixed-ebuilds-proposed-solution" id="id14">EAPI-suffixed ebuilds (proposed solution)</a></li> 66<li><a class="reference internal" href="#eapi-suffixed-ebuilds-proposed-solution" id="id15">EAPI-suffixed ebuilds (proposed solution)</a></li>
66<li><a class="reference internal" href="#eapi-in-the-filename-with-one-time-extension-change" id="id15">EAPI in the filename with one-time extension change</a></li> 67<li><a class="reference internal" href="#eapi-in-the-filename-with-one-time-extension-change" id="id16">EAPI in the filename with one-time extension change</a></li>
67<li><a class="reference internal" href="#easily-fetchable-eapi-inside-the-ebuild" id="id16">Easily fetchable EAPI inside the ebuild</a></li> 68<li><a class="reference internal" href="#easily-fetchable-eapi-inside-the-ebuild" id="id17">Easily fetchable EAPI inside the ebuild</a></li>
68<li><a class="reference internal" href="#easily-fetchable-eapi-inside-the-ebuild-and-one-time-extension-change" id="id17">Easily fetchable EAPI inside the ebuild and one-time extension change</a></li> 69<li><a class="reference internal" href="#easily-fetchable-eapi-inside-the-ebuild-and-one-time-extension-change" id="id18">Easily fetchable EAPI inside the ebuild and one-time extension change</a></li>
69<li><a class="reference internal" href="#use-different-subdirectories-for-different-eapis-i-e-cat-pkg-eapix" id="id18">Use different subdirectories for different EAPIs, i.e. cat/pkg/eapiX/</a></li> 70<li><a class="reference internal" href="#use-different-subdirectories-for-different-eapis-i-e-cat-pkg-eapix" id="id19">Use different subdirectories for different EAPIs, i.e. cat/pkg/eapiX/</a></li>
70</ul>
71</li> 71</ul>
72</li>
72<li><a class="reference internal" href="#references" id="id19">References</a></li> 73<li><a class="reference internal" href="#references" id="id20">References</a></li>
73<li><a class="reference internal" href="#copyright" id="id20">Copyright</a></li> 74<li><a class="reference internal" href="#copyright" id="id21">Copyright</a></li>
74</ul> 75</ul>
75</div> 76</div>
76<blockquote> 77<blockquote>
77<p>&quot;A little learning is a dangerous thing; drink deep, or taste not the Pierian 78<p>&quot;A little learning is a dangerous thing; drink deep, or taste not the Pierian
78spring: there shallow draughts intoxicate the brain, and drinking largely 79spring: there shallow draughts intoxicate the brain, and drinking largely
79sobers us again.&quot;</p> 80sobers us again.&quot;</p>
80<p class="attribution">&mdash;Alexander Pope, An Essay on Criticism</p> 81<p class="attribution">&mdash;Alexander Pope, An Essay on Criticism</p>
81</blockquote> 82</blockquote>
83<div class="section" id="status">
84<h1><a class="toc-backref" href="#id3">Status</a></h1>
85<p>This GLEP was voted down by the Council in its meeting on 2010-08-23.
86The Council rejected it again in its meeting on 2012-05-08, in favour
87of parsing the EAPI from the bash assignment statement in ebuilds.</p>
88</div>
82<div class="section" id="abstract"> 89<div class="section" id="abstract">
83<h1><a class="toc-backref" href="#id3">Abstract</a></h1> 90<h1><a class="toc-backref" href="#id4">Abstract</a></h1>
84<p>This GLEP proposes usage of EAPI-suffixed file extensions for ebuilds (for 91<p>This GLEP proposes usage of EAPI-suffixed file extensions for ebuilds (for
85example, foo-1.2.3.ebuild-1).</p> 92example, foo-1.2.3.ebuild-1).</p>
86</div> 93</div>
87<div class="section" id="problem"> 94<div class="section" id="problem">
88<h1><a class="toc-backref" href="#id4">Problem</a></h1> 95<h1><a class="toc-backref" href="#id5">Problem</a></h1>
89<p>The current way of specifying the EAPI in ebuilds is flawed. In order to get the 96<p>The current way of specifying the EAPI in ebuilds is flawed. In order to get the
90EAPI the package manager needs to source the ebuild, which itself needs the EAPI 97EAPI the package manager needs to source the ebuild, which itself needs the EAPI
91in the first place. Otherwise it imposes a serious limitation, namely every ebuild, 98in the first place. Otherwise it imposes a serious limitation, namely every ebuild,
92using any of the future EAPIs, will have to be source'able by old package 99using any of the future EAPIs, will have to be source'able by old package
93managers and hence there is no way to do any of the following:</p> 100managers and hence there is no way to do any of the following:</p>
102<li>Use newer bash features.</li> 109<li>Use newer bash features.</li>
103</ul> 110</ul>
104</blockquote> 111</blockquote>
105</div> 112</div>
106<div class="section" id="current-behaviour"> 113<div class="section" id="current-behaviour">
107<h1><a class="toc-backref" href="#id5">Current behaviour</a></h1> 114<h1><a class="toc-backref" href="#id6">Current behaviour</a></h1>
108<p>Following subsections show what happens if you introduce any of the mentioned 115<p>Following subsections show what happens if you introduce any of the mentioned
109changes in an ebuild and try to install it with portage 2.1.6.13.</p> 116changes in an ebuild and try to install it with portage 2.1.6.13.</p>
110<div class="section" id="incompatible-change-of-inherit-e-g-make-it-look-in-the-package-dir-too"> 117<div class="section" id="incompatible-change-of-inherit-e-g-make-it-look-in-the-package-dir-too">
111<h2><a class="toc-backref" href="#id6">Incompatible change of inherit (e.g. make it look in the package dir too)</a></h2> 118<h2><a class="toc-backref" href="#id7">Incompatible change of inherit (e.g. make it look in the package dir too)</a></h2>
112<p><tt class="docutils literal"><span class="pre">sys-apps/foo-1.ebuild</span></tt>:</p> 119<p><tt class="docutils literal"><span class="pre">sys-apps/foo-1.ebuild</span></tt>:</p>
113<pre class="literal-block"> 120<pre class="literal-block">
114EAPI=&quot;5&quot; 121EAPI=&quot;5&quot;
115inherit &quot;foo&quot; 122inherit &quot;foo&quot;
116 123
144<p>Current portage looks for eclasses only in the <tt class="docutils literal">eclass</tt> directory of a 151<p>Current portage looks for eclasses only in the <tt class="docutils literal">eclass</tt> directory of a
145repository. This results in a fatal error and ebuild being masked by corruption 152repository. This results in a fatal error and ebuild being masked by corruption
146- might be pretty confusing to users.</p> 153- might be pretty confusing to users.</p>
147</div> 154</div>
148<div class="section" id="new-global-scope-function"> 155<div class="section" id="new-global-scope-function">
149<h2><a class="toc-backref" href="#id7">New global scope function</a></h2> 156<h2><a class="toc-backref" href="#id8">New global scope function</a></h2>
150<p><tt class="docutils literal"><span class="pre">sys-apps/foo-1.ebuild</span></tt>:</p> 157<p><tt class="docutils literal"><span class="pre">sys-apps/foo-1.ebuild</span></tt>:</p>
151<pre class="literal-block"> 158<pre class="literal-block">
152EAPI=&quot;5&quot; 159EAPI=&quot;5&quot;
153new_global_scope_function &quot;foo&quot; 160new_global_scope_function &quot;foo&quot;
154 161
169newer version of portage before EAPI masked packages can be installed. 176newer version of portage before EAPI masked packages can be installed.
170</pre> 177</pre>
171<p>Not that bad as user is advised to upgrade portage.</p> 178<p>Not that bad as user is advised to upgrade portage.</p>
172</div> 179</div>
173<div class="section" id="new-version-format"> 180<div class="section" id="new-version-format">
174<h2><a class="toc-backref" href="#id8">New version format</a></h2> 181<h2><a class="toc-backref" href="#id9">New version format</a></h2>
175<p><tt class="docutils literal"><span class="pre">sys-apps/foo-2-rc1.ebuild</span></tt>:</p> 182<p><tt class="docutils literal"><span class="pre">sys-apps/foo-2-rc1.ebuild</span></tt>:</p>
176<pre class="literal-block"> 183<pre class="literal-block">
177Invalid ebuild name: /var/lib/gentoo/repositories/peper/sys-apps/foo/foo-2-rc1.ebuild 184Invalid ebuild name: /var/lib/gentoo/repositories/peper/sys-apps/foo/foo-2-rc1.ebuild
178 185
179emerge: there are no ebuilds to satisfy &quot;sys-apps/foo&quot; 186emerge: there are no ebuilds to satisfy &quot;sys-apps/foo&quot;
180</pre> 187</pre>
181<p>Not the best error message, especially if there are lots of them.</p> 188<p>Not the best error message, especially if there are lots of them.</p>
182</div> 189</div>
183<div class="section" id="use-newer-bash-features"> 190<div class="section" id="use-newer-bash-features">
184<h2><a class="toc-backref" href="#id9">Use newer bash features</a></h2> 191<h2><a class="toc-backref" href="#id10">Use newer bash features</a></h2>
185<p><tt class="docutils literal">|&amp;</tt> is a new type of redirection added in bash-4. It cannot be used even in 192<p><tt class="docutils literal">|&amp;</tt> is a new type of redirection added in bash-4. It cannot be used even in
186local scope as bash still parses the whole ebuild.</p> 193local scope as bash still parses the whole ebuild.</p>
187<p><tt class="docutils literal"><span class="pre">sys-apps/foo-1.ebuild</span></tt>:</p> 194<p><tt class="docutils literal"><span class="pre">sys-apps/foo-1.ebuild</span></tt>:</p>
188<pre class="literal-block"> 195<pre class="literal-block">
189EAPI=&quot;5&quot; 196EAPI=&quot;5&quot;
216</pre> 223</pre>
217<p>Again, not the best error.</p> 224<p>Again, not the best error.</p>
218</div> 225</div>
219</div> 226</div>
220<div class="section" id="abstract-solution"> 227<div class="section" id="abstract-solution">
221<h1><a class="toc-backref" href="#id10">Abstract solution</a></h1> 228<h1><a class="toc-backref" href="#id11">Abstract solution</a></h1>
222<p>A solution to this problem has to lift those limitations and the only way to do 229<p>A solution to this problem has to lift those limitations and the only way to do
223it is to make the EAPI of an ebuild available to the package managers in a way 230it is to make the EAPI of an ebuild available to the package managers in a way
224that doesn't require them to source the ebuild. Another important requirement is 231that doesn't require them to source the ebuild. Another important requirement is
225for the solution to be backward compatible, which has the pleasant side-effect 232for the solution to be backward compatible, which has the pleasant side-effect
226of making the solution applicable in the Gentoo tree right away. Opposed to 233of making the solution applicable in the Gentoo tree right away. Opposed to
227waiting an arbitrary amount of time, which is never long enough anyway, as the 234waiting an arbitrary amount of time, which is never long enough anyway, as the
228issues listed on the common portage problems page - <a class="footnote-reference" href="#portageproblems" id="id2">[2]</a> - show.</p> 235issues listed on the common portage problems page - <a class="footnote-reference" href="#portageproblems" id="id2">[2]</a> - show.</p>
229</div> 236</div>
230<div class="section" id="proposed-solution"> 237<div class="section" id="proposed-solution">
231<h1><a class="toc-backref" href="#id11">Proposed solution</a></h1> 238<h1><a class="toc-backref" href="#id12">Proposed solution</a></h1>
232<p>The proposed solution is to use EAPI-suffixed file extensions for ebuilds. This 239<p>The proposed solution is to use EAPI-suffixed file extensions for ebuilds. This
233allows package managers to trivially read the EAPI from the ebuild filename. It 240allows package managers to trivially read the EAPI from the ebuild filename. It
234is also backwards compatible, because currently ebuilds are recognised by the 241is also backwards compatible, because currently ebuilds are recognised by the
235<tt class="docutils literal">.ebuild</tt> file extension and hence EAPI-suffixed ebuilds are simply ignored by 242<tt class="docutils literal">.ebuild</tt> file extension and hence EAPI-suffixed ebuilds are simply ignored by
236the package managers.</p> 243the package managers.</p>
237</div> 244</div>
238<div class="section" id="specification"> 245<div class="section" id="specification">
239<h1><a class="toc-backref" href="#id12">Specification</a></h1> 246<h1><a class="toc-backref" href="#id13">Specification</a></h1>
240<p>Ebuild filename extension syntax: <tt class="docutils literal"><span class="pre">ebuild[-&lt;EAPI&gt;]</span></tt>, where <tt class="docutils literal">[]</tt> denotes an 247<p>Ebuild filename extension syntax: <tt class="docutils literal"><span class="pre">ebuild[-&lt;EAPI&gt;]</span></tt>, where <tt class="docutils literal">[]</tt> denotes an
241optional part, and <tt class="docutils literal">&lt;EAPI&gt;</tt> is the EAPI of the ebuild.</p> 248optional part, and <tt class="docutils literal">&lt;EAPI&gt;</tt> is the EAPI of the ebuild.</p>
242<p>The EAPI used by the ebuild is the EAPI included in the filename if it is set. 249<p>The EAPI used by the ebuild is the EAPI included in the filename if it is set.
243Otherwise the EAPI set inside the ebuild is used, which defaults to 0 (this is 250Otherwise the EAPI set inside the ebuild is used, which defaults to 0 (this is
244the current behaviour).</p> 251the current behaviour).</p>
279have multiple versions with different EAPIs as e.g. <tt class="docutils literal">1.0 == 1.00 == <span class="pre">1.00-r0</span></tt> 286have multiple versions with different EAPIs as e.g. <tt class="docutils literal">1.0 == 1.00 == <span class="pre">1.00-r0</span></tt>
280and hence you could have <tt class="docutils literal"><span class="pre">foo-1.0.ebuild</span></tt> with EAPI X and <tt class="docutils literal"><span class="pre">foo-1.00.ebuild</span></tt> 287and hence you could have <tt class="docutils literal"><span class="pre">foo-1.0.ebuild</span></tt> with EAPI X and <tt class="docutils literal"><span class="pre">foo-1.00.ebuild</span></tt>
281with EAPI Y.</p> 288with EAPI Y.</p>
282</div> 289</div>
283<div class="section" id="summary-of-ideas"> 290<div class="section" id="summary-of-ideas">
284<h1><a class="toc-backref" href="#id13">Summary of ideas</a></h1> 291<h1><a class="toc-backref" href="#id14">Summary of ideas</a></h1>
285<div class="section" id="eapi-suffixed-ebuilds-proposed-solution"> 292<div class="section" id="eapi-suffixed-ebuilds-proposed-solution">
286<h2><a class="toc-backref" href="#id14">EAPI-suffixed ebuilds (proposed solution)</a></h2> 293<h2><a class="toc-backref" href="#id15">EAPI-suffixed ebuilds (proposed solution)</a></h2>
287<dl class="docutils"> 294<dl class="docutils">
288<dt>Properties:</dt> 295<dt>Properties:</dt>
289<dd><ul class="first last simple"> 296<dd><ul class="first last simple">
290<li>Can be used right away: yes</li> 297<li>Can be used right away: yes</li>
291<li>Hurts performance: no</li> 298<li>Hurts performance: no</li>
293</dd> 300</dd>
294</dl> 301</dl>
295<p>Some say it is clear and simple, others that it is ugly and unintuitive.</p> 302<p>Some say it is clear and simple, others that it is ugly and unintuitive.</p>
296</div> 303</div>
297<div class="section" id="eapi-in-the-filename-with-one-time-extension-change"> 304<div class="section" id="eapi-in-the-filename-with-one-time-extension-change">
298<h2><a class="toc-backref" href="#id15">EAPI in the filename with one-time extension change</a></h2> 305<h2><a class="toc-backref" href="#id16">EAPI in the filename with one-time extension change</a></h2>
299<p>One of the proposed filename formats: 306<p>One of the proposed filename formats:
300<tt class="docutils literal"><span class="pre">&lt;PKG&gt;-&lt;VER&gt;.eapi-&lt;EAPI&gt;.eb</span></tt></p> 307<tt class="docutils literal"><span class="pre">&lt;PKG&gt;-&lt;VER&gt;.eapi-&lt;EAPI&gt;.eb</span></tt></p>
301<dl class="docutils"> 308<dl class="docutils">
302<dt>Properties:</dt> 309<dt>Properties:</dt>
303<dd><ul class="first last simple"> 310<dd><ul class="first last simple">
308</dl> 315</dl>
309<p>This is equivalent to the proposed solution.</p> 316<p>This is equivalent to the proposed solution.</p>
310<p>Some say it is better because the extension is static.</p> 317<p>Some say it is better because the extension is static.</p>
311</div> 318</div>
312<div class="section" id="easily-fetchable-eapi-inside-the-ebuild"> 319<div class="section" id="easily-fetchable-eapi-inside-the-ebuild">
313<h2><a class="toc-backref" href="#id16">Easily fetchable EAPI inside the ebuild</a></h2> 320<h2><a class="toc-backref" href="#id17">Easily fetchable EAPI inside the ebuild</a></h2>
314<dl class="docutils"> 321<dl class="docutils">
315<dt>Properties:</dt> 322<dt>Properties:</dt>
316<dd><ul class="first last simple"> 323<dd><ul class="first last simple">
317<li>Can be used right away: no</li> 324<li>Can be used right away: no</li>
318<li>Hurts performance: yes</li> 325<li>Hurts performance: yes</li>
3626, 5 and 4. With EAPI in the ebuild it needs to load metadata for all versions.</p> 3696, 5 and 4. With EAPI in the ebuild it needs to load metadata for all versions.</p>
363<p>It's hard to say what's the avarage case, but surely the worst case scenario 370<p>It's hard to say what's the avarage case, but surely the worst case scenario
364(when only the lowest version is visible) is uncommon.</p> 371(when only the lowest version is visible) is uncommon.</p>
365</div> 372</div>
366<div class="section" id="easily-fetchable-eapi-inside-the-ebuild-and-one-time-extension-change"> 373<div class="section" id="easily-fetchable-eapi-inside-the-ebuild-and-one-time-extension-change">
367<h2><a class="toc-backref" href="#id17">Easily fetchable EAPI inside the ebuild and one-time extension change</a></h2> 374<h2><a class="toc-backref" href="#id18">Easily fetchable EAPI inside the ebuild and one-time extension change</a></h2>
368<dl class="docutils"> 375<dl class="docutils">
369<dt>Properties:</dt> 376<dt>Properties:</dt>
370<dd><ul class="first last simple"> 377<dd><ul class="first last simple">
371<li>Can be used right away: yes</li> 378<li>Can be used right away: yes</li>
372<li>Hurts performance: yes</li> 379<li>Hurts performance: yes</li>
376<p>Performance decrease as described in the previous section.</p> 383<p>Performance decrease as described in the previous section.</p>
377<p>Some say it is clear and simple, others that it is confusing and unintuitive, 384<p>Some say it is clear and simple, others that it is confusing and unintuitive,
378because of the arbitrary format restrictions in what is a bash script otherwise.</p> 385because of the arbitrary format restrictions in what is a bash script otherwise.</p>
379</div> 386</div>
380<div class="section" id="use-different-subdirectories-for-different-eapis-i-e-cat-pkg-eapix"> 387<div class="section" id="use-different-subdirectories-for-different-eapis-i-e-cat-pkg-eapix">
381<h2><a class="toc-backref" href="#id18">Use different subdirectories for different EAPIs, i.e. cat/pkg/eapiX/</a></h2> 388<h2><a class="toc-backref" href="#id19">Use different subdirectories for different EAPIs, i.e. cat/pkg/eapiX/</a></h2>
382<dl class="docutils"> 389<dl class="docutils">
383<dt>Properties:</dt> 390<dt>Properties:</dt>
384<dd><ul class="first last simple"> 391<dd><ul class="first last simple">
385<li>Can be used right away: yes</li> 392<li>Can be used right away: yes</li>
386<li>Hurts performance: yes</li> 393<li>Hurts performance: yes</li>
391reads.</p> 398reads.</p>
392<p>Some say that it makes it much harder for maintainers to see what they have.</p> 399<p>Some say that it makes it much harder for maintainers to see what they have.</p>
393</div> 400</div>
394</div> 401</div>
395<div class="section" id="references"> 402<div class="section" id="references">
396<h1><a class="toc-backref" href="#id19">References</a></h1> 403<h1><a class="toc-backref" href="#id20">References</a></h1>
397<table class="docutils footnote" frame="void" id="glep54" rules="none"> 404<table class="docutils footnote" frame="void" id="glep54" rules="none">
398<colgroup><col class="label" /><col /></colgroup> 405<colgroup><col class="label" /><col /></colgroup>
399<tbody valign="top"> 406<tbody valign="top">
400<tr><td class="label"><a class="fn-backref" href="#id1">[1]</a></td><td>GLEP 54, scm package version suffix 407<tr><td class="label"><a class="fn-backref" href="#id1">[1]</a></td><td>GLEP 54, scm package version suffix
401(<a class="reference external" href="http://glep.gentoo.org/glep-0054.html">http://glep.gentoo.org/glep-0054.html</a>)</td></tr> 408(<a class="reference external" href="http://glep.gentoo.org/glep-0054.html">http://glep.gentoo.org/glep-0054.html</a>)</td></tr>
408(<a class="reference external" href="http://www.gentoo.org/proj/en/portage/doc/common-problems.xml">http://www.gentoo.org/proj/en/portage/doc/common-problems.xml</a>)</td></tr> 415(<a class="reference external" href="http://www.gentoo.org/proj/en/portage/doc/common-problems.xml">http://www.gentoo.org/proj/en/portage/doc/common-problems.xml</a>)</td></tr>
409</tbody> 416</tbody>
410</table> 417</table>
411</div> 418</div>
412<div class="section" id="copyright"> 419<div class="section" id="copyright">
413<h1><a class="toc-backref" href="#id20">Copyright</a></h1> 420<h1><a class="toc-backref" href="#id21">Copyright</a></h1>
414<p>This document has been placed in the public domain.</p> 421<p>This document has been placed in the public domain.</p>
415<!-- vim: set tw=80 fileencoding=utf-8 spell spelllang=en et : --> 422<!-- vim: set tw=80 fileencoding=utf-8 spell spelllang=en et : -->
416</div> 423</div>
417 424
418</div> 425</div>
419<div class="footer"> 426<div class="footer">
420<hr class="footer" /> 427<hr class="footer" />
421<a class="reference external" href="glep-0055.txt">View document source</a>. 428<a class="reference external" href="glep-0055.txt">View document source</a>.
422Generated on: 2010-04-07 22:12 UTC. 429Generated on: 2012-05-09 20:00 UTC.
423Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source. 430Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
424 431
425</div> 432</div>
426</body> 433</body>
427</html> 434</html>

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

  ViewVC Help
Powered by ViewVC 1.1.20