Semantic version is particular strategy for versioning software, it provides a common language for software versioning. A semantic version number has three parts a.b.c, for example 2.1.1 – pronounced "two dot one dot one". The first number, a, is called the major version, this is incremented when a breaking change is made. The second, b, is called the minor version, this is incremented when backward-compatible changes are made. And the third number, c, is called the patch version, and is incremented when backward-compatible bug fixes are made.