argoproj / argo-cd

Declarative Continuous Deployment for Kubernetes
https://argo-cd.readthedocs.io
Apache License 2.0
17.76k stars 5.42k forks source link

Go module proxy contains phantom v2.13.0 release, breaking Go imports #20102

Open busser opened 1 month ago

busser commented 1 month ago

Checklist:

Describe the bug

The Go module proxy, proxy.golang.org, contains version v2.13.0 of the github.com/argoproj/argo-cd/v2 module, but the Github repository does not. When we try to download the latest version of the module, the Go module proxy provides v2.13.0. This version has issues with its dependencies, so importing it breaks builds. Going around the Go module proxy yields the latest version in the repo, v2.12.3.

This phantom version breaks any workflow that uses go get or go mod tidy to fetch the latest version of the module.

Pure speculation, but I assume the v2.13.0 tag existed at some point, the Go module proxy cached it, and the tag was later deleted. There may be an issue with the release process.

To Reproduce

Attempting to download the latest version of the github.com/argoproj/argo-cd/v2 module fails:

# exit code 1
$ go get github.com/argoproj/argo-cd/v2
go: github.com/argoproj/argo-cd/v2@upgrade (v2.13.0) requires k8s.io/apiextensions-apiserver@v0.31.2: reading k8s.io/apiextensions-apiserver/go.mod at revision v0.31.2: unknown revision v0.31.2

Attempting the same operation without the Go module proxy succeeds:

# no output, exit code 0
$ GOPROXY=direct go get github.com/argoproj/argo-cd/v2

My GOPROXY environment variable is not overwritten, so uses the default value:

$ go env GOPROXY
https://proxy.golang.org,direct

Expected behavior

I expected this command to succeed:

go get github.com/argoproj/argo-cd/v2

Screenshots

N/A

Version

N/A

Logs

N/A

pasha-codefresh commented 2 weeks ago

Unfortunately it was human mistake during release. Here no easy way to resolve it . Monday, Nov. 4, 2024 we will release 2.13.0 and it will be resolved