Last Updated: February 25, 2016
·
579
· eldadfux

This is how you should handle your versions

"Software versioning is the process of assigning either unique version names or unique version numbers to unique states of computer software. Within a given version number category (major, minor), these numbers are generally assigned in increasing order and correspond to new developments in the software." Wikipedia

In this protip i would like to introduce to you the Semantic Versioning Specification.

Semantic Versioning Specification is not a new idea. In fact, you probably do something quite close to it already. The problem is that without sticking to a formal specification your version name is just a group of meaningless numbers, dots and letters that only you and your team understands, this names are useless for dependency management. By giving a clear definition to the name of your version it becomes easy to communicate your intentions to the users of your software. Once these intentions are clear, dependency specifications can be made.

The Semantic Versioning Spec provide software developers with a great way to release new versions without having to roll new versions of dependent packages, saving you time and hassle and giving you the confidence to upgrade your own or your 3rd party software.

The Semantic Versioning specification is authored by Tom Preston-Werner, inventor of Gravatars and cofounder of GitHub and is available @ http://semver.org/.

IIf you like this post you are welcome to follow me or my great team @Walla! R&D.

You may also like: