Semantic versioning
An agreed version scheme expressing intended compatibility of changes to a defined public API.
Version numbers with agreed meaning
Semantic versioning, or SemVer, links MAJOR.MINOR.PATCH to changes in a defined public API. From 1.0.0, increasing major signals incompatible changes, minor compatible additions and patch compatible bug fixes.
In a fictional example, a compatible fix to 2.4.1 is released as 2.4.2. For initial development under 0.y.z, the specification does not yet consider the API stable. Check whether a supplier actually uses this scheme and what its API covers. A version number communicates a promise; it does not prove compatibility tests were performed or replace release notes and checks before updating.
Sources
Related terms
- Backward compatibilityA new version continues supporting agreed existing usage without requiring changes to existing consumers.
- Breaking changeA change that prevents previously supported consumers or uses from working as agreed.
- Software releaseA software release is an identified software version made available for a particular use. Publishing it does not automatically switch every system to it.
- Cache stampedeA cache stampede occurs when concurrent cache misses trigger the same expensive calculation or data query repeatedly.
- BackpressureBackpressure adjusts incoming data to the receiver’s processing capacity through signals to slow down or pause.
- Race conditionA result depends on the timing of overlapping accesses and can therefore be wrong.
Your project with ASES
Describe your project to us. We will get back to you with an initial assessment.