Versioning
Hexatomic adheres to Semantic Versioning 2.0.0.
Versions take the form of MAJOR.MINOR.PATCH.
MAJORversions are incompatible with each other.MAJORis incremented, when an incompatible API change is introduced.MINORversions add "features", i.e., backwards-compatible functionality.PATCHversions add backwards-compatible bug fixes.
Versioning of product, features, and modules
Hexatomic is complex software: It consists of modules which are bundled in features. The actual software product deliverable is again made up of several features.
Despite this, we apply a unified versioning scheme for Hexatomic. This means that changes on any level of modularity (module, feature, product) triggers a change in the unified version number.
Examples:
- A bug in a module is fixed. All version numbers in the Hexatomic product, all of its features
and all of its bundles increment the
PATCHidentifier. - A new module - developed by Hexatomic contributors or a third-party module - is added to a feature.
The module adds new functionality to Hexatomic. All version numbers in the Hexatomic product, all of its features
and all of its bundles increment the
MINORidentifier.
Scope
The versioning scheme described above applies to Hexatomic as present in the hexatomic/hexatomic repository on GitHub. It does not automatically apply to contributions which live in other repositories.