Debian
The aim of Debian is to integrate software produced by other projects to
create a complete operating system based on free software. In recent
years, the project has faced increasingly delayed and unpredictable
releases. Most notably, the release process of Debian 3.1 was
characterized by major delays. Initially announced for December 1, 2003,
the software was finally released in June 2005: a delay of one and a half
years. Since then, the project has made a number of improvements to its
release process.
Version | Date | Months |
1.1 | 1996-06-17 | |
1.2 | 1996-12-12 | 6 |
1.3 | 1997-06-02 | 6 |
2.0 | 1998-07-24 | 14 |
2.1 | 1999-03-09 | 7 |
2.2 | 2000-08-14 | 17 |
3.0 | 2002-07-19 | 23 |
3.1 | 2005-06-06 | 35 |
Past Problems
- Release management was not very organized and release updates were
posted only infrequently. Because of this and the lack of a roadmap,
freezes were often announced out of the blue.
- Due to the unorganized nature of the release, several new and
unexpected blockers were found during the release process, leading to
delays.
- The unexpected delays meant that software was frozen for a long time,
in the case of Debian 3.1 for over a year. When this release was finally
published, many components were already out of date and would often not
meet user demands.
- The fact that Debian has experienced significant delays with several of
its recent releases has led to problems with the image of the project.
There is a perception that Debian is slow and cannot meet deadlines. This
is also associated with frustration in the developer and user
community.
Solutions
- The project has implemented better release management structures. In
particular, Debian moved from a single release manager to a team during the
3.1 release cycle. The release is now handled by two release managers with
the help of several release assistants.
- A release date for the next release was
set well in advance and there is more planning.
- Release announcements are sent more frequently and various information
sources have been implemented through which developers can stay informed
about the release status.
- Release targets have been defined better and there is a
distinction between blockers and goals. Only blockers hold up the
release whereas goals can be postponed for a future release. For example,
the XFree86 to X.org transition and the integration of AMD64 support were
blockers, while LSB 3.1 compatibility and SE Linux support were only goals
for Debian 4.0.
- The release team has shifted the responsibility of achieving targets to
specific developers and teams. There are also better criteria now defining
these responsibilities. For example, criteria have been
published that architectures need to fulfil for inclusion in
Debian 4.0 and there is a page indicating the
status of each architecture.
- The release team is increasingly giving encouragement to developers to
help out with software packages and bugs which normally do not fall into
their domain.
- A staged freeze has been implemented according to which software is
frozen in stages according to its importance. The toolchain and base
system are frozen earlier than the majority of package. The majority of
software is now frozen when most blockers have been resolved.
- The use of the experimental repository has been promoted to make sure
that the main development repository is in a good shape most of the
time.
Outstanding problems
- Developers still need to be convinced that targets can be met, that
deadlines are real and that Debian can release on time.