Quick Notes143 words
Dependency versioning strategy — quick notes
Versioning strategy — quick notes
| Scheme | Encodes | Best for |
|---|---|---|
SemVer MAJOR.MINOR.PATCH | Stable-public-API compatibility | Libraries and packages with a compatibility contract |
CalVer e.g. YYYY.0M.0D | Release calendar | Time-sensitive or externally driven projects |
| SemVer part | Meaning |
|---|---|
| MAJOR | Breaking change |
| MINOR | Backward-compatible feature |
| PATCH | Backward-compatible fix |
- Major zero (
0.y.z) is initial development; its public API is not stable. - Pre-release tags (
-beta.2) sort before the normal release; Azure view promotion is separate. - npm: a direct exact specification does not lock the transitive tree.
- npm: compatible
package.jsonrange + committedpackage-lock.jsongives explicit intent and a reproducible resolved tree.
Trap: a breaking change published as a PATCH — worse than no scheme, because consumers relied on the guarantee.