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.