Project Versioning Standards Proposal
This goal of this page is to propose a standard versioning scheme to be used across
JBoss projects. The purpose of this is to have consistency among the projects for easier
integration among projects and better functionality with the build system (Maven).
Project Version String
The project version should look similar to the maven standards, and should include a major
version, minor version, micro version, and qualifier.
..-[-][-SNAPSHOT]
For example the version string "2.0.3-beta-1" can be parsed as follows:
Major version - 2
Minor version - 0
MIcro version - 3
Qualifier - beta
Increment - 1
The major, minor, micro, increment versions can be any number, and the qualifier field
should normally be one of five different strings.
alpha - Non feature complete version
Generated by Clearspace on 2009-09-03-04:00
1
Project Versioning Standards Proposal
beta - Feature complete but not fully tested.
cr - Ready for release pending final testing
ga - Released version
sp - Post release updates (bug fixes, minor improvements, etc)
Every project version should include all five components of the version string with the
exception of the increment which does not need to be included when the qualifier is "ga".
Snapshot Versions
Development versions of projects should append the "-SNAPSHOT" qualifier. This is
handled as a temporary development build by the build system and are not considered
releases. Snapshot builds are deployed to the maven snapshot repository and are
periodically deleted from the repository depending on the disk space limitations.
Compatibility with OSGi Versions
The OSGi specification defines the version String as follows:
major( '.' minor ( '.' micro ( '.' qualifier )? )? )?
The project version string can be converted to an OSGi compatible version string using
the build-helper-maven-plugin. This can be useful for example if packaging the project
artifact(s) as an OSGi bundle.
Generated by Clearspace on 2009-09-03-04:00
2