Skip to content

Commit 0aa18b4

Browse files
authored
Remove xiter dependency
Drop spheric.cloud/xiter and replace its usages with stdlib iter and a simple loop. - Remove xiter from go.mod - Add collectRows helper in integration_test.go - Rewrite RowToListValue with a preallocated slice - Delete unused internal/util.go
1 parent 4685f14 commit 0aa18b4

5 files changed

Lines changed: 18 additions & 64 deletions

File tree

go.mod

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ require (
2424
google.golang.org/grpc v1.79.3
2525
google.golang.org/protobuf v1.36.11
2626
gopkg.in/yaml.v3 v3.0.1
27-
spheric.cloud/xiter v0.0.0-20240904151420-c999f37a46b2
2827
)
2928

3029
require (

go.sum

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1806,5 +1806,3 @@ rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8
18061806
rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=
18071807
rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0=
18081808
rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA=
1809-
spheric.cloud/xiter v0.0.0-20240904151420-c999f37a46b2 h1:/2/LZep2TpsdSwYhdMsGRh+OVun1UMYlMEip4EEsgg8=
1810-
spheric.cloud/xiter v0.0.0-20240904151420-c999f37a46b2/go.mod h1:i4SlkNfFrn1974zbGZWg8FYXAWLnrS6cYAXtSfmIDhU=

integration_test.go

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import (
66
_ "embed"
77
"encoding/csv"
88
"fmt"
9+
"iter"
910
"strings"
1011
"testing"
1112

@@ -17,7 +18,6 @@ import (
1718
"github.com/google/go-cmp/cmp"
1819
"google.golang.org/protobuf/testing/protocmp"
1920
"google.golang.org/protobuf/types/known/structpb"
20-
"spheric.cloud/xiter"
2121

2222
"github.com/apstndb/execspansql/jqresult"
2323
"github.com/apstndb/execspansql/params"
@@ -30,6 +30,17 @@ var ddl string
3030
//go:embed testdata/dml.sql
3131
var dml string
3232

33+
func collectRows(seq iter.Seq2[*spanner.Row, error]) ([]*spanner.Row, error) {
34+
var rows []*spanner.Row
35+
for row, err := range seq {
36+
if err != nil {
37+
return nil, err
38+
}
39+
rows = append(rows, row)
40+
}
41+
return rows, nil
42+
}
43+
3344
func runEagerReadWriteDML(t *testing.T, client *spanner.Client, ctx context.Context, sql, filter string) []any {
3445
t.Helper()
3546

@@ -298,7 +309,7 @@ func TestWithCloudSpannerEmulator(t *testing.T) {
298309
spanner.Statement{SQL: "SELECT @v AS v", Params: params},
299310
spanner.QueryOptions{Mode: sppb.ExecuteSqlRequest_NORMAL.Enum()})
300311

301-
rows, err := xiter.TryCollect(spaniter.RowIteratorSeq(rowIter))
312+
rows, err := collectRows(spaniter.RowIteratorSeq(rowIter))
302313
if err != nil {
303314
t.Error(err)
304315
return

internal/util.go

Lines changed: 0 additions & 55 deletions
This file was deleted.

resultset/row.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
package resultset
22

33
import (
4-
"slices"
5-
"spheric.cloud/xiter"
6-
74
"cloud.google.com/go/spanner"
85
"google.golang.org/protobuf/types/known/structpb"
96
)
107

118
// RowToListValue converts a Spanner row to structpb.ListValue.
129
func RowToListValue(r *spanner.Row) *structpb.ListValue {
13-
return &structpb.ListValue{Values: slices.Collect(xiter.Map(xiter.Range(0, r.Size()), r.ColumnValue))}
10+
values := make([]*structpb.Value, r.Size())
11+
for i := range values {
12+
values[i] = r.ColumnValue(i)
13+
}
14+
return &structpb.ListValue{Values: values}
1415
}

0 commit comments

Comments
 (0)