Gentoo Archives: gentoo-dev

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Re: How not to discuss
Date: Tue, 02 Jun 2009 12:53:59
Message-Id: pan.2009.06.02.12.53.35@cox.net
In Reply to: [gentoo-dev] Re: How not to discuss by Steven J Long
1 Steven J Long <slong@××××××××××××××××××.uk> posted
2 1565621.WYyjxmS50y@××××××××××××××××××××.info, excerpted below, on Tue, 02
3 Jun 2009 09:20:34 +0100:
4
5 > Personally I favour restricting the EAPI='blah' line (which imo should
6 > simply be single-quoted to avoid escaping issues, but whatever: it's
7 > easy enough to lex in C, so I fail to see the issue lexing it anywhere
8 > else) to before the inherit line _in_ _the_ _spec_ since no-one has
9 > given any reason why we should want to do anything else, and afaik
10 > repoman will warn about it anyhow.
11 >
12 > Could *you* explain to us, why that restriction is such a bad thing?
13
14 Me? I'm afraid you have *me* mistaken for someone else, or at least my
15 position mistaken for that of someone else.
16
17 I actually happen to agree with your statement of opinion as quoted
18 above, now put in my own words, that an in-ebuild EAPI='blah' line (or
19 similar in-ebuild equivalent, shebangs, etc), suitably restricted in
20 position and value, complete with single quotes to avoid escaped-char
21 issues, is sufficient. Either wait a suitable time or change the ebuild
22 extension *ONCE* to ensure all actively supported PMs work with this
23 before the first otherwise disruptive global change (as to say filename
24 version information, but that's a separate issue), and run with it.
25
26 Plus the in-extension (or in-filename) solution has very similar
27 restrictions. so it's not about the question of adding EAPI restrictions,
28 that's a given either way. We can just add them to the existing in-file
29 solution and get on with the show, with the same ultimate extensibility
30 benefits and very similar restrictions either way, so we might as /well/
31 just go with simple restrictions on the current solution, and be done
32 with it.
33
34 If the pre-source parsing is slower than the eapi-in-extension (or in
35 filename) solution, so be it. It works technically, and the speed trade-
36 off for non-technical aesthetic sensibilities and semi-technical design
37 is manageable and IMO a worthwhile tradeoff. After all, Gentoo users and
38 developers both obviously have other priorities than installation speed,
39 or they'd be using a binary distribution and packages.
40
41 But, particularly if we're going the *single* extension change route
42 anyway, it's a great opportunity to do any useful cache file format
43 changes, like say, a single unified metadata file for all versions of a
44 package, or all in a category, or adding tags or similar metadata so for
45 instance kmail can show up in both the kde-base and mail client
46 categories. While doing that, the speed penalty of in-file EAPI can be
47 mitigated or entirely eliminated as well, so it becomes a non-issue.
48 However, cache structure changes would need debated and are an entirely
49 different issue, while meanwhile, we can formalize the in-file EAPI
50 restrictions now and get on with business, living with the slow-down
51 temporarily if it comes to that.
52
53 So no, I'm NOT going to attempt to explain why the restriction is such a
54 bad thing, as I don't believe it myself, and there's plenty of others to
55 argue the point better than I could play devil's advocate.
56
57 The point I made, however, was entirely separate, that being that
58 regardless of one's personal feelings on GLEP55 and the merits of its
59 implementation, we're likely to be stuck with it, as nobody has bothered
60 formulating a properly constructed alternative solution.
61
62 As for whether there's even a problem, the council did vote that in
63 principle, they did see the problem, and I agree, there are global format
64 restrictions in the current EAPI due to the /lack/ of specifics in the
65 EAPI assignment rules that ARE a problem in terms of flexibility. So
66 while I don't particularly care about _ vs. - and -scm vs lack thereof,
67 problems like allowable bash version features do crop up from time to
68 time, and they'd be MUCH easier handled if the EAPI could handle them
69 without worry about breakage, as it could if it were parseable before
70 sourcing, and I thus see a problem that GLEP55 among other solutions,
71 would solve. Then we're back to my point, that GLEP55 being the only
72 formalized proposed solution, it's likely to be the ultimately accepted
73 one, regardless of the merits, because when it comes down to it, it's the
74 suitably hashed out and formally defined choice out there.
75
76 > In summary: the existing design, including harring's EAPI, suffices for
77 > all the 'problems' raised. The most we need to do is specify that the
78 > mangler is allowed to extract the EAPI without sourcing, the
79 > restrictions that enable this, and that global-scope EAPI functions
80 > (including a later BASH version) are consequently allowed.
81
82 So you're saying the current solution, with a few minor changes, is
83 enough, while I'm saying the current solution as-is, is not enough, and
84 needs at least minor changes.
85
86 I think we're in violent agreement there! =:^)
87
88 I'm simply adding that whatever one's position on GLEP55 and its
89 suitability, given that it's remains the only formally defined proposal
90 after YEARS of debate, it's likely to be the one adopted, for lack of an
91 alternative. The opposition is demonstrating by its actions that it
92 simply doesn't care enough about it to be motivated to provide a
93 sufficiently defined alternative, since it hasn't done so. If there's
94 anyone out there who'd be sufficiently disappointed by that to actually
95 care enough to do something about it, they should consider themselves
96 lucky GLEP55 hasn't been adopted already, and they better get crackin',
97 as every day that goes by without a suitably formalized alternative is a
98 day closer to GLEP55 being adopted simply because it's the only
99 alternative suitably well defined /to/ be adopted.
100
101 > In the meantime, while we've been discussing this for God knows how
102 > long, we still don't have LDEPENDs, nor do we have elibs which harring
103 > envisaged alongside eclasses and EAPI in the first place. "Broken
104 > process" afaic.
105
106 I'd tend to agree.
107
108 > Oh btw, -scm [sic] suffix doesn't add ANYTHING to the existing cvs.
109 > prefix that's been available in portage for at least 3 years; it's a
110 > binary datum, either there or not. "Innovation" is not what I'd call all
111 > this.
112
113 Indeed.
114
115 --
116 Duncan - List replies preferred. No HTML msgs.
117 "Every nonfree program has a lord, a master --
118 and if you use the program, he is your master." Richard Stallman

Replies

Subject Author
[gentoo-dev] Re: How not to discuss Steven J Long <slong@××××××××××××××××××.uk>