1 |
On Thu, 2006-07-27 at 10:00 +0100, Chris Bainbridge wrote: |
2 |
> I would also like to see that (though maybe with some automated |
3 |
> feedback from users systems as to which packages are installed / how |
4 |
> often they are run). All that the current process ensures is that: |
5 |
|
6 |
Any automated system will cause serious problems for the quality of the |
7 |
distribution without several orders of magnitude of more powerful |
8 |
hardware on our side. |
9 |
|
10 |
> 1) thousands of packages will never be marked stable |
11 |
|
12 |
Honestly, they shouldn't be stable. In fact, likely, many shouldn't be |
13 |
in the tree. We have way too many packages that are used solely by a |
14 |
small group of people sitting around the tree. These would be better |
15 |
served in official overlays, where they can be maintained by the |
16 |
interested parties (including users), rather than in the tree. |
17 |
|
18 |
> 2) Everyone running stable who wants some recent packages ends up with |
19 |
> /etc/portage/package.keywords with hundreds of entries |
20 |
|
21 |
People don't seem to understand that you cannot have your cake and eat |
22 |
it, too. I have no sympathy for these people. |
23 |
|
24 |
If you want *stable* then you're going to have to wait until the package |
25 |
has passed QA and the bugs have been resolved. If you want *new* then |
26 |
you simply have to deal with the bugs. |
27 |
|
28 |
People seem to think that there's some magical solution to this. There |
29 |
is no solution other than more people actually *solving* the problems |
30 |
that keep packages from making it to stable. The packages that are |
31 |
complained about the most are invariably large sets of packages, like |
32 |
GNOME or KDE, that have hundreds of dependencies and take quite some |
33 |
time to get into a condition that can be considered "stable" at all. |
34 |
|
35 |
If you want things to make it to stable faster, then start supplying |
36 |
patches. |
37 |
|
38 |
> 3) Debugging user bugs when users have a mixed x86/~x86 system is a |
39 |
> lot more complicated. Every system ends up being a unique combination |
40 |
> of different packages and versions. |
41 |
|
42 |
This isn't even an issue. Every Gentoo system is a unique combination |
43 |
of packages and versions, USE flags, CFLAGS, etc. |
44 |
|
45 |
> 4) The user experience sucks - see the forums/wiki... "to install |
46 |
> this great sw you need the latest version of x, which depends on y,z, |
47 |
> so copy paste this huge block in to /etc/portage/package.keywords."... |
48 |
> then 2 weeks later some depend changes, and suddenly emerge -u world |
49 |
> no longer works, and user has more problems to solve. |
50 |
|
51 |
Honestly, the number of people out there giving shit advice is part of |
52 |
the problem. Rather than telling people to do this sort of thing, a |
53 |
better solution would be to tell people how they can *help* instead of |
54 |
how they can bypass the system, which ends up with clueless users filing |
55 |
more bugs, which delays the stabilization longer. Every user that |
56 |
someone knowledgeable gets to use something they don't understand, is a |
57 |
potential bug report slowing stabilization even more. |
58 |
|
59 |
> The testing is supposed to be for the ebuild, not the package itself, |
60 |
> so there's not much point in holding back packages with simple ebuilds |
61 |
> from being stabilised. And the testing process isn't that extensive |
62 |
> anyway - all it ensures is that the package builds and can be run on |
63 |
> one particular arch testers system. No disrespect to the testers, but |
64 |
> they can't be experts in every particular piece of software. How much |
65 |
> code coverage does a typical ebuild really get when being tested? |
66 |
|
67 |
First off, we have a level of expectation of stability to maintain. If |
68 |
all packages were done "right" then 90% of the ~arch packages in the |
69 |
tree would be under package.mask, rather than ~arch. Only packages in |
70 |
~arch would be ones with no bugs open, to test the ebuild, so that they |
71 |
can become stable. As we all know, this isn't the case. Developers all |
72 |
over the place, including myself, have put in tons of packages that |
73 |
aren't necessarily perfectly stable themselves. We do this because our |
74 |
users demand it. We have reached a critical mass of users, where no |
75 |
matter what we do, somebody is going to bitch and piss and moan because |
76 |
we don't do things the way they would like. There's nothing that we can |
77 |
do about this except decide collectively what the best course of action |
78 |
for our users would be and try to make things as high-quality as |
79 |
possible. |
80 |
|
81 |
Automatic stabilization is one of those things that would cause our |
82 |
quality to go to hell. Another thing is this. If you don't like it, |
83 |
fork. You've got the code. You're *more than welcome* to go around |
84 |
making your own overlay/tree and marking whatever rubbish you feel like |
85 |
as stable. There's *nobody* stopping you from doing so. However, many |
86 |
of the Gentoo developers feel a stronger sense of duty to the users, and |
87 |
would prefer not shove a bunch of crap down the pipe onto people's |
88 |
computers. There are a few of the developers that are followers of the |
89 |
"ricer" philosophy, claiming that they don't mind a few bugs here and |
90 |
there. Well, the number of bugs in bugzilla shows that our users simply |
91 |
don't agree. |
92 |
|
93 |
> I'd say no bugs, 30 days, passes internal tests, being run by users => |
94 |
> stablise, for the majority of packages (obviously, there may be some |
95 |
> exceptions...). |
96 |
|
97 |
Luckily, you're not making the call. ;] |
98 |
|
99 |
The "majority" of packages are also the ones that need more extensive |
100 |
testing. Sure, we could probably stabilize a bunch of the fringe |
101 |
packages that hardly anyone uses and it wouldn't affect anything. |
102 |
Another problem is that we don't *know* what is being run by our users. |
103 |
This is something that the Summer of Code project for a Gentoo Stats |
104 |
project should at least help with, as it will give us an insight into |
105 |
what is actually being used and what isn't. |
106 |
|
107 |
Personally, I would love to see Gentoo splinter a bit more. I would |
108 |
love to see lots of packages removed from the tree entirely, and moved |
109 |
out into overlays. I wouldn't mind seeing the tree completely split |
110 |
into the "ricer" and "stable" camps. Let's call them "Gentoo |
111 |
Enterprise" and "Gentoo X-Treme UberEdition" just to keep them |
112 |
separate... |
113 |
|
114 |
Seriously, folks. If you think that packages should be available |
115 |
faster, run ~arch. Test the packages. Report successes/failures to the |
116 |
maintainers. File stabilization bugs if your favorite package hasn't |
117 |
had another bug in 30 days and you've been using it. Basically, help |
118 |
out, rather than sitting back and complaining. Complaining helps |
119 |
nobody. Helping out helps everyone, yourself included. We understand |
120 |
that you might not be able to make a commitment, or even want to do so. |
121 |
However, every single bug report that you file *is* helping out... and |
122 |
every little bit helps. |
123 |
|
124 |
-- |
125 |
Chris Gianelloni |
126 |
Release Engineering - Strategic Lead |
127 |
x86 Architecture Team |
128 |
Games - Developer |
129 |
Gentoo Linux |