[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: unstable/testing/[pending/frozen/]stable

On Wed, 22 Sep 2010 07:31:45 +0100
Neil Williams <codehelp@debian.org> wrote:

> So when and where are library transitions meant to occur? Transitions
> are always disruptive, always cause some packages to be non-functional
> or non-installable. There has to be somewhere (unstable) where libfoo2
> can be uploaded with libfoo2-dev so that all packages which depend on
> libfoo1 can start the migration to the new API. As the migration
> starts, there is a period (which in the case of GTK1->2 took several
> years) where many packages in unstable are uninstallable or FTBFS or
> just horribly buggy.

(note: this only gets worse with libfoo-dev_2 replacing libfoo-dev_1
but that does not mean that libfoo-dev should be disallowed or
> > But I cannot be first thinking about that, and I bet there were good
> > reasons why such approach was not taken -- could anyone
> > enlighten/point me to the shortcomings?
> In a word, transitions.

Personally, I've always considered it *more* important for Debian to
stabilise code than to always have the newest code. Stable beats new
every time. I run a mix of Debian machines, some for Debian development
which run unstable, some for Emdebian development which run testing and
some for upstream development which run stable. That is quite enough
work, thanks, I really, really don't want to have to add another
variant of unstable and/or testing to suit the needs of people who
prioritise buggy bleeding edge code over stable tools. The core system
(i.e. everything I'm not currently debugging) must be stable and
reliable if I'm going to get my work done.

Do people really want a version of unstable that always has the latest
broken version of iceweasel or some horrible partial transition to
python3 or the bleeding edge version of Xorg built directly from VCS
and which constantly crashes??

Having *everything* new and bleeding edge means that no bugs ever get
identified because you cannot tell which bit is bust or the bug you
want to fix is blocked by a bug in the X server or the python
interpreter or a buggy version of libgcc1 or something.

The platform (whatever packages are deemed part of the platform for any
one developer) *must* be stable if the code is to improve. Therefore,
individual developers need a stable platform onto which can be added
their own buggy code - not as packages from Debian but as checkouts
from whichever VCS is in use.

Predictability and reliability are key components of a usable
development platform. Without those, there is no chance of fixing
intermittent or corner case bugs.


Neil Williams

Attachment: pgp_BSNg1Eh_I.pgp
Description: PGP signature

Reply to: