public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] Improving stability - checkpoints
@ 2002-04-20  2:15 William McArthur
  2002-04-20  6:08 ` Bill Kenworthy
  0 siblings, 1 reply; 3+ messages in thread
From: William McArthur @ 2002-04-20  2:15 UTC (permalink / raw
  To: Gentoo Dev

[Sorry if this is a duplicate, I'm currently demonstrating a severe lack 
of email skills.]

The other day there was a discussion on IRC about improving the 
stability of the distro as a whole. The popular idea at the time was a 
stability metric applied to each package based on a few things. The 
following is my thoughts on how to improve the situation with minimal 
developer effort.

First, I don't think the stability metric idea won't have it's desired 
effect. The libpng problems would not be prevented with a stability 
metric. The problem was not with the package specificlly but the 
interaction between pacakges. Specifically packages that linked with 
libpng and expected libpng-1.0.* .

We need something to describe a stable system as a whole. There are 
other sumissions out there but I'm unconvinced that they would improve 
stability.

I propose something I've dubbed a checkpoint as a feature to be added to 
emerge and a step in our developement process. Every other month or so 
we have a package freeze where we create a new checkpoint. Checkpoint 
file(s) describe the reasonably stable leading edge of each package 
currently available. Then during this freeze we test pacakges, the 
interaction between packages and the upgrade process.

Checkpoints are not like the package.mask because they don't exclude 
packages and don't prevent the user from upgrading package past what is 
listed in the checkpoint file. They describe the newest packages that 
`emerge foo` or `emerge --update world` will upgrade to. The user is 
still free to specify a newer version manually if for some reason they 
want to. Think of them as a line in the sand where everything on one 
side is considered reasonably stable and tested.

I envision a tool, it could be part of emerge, that is like the 
java-config's --list-available-vms and --set-system-vm= arguments. The 
tool handles the selection of the current checkpoint file. For example:
============
$ emerge --list-checkpoints
x86-bleeding-edge
x86-curent-stable
x86-2002-apr
x86-2002-feb
Checkpoint is currently set to: x86-2002-feb
$ emerge --set-checkpoint=x86-2002-apr
Checkpoint is now set to: x86-2002-apr
============

The bleeding-edge and current-stable checkpoints are special. 
Bleeding-edge is effictivly no checkpoint at all, or always the newest 
packages. Current-stable is like a sym-link to the most recent 
checkpoint and is automatically updated when a new checkpoint is final. 
In the above example that would be x86-2002-apr.

Checkpoint files should not be changed once deemed final. Thus they 
should be written so to allow a little wiggle room for bugfixes, 
probably only within different releases of the same ebuild version.

This makes good use of a developers time beacuse they aren't chasing 
bugs due to all the variations of various pacages they didn't test.

Many users will like not having to compile every point release of a 
package that is needed by some package they are merging. This is a 
duplicate benefit of the world favorits and I think obsletes it.

Many more users will like the reduced risk of 'emerge --update world' 
leaving their system in a b0rken state. Users that want the bleeding 
edge can still have it by specifing a package version or the bleeding 
edge checkpoint file.

Checkpoints would only be considered supported until they are two or 
three checkpoints old.

I hope this makes sense. I'm having trouble keeping my thoughts straight 
and this is the second time I've written this due to a system crash.

As always, feed back is desired.

Sandy McArthur



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [gentoo-dev] Improving stability - checkpoints
  2002-04-20  2:15 [gentoo-dev] Improving stability - checkpoints William McArthur
@ 2002-04-20  6:08 ` Bill Kenworthy
  2002-04-20 10:58   ` Terje Kvernes
  0 siblings, 1 reply; 3+ messages in thread
From: Bill Kenworthy @ 2002-04-20  6:08 UTC (permalink / raw
  To: gentoo-dev

One item I have not seen is the possibility of auto-rewinding something
like the libpng problem back to a working system.  CVS is a case in
point - when a build is broken, go back a version and build again. 
Williams checkpoint idea sounds similar to CVS in the way you can
specify versions.

Now this would be a *real* advance in taking some of the risk out of
bleeding edge for all users, average and developer.

BillK


On Sat, 2002-04-20 at 10:15, William McArthur wrote:
> [Sorry if this is a duplicate, I'm currently demonstrating a severe lack 
> of email skills.]
> 
> The other day there was a discussion on IRC about improving the 
> stability of the distro as a whole. The popular idea at the time was a 
> stability metric applied to each package based on a few things. The 
> following is my thoughts on how to improve the situation with minimal 
> developer effort.
> 
> First, I don't think the stability metric idea won't have it's desired 
> effect. The libpng problems would not be prevented with a stability 
> metric. The problem was not with the package specificlly but the 
> interaction between pacakges. Specifically packages that linked with 
> libpng and expected libpng-1.0.* .




^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [gentoo-dev] Improving stability - checkpoints
  2002-04-20  6:08 ` Bill Kenworthy
@ 2002-04-20 10:58   ` Terje Kvernes
  0 siblings, 0 replies; 3+ messages in thread
From: Terje Kvernes @ 2002-04-20 10:58 UTC (permalink / raw
  To: gentoo-dev

Bill Kenworthy <billk@iinet.net.au> writes:

  [ about checkpoints ]

> Now this would be a *real* advance in taking some of the risk out of
> bleeding edge for all users, average and developer.

  yup, and it should be very doable.  it is basically the same stuff
  as I've worked on recently, with a slightly different name.  :)

-- 
Terje


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-04-20 10:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-04-20  2:15 [gentoo-dev] Improving stability - checkpoints William McArthur
2002-04-20  6:08 ` Bill Kenworthy
2002-04-20 10:58   ` Terje Kvernes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox