Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/exp/cmd/gorelease: cannot verify consistency of existing tag #47532

Open
marten-seemann opened this issue Aug 4, 2021 · 2 comments
Open

x/exp/cmd/gorelease: cannot verify consistency of existing tag #47532

marten-seemann opened this issue Aug 4, 2021 · 2 comments
Labels
modules NeedsInvestigation Tools
Milestone

Comments

@marten-seemann
Copy link
Contributor

@marten-seemann marten-seemann commented Aug 4, 2021

What version of Go are you using (go version)?

$ go version
go version go1.16.6 darwin/amd64

Does this issue reproduce with the latest release?

Yes

What did you do?

I use gorelease locally, it's a great tool to automatically apply semver rules and suggest new version numbers.

What did you expect to see?

In addition to that, I would like to use it on CI (specifically: every time a new v* tag is pushed) in order to verify that this tag is consistent with the semantic versioning rules. This would allow us to catch cases where contributors forgot to run gorelease before tagging a new release, and quickly act to avoid breaking downstream users when we used the wrong version number.

What did you see instead?

There's no way to verify an existing version using gorelease. Running gorelease on the most recent tag (v0.x.y) will just return v0.x.y+1, running it using the -base=v0.x.y-1 results in the error message "Can only suggest a release version when compared against the most recent version of this major: v0.x.y".

@bcmills
Copy link
Member

@bcmills bcmills commented Aug 4, 2021

CC @jayconrod @jadekler

@jayconrod
Copy link
Contributor

@jayconrod jayconrod commented Aug 4, 2021

This is an important use case for gomoddiff, when we do eventually do that (#46371).

gomoddiff will compare two versions, usually but not necessarily from the same module, and it will report whether those versions are consistent with semver (at least as far as it can tell from the public API).

We should make sure that when gomoddiff is given only one version, it automatically compares against the next lower version.

@jayconrod jayconrod added modules Tools labels Aug 4, 2021
@dmitshur dmitshur added the NeedsInvestigation label Aug 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
modules NeedsInvestigation Tools
Projects
None yet
Development

No branches or pull requests

5 participants