Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

Releases Notes

To download a release, please visit GitHub.

Release Numbering

Version 3 follows the Semantic Versioning standard :

  • Patch releases with bug fixes, small changes and security patches will come out on an as-needed schedule (3.0.1, 3.0.2, etc). Compatibility with past releases under the Major.Minor is expected.
  • Minor releases with new functionality will come out quarterly and will be backwards-compatible (3.1, 3.2, 3.3, etc). Compatibility with past releases under the same Major number is expected.
  • Major releases would be for non-backwards-compatible API changes. None is planned at this time (4.0 and above).

Version 2 also followed the above above standards.

Goals

Predictable versioning is critical to enable multiple country implementations to share a common code base and derive shared value. This is a major goal of the 3.0 Re-Architecture. For example, Country A's implementation might fix a bug or add a new report, they would contribute that code to the open source project, and Country B could use it; and Country B could contribute something that Country A could use. For this to succeed, multiple countries using the OpenLMIS version 3 series must be upgrading to the latest Patch and Minor releases as they become available. Each country shares their bug fixes or new features with the open source community for inclusion in the new Patch or Minor release.

Pre-Releases

Starting with version 3, OpenLMIS supports pre-releases following the Semantic Versioning standard.

Currently we suggest the use of beta releases. For example, 3.0 Beta is: 3.0.0-beta.

Note: the use of the hyphen consistent with Semantic Versioning. However a pre-release SHOULD NOT use multiple hyphens. See the note in Modifiers on why.

Modifiers

Starting with version 3, OpenLMIS utilizes build modifiers to distinguish releases from intermediate or latest builds. Currently supported:

ModifierUseExample
SNAPSHOTThe SNAPSHOT modifier distinguishes this build as the latest/cutting edge available.  It's intended to be used when the latest changes are being tested by the development team and should not be used in production environments.3.0.0-beta-SNAPSHOT


Note: that there is a departure with Semantic Versioning in that the (+) signs are not used as a delimiter, rather a hyphen (-) is used. This is due to Docker Hub not supporting the use of plus signs in the tag name.

For discussion on this topic, see this thread. The 3.0.0 semantic versioning and schedule were also discussed at the Product Committee meeting on February 14, 2017.

  • No labels