Semantics of Version Numbers

jadice server uses the concept of Semantic Versioning as a basis for version numbers. Semantic versioning describes the semantics and syntax of a version number. A 3-digit version number is defined which follows the format X.Y.Z . jadice server adds a further digit which denominates the product generation and precedes the digits specified by semantic versioning. Hence, the format G.X.Y.Z (Generation.Major.Minor.Patch) ensues.

In the following, the semantics of the individual digits will be briefly summarized (see http://semver.org/ for a detailed and more complete definition):

G.X.Y.Z

This digit describes the patch level and constitutes the last digit of the version number. It is counted up when a release introduces only bug fixes which are compatible downwards. A bug fix is a change or correction of internal behavior.

G.X.Y.Z

The second to last digit is the minor level. It can encompass alterations on the patch level and is counted up if the following changes are introduced:

  • Downwardly compatible extension of the public API.

  • Introduction of downwardly compatible functionalities.

  • Parts of the public API has been marked as deprecated.

Optionally, the digit may be counted up when significant internal improvements or functionalities (without changes to the public API) have been introduced.

Once the minor level has been counted up, the patch lever (Z) is reset to 0.

G.X.Y.Z

This digit describes the major level and is counted up when non-downwardly compatible alterations to the public API have been carried out. Major versions may encompass changes on the minor (Y) and patch level (Z). Once the major level (X) has been counted up, minor (Y) and patch level (Z) are reset to 0.

G.X.Y.Z

This first digit is added by jadice server and describes the product generation. A change in this level's numbering occurs when the number of alterations on the major level prevents a simple migration. The change in generation encompasses changes on other levels and therefore these are reset to 0.

[jadice server Version 5.8.7.0: Documentation for Developers and Administrators. Published: 2021-04-15]