Versioning
The versioning policy in AgE is as follows:
- AgE conforms to Apache's standard of versioning:
major.minor.patch
- The repository's
trunk
contains the nextmajor.minor
snapshot, which is currently worked on - For each
major.minor
release supported, a dedicated maintenance branch is kept in the repository, under/branches/releases/minor.major.x
- Bugfixes for any supported
major.minor
release are worked on in the corresponding maintenance branch. Once enough bugfixes are gathered, an incrementalmajor.minor.patch
release is performed from that branch - In particular, the initial
major.minor.0
release is also performed from that branch - All
major.minor.patch
releases are tagged in the repository under/tags/jage-minor.major.patch
As an example, this is how the repository looked like when this was written:
- 2.6.0-SNAPSHOT was the current version in the trunk
- 2.5.x releases were supported under a
/branches/releases/2.5.x
maintenance branch - 2.5.1-SNAPSHOT was the current version in the branch
- 2.5.0 release was tagged under
/tags/jage-2.5.0
If you look in the repository graph, things were slightly messier with the 2.5.0 release, although resulting in the same structure. However, this should be looked on as en exception, not an example. All future releases should be performed according to the guidelines above.