The structure of the version numbering is similar to semantic versioning:
[MAJOR].[MINOR].[PATCH]
However in the OpenMAMA project, some of these segments have additional special meaning when it comes to compatibility. Details are listed below.
When the MAJOR number increments, this represents a non-backwards compatible change in the application’s interface. This includes:
When the MINOR number increments, this represents a backwards incompatible change in the MAMA payload bridge’s, middleware bridge’s or plugin interface. This includes:
When the PATCH number increments, that represents a standard OpenMAMA Maintenance release. It may contain:
Note that the release may also be suffixed by additional descriptive strings such as “rcX”.
Before OpenMAMA 6.1.x was released, there was a bit of confusion around what the versioning represented. That formed a pretty large part of why we converged on this standard. The table below lists all equivalent versions as they were released by both Vela and OpenMAMA prior to OpenMAMA 6.1.x
| Version Information | Modern Normalized Version |
|---|---|
| OpenMAMA 2.2.x | 6.0.x |
| OpenMAMA 2.3.x | 6.0.x |
| OpenMAMA 6.0.x (x < 7) | 6.0.x |
| OpenMAMA 2.4.x | 6.1.x |
| OpenMAMA 6.0.x (x >= 7) | 6.1.x |
| OpenMAMA 6.1.x | 6.1.x |
| OpenMAMA 6.y.x (future) | 6.y.x |