Pages

Monday, April 8, 2019

SemVer := Semantic Versioning

Here we are limiting our discussion for node.js semver

For nodejs itself and other npm packages: we see the versioning

j.n.p [ 3 group of digits ] e.g. 2.12.34

j = Major
n = Minor
p = Patch

For a package author the convention of version management is as follow:


  • Increment of Major version: Incompatible API Changes
  • Increment of Minor version: Added functionality with backward compatibility
  • Increment of Patch version: backward compatible bug fixing is added


Presiding Symbols of SemVer:

When npm install/update is run, package versions prepended with

~ will update only patches of the specified major and minor

^ will update only minors of the specified Major

|| logical or operation; either of the packages will be updated for example use 1.0.0 || >=1.1.0 <1.2.0 to either use 1.0.0 or one release from 1.1.0 up, but lower than 1.2.0.

= or no symbol - exactly mentioned package version

<   less than this Major, minor and patch
<= less than or equal to this Major, minor and patch
>   more than this Major, minor and patch
>= more than or equal to this Major, minor and patch


Only latest will update to the latest version.



No comments :

Post a Comment