Add golang.org/x/tools modernize static analyzer and fix violations (#15946)

* Ran gopls modernize to fix everything

go run golang.org/x/tools/gopls/internal/analysis/modernize/cmd/modernize@latest -fix -test ./...

* Override rules_go provided dependency for golang.org/x/tools to v0.38.0.

To update this, checked out rules_go, then ran `bazel run //go/tools/releaser -- upgrade-dep -mirror=false org_golang_x_tools` and copied the patches.

* Fix buildtag violations and ignore buildtag violations in external

* Introduce modernize analyzer package.

* Add modernize "any" analyzer.

* Fix violations of any analyzer

* Add modernize "appendclipped" analyzer.

* Fix violations of appendclipped

* Add modernize "bloop" analyzer.

* Add modernize "fmtappendf" analyzer.

* Add modernize "forvar" analyzer.

* Add modernize "mapsloop" analyzer.

* Add modernize "minmax" analyzer.

* Fix violations of minmax analyzer

* Add modernize "omitzero" analyzer.

* Add modernize "rangeint" analyzer.

* Fix violations of rangeint.

* Add modernize "reflecttypefor" analyzer.

* Fix violations of reflecttypefor analyzer.

* Add modernize "slicescontains" analyzer.

* Add modernize "slicessort" analyzer.

* Add modernize "slicesdelete" analyzer. This is disabled by default for now. See https://go.dev/issue/73686.

* Add modernize "stringscutprefix" analyzer.

* Add modernize "stringsbuilder" analyzer.

* Fix violations of stringsbuilder analyzer.

* Add modernize "stringsseq" analyzer.

* Add modernize "testingcontext" analyzer.

* Add modernize "waitgroup" analyzer.

* Changelog fragment

* gofmt

* gazelle

* Add modernize "newexpr" analyzer.

* Disable newexpr until go1.26

* Add more details in WORKSPACE on how to update the override

* @nalepae feedback on min()

* gofmt

* Fix violations of forvar
This commit is contained in:
Preston Van Loon
2025-11-13 19:27:22 -06:00
committed by GitHub
parent f77b78943a
commit 2fd6bd8150
605 changed files with 217475 additions and 2228 deletions

View File

@@ -9,7 +9,7 @@ type copier[T any] interface {
func copySlice[T any, C copier[T]](original []C) []T {
// Create a new slice with the same length as the original
newSlice := make([]T, len(original))
for i := 0; i < len(newSlice); i++ {
for i := range newSlice {
newSlice[i] = original[i].Copy()
}
return newSlice

View File

@@ -25,7 +25,7 @@ func fuzzCopies[T any, C enginev1.Copier[T]](t *testing.T, obj C) {
fuzzer := fuzz.NewWithSeed(0)
amount := 1000
t.Run(fmt.Sprintf("%T", obj), func(t *testing.T) {
for i := 0; i < amount; i++ {
for range amount {
fuzzer.Fuzz(obj) // Populate thing with random values
got := obj.Copy()
require.DeepEqual(t, obj, got)

View File

@@ -80,7 +80,7 @@ type ExecutionBlock struct {
}
func (e *ExecutionBlock) MarshalJSON() ([]byte, error) {
decoded := make(map[string]interface{})
decoded := make(map[string]any)
encodedHeader, err := e.Header.MarshalJSON()
if err != nil {
return nil, err
@@ -110,7 +110,7 @@ func (e *ExecutionBlock) UnmarshalJSON(enc []byte) error {
if err := e.Header.UnmarshalJSON(enc); err != nil {
return err
}
decoded := make(map[string]interface{})
decoded := make(map[string]any)
if err := json.Unmarshal(enc, &decoded); err != nil {
return err
}
@@ -162,7 +162,7 @@ func (e *ExecutionBlock) UnmarshalJSON(enc []byte) error {
// Exit early if there are no transactions stored in the json payload.
return nil
}
txsList, ok := rawTxList.([]interface{})
txsList, ok := rawTxList.([]any)
if !ok {
return errors.Errorf("expected transaction list to be of a slice interface type.")
}
@@ -186,7 +186,7 @@ func (e *ExecutionBlock) UnmarshalJSON(enc []byte) error {
// UnmarshalJSON --
func (b *PayloadIDBytes) UnmarshalJSON(enc []byte) error {
var res [8]byte
if err := hexutil.UnmarshalFixedJSON(reflect.TypeOf(b), enc, res[:]); err != nil {
if err := hexutil.UnmarshalFixedJSON(reflect.TypeFor[*PayloadIDBytes](), enc, res[:]); err != nil {
return err
}
*b = res

View File

@@ -296,7 +296,7 @@ func TestJsonMarshalUnmarshal(t *testing.T) {
enc, err := json.Marshal(want)
require.NoError(t, err)
payloadItems := make(map[string]interface{})
payloadItems := make(map[string]any)
require.NoError(t, json.Unmarshal(enc, &payloadItems))
blockHash := want.Hash()
@@ -351,7 +351,7 @@ func TestJsonMarshalUnmarshal(t *testing.T) {
enc, err := json.Marshal(want)
require.NoError(t, err)
payloadItems := make(map[string]interface{})
payloadItems := make(map[string]any)
require.NoError(t, json.Unmarshal(enc, &payloadItems))
blockHash := want.Hash()
@@ -410,7 +410,7 @@ func TestJsonMarshalUnmarshal(t *testing.T) {
enc, err := json.Marshal(want)
require.NoError(t, err)
payloadItems := make(map[string]interface{})
payloadItems := make(map[string]any)
require.NoError(t, json.Unmarshal(enc, &payloadItems))
tx := gethtypes.NewTransaction(
@@ -478,7 +478,7 @@ func TestJsonMarshalUnmarshal(t *testing.T) {
enc, err := json.Marshal(want)
require.NoError(t, err)
payloadItems := make(map[string]interface{})
payloadItems := make(map[string]any)
require.NoError(t, json.Unmarshal(enc, &payloadItems))
blockHash := want.Hash()
@@ -569,7 +569,7 @@ func TestJsonMarshalUnmarshal(t *testing.T) {
enc, err := json.Marshal(want)
require.NoError(t, err)
payloadItems := make(map[string]interface{})
payloadItems := make(map[string]any)
require.NoError(t, json.Unmarshal(enc, &payloadItems))
blockHash := want.Hash()