Release checklist

When changing the version, run build-scripts/update-version.sh X Y Z, where X Y Z are the major version, minor version, and patch level. So 3 8 1 means “change the version to 3.8.1”. This script does much of the mechanical work.

New feature release

  • Update WhatsNew.txt

  • Bump version number to 3.EVEN.0:

    • ./build-scripts/update-version.sh 3 EVEN 0
  • Do the release

  • Update the website file include/header.inc.php to reflect the new version

New bugfix release

  • Check that no new API/ABI was added

    • If it was, do a new feature release (see above) instead
  • Bump version number from 3.Y.Z to 3.Y.(Z+1) (Y is even)

    • ./build-scripts/update-version.sh 3 Y Z+1
  • Do the release

  • Update the website file include/header.inc.php to reflect the new version

After a feature release

  • Create a branch like release-3.4.x

  • Bump version number to 3.ODD.0 for next development branch

    • ./build-scripts/update-version.sh 3 ODD 0

New development prerelease

  • Bump version number from 3.Y.Z to 3.Y.(Z+1) (Y is odd)

    • ./build-scripts/update-version.sh 3 Y Z+1
  • Do the release