Gentoo Archives: gentoo-dev

From: Brian Harring <ferringb@×××××.com>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Addressing GLEP-62 itself
Date: Thu, 27 Sep 2012 19:54:26
Message-Id: 20120927195324.GA18871@localhost.corp.google.com
In Reply to: Re: [gentoo-dev] Addressing GLEP-62 itself by Alexis Ballier
1 On Wed, Sep 26, 2012 at 07:25:11PM -0300, Alexis Ballier wrote:
2 > On Wed, 26 Sep 2012 14:02:57 -0700
3 > Brian Harring <ferringb@×××××.com> wrote:
4 > > On Wed, Sep 26, 2012 at 02:38:02PM -0300, Alexis Ballier wrote:
5 > > > IUSE_RUNTIME is optional for PMs, why does the UI matter at all ?
6 > > > Also, the proposal doesn't assume flags are toggable at will, it
7 > > > assumes they are useflags and obey the same rules.
8 > >
9 > > I truly hate claims like this; "it's optional, so who cares if it's
10 > > whacky". Think through the proposal; for it to work reliably, it's
11 > > not optional. Same issue I've been y'all over the head with,
12 > > rendered/finalized vs raw/unfinalized deps being stored in the VDB.
13 > >
14 > > All managers have to write unfinalized if that proposal goes through,
15 > > even if they don't support the optional toggling after the fact.
16 >
17 > Why? _Current_ PMs will rebuild the package. The point of this is just
18 > to give them a hint that they do not need to rebuild it. We already
19 > have an implementation actually: one that ignores the hint :)
20
21 Bullshit. This is optional in the sense of embrace/extend 'optional';
22 if one PM takes up the new functionality, all have to switch to
23 writing unfinalized deps to the VDB, and all have to switch to
24 transfering that IUSE_RUNTIME crap to the VDB.
25
26 If they don't, whatever sole/crappy PM that runs w/ this proposal will
27 wind up forcing rebuilds on any packages merged by the PM's that don't
28 do this "optional" glep.
29
30 Thus rendering it nonoptional since it implicitly is reliant on all
31 switching to the degrade *DEPEND writing that this proposal is reliant
32 on. The blame game becomes "well, you shouldn't use the PMs that
33 don't do this *optional* thing". There in is the implicit lie of that
34 'optional' crap.
35
36 Claiming other wise is ignoring reality; I called it embrace/extend
37 because this is exactly how that shit goes- sure it's optional, 'cept
38 you're forced to support it (even partially) else the whole degrades
39 and that PM winds up getting blackballed or fragmentation occuring.
40 As far as I'm concerned, any PMS intended proposal must not pull the
41 'should' or 'optional' crap; it has no place in a spec (spec's are
42 supposed to be assertions after all).
43
44
45 > > As for the UI... arguing "but it's optional!" doesn't give a blank
46 > > check for the UI angle. What the plan, more colorization and a new
47 > > char for emerge -vp? Because we're kind of running out of chars
48 > > there...
49 >
50 > How is this relevant ?
51
52 Um... dude... This proposal is about adding suggested/optional deps so
53 people can inspect/select/enable them per package.
54
55 You're asking "how is the UI relevant" in light of that.
56
57 Just saying; it's kind of core to this whole damn thing, else we're
58 just trying to add an optimization hack; either one runs a strong risk
59 of my next response including a joke about elderberries and hamsters.
60 ;)
61
62
63 > > It's a simple enough request; one that wouldn't even need to be made
64 > > if there was code backing this proposal; on a related note, hell yes
65 > > I'm wary of having this dumped on manager authors heads and having to
66 > > be told "sort out the mess/make it so". So I'm asking y'all to at
67 > > least put in an equivalent time investment doing a quick prototype.
68 > >
69 > > This isn't an unreasonable request, and has been the norm for most
70 > > gleps for a long while.
71 >
72 > I guess people do not want to invest time in writing code for something
73 > doomed.
74
75 This is one of the cases where "tough fucking luck" really/truly fits.
76
77 If it's doomed, consider why it's doomed. I'm not requiring a
78 prototype just because I'm a dick; I'm requiring a prototype because
79 I fully expect since y'all won't listen to what people are telling
80 you, trying to write the code will educate y'all to what we've been
81 saying. This is ignoring that prototypes are bsaically the norm for
82 proposals of this sort (both PMS and gleps)... meaning it's the
83 standard, and y'all are trying to get this proposal special cased.
84
85 Does it suck you can't just get what you want via writing a quick doc
86 and arguing on an ml? At times, yes. If you believe it's worth it,
87 you do the legwork.
88
89 If the folks backing this can't be bothered to write a freaking patch,
90 well, I think that's a pretty strong vote of no-confidence on the
91 backers part.
92
93
94 > The original request was just to have it 'accepted' so that an
95 > implementation can start. If the implementation is good then make it
96 > final, otherwise amend or reject the glep. This isn't unreasonable
97 > either.
98
99 Also known as rubber stamp it. And if it sucks, of course it's easy
100 to roll that bad idea back? Right?
101
102 If the idea was universally accepted and lacked issues, that may fly;
103 that's not been the case.
104
105
106 > > It cannot be stacked because y'all are trying to shove this in as an
107 > > optional; unlike it's brother IUSE, which stacks.
108 > >
109 > > As for "ons of others that don't stack"; very few actually influence
110 > > the package manager; ~14 roughly, minimally 5 of those stack (those
111 > > that don't, basically aren't lists).
112 >
113 > So it's not stacked, nothing else to discuss here :)
114
115 Grr. You're being daft if you think I'll back down just because of
116 some word play and ignoring my points.
117
118 It *should* be stacked is my view; that matches it's sibling IUSE, and
119 general behaviour for metadata lists.
120
121 However, that cannot be done if it's treated as 'optional'- that
122 'optional' crap was attempted as a way to glue this onto existing
123 EAPIs. I'm pointing at the metadata issue since 1) that optional
124 requirement results in the metadata key being ill fitting in
125 comparison to IUSE, 2) it's easier to beat on that point then to have
126 to argue w/ y'all as to the fact y'all are ignoring the implicit
127 requirement of this proposal that IUSE_RUNTIME get added into the
128 mainline caches (without it, more PM hacks would be required;
129 additionally, the metadata cache angle is a further example of this
130 being non-optional).
131
132
133 > > > """
134 > > > Package managers not implementing this GLEP will consider
135 > > > the ``IUSE_RUNTIME`` variable as an irrelevant bash variable
136 > > > """
137 > > > """
138 > > > 2. introduce additional ``IUSE_RUNTIME`` variable listing names of
139 > > > USE flags related to optional runtime dependencies (without prefixes
140 > > > related to IUSE defaults).
141 > > > """
142 > > >
143 > > > Treating bash variables as bash variables is rather the norm,
144 > > > stacking is the exception. As I understand it, your only objection
145 > > > here is that you want to see written 'IUSE_RUNTIME gets no special
146 > > > treatment' in the proposal ?
147 > >
148 > > My objection is punting it to the council till it's actually nailed
149 > > down/sane; having them mark it accepted means we're stuck w/ the
150 > > results if it turns out to be shit at the implementation/UI level as
151 > > a lot of us think it will be.
152 > >
153 > > So yes, I want it actually finalized. Bluntly; there's zero point
154 > > having the council comment if it ain't finalized.
155 >
156 > Then the proposal itself should be discussed, not the implementation
157 > details: chars for emerge -pv are irrelevant; you pointed the raw dep
158 > issue in the VDB, that's good, but never said anything as of why they
159 > can't additionally be stored, making this a non-issue for the
160 > _proposal_ acceptation.
161 >
162 > Anyway, without implementation I expect the council to just give a vote
163 > of opinion, showing support or non-support to the proposal; the
164 > proposal will be final only once the council will be happy with
165 > portage's implementation. And I agree, the council doesn't need to be
166 > involved to start the implementation, but knowing this proposal has
167 > supporters will motivate people to do the implementation, vs. not even
168 > being sure the idea itself will get some support.
169
170 I reiterate; if a proposal needs the council to motivate people, that
171 proposal is fucked- period. If the backing author(s) can't be
172 bothered to do the implementation, it's doubly so fucked. Trace
173 gentoo's history before arguing that one- there is a lot of examples
174 already.
175
176 You can phrase it, argue it, whatever, all you want, but that's a fact
177 of reality. We've had lots of things get pushed up to the council and
178 get 'approved', ie rubber stamped- and a lot of them went jack-all
179 nowhere because approval != reality, nor does it even mean "of course
180 someone will step up to do the work you refuse to do". If you can't
181 do the work yourself (or won't allocate the time to do so), or can't
182 convince someone to do it on your behalf, the proposal is
183 effectively dead already.
184
185 The Heinlein "There ain't no such thing as a free lunch" quote is dead
186 on in this regard; you want it, do the work. Involving the council
187 just wastes their time, and our time via this argument continuing.
188
189
190 > Would you support the proposal if you are happy with its
191 > implementation ?
192
193 The implementation frankly isn't for me; y'all might manage something
194 unexpected, but I've been laying out- much more so than the people
195 pushing this- exactly what is going to be involved here, and the
196 problems involved and why I've been -1'ing this bugger from day one..
197 As said, y'all may surprise me, but I expect the implementation to
198 prove my points.
199
200 And... now the argument will be "well why should we waste our time
201 doing it?".
202
203 A rather valid question I'd ask in that case is "if you respect my
204 views enough that you'd *skip* doing the implementation if I said it
205 was fucked, why were you freaking arguing and trying to railroad
206 it through the council?"... just saying.
207
208 The reason to do the implementation is that if y'all think everyone
209 else is wrong on this, do the legwork to prove them wrong, prove the
210 idea works.
211
212 Arguing on the ML, needling people about "well this would've solved
213 it" (see ciaran's labels behaviour from the last N years) aren't
214 productive. Produce code, or shut up, basically; that's roughly the
215 productive courses of action at this point.
216
217 I do want suggested/optional depends; I just don't want this mess
218 jammed in since it doesn't solve it particularly well (and that's
219 being generous in my word choice), and the associated cost isn't
220 worth the gains in my view. That simple.
221
222 Either way, if you'd like to keep trading blows, try pushing it to
223 the council despite people bitching... have at it, albeit by yourself
224 . I've made my points, done with this thread (sparing people more
225 emails).
226
227 ~harring

Replies

Subject Author
Re: [gentoo-dev] Addressing GLEP-62 itself Zac Medico <zmedico@g.o>