Skip to content

Commit 206251f

Browse files
committed
releases: use +dev as in-development suffix
Under SemVer, the suffix "-dev" actually indicates a pre-release, meaning the way we've been using the suffix indicates that "1.0.0-dev" is *older* than "1.0.0" when we've used the suffix to indicate the opposite. With most package managers, the "+dev" suffix correctly indicates that the version is newer (i.e. 1.0.1 > 1.0.0+dev > 1.0.0), though under SemVer "+dev" build tags must be ignored when doing version comparisons (meaning 1.0.0+dev == 1.0.0 under SemVer). However, from a SemVer perspective the unreleased version is inarguably closer to being equal to the last release than being older than it. As a specification we also allow extensibility of various parts, meaning that if someone uses an as-yet-unreleased version it seems reasonable to me for it to be treated as the same (from a SemVer perspective) as the last released version it's based on. The other option would be to continue to use "-dev" as a suffix but bump the rest of the version number to the next version we plan to release, but this could also cause issues (we could have a "pre-release" for a release that never happened). Using "+dev" seems more sensible. Switching to "+dev" also matches the way runc and umoci are versioned, and allows downstreams that use as-yet-unreleased versions of our specs to have their spec versions be treated as the same as the released version by other consumers. Signed-off-by: Aleksa Sarai <[email protected]>
1 parent 5bc62f1 commit 206251f

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

RELEASES.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ Releases usually follow a few steps:
6464
* [ ] merge multi-commit PRs (so each line has a `(#num)` suffix)
6565
* [ ] drop hash and indent, `:'<,'> s/^\w* /^I* /`
6666
* [ ] a commit bumping `./specs-go/version.go` to next version and empty the `VersionDev` variable
67-
* [ ] a commit adding back the "-dev" to `VersionDev`
67+
* [ ] a commit adding back the "+dev" to `VersionDev`
6868
* [ ] send email to [email protected]
6969
* [ ] copy the exact commit hash for bumping the version from the pull-request (since master always stays as "-dev")
7070
* [ ] count the PRs since last release (that this version is tracking, in the cases of multiple branching), like `git log --pretty=oneline --no-merges --decorate $priorTag..$versionBumpCommit | grep \(pr\/ | wc -l`

0 commit comments

Comments
 (0)