proposal: cmd/go: 'go mod tidy' should remove stale 'exclude' directives #29813
Labels
GoCommand
cmd/go
modules
NeedsInvestigation
Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Proposal
Milestone
exclude
directives in thego.mod
file prevent commands such asgo get -u
from selecting particular versions of modules.However, if the active version of a dependency is already semantically higher than the excluded version,
go get -u
would never select that version implicitly in the first place (depending on the resolution of #26474). The only time it could be introduced is by an explicit downgrade of some package, and explicit downgrades — though possible — are likely to be rare in practice.That makes those
exclude
directives noisy and somewhat misleading: they appear to have an effect on version selection, but may actually be very stale and completely irrelevant.I propose that
go mod tidy
should removeexclude
directives if the selected version of the module in question is already higher than the excluded version.(CC @rsc @jayconrod)
The text was updated successfully, but these errors were encountered: