Gentoo Archives: gentoo-dev

From: Michael Haubenwallner <haubi@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: GLEP 55: another approach: display pretty messages with old PMs
Date: Fri, 29 May 2009 15:18:17
Message-Id: 1243610264.27150.293.camel@sapc154.salomon.at
In Reply to: [gentoo-dev] Re: GLEP 55: another approach: display pretty messages with old PMs by Duncan <1i5t5.duncan@cox.net>
1 On Fri, 2009-05-29 at 10:42 +0000, Duncan wrote:
2 > Michael Haubenwallner <haubi@g.o> posted on Fri, 29
3 > May 2009 10:14:46 +0200:
4 >
5 > > Ohw, the latter would be necessary here, or '4.ebuild' would not be
6 > > found.
7 >
8 > s/4.ebuild/4.eclass/ I assume.
9
10 Indeed.
11
12 > Except... since an ebuild must presently be sourced to (properly)
13 > determine EAPI, it still doesn't work for changes that break sourcing or
14 > other pre-EAPI processing (like parsing PN and PVR out of the filename),
15 > so the changes allowed with a simple EAPI change are still rather limited.
16
17 As long as the *whole* ebuild content (including the filename) needs to
18 be successfully interpreted just for EAPI detection, we will have to
19 change the extension or wait the extended period for each incompatible
20 EAPI change. So this full interpretation for EAPI detection doesn't feel
21 like a good way to go at all.
22
23 > That's why the change to GLEP55 or alternative, whether in-filename or
24 > in-file-itself, will again require either an extended wait after
25 > introduction (the old way) or at minimum, a one-time change to extension
26 > such that old PM versions don't even see the currently EAPI incompatible
27 > changes.
28
29 Wouldn't it be possible to avoid both the extension change and another
30 extended wait period for new incompatible(*) EAPIs, when we do this
31 early and silent exit hack for unsupported ebuilds with old PMs that
32 still do full interpretation for EAPI detection?
33
34 And after another extended wait period(**), we can start dropping the
35 silent exit hack, so we finally have switched to EAPI detection without
36 full interpretation, but still have the .ebuild extension.
37
38 (*) The incompatibility of EAPIs must not begin (meaning the bytewise
39 ebuild content) before the end of both the ebuild's EAPI value
40 definition and the silent exit hack.
41 But this IMO is an acceptable compromise.
42
43 (**) After this wait period, the incompatibility of EAPIs can start
44 after the end of the ebuild's EAPI value definition.
45
46 Thanks!
47
48 /haubi/
49 --
50 Michael Haubenwallner
51 Gentoo on a different level

Replies