Run modernize (#21546)

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

`go generate ./...` ran afterwards to keep generated.
This commit is contained in:
Klaus Post
2025-08-29 04:39:48 +02:00
committed by GitHub
parent 3b7cb6512c
commit f0b91e5504
238 changed files with 913 additions and 1257 deletions
+9 -9
View File
@@ -84,7 +84,7 @@ func TestRead(t *testing.T) {
}
type tester interface {
Fatal(...interface{})
Fatal(...any)
}
func openTestFile(t tester, file string) []byte {
@@ -508,10 +508,10 @@ func BenchmarkReaderBasic(b *testing.B) {
}
defer r.Close()
b.ReportAllocs()
b.ResetTimer()
b.SetBytes(int64(len(f)))
var record sql.Record
for i := 0; i < b.N; i++ {
for b.Loop() {
r, err = NewReader(io.NopCloser(bytes.NewBuffer(f)), &args)
if err != nil {
b.Fatalf("Reading init failed with %s", err)
@@ -537,7 +537,7 @@ func BenchmarkReaderHuge(b *testing.B) {
AllowQuotedRecordDelimiter: false,
unmarshaled: true,
}
for n := 0; n < 11; n++ {
for n := range 11 {
f := openTestFile(b, "nyc-taxi-data-100k.csv")
want := 309
for i := 0; i < n; i++ {
@@ -549,7 +549,7 @@ func BenchmarkReaderHuge(b *testing.B) {
b.SetBytes(int64(len(f)))
b.ResetTimer()
var record sql.Record
for i := 0; i < b.N; i++ {
for b.Loop() {
r, err := NewReader(io.NopCloser(bytes.NewBuffer(f)), &args)
if err != nil {
b.Fatalf("Reading init failed with %s", err)
@@ -590,10 +590,10 @@ func BenchmarkReaderReplace(b *testing.B) {
}
defer r.Close()
b.ReportAllocs()
b.ResetTimer()
b.SetBytes(int64(len(f)))
var record sql.Record
for i := 0; i < b.N; i++ {
for b.Loop() {
r, err = NewReader(io.NopCloser(bytes.NewBuffer(f)), &args)
if err != nil {
b.Fatalf("Reading init failed with %s", err)
@@ -627,10 +627,10 @@ func BenchmarkReaderReplaceTwo(b *testing.B) {
}
defer r.Close()
b.ReportAllocs()
b.ResetTimer()
b.SetBytes(int64(len(f)))
var record sql.Record
for i := 0; i < b.N; i++ {
for b.Loop() {
r, err = NewReader(io.NopCloser(bytes.NewBuffer(f)), &args)
if err != nil {
b.Fatalf("Reading init failed with %s", err)
+4 -4
View File
@@ -46,8 +46,8 @@ func (r *Record) Get(name string) (*sql.Value, error) {
index, found := r.nameIndexMap[name]
if !found {
// Check if index.
if strings.HasPrefix(name, "_") {
idx, err := strconv.Atoi(strings.TrimPrefix(name, "_"))
if after, ok := strings.CutPrefix(name, "_"); ok {
idx, err := strconv.Atoi(after)
if err != nil {
return nil, fmt.Errorf("column %v not found", name)
}
@@ -133,12 +133,12 @@ func (r *Record) WriteJSON(writer io.Writer) error {
}
// Raw - returns the underlying data with format info.
func (r *Record) Raw() (sql.SelectObjectFormat, interface{}) {
func (r *Record) Raw() (sql.SelectObjectFormat, any) {
return sql.SelectFmtCSV, r
}
// Replace - is not supported for CSV
func (r *Record) Replace(_ interface{}) error {
func (r *Record) Replace(_ any) error {
return errors.New("Replace is not supported for CSV")
}
+1 -1
View File
@@ -88,7 +88,7 @@ func BenchmarkPReader(b *testing.B) {
b.ReportAllocs()
b.ResetTimer()
var record sql.Record
for i := 0; i < b.N; i++ {
for b.Loop() {
r := NewPReader(io.NopCloser(bytes.NewBuffer(f)), &ReaderArgs{})
for {
record, err = r.Read(record)
+1 -1
View File
@@ -88,7 +88,7 @@ func BenchmarkReader(b *testing.B) {
b.ReportAllocs()
b.ResetTimer()
var record sql.Record
for i := 0; i < b.N; i++ {
for b.Loop() {
r := NewReader(io.NopCloser(bytes.NewBuffer(f)), &ReaderArgs{})
for {
record, err = r.Read(record)
+4 -4
View File
@@ -76,7 +76,7 @@ func (r *Record) Clone(dst sql.Record) sql.Record {
// Set - sets the value for a column name.
func (r *Record) Set(name string, value *sql.Value) (sql.Record, error) {
var v interface{}
var v any
if b, ok := value.ToBool(); ok {
v = b
} else if f, ok := value.ToFloat(); ok {
@@ -126,7 +126,7 @@ func (r *Record) WriteCSV(writer io.Writer, opts sql.WriteCSVOpts) error {
columnValue = ""
case RawJSON:
columnValue = string([]byte(val))
case []interface{}:
case []any:
b, err := json.Marshal(val)
if err != nil {
return err
@@ -151,7 +151,7 @@ func (r *Record) WriteCSV(writer io.Writer, opts sql.WriteCSVOpts) error {
}
// Raw - returns the underlying representation.
func (r *Record) Raw() (sql.SelectObjectFormat, interface{}) {
func (r *Record) Raw() (sql.SelectObjectFormat, any) {
return r.SelectFormat, r.KVS
}
@@ -161,7 +161,7 @@ func (r *Record) WriteJSON(writer io.Writer) error {
}
// Replace the underlying buffer of json data.
func (r *Record) Replace(k interface{}) error {
func (r *Record) Replace(k any) error {
v, ok := k.(jstream.KVS)
if !ok {
return fmt.Errorf("cannot replace internal data in json record with type %T", k)
+14 -14
View File
@@ -29,14 +29,14 @@ type MetaValue struct {
Offset int
Length int
Depth int
Value interface{}
Value any
ValueType ValueType
}
// KV contains a key and value pair parsed from a decoded object
type KV struct {
Key string `json:"key"`
Value interface{} `json:"value"`
Key string `json:"key"`
Value any `json:"value"`
}
// KVS - represents key values in an JSON object
@@ -160,7 +160,7 @@ func (d *Decoder) decode() {
}
}
func (d *Decoder) emitAny() (interface{}, error) {
func (d *Decoder) emitAny() (any, error) {
if d.pos >= atomic.LoadInt64(&d.end) {
return nil, d.mkError(ErrUnexpectedEOF)
}
@@ -189,7 +189,7 @@ func (d *Decoder) willEmit() bool {
// any used to decode any valid JSON value, and returns an
// interface{} that holds the actual data
func (d *Decoder) any() (interface{}, ValueType, error) {
func (d *Decoder) any() (any, ValueType, error) {
c := d.cur()
switch c {
@@ -239,7 +239,7 @@ func (d *Decoder) any() (interface{}, ValueType, error) {
i, err := d.array()
return i, Array, err
case '{':
var i interface{}
var i any
var err error
if d.objectAsKVS {
i, err = d.objectOrdered()
@@ -426,7 +426,7 @@ func (d *Decoder) number() (float64, error) {
}
// array accept valid JSON array value
func (d *Decoder) array() ([]interface{}, error) {
func (d *Decoder) array() ([]any, error) {
d.depth++
if d.maxDepth > 0 && d.depth > d.maxDepth {
return nil, ErrMaxDepth
@@ -434,9 +434,9 @@ func (d *Decoder) array() ([]interface{}, error) {
var (
c byte
v interface{}
v any
err error
array = make([]interface{}, 0)
array = make([]any, 0)
)
// look ahead for ] - if the array is empty.
@@ -470,7 +470,7 @@ out:
}
// object accept valid JSON array value
func (d *Decoder) object() (map[string]interface{}, error) {
func (d *Decoder) object() (map[string]any, error) {
d.depth++
if d.maxDepth > 0 && d.depth > d.maxDepth {
return nil, ErrMaxDepth
@@ -479,15 +479,15 @@ func (d *Decoder) object() (map[string]interface{}, error) {
var (
c byte
k string
v interface{}
v any
t ValueType
err error
obj map[string]interface{}
obj map[string]any
)
// skip allocating map if it will not be emitted
if d.depth > d.emitDepth {
obj = make(map[string]interface{})
obj = make(map[string]any)
}
// if the object has no keys
@@ -567,7 +567,7 @@ func (d *Decoder) objectOrdered() (KVS, error) {
var (
c byte
k string
v interface{}
v any
t ValueType
err error
obj KVS
+1 -1
View File
@@ -74,7 +74,7 @@ func TestDecoderFlat(t *testing.T) {
1, 2.5
]`
expected = []struct {
Value interface{}
Value any
ValueType ValueType
}{
{
+9 -9
View File
@@ -85,17 +85,17 @@ func TestScannerFailure(t *testing.T) {
func BenchmarkBufioScanner(b *testing.B) {
b.Run("small", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for b.Loop() {
benchmarkBufioScanner(smallInput)
}
})
b.Run("medium", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for b.Loop() {
benchmarkBufioScanner(mediumInput)
}
})
b.Run("large", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for b.Loop() {
benchmarkBufioScanner(largeInput)
}
})
@@ -111,17 +111,17 @@ func benchmarkBufioScanner(b []byte) {
func BenchmarkBufioReader(b *testing.B) {
b.Run("small", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for b.Loop() {
benchmarkBufioReader(smallInput)
}
})
b.Run("medium", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for b.Loop() {
benchmarkBufioReader(mediumInput)
}
})
b.Run("large", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for b.Loop() {
benchmarkBufioReader(largeInput)
}
})
@@ -145,17 +145,17 @@ loop:
func BenchmarkScanner(b *testing.B) {
b.Run("small", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for b.Loop() {
benchmarkScanner(smallInput)
}
})
b.Run("medium", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for b.Loop() {
benchmarkScanner(mediumInput)
}
})
b.Run("large", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for b.Loop() {
benchmarkScanner(largeInput)
}
})
+3 -3
View File
@@ -56,7 +56,7 @@ func (pr *Reader) Read(dst sql.Record) (rec sql.Record, rerr error) {
kvs := jstream.KVS{}
for _, col := range pr.r.Columns() {
var value interface{}
var value any
if v, ok := nextRow[col.FlatName()]; ok {
value, err = convertFromAnnotation(col.Element(), v)
if err != nil {
@@ -80,12 +80,12 @@ func (pr *Reader) Read(dst sql.Record) (rec sql.Record, rerr error) {
// annotations. LogicalType annotations if present override the deprecated
// ConvertedType annotations. Ref:
// https://github.com/apache/parquet-format/blob/master/LogicalTypes.md
func convertFromAnnotation(se *parquettypes.SchemaElement, v interface{}) (interface{}, error) {
func convertFromAnnotation(se *parquettypes.SchemaElement, v any) (any, error) {
if se == nil {
return v, nil
}
var value interface{}
var value any
switch val := v.(type) {
case []byte:
// TODO: only strings are supported in s3select output (not
+1 -1
View File
@@ -46,7 +46,7 @@ func genSampleCSVData(count int) []byte {
csvWriter := csv.NewWriter(buf)
csvWriter.Write([]string{"id", "name", "age", "city"})
for i := 0; i < count; i++ {
for i := range count {
csvWriter.Write([]string{
strconv.Itoa(i),
newRandString(10),
+5 -5
View File
@@ -630,7 +630,7 @@ func TestJSONQueries(t *testing.T) {
if len(testReq) == 0 {
var escaped bytes.Buffer
xml.EscapeText(&escaped, []byte(testCase.query))
testReq = []byte(fmt.Sprintf(defRequest, escaped.String()))
testReq = fmt.Appendf(nil, defRequest, escaped.String())
}
s3Select, err := NewS3Select(bytes.NewReader(testReq))
if err != nil {
@@ -676,7 +676,7 @@ func TestJSONQueries(t *testing.T) {
if len(testReq) == 0 {
var escaped bytes.Buffer
xml.EscapeText(&escaped, []byte(testCase.query))
testReq = []byte(fmt.Sprintf(defRequest, escaped.String()))
testReq = fmt.Appendf(nil, defRequest, escaped.String())
}
s3Select, err := NewS3Select(bytes.NewReader(testReq))
if err != nil {
@@ -761,7 +761,7 @@ func TestCSVQueries(t *testing.T) {
t.Run(testCase.name, func(t *testing.T) {
testReq := testCase.requestXML
if len(testReq) == 0 {
testReq = []byte(fmt.Sprintf(defRequest, testCase.query))
testReq = fmt.Appendf(nil, defRequest, testCase.query)
}
s3Select, err := NewS3Select(bytes.NewReader(testReq))
if err != nil {
@@ -944,7 +944,7 @@ func TestCSVQueries2(t *testing.T) {
t.Run(testCase.name, func(t *testing.T) {
testReq := testCase.requestXML
if len(testReq) == 0 {
testReq = []byte(fmt.Sprintf(defRequest, testCase.query))
testReq = fmt.Appendf(nil, defRequest, testCase.query)
}
s3Select, err := NewS3Select(bytes.NewReader(testReq))
if err != nil {
@@ -1088,7 +1088,7 @@ true`,
t.Run(testCase.name, func(t *testing.T) {
testReq := testCase.requestXML
if len(testReq) == 0 {
testReq = []byte(fmt.Sprintf(defRequest, testCase.query))
testReq = fmt.Appendf(nil, defRequest, testCase.query)
}
s3Select, err := NewS3Select(bytes.NewReader(testReq))
if err != nil {
+1 -1
View File
@@ -31,7 +31,7 @@ import (
)
type tester interface {
Fatal(args ...interface{})
Fatal(args ...any)
}
func loadCompressed(t tester, file string) (js []byte) {
+2 -2
View File
@@ -185,7 +185,7 @@ allElems:
}
// Raw - returns the underlying representation.
func (r *Record) Raw() (sql.SelectObjectFormat, interface{}) {
func (r *Record) Raw() (sql.SelectObjectFormat, any) {
return sql.SelectFmtSIMDJSON, r.object
}
@@ -211,7 +211,7 @@ func (r *Record) WriteJSON(writer io.Writer) error {
}
// Replace the underlying buffer of json data.
func (r *Record) Replace(k interface{}) error {
func (r *Record) Replace(k any) error {
v, ok := k.(simdjson.Object)
if !ok {
return fmt.Errorf("cannot replace internal data in simd json record with type %T", k)
+2 -2
View File
@@ -413,7 +413,7 @@ func (e *JSONPath) evalNode(r Record, tableAlias string) (*Value, error) {
}
// jsonToValue will convert the json value to an internal value.
func jsonToValue(result interface{}) (*Value, error) {
func jsonToValue(result any) (*Value, error) {
switch rval := result.(type) {
case string:
return FromString(rval), nil
@@ -434,7 +434,7 @@ func jsonToValue(result interface{}) (*Value, error) {
return nil, err
}
return FromBytes(bs), nil
case []interface{}:
case []any:
dst := make([]Value, len(rval))
for i := range rval {
v, err := jsonToValue(rval[i])
+5 -5
View File
@@ -34,7 +34,7 @@ var (
// jsonpathEval evaluates a JSON path and returns the value at the path.
// If the value should be considered flat (from wildcards) any array returned should be considered individual values.
func jsonpathEval(p []*JSONPathElement, v interface{}) (r interface{}, flat bool, err error) {
func jsonpathEval(p []*JSONPathElement, v any) (r any, flat bool, err error) {
// fmt.Printf("JPATHexpr: %v jsonobj: %v\n\n", p, v)
if len(p) == 0 || v == nil {
return v, false, nil
@@ -71,7 +71,7 @@ func jsonpathEval(p []*JSONPathElement, v interface{}) (r interface{}, flat bool
case p[0].Index != nil:
idx := *p[0].Index
arr, ok := v.([]interface{})
arr, ok := v.([]any)
if !ok {
return nil, false, errIndexLookup
}
@@ -100,14 +100,14 @@ func jsonpathEval(p []*JSONPathElement, v interface{}) (r interface{}, flat bool
}
case p[0].ArrayWildcard:
arr, ok := v.([]interface{})
arr, ok := v.([]any)
if !ok {
return nil, false, errWildcardArrayLookup
}
// Lookup remainder of path in each array element and
// make result array.
var result []interface{}
var result []any
for _, a := range arr {
rval, flatten, err := jsonpathEval(p[1:], a)
if err != nil {
@@ -116,7 +116,7 @@ func jsonpathEval(p []*JSONPathElement, v interface{}) (r interface{}, flat bool
if flatten {
// Flatten if array.
if arr, ok := rval.([]interface{}); ok {
if arr, ok := rval.([]any); ok {
result = append(result, arr...)
continue
}
+8 -8
View File
@@ -30,9 +30,9 @@ import (
"github.com/minio/minio/internal/s3select/jstream"
)
func getJSONStructs(b []byte) ([]interface{}, error) {
func getJSONStructs(b []byte) ([]any, error) {
dec := jstream.NewDecoder(bytes.NewBuffer(b), 0).ObjectAsKVS().MaxDepth(100)
var result []interface{}
var result []any
for parsedVal := range dec.Stream() {
result = append(result, parsedVal.Value)
}
@@ -60,13 +60,13 @@ func TestJsonpathEval(t *testing.T) {
)
cases := []struct {
str string
res []interface{}
res []any
}{
{"s.title", []interface{}{"Murder on the Orient Express", "The Robots of Dawn", "Pigs Have Wings"}},
{"s.authorInfo.yearRange", []interface{}{[]interface{}{1890.0, 1976.0}, []interface{}{1920.0, 1992.0}, []interface{}{1881.0, 1975.0}}},
{"s.authorInfo.name", []interface{}{"Agatha Christie", "Isaac Asimov", "P. G. Wodehouse"}},
{"s.authorInfo.yearRange[0]", []interface{}{1890.0, 1920.0, 1881.0}},
{"s.publicationHistory[0].pages", []interface{}{256.0, 336.0, Missing{}}},
{"s.title", []any{"Murder on the Orient Express", "The Robots of Dawn", "Pigs Have Wings"}},
{"s.authorInfo.yearRange", []any{[]any{1890.0, 1976.0}, []any{1920.0, 1992.0}, []any{1881.0, 1975.0}}},
{"s.authorInfo.name", []any{"Agatha Christie", "Isaac Asimov", "P. G. Wodehouse"}},
{"s.authorInfo.yearRange[0]", []any{1890.0, 1920.0, 1881.0}},
{"s.publicationHistory[0].pages", []any{256.0, 336.0, Missing{}}},
}
for i, tc := range cases {
t.Run(tc.str, func(t *testing.T) {
+4 -4
View File
@@ -63,16 +63,16 @@ type Record interface {
Reset()
// Returns underlying representation
Raw() (SelectObjectFormat, interface{})
Raw() (SelectObjectFormat, any)
// Replaces the underlying data
Replace(k interface{}) error
Replace(k any) error
}
// IterToValue converts a simdjson Iter to its underlying value.
// Objects are returned as simdjson.Object
// Arrays are returned as []interface{} with parsed values.
func IterToValue(iter simdjson.Iter) (interface{}, error) {
func IterToValue(iter simdjson.Iter) (any, error) {
switch iter.Type() {
case simdjson.TypeString:
v, err := iter.String()
@@ -118,7 +118,7 @@ func IterToValue(iter simdjson.Iter) (interface{}, error) {
return nil, err
}
iter := arr.Iter()
var dst []interface{}
var dst []any
var next simdjson.Iter
for {
typ, err := iter.AdvanceIter(&next)
+2 -2
View File
@@ -174,7 +174,7 @@ func (e *SelectStatement) EvalFrom(format string, input Record) ([]*Record, erro
case jstream.KVS:
kvs = v
case []interface{}:
case []any:
recs := make([]*Record, len(v))
for i, val := range v {
tmpRec := input.Clone(nil)
@@ -207,7 +207,7 @@ func (e *SelectStatement) EvalFrom(format string, input Record) ([]*Record, erro
return nil, err
}
case []interface{}:
case []any:
recs := make([]*Record, len(v))
for i, val := range v {
tmpRec := input.Clone(nil)
+1 -1
View File
@@ -46,7 +46,7 @@ var (
// the type may not be determined yet. In these cases, a byte-slice is
// used.
type Value struct {
value interface{}
value any
}
// Missing is used to indicate a non-existing value.
+3 -3
View File
@@ -217,7 +217,7 @@ func TestValue_CSVString(t *testing.T) {
func TestValue_bytesToInt(t *testing.T) {
type fields struct {
value interface{}
value any
}
tests := []struct {
name string
@@ -367,7 +367,7 @@ func TestValue_bytesToInt(t *testing.T) {
func TestValue_bytesToFloat(t *testing.T) {
type fields struct {
value interface{}
value any
}
tests := []struct {
name string
@@ -569,7 +569,7 @@ func TestValue_bytesToFloat(t *testing.T) {
func TestValue_bytesToBool(t *testing.T) {
type fields struct {
value interface{}
value any
}
tests := []struct {
name string