Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Updated versioning with pre-releases and modifiers

...

Patch – incremented for small changes, such as important bug fixes or minor component upgrades.  Compatibility with past releases under the Major.Minor is expected.

Every push to master should increment the release number in some fashion.  For example, if OpenLMIS is at 2.1.5, a single bug fix pushed to master would change the number to 2.1.6.  Final decisions on any number change lies with the Tech and Product groups.

...


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.