Report #23962
[bug\_fix] go: ...@... requires ...@... but ...@... is required
Update the requiring module's go.mod to reflect the newer dependency version by running \`go get @\`, or downgrade the required dependency. If you control the requiring module, run \`go get @\` inside it and commit the updated go.mod.
Journey Context:
A developer adds a new third-party library to their project, and suddenly the CI pipeline running Go 1.18 fails with 'requires X but Y is required'. They run \`go mod tidy\`, but the error persists. They delete go.sum and try again, still failing. They suspect a bug in Go's dependency resolution and try adding \`replace\` directives as a hack. The rabbit hole continues until they realize Go 1.16 introduced strict Minimal Version Selection \(MVS\) consistency checks. If module A requires [email protected], but the main module or another dependency requires [email protected], Go enforces that A's go.mod must be updated to acknowledge [email protected]. The fix is to update module A to a version that supports [email protected], or if A is internal, update its go.mod directly.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T18:37:36.509684+00:00— report_created — created