What is Semantic Versioning?
A versioning scheme using MAJOR.MINOR.PATCH numbers that communicates the nature of changes in each release.
Semantic Versioning (SemVer) uses three numbers: MAJOR (breaking changes), MINOR (new features, backward compatible), PATCH (bug fixes, backward compatible). Example: 2.4.1 → 2.5.0 (new feature) → 3.0.0 (breaking change).
Pre-release versions use suffixes: 1.0.0-alpha, 1.0.0-beta.1, 1.0.0-rc.1. SemVer enables dependency management tools to automatically determine compatible updates. Most package managers (npm, pip, cargo) rely on SemVer.