Release notation-go-lib-v0.7.0-alpha.1
iamsamirzon opened this issue · comments
Proposing we release notation-go-lib-v0.7.0-alpha.1 as we have completed the milestone. Release process is defined here.
High level deliverables as as follows:
- Decide on main commit for release
- Cut branch named v0.7.0-alpha.1 based on agreed upon main commit
- Cut a tag named v0.7.0-alpha.1
- Update README.md
/cc @SteveLasker @NiazFK @justincormack @sajayantony
Can the maintainers please respond with a +1 comment once you are in favor of cutting this release.
I believe the tag names have to be prefixed with v
and similarly recommend prefixing the v
for release as well similar to https://github.com/kubernetes/kubernetes/releases/tag/v1.22.2
+1
+1
@iamsamirzon - The candidate commit is - 6f3abd7
LGTM 6f3abd7
There is a issue in the version v1.0.0-alpha-1
.
According to SemVer 2,
Precedence for two pre-release versions with the same major, minor, and patch version MUST be determined by comparing each dot separated identifier from left to right until a difference is found as follows:
Identifiers consisting of only digits are compared numerically.
Identifiers with letters or hyphens are compared lexically in ASCII sort order.
Numeric identifiers always have lower precedence than non-numeric identifiers.
A larger set of pre-release fields has a higher precedence than a smaller set, if all of the preceding identifiers are equal.
Example: 1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-beta.11 < 1.0.0-rc.1 < 1.0.0.
it is better to have v1.0.0-alpha.1
than v1.0.0-alpha-1
.
Here is a code example:
package main
import (
"fmt"
"golang.org/x/mod/semver"
)
func compare(s, t string) {
switch res := semver.Compare(s, t); {
case res < 0:
fmt.Println(s, "<", t)
case res == 0:
fmt.Println(s, "==", t)
case res > 0:
fmt.Println(s, ">", t)
}
}
func main() {
compare("v1.0.0-alpha-2", "v1.0.0-alpha-11")
compare("v1.0.0-alpha.2", "v1.0.0-alpha.11")
}
outputs:
v1.0.0-alpha-2 > v1.0.0-alpha-11
v1.0.0-alpha.2 < v1.0.0-alpha.11
Regarding the versioning conversation from this morning:
To cut a release today, we'd like to propose:
- Notary V2 standard (notaryproject-1.0.0-draft-1)
- Notation Library (Version 0.5.0) (notation-go-lib-1.0.0-alpha-1)
- Notation CLI (Version 0.6.1) (notation-1.0.0-alpha-1)
Becomes - (changing the-
to.
and removing thenotation --version
reference) - Notary V2 standard (notaryproject-1.0.0-draft.1)
- Notation Library (notation-go-lib-1.0.0-alpha.1)
- Notation CLI (notation-1.0.0-alpha.1)
This would apply to
- notaryproject/notaryproject specs
- notaryproject/notation for the cli
- notaryproject/notation-go-lib for the library
@iamsamirzon @SteveLasker - I believe this is complete now...
All this said - It would be great to discuss release strategy and document something for ongoing work.
I concur with your David.
Closed as v0.7.0-alpha.1
has been released.