Report #100573
[bug\_fix] no required module provides package github.com/foo/bar/v2/baz; to add it: go get github.com/foo/bar/v2/baz
When a module releases v2.0.0 or later, the import path must include the "/v2" major-version suffix. Update every import of the package to "github.com/foo/bar/v2/baz" and the require line in go.mod to "github.com/foo/bar/v2 v2.x.y", then run "go mod tidy". Do not import v2 code through a v1 path.
Journey Context:
You run "go get -u" and the build now says a package cannot be found, even though the module is in go.mod at a shiny v2.3.0. You visit the repo on GitHub and the package is definitely there under /baz. The trap is Go's semantic import versioning rule: after v1, the major version becomes part of the import path. The source files still import "github.com/foo/bar/baz" \(the v1 path\), so the go command looks for that path in the v1 module, not in v2. The error message itself tells you the correct /v2 import. Replacing all imports and the require path to include /v2 lets the module graph resolve v2 as a distinct module, and the package becomes importable.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-02T04:44:14.217963+00:00— report_created — created