What is Semantic Versioning (SemVer)?
Turkish: Semantic Versioning
Semantic Versioning uses MAJOR.MINOR.PATCH numbers to distinguish breaking changes, backward-compatible features, and bug fixes.
What is Semantic Versioning?
Semantic Versioning, or SemVer, makes a software version number communicate the impact of a change. In a version such as 2.4.1, the first number indicates breaking changes, the second indicates backward-compatible features, and the third indicates bug fixes.
This convention matters most for teams publishing libraries, packages, SDKs, and APIs. Consumers can estimate upgrade risk by looking at the version number before reading every release note.
MAJOR.MINOR.PATCH
- MAJOR: Includes backward-incompatible changes. Existing integrations may need code changes.
- MINOR: Adds backward-compatible functionality.
- PATCH: Fixes bugs without changing the public contract.
- Pre-release: Labels such as
1.3.0-beta.1mark test or preview releases. - Build metadata: Suffixes such as
+build.45can add build information.
Business Use
SemVer makes automated dependency updates safer. For example, an accounting integration that accepts ^1.8.0 may receive patch and minor updates, while 2.0.0 should trigger manual review.
The version number is only useful when paired with a changelog, migration notes, test coverage, and Git tags. For externally consumed services, SemVer can also influence API versioning decisions.