From this section, it is obvious that we need to follow this rule:
Given a version number MAJOR.MINOR.PATCH, increment the:
- MAJOR version when you make incompatible API changes.
- MINOR version when you add functionality in a backward compatible manner.
- PATCH version when you make backward compatible bug fixes.
If we need to put pre-release label and/or build metadata, we can extend the semver into MAJOR.MINOR.PATCH[-PRERELEASE][+BUILD] format.