Semantic versioning: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
(Beginning of a French wiki page translation to English (work in progress))
 
mNo edit summary
Line 6: Line 6:


==Introduction==
==Introduction==
[[Fichier:Versionnage semantique exemple mediawiki.png|300px|vignette|droite|Example of semantic versioning of [[Mediawiki]], the web application that powers this [[wiki]] and also Wikipedia.]]
Semantic versioning or version semantic management, also referred as [http://semver.org/lang/eng/SemVer] is a conventional naming system used to specify the version of a software, a plugin, a library or any other technology with a dot-separated 3 numbers pattern starting from 0 until infinity.
Semantic versioning or version semantic management, also referred as [http://semver.org/lang/eng/SemVer] is a conventional naming system used to specify the version of a software, a plugin, a library or any other technology with a dot-separated 3 numbers pattern starting from 0 until infinity.


Line 25: Line 24:


[[Category: Programming]]  
[[Category: Programming]]  
[[:Category:under construction | under construction category]]
[[Category:under construction]]

Revision as of 20:31, 14 October 2021

This article or section is currently under construction

In principle, someone is working on it and there should be a better version in a not so distant future.
If you want to modify this page, please discuss it with the person working on it (see the "history")


Introduction

Semantic versioning or version semantic management, also referred as [1] is a conventional naming system used to specify the version of a software, a plugin, a library or any other technology with a dot-separated 3 numbers pattern starting from 0 until infinity.

12.345.678

Each digit implies a type of change from the previous version. In order :

  1. The first digit stands for a major change
  2. The second digit stands for a minor change
  3. The third digit stands for a correction or a patch
major.minor.correction

This conventional naming tries to resolve 2 important development issues :

  • backwards compatibility : using an operating system as a reference, a new software is backwards-compatible if its N version works with Windows 8 and its N+1 version too. On the opposite, a software isn't backwards-compatible if its N version works with Windows 8 but its N+1 version requires Windows 10.
  • dependencies: softwares often rely on other softwares, plugins or libraries to work. For example, a website that can't work before a specific version of a web browser is dependant on the web browser version.