Gentoo Archives: gentoo-commits

From: "Alec Warner (antarus)" <antarus@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo commit in xml/htdocs/proj/en/glep: glep-0055.html glep-0055.txt
Date: Sun, 06 Jan 2008 02:39:53
Message-Id: E1JBLQN-0006fI-4a@stork.gentoo.org
1 antarus 08/01/06 02:39:43
2
3 Modified: glep-0055.html glep-0055.txt
4 Log:
5 Editorially Bless glep 55 per changes I sent to peper
6
7 Revision Changes Path
8 1.2 xml/htdocs/proj/en/glep/glep-0055.html
9
10 file : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/en/glep/glep-0055.html?rev=1.2&view=markup
11 plain: http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/en/glep/glep-0055.html?rev=1.2&content-type=text/plain
12 diff : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/en/glep/glep-0055.html?r1=1.1&r2=1.2
13
14 Index: glep-0055.html
15 ===================================================================
16 RCS file: /var/cvsroot/gentoo/xml/htdocs/proj/en/glep/glep-0055.html,v
17 retrieving revision 1.1
18 retrieving revision 1.2
19 diff -u -r1.1 -r1.2
20 --- glep-0055.html 5 Jan 2008 02:42:59 -0000 1.1
21 +++ glep-0055.html 6 Jan 2008 02:39:42 -0000 1.2
22 @@ -1,11 +1,7 @@
23 <?xml version="1.0" encoding="utf-8" ?>
24 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
25 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
26 -<!--
27 -This HTML is auto-generated. DO NOT EDIT THIS FILE! If you are writing a new
28 -PEP, see http://www.python.org/peps/pep-0001.html for instructions and links
29 -to templates. DO NOT USE THIS HTML FILE AS YOUR TEMPLATE!
30 --->
31 +
32 <head>
33 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
34 <meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
35 @@ -21,7 +17,7 @@
36 border="0" width="150" height="35" /></a></td>
37 <td class="textlinks" align="left">
38 [<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>]
39 -[<b><a href="http://www.gentoo.org/peps">GLEP Index</a></b>]
40 +[<b><a href="http://www.gentoo.org/proj/en/glep">GLEP Index</a></b>]
41 [<b><a href="http://www.gentoo.org/proj/en/glep/glep-0055.txt">GLEP Source</a></b>]
42 </td></tr></table>
43 <table class="rfc2822 docutils field-list" frame="void" rules="none">
44 @@ -82,10 +78,10 @@
45 EAPI the package manager needs to source the ebuild, which itself needs the EAPI
46 in the first place. Otherwise it imposes a serious limitation, namely every ebuild,
47 using any of the future EAPIs, will have to be source'able by old package
48 -managers and hence there is no way to:</p>
49 +managers and hence there is no way to do any of the following:</p>
50 <blockquote>
51 <ul class="simple">
52 -<li>Change behaviour of inherit in any way (for example, to extend or change
53 +<li>Change the behaviour of inherit in any way (for example, to extend or change
54 eclass functionality).</li>
55 <li>Add new global scope functions in any sane way.</li>
56 <li>Extend versioning rules in an EAPI - for example, addition of the scm
57 @@ -107,7 +103,7 @@
58 <h1><a class="toc-backref" href="#id6" id="proposed-solution" name="proposed-solution">Proposed solution</a></h1>
59 <p>The proposed solution is to use EAPI-suffixed file extensions for ebuilds. This
60 allows package managers to trivially read the EAPI from the ebuild filename. It
61 -is also backward compatible, because currently ebuilds are recognised by the
62 +is also backwards compatible, because currently ebuilds are recognised by the
63 <tt class="docutils literal"><span class="pre">.ebuild</span></tt> file extension and hence EAPI-suffixed ebuilds are simply ignored by
64 the package managers.</p>
65 </div>
66 @@ -137,7 +133,7 @@
67 <ul>
68 <li><dl class="first docutils">
69 <dt><tt class="docutils literal"><span class="pre">pkg-1.ebuild</span></tt>, no EAPI set inside the ebuild</dt>
70 -<dd><p class="first last">pre-source EAPI defaults 0, post-source EAPI defaults to pre-source EAPI.
71 +<dd><p class="first last">pre-source EAPI defaults to 0, post-source EAPI defaults to pre-source EAPI.
72 EAPI 0 is used.</p>
73 </dd>
74 </dl>
75 @@ -167,7 +163,7 @@
76 <li><dl class="first docutils">
77 <dt><tt class="docutils literal"><span class="pre">pkg-5.ebuild-2</span></tt>, no EAPI set inside the ebuild, package manager not supporting EAPI 2</dt>
78 <dd><p class="first last">pre-source EAPI is 2, post-source EAPI is never checked.
79 -ebuild masked because of the unsupported pre-source EAPI.</p>
80 +ebuild is masked because of the unsupported pre-source EAPI.</p>
81 </dd>
82 </dl>
83 </li>
84 @@ -176,7 +172,7 @@
85 <dd><p class="first last">pre-source EAPI defaults to 0, post-source EAPI is 2 (assuming the
86 package manager didn't die when sourcing the ebuild thinking that EAPI 0
87 is used).
88 -ebuild masked because of the unsupported post-source EAPI.</p>
89 +ebuild is masked because of the unsupported post-source EAPI.</p>
90 </dd>
91 </dl>
92 </li>
93 @@ -184,11 +180,11 @@
94 </blockquote>
95 <p>Note that it is still not permitted to have more than one ebuild with equal
96 category, package name, and version. Although it would have the advantage of
97 -allowing to provide backward compatible ebuilds, it would introduce problems
98 -too. The first is the requirement to have strict EAPI ordering, the second is
99 -ensuring that all the ebuilds for a single category/package-version are
100 -equivalent, i.e. installing any of them has exactly the same effect to the
101 -system.</p>
102 +allowing authors to provide backwards compatible ebuilds, it would introduce
103 +problems too. The first is the requirement to have strict EAPI ordering, the
104 +second is ensuring that all the ebuilds for a single category/package-version
105 +are equivalent, i.e. installing any of them has exactly the same effect on a
106 +given system.</p>
107 </div>
108 <div class="section">
109 <h1><a class="toc-backref" href="#id8" id="application" name="application">Application</a></h1>
110 @@ -208,8 +204,8 @@
111 <dd><ul class="first last simple">
112 <li>Doesn't meet the backward compatibility requirement.</li>
113 <li>Isn't forward compatible either.</li>
114 -<li>Could be confusing as ebuilds, and not without a reason, are
115 -considered bash scripts and this would impose additional restrictions.</li>
116 +<li>Could be confusing as ebuilds are considered bash scripts and this
117 +would impose additional restrictions on the ebuild format.</li>
118 </ul>
119 </dd>
120 </dl>
121 @@ -266,7 +262,7 @@
122 <div class="footer">
123 <hr class="footer" />
124 <a class="reference" href="glep-0055.txt">View document source</a>.
125 -Generated on: 2008-01-05 02:38 UTC.
126 +Generated on: 2008-01-06 02:39 UTC.
127 Generated 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.
128
129 </div>
130
131
132
133 1.2 xml/htdocs/proj/en/glep/glep-0055.txt
134
135 file : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/en/glep/glep-0055.txt?rev=1.2&view=markup
136 plain: http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/en/glep/glep-0055.txt?rev=1.2&content-type=text/plain
137 diff : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/en/glep/glep-0055.txt?r1=1.1&r2=1.2
138
139 Index: glep-0055.txt
140 ===================================================================
141 RCS file: /var/cvsroot/gentoo/xml/htdocs/proj/en/glep/glep-0055.txt,v
142 retrieving revision 1.1
143 retrieving revision 1.2
144 diff -u -r1.1 -r1.2
145 --- glep-0055.txt 5 Jan 2008 02:36:35 -0000 1.1
146 +++ glep-0055.txt 6 Jan 2008 02:39:42 -0000 1.2
147 @@ -1,7 +1,7 @@
148 GLEP: 55
149 Title: Use EAPI-suffixed ebuilds (.ebuild-EAPI)
150 -Version: $Revision: 1.1 $
151 -Last-Modified: $Date: 2008/01/05 02:36:35 $
152 +Version: $Revision: 1.2 $
153 +Last-Modified: $Date: 2008/01/06 02:39:42 $
154 Author: Piotr JaroszyƄski <peper@g.o>
155 Status: Draft
156 Type: Standards Track
157 @@ -28,9 +28,9 @@
158 EAPI the package manager needs to source the ebuild, which itself needs the EAPI
159 in the first place. Otherwise it imposes a serious limitation, namely every ebuild,
160 using any of the future EAPIs, will have to be source'able by old package
161 -managers and hence there is no way to:
162 +managers and hence there is no way to do any of the following:
163
164 - * Change behaviour of inherit in any way (for example, to extend or change
165 + * Change the behaviour of inherit in any way (for example, to extend or change
166 eclass functionality).
167
168 * Add new global scope functions in any sane way.
169 @@ -55,7 +55,7 @@
170
171 The proposed solution is to use EAPI-suffixed file extensions for ebuilds. This
172 allows package managers to trivially read the EAPI from the ebuild filename. It
173 -is also backward compatible, because currently ebuilds are recognised by the
174 +is also backwards compatible, because currently ebuilds are recognised by the
175 ``.ebuild`` file extension and hence EAPI-suffixed ebuilds are simply ignored by
176 the package managers.
177
178 @@ -87,7 +87,7 @@
179 Examples:
180
181 * ``pkg-1.ebuild``, no EAPI set inside the ebuild
182 - pre-source EAPI defaults 0, post-source EAPI defaults to pre-source EAPI.
183 + pre-source EAPI defaults to 0, post-source EAPI defaults to pre-source EAPI.
184 EAPI 0 is used.
185
186 * ``pkg-2.ebuild-1``, no EAPI set inside the ebuild
187 @@ -105,21 +105,21 @@
188
189 * ``pkg-5.ebuild-2``, no EAPI set inside the ebuild, package manager not supporting EAPI 2
190 pre-source EAPI is 2, post-source EAPI is never checked.
191 - ebuild masked because of the unsupported pre-source EAPI.
192 + ebuild is masked because of the unsupported pre-source EAPI.
193
194 * ``pkg-6.ebuild``, ``EAPI="2"``, package manager not supporting EAPI 2
195 pre-source EAPI defaults to 0, post-source EAPI is 2 (assuming the
196 package manager didn't die when sourcing the ebuild thinking that EAPI 0
197 is used).
198 - ebuild masked because of the unsupported post-source EAPI.
199 + ebuild is masked because of the unsupported post-source EAPI.
200
201 Note that it is still not permitted to have more than one ebuild with equal
202 category, package name, and version. Although it would have the advantage of
203 -allowing to provide backward compatible ebuilds, it would introduce problems
204 -too. The first is the requirement to have strict EAPI ordering, the second is
205 -ensuring that all the ebuilds for a single category/package-version are
206 -equivalent, i.e. installing any of them has exactly the same effect to the
207 -system.
208 +allowing authors to provide backwards compatible ebuilds, it would introduce
209 +problems too. The first is the requirement to have strict EAPI ordering, the
210 +second is ensuring that all the ebuilds for a single category/package-version
211 +are equivalent, i.e. installing any of them has exactly the same effect on a
212 +given system.
213
214 Application
215 ===========
216 @@ -139,8 +139,8 @@
217 * Set the EAPI inside the ebuild in a way that makes it easy to fetch it
218 * Doesn't meet the backward compatibility requirement.
219 * Isn't forward compatible either.
220 - * Could be confusing as ebuilds, and not without a reason, are
221 - considered bash scripts and this would impose additional restrictions.
222 + * Could be confusing as ebuilds are considered bash scripts and this
223 + would impose additional restrictions on the ebuild format.
224
225 * Do the above and change the ebuild extension to ``.ebuild-ng``
226 * Meets the backward compatibility requirement.
227
228
229
230 --
231 gentoo-commits@g.o mailing list