/
Versioning

Versioning

The SlideWiki project follows the Semantic Versioning scheme as describe by the Semantic Versioning specification at (1).

A version number consists of three positive integer numbers, separated by a dot:

MAJOR.MINOR.PATCH

Citing (1):

  1. MAJOR version when you make incompatible API changes,
  2. MINOR version when you add functionality in a backwards-compatible manner, and
  3. PATCH version when you make backwards-compatible bug fixes.

Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.

Application to SlideWiki

  • The rule for major version changes (1.) is also applied especially when the database model changes in a way that the new version of a service cannot be deployed with an existing database (→ a pull of the updated image renders a deployment inoperable)
  • Backwards-compatible is defined as: The new version can be deployed by simply (as in automatic) updating the respective Docker images. No further steps are required and correct operation of any production deployment is ensured.
  • A major version change may require an operator of a production deployment to take additional steps such as using new/updated deployment scripts or running database migration scripts to pull content from the old database into that of the new deployment.
  • The SlideWiki project in general guarantees that content hosted in a system of version X can be migrated to a deployment of major version X+1

Questions:

  • How do we handle version dependencies?
    • platform → microservices
    • microservice X → microservice Y





(1) http://semver.org/

Related content

Server update and migration process
Server update and migration process
More like this
Branching Model
Branching Model
More like this
Migration
Migration
More like this
Data Models
Data Models
More like this
Non-critical user stories (TODO after september 2016) :
Non-critical user stories (TODO after september 2016) :
More like this
Move stable data to slidewiki.org
Move stable data to slidewiki.org
More like this