Skip to content
dabayliss edited this page Jan 17, 2012 · 3 revisions

Branch and version strategy

Versions

Version numbers take the form MAJOR.MINOR.POINT_SEQUENCE

  • The MAJOR version will change only with a significant architectural change.
  • The MINOR version number changes when new features are introduced.
  • The POINT version number changes when bugs are fixed.
  • The SEQUENCE number is changed when new code is available in a versioned branch.

Versions that have been closed down, tested, and passed as suitable for general release are given even MINOR and POINT numbers. Odd numbers are reserved for builds for testing purposes only.

In addition to the version number there is a MATURITY string that may be found in the version string. The maturities in use are:

  • <none> - a stable build
  • closedown - gathering bugfixes for a new POINT release
  • rc - a release candidate.

Branches

The master branch contains the latest accepted code. Code in the master branch should normally be fully functional, but may not yet have gone through rigorous testing or be considered production-ready. It is the 'bleeding edge'.