Report #10162
[bug\_fix] go: example.com/[email protected]: invalid version: unknown revision example.com/pkg/v1.2.3
Bypass the Go module proxy by running \`GOPROXY=direct go get example.com/[email protected]\`, or wait for the proxy to cache the newly pushed tag. The root cause is that the default \`GOPROXY\` \(proxy.golang.org\) has not yet fetched the newly created tag from the source repository.
Journey Context:
A developer just pushed a critical bug fix to their library and tagged it \`v1.2.3\` on GitHub. They immediately update their main application to use this version by running \`go get example.com/[email protected]\`. The command fails with \`invalid version: unknown revision\`. The developer verifies the tag exists on GitHub and clears their local module cache, but the error persists. They realize their \`GOPROXY\` is set to the default \`https://proxy.golang.org,direct\`. The proxy acts as a middleman that caches modules for reliability and performance, but it hasn't synced the brand-new tag yet. When the proxy fails to find the tag, it returns a 404/410, and the Go toolchain fails immediately instead of falling back to \`direct\` \(due to how the default proxy list handles version queries\). By explicitly setting \`GOPROXY=direct\`, the developer instructs the Go toolchain to bypass the proxy and fetch directly from the Git repository, instantly finding the tag and resolving the dependency.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T09:55:13.791684+00:00— report_created — created