1 |
On Tue, Feb 03, 2004 at 12:04:59PM +0200 or thereabouts, Dan Armak wrote: |
2 |
> A real separate cvs branch seems like a lot of extra work; most updates going |
3 |
> into the stable branch will probably also go into the main tree. What am I |
4 |
> missing? |
5 |
|
6 |
A key part of the GLEP is ensuring that ebuilds stay in the tree for a |
7 |
minimum of one year. As has been proven time and time again, we don't have |
8 |
the necessary QA or control over our current tree to offer this feature, so |
9 |
I felt it was betetr implemented by offering a separate tree. |
10 |
|
11 |
Also, with one tree, we cannot offer atomic updates to our users. That is |
12 |
to say, with one tree, there would have to be some period of time where the |
13 |
stable tree was 'in flux' as devs went through and marked new ebuilds |
14 |
stable. With a separate tree, devs have an entire quarter where they can |
15 |
mark things stable at their leisure. Then, at a pre-defined date, we pull |
16 |
those ebuilds and can offer one, consistent tree to those folks who want |
17 |
the stable branch. |
18 |
|
19 |
> About keyword naming, I agree with Stuart's note elsewhere in the thread that |
20 |
> 'stable' is misleading. I also want to ask how the transition of |
21 |
> arch-->~stable:arch-->stable:arch is different from the existing transition |
22 |
> of ~arch-->arch. |
23 |
|
24 |
'stable' is meant to indicate that the tree is a stable one. Not that the |
25 |
ebuilds within them are more stable. However, down the road, I would |
26 |
hope/expect that our nascent QA efforts would expand and offer additional |
27 |
QA around these ebuilds as well. That's outside the scope of this GLEP, |
28 |
however. |
29 |
|
30 |
As for your question on transition, for 95% of all stable ebuilds, the path |
31 |
should be: |
32 |
|
33 |
~arch --> arch --> stable:arch |
34 |
|
35 |
~stable is there primarily for off-cycle updates. If we need to issue a |
36 |
GLSA and updated ebuild with very little testing, it would be included in |
37 |
the stable tree marked as ~stable:arch. Then, after 'adequate' testing, it |
38 |
would be moved to stable:arch |
39 |
|
40 |
I didn't explicitly state this in the GLEP because I don't want to have |
41 |
this be the only thing it can be used for. Depending on how people start |
42 |
using this tree, we may look to expand to use it for other purposes. |
43 |
|
44 |
> One possible distinction is: stable status is given to a package that is |
45 |
> widely enough used and respected in the big bad world and has no known bugs, |
46 |
> as opposed to a package that's in portage for a month and has no bugs but |
47 |
> hasn't actually seen much use or been a target for attempted attacks. The |
48 |
> latter would never move beyond a regular arch keyword. |
49 |
> |
50 |
> Some ebuilds might perhaps never be considered for the stable tree at all |
51 |
> because the target audience demonstrably isn't interested in them (based also |
52 |
> on actual usage data after the tree is up). |
53 |
> |
54 |
> Both these are an RFC more than a suggestion; I want to understand the GLEP's |
55 |
> idea, not propose an alternative of my own. |
56 |
|
57 |
I understand the uncertainty, but at the same time, I want to have some |
58 |
uncertainty built into the GLEP. Right now, there is a demonstrable need |
59 |
for enterprise users to have a more stable tree than we currently offer. |
60 |
That is the primary purpose of creating a separate tree. |
61 |
|
62 |
However, it is entirely possible that we will extend and expand this tree |
63 |
to be used in other ways. I don't want this GLEP to say "this is the only |
64 |
way this tree may be used" because I'd like to leave some room in it to |
65 |
grow and expand depending on the needs of our users. |
66 |
|
67 |
At least initially, I expect a lot of server-specific ebuilds to make it |
68 |
into the stable tree as these are the ones that our users have expressed an |
69 |
interest in so far. As such, if this GLEP is approved, it will be where my |
70 |
initial focus goes -- making sure MTAs, LAMP stuff, etc. make their way |
71 |
into the tree. |
72 |
|
73 |
In terms of what constitutes 'stable', that will largely be left up to the |
74 |
herd and/or package maintainer. Remember, 'stable' refers more to the fact |
75 |
that the tree itself does not change, rather than the ebuilds themselves |
76 |
being more stable. (This is another example of something that may change |
77 |
down the road once we improve our QA efforts) |
78 |
|
79 |
--kurt |