x/tools/go/analysis/passes/printf, cmd/vet: gate non-constant format string check on 1.24 language version #71485
Labels
release-blocker
ToolProposal
Issues describing a requested change to a Go tool or command-line program.
Tools
This label describes issues relating to any tools in the x/tools repository.
Milestone
The new check added to the printf analyzer in #60529 reports errors for non-constant format strings. In almost all cases we've investigated, these turn out to be bugs.
However, they are mild bugs, and the analyzer can produce quite a large number of findings.
We experienced this in our own codebase when the analyzer landed, and the community is experiencing a similar amount of churn:
https://lwn.net/ml/fedora-devel/CAM4%3DqPKbUw4DoLkdXtk4XJM718bm8soGuHE%2BL58Lq5UJ%3DBZBwg%40mail.gmail.com/
To reduce the friction caused by this change, we should gate the new check on a 1.24 language version, so as to not break the tests of existing codebases. Users can address the new vet errors incrementally as they update the language versions of their modules.
(@rsc and @adonovan suggest doing this as a matter of principle when we add new vet checks, but that is a policy question outside the scope of this issue)
Marking this as a release blocker, to guard the RC.
The text was updated successfully, but these errors were encountered: