Releases/Create Release

From UFO:AI
Jump to navigation Jump to search

Release guidelines

This is a guideline for release maintainer and main-developers how to create a release from git.

This is still TODO and needs major cleanup.

Main developers

  • Decide what version number the release needs. See #Version number system below.
  • Check if all locations that contain the version number are up to date. If not, update the files so they reflect the current version number.
  • Create tag with current version-number.
  • Update Changelog
  • Update News section on the homepage with the release information and available release-files.
  • Create new tags for the bug tracker.

Others

Version number system

Releases/Branch-names Release Candidates Development Releases
x.y x.y-RCz x.y-devz

Development releases (unstable)

This version numbers are used for unstable (pre-RC) releases for beta-testing.

  • 2.1-devz development release for 2.1
  • 2.2-devz development release for 2.2
  • 3.0-devz development release for 3.0
  • etc...
x - Is the major version number of the release.
y - Is the minor version number of the release.
z - Is the number of the dev-release candidate starting with 1.

Release candidates (mostly stable)

This version numbers are used for pre-stable releases of the code. i.e the code should be feature-frozen.

Note: do not use uppercase letters when using this in filenames & git.

  • 2.0-RCz release candidate for 2.0
  • 2.1-RCz release candidate for 2.1
  • 3.0-RCz release candidate for 3.0
  • etc...
x - Is the major version number of the release.
y - Is the minor version number of the release.
z - Is the number of the Release Candidate starting with 1.

Release versions (stable)

This version numbers are used for stable releases in the branches.

  • 2.0
  • 2.1
  • 2.2
  • 3.0
  • 3.1
  • etc...
x - Is the same as in the Release candidates. This number will most probably only changed if some major refractory of the code is made.
y - Starts with 0 for the first stable release and is incremented for each following release.
z - unused

Version tree

For each Release and Release Candidate we'll create a 'tag' in the repository so it can be accessed again later on.