Time based releases

We want to do time-based rather than feature based releases.

See for example GNOME's info on time-based releases. They've done this very successfully. See also Martin Michlmayr's PhD thesis in which he argues for time based releases. It is extremely relevant to us. He surveys many similar projects like GCC, GNOME, Debian and others.

See the current release timetable.

Process for major releases

This is yet to be finalised. The following is a straw man proposal.

  • -4 months: New package proposals
  • -2 months: Package proposals finalised
  • -6 weeks: Package API frozen, alpha testing release
  • -4 weeks: beta testing release
  • -2 weeks: Package versions frozen, release candidate
  • 0: Major release

Process for minor releases

  • -2 weeks: Package versions frozen
  • 0: Minor release

Detailed steps

  • Bump version number in .cabal following package versioning policy
  • Update core libraries to match what GHC provides
  • Collect list of version revisions for packagers
  • Update list of external packages to latest version mapping to PVP bump of the HP itself.