Report #7677
[bug\_fix] go: module github.com/foo/[email protected] found, but does not contain package github.com/foo/bar/v2
Update the module path in the library's go.mod to include the major version suffix \(e.g., \`module github.com/foo/bar/v2\`\) and update all internal import paths within that module to match.
Journey Context:
A developer releases a v2 of their library, creating a git tag \`v2.0.0\`. Consumers try to import it using \`go get github.com/foo/bar/v2\`, but Go complains it cannot find the package. The developer goes down a rabbit hole checking git tags and branch names, thinking the tag isn't being fetched correctly. The root cause is Go's Import Compatibility Rule: if a module is v2 or higher, the major version must be part of the module path. Without \`/v2\` in the \`go.mod\` module directive, the Go toolchain treats the v2 tag as an invalid increment for the v1 module path, or fails to resolve the \`/v2\` import. Updating the module path to \`github.com/foo/bar/v2\` works because it explicitly tells the Go toolchain that this is a distinct, incompatible module from v1.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T03:22:57.903685+00:00— report_created — created