wiki:BluePrintVersions

Version 18 (modified by Dominic König, 12 years ago) ( diff )

--

SahanaPy Version Numbering

General Schema

Version numbering follows the following schema:

  [major].[minor].[version]-[branch]-[branch-version]
major Major Release Number, starting with 0
minor Minor Release Number, starting with 1
version Version number of main trunk, even numbers = stable version, odd numbers = development version, starting with 0
branch Name of the branch, omitted for main trunk
branch-version Version number in branches, even numbers = stable version, odd numbers = development version, starting with 1

Stable versions of the trunk must have their release and version numbers in the bzr commit log.

  • Bzr commits without release/version number in the commit log are always considered being unstable.
  • Bzr commits with a release and (an even) version number on top of their commit log indicate a stable version.

Version Numbers in Main Trunk

Each new minor release starts with version number 0 in the stable, and 1 in the development version, i.e.:

  • 0.3.0 is the initial stable version of the 0.3 release
  • 0.3.1 is the initial development version of the 0.3 release

For each update of the stable version, both version numbers are increased by 2, that is, when 0.3.1 is tested and ready for release, so:

  • 0.3.1 gets renumbered as 0.3.2 for release (stable 0.3.0=>0.3.2)
  • new development version will be 0.3.3 (development 0.3.1=>0.3.3)

Version Numbers in Branches

The release/version number of a branch follows the main trunk, i.e. it indicates the trunk version it is synchronised with:

  • 0.3.6.1-vita

uses the code from the 0.3.6 trunk version.

  • 0.3.6-vita-1 (VITA branch, version 1, code from trunk version 0.3.6) => next version: 0.3.6-vita-2

Whenever a branch gets synchronised with the main trunk, the release and trunk version number gets updated:

  • 0.3.6-vita-1 => Merge with trunk version 0.3.7 => 0.3.7-vita-1

Even branch version numbers indicate a "ready for merge":

  • 0.3.6-vita-6 => ready for merge
  • 0.3.2-haiti-13 => not ready for merge

Merge-ready versions of a branch must have their release and version numbers in the bzr commit log.

Examples

E.g.:

0.3.3-haiti-56
  • Major Release: 0
  • Minor Release: 3 ("Banwell")
  • Version: 3 (development version of the trunk)
  • Branch: haiti (Haiti Earthquake 2010 Deployment Branch)
  • Branch version 56 (stable)
0.3.4-vita-13
  • Major Release: 0
  • Minor Release: 3
  • Version: 4 (stable version of trunk)
  • Branch: vita (VITA development branch)
  • Branch version 13 (unstable, not ready for merge into trunk)
0.3.6
  • Major Release: 0
  • Minor Release: 3 (Codename "Banwell")
  • Version: 6 (stable version, main trunk)
Note: See TracWiki for help on using the wiki.