This is an automated email from the ASF dual-hosted git repository.
zeroshade pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/master by this push:
new fd2595c3ce ARROW-18303: [Go] Allow easy compute module importing
(#14690)
fd2595c3ce is described below
commit fd2595c3ce5fa9bcd1cf76b1240219ebdffd2225
Author: Matt Topol <[email protected]>
AuthorDate: Mon Nov 21 16:07:42 2022 -0500
ARROW-18303: [Go] Allow easy compute module importing (#14690)
Authored-by: Matt Topol <[email protected]>
Signed-off-by: Matt Topol <[email protected]>
---
dev/release/post-11-bump-versions-test.rb | 21 ---
dev/release/utils-prepare.sh | 19 +--
go/arrow/compute/arithmetic.go | 2 +
go/arrow/compute/arithmetic_test.go | 4 +-
go/arrow/compute/cast.go | 2 +
go/arrow/compute/cast_test.go | 2 +
go/arrow/compute/datum.go | 2 +
go/arrow/compute/datumkind_string.go | 2 +
go/arrow/compute/doc.go | 18 +--
go/arrow/compute/exec.go | 2 +
go/arrow/compute/exec_internals_test.go | 2 +
go/arrow/compute/exec_test.go | 2 +
go/arrow/compute/executor.go | 2 +
go/arrow/compute/expression.go | 76 +----------
go/arrow/compute/expression_test.go | 2 +
go/arrow/compute/funckind_string.go | 2 +
go/arrow/compute/functions.go | 2 +
go/arrow/compute/functions_test.go | 2 +
go/arrow/compute/go.mod | 51 -------
go/arrow/compute/go.sum | 76 -----------
go/arrow/compute/internal/exec/hash_util.go | 4 -
go/arrow/compute/internal/exec/kernel.go | 4 +
go/arrow/compute/internal/exec/kernel_test.go | 2 +
go/arrow/compute/internal/exec/span.go | 2 +
go/arrow/compute/internal/exec/span_test.go | 2 +
go/arrow/compute/internal/exec/utils.go | 2 +
go/arrow/compute/internal/exec/utils_test.go | 2 +
.../compute/internal/kernels/base_arithmetic.go | 2 +
.../internal/kernels/base_arithmetic_amd64.go | 2 +-
.../internal/kernels/base_arithmetic_avx2_amd64.go | 2 +-
.../internal/kernels/base_arithmetic_avx2_amd64.s | 2 +-
.../internal/kernels/base_arithmetic_sse4_amd64.go | 2 +-
.../internal/kernels/base_arithmetic_sse4_amd64.s | 2 +-
.../internal/kernels/basic_arithmetic_noasm.go | 2 +-
go/arrow/compute/internal/kernels/boolean_cast.go | 2 +
go/arrow/compute/internal/kernels/cast.go | 2 +
go/arrow/compute/internal/kernels/cast_numeric.go | 2 +
.../compute/internal/kernels/cast_numeric_amd64.go | 2 +-
.../internal/kernels/cast_numeric_avx2_amd64.go | 2 +-
.../internal/kernels/cast_numeric_avx2_amd64.s | 2 +-
.../internal/kernels/cast_numeric_neon_arm64.go | 2 +-
.../internal/kernels/cast_numeric_neon_arm64.s | 2 +-
.../internal/kernels/cast_numeric_sse4_amd64.go | 2 +-
.../internal/kernels/cast_numeric_sse4_amd64.s | 2 +-
go/arrow/compute/internal/kernels/cast_temporal.go | 2 +
.../internal/kernels/compareoperator_string.go | 2 +
.../compute/internal/kernels/constant_factor.go | 2 +
.../internal/kernels/constant_factor_amd64.go | 2 +-
.../internal/kernels/constant_factor_avx2_amd64.go | 2 +-
.../internal/kernels/constant_factor_avx2_amd64.s | 2 +-
.../internal/kernels/constant_factor_sse4_amd64.go | 2 +-
.../internal/kernels/constant_factor_sse4_amd64.s | 2 +-
.../arrow/compute/internal/kernels/doc.go | 11 +-
go/arrow/compute/internal/kernels/helpers.go | 70 +---------
go/arrow/compute/internal/kernels/numeric_cast.go | 2 +
.../compute/internal/kernels/scalar_arithmetic.go | 2 +
.../compute/internal/kernels/scalar_boolean.go | 2 +
.../internal/kernels/scalar_comparison_amd64.go | 2 +-
.../kernels/scalar_comparison_avx2_amd64.go | 2 +-
.../kernels/scalar_comparison_avx2_amd64.s | 2 +-
.../internal/kernels/scalar_comparison_noasm.go | 4 +-
.../kernels/scalar_comparison_sse4_amd64.go | 2 +-
.../kernels/scalar_comparison_sse4_amd64.s | 2 +-
.../compute/internal/kernels/scalar_comparisons.go | 2 +
go/arrow/compute/internal/kernels/string_casts.go | 2 +
go/arrow/compute/internal/kernels/types.go | 7 +-
.../compute/internal/kernels/vector_selection.go | 2 +
go/arrow/compute/no_exec.go | 45 -------
go/arrow/compute/registry.go | 2 +
go/arrow/compute/registry_test.go | 2 +
go/arrow/compute/scalar_bool.go | 2 +
go/arrow/compute/scalar_bool_test.go | 2 +
go/arrow/compute/scalar_compare.go | 2 +
go/arrow/compute/scalar_compare_test.go | 118 ++++++++--------
go/arrow/compute/selection.go | 2 +
go/arrow/compute/utils.go | 2 +
go/arrow/compute/vector_selection_test.go | 2 +
go/arrow/doc.go | 4 +
go/go.mod | 2 +-
go/go.sum | 148 ---------------------
go/parquet/doc.go | 3 +
81 files changed, 201 insertions(+), 608 deletions(-)
diff --git a/dev/release/post-11-bump-versions-test.rb
b/dev/release/post-11-bump-versions-test.rb
index 3ffe82a7a1..46384d1c02 100644
--- a/dev/release/post-11-bump-versions-test.rb
+++ b/dev/release/post-11-bump-versions-test.rb
@@ -130,15 +130,6 @@ class PostBumpVersionsTest < Test::Unit::TestCase
],
],
},
- {
- path: "go.work",
- hunks: [
- [
- "-replace github.com/apache/arrow/go/v#{@snapshot_major_version}
v#{@release_version} => ./go",
- "+replace github.com/apache/arrow/go/v#{@next_major_version}
v#{@next_version} => ./go",
- ],
- ],
- },
{
path: "js/package.json",
hunks: [
@@ -211,18 +202,6 @@ class PostBumpVersionsTest < Test::Unit::TestCase
],
]}
next
- elsif path == "go/arrow/compute/go.mod"
- expected_changes << {
- path: path,
- hunks: [
- [
- "-module
github.com/apache/arrow/go/v#{@snapshot_major_version}/arrow/compute",
- "+module
github.com/apache/arrow/go/v#{@next_major_version}/arrow/compute",
- "-\tgithub.com/apache/arrow/go/v#{@snapshot_major_version}
v#{@release_version}",
- "+\tgithub.com/apache/arrow/go/v#{@next_major_version}
v#{@next_version}",
- ],
- ]}
- next
end
import_path = "github.com/apache/arrow/go/v#{@snapshot_major_version}"
lines = File.readlines(path, chomp: true)
diff --git a/dev/release/utils-prepare.sh b/dev/release/utils-prepare.sh
index b4a98048ab..1e50a9295e 100644
--- a/dev/release/utils-prepare.sh
+++ b/dev/release/utils-prepare.sh
@@ -166,26 +166,11 @@ update_versions() {
parquet/writer_properties.go
sed -i.bak -E -e \
"s/const PkgVersion = \".*/const PkgVersion = \"${version}\"/" \
- arrow/doc.go
- # handle the pseudo version in the compute sub-module for now
- # subsequent changes will allow this to remove the pseudo version but
- # for now we have to overcome the slight conflict between the existing
- # "compute" package and the new go.mod file.
- sed -i.bak -E -e \
- "s|arrow/go/v${major_version}
v[0-9]+\\.[0-9]+\\.[0-9]+|arrow/go/v${major_version} v${version%%-*}|" \
- arrow/compute/go.mod
+ arrow/doc.go
find . -name "*.bak" -exec rm {} \;
git add .
- popd
-
- pushd "${ARROW_DIR}"
- sed -i.bak -E -e \
- "s|arrow/go/v[0-9]+ v[0-9]+\\.[0-9]+\\.[0-9]+|arrow/go/v${major_version}
v${version%%-*}|" \
- go.work
- rm -f go.work.bak
- git add go.work
- popd
+ popd
case "${base_version}" in
*.0.0)
diff --git a/go/arrow/compute/arithmetic.go b/go/arrow/compute/arithmetic.go
index d28d167f89..a7b84dd121 100644
--- a/go/arrow/compute/arithmetic.go
+++ b/go/arrow/compute/arithmetic.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/arithmetic_test.go
b/go/arrow/compute/arithmetic_test.go
index 2549f6c904..bde9cc49fe 100644
--- a/go/arrow/compute/arithmetic_test.go
+++ b/go/arrow/compute/arithmetic_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute_test
import (
@@ -95,7 +97,7 @@ func assertNullToNull(t *testing.T, ctx context.Context, fn
string, mem memory.A
type unaryArithmeticFunc = func(context.Context, compute.ArithmeticOptions,
compute.Datum) (compute.Datum, error)
-type unaryFunc = func(compute.Datum) (compute.Datum, error)
+// type unaryFunc = func(compute.Datum) (compute.Datum, error)
type binaryArithmeticFunc = func(context.Context, compute.ArithmeticOptions,
compute.Datum, compute.Datum) (compute.Datum, error)
diff --git a/go/arrow/compute/cast.go b/go/arrow/compute/cast.go
index 9530a06761..86917d8e74 100644
--- a/go/arrow/compute/cast.go
+++ b/go/arrow/compute/cast.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/cast_test.go b/go/arrow/compute/cast_test.go
index 9e3b7c1ac1..aa02df9589 100644
--- a/go/arrow/compute/cast_test.go
+++ b/go/arrow/compute/cast_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute_test
import (
diff --git a/go/arrow/compute/datum.go b/go/arrow/compute/datum.go
index f6a46e3ef4..b700e41b70 100644
--- a/go/arrow/compute/datum.go
+++ b/go/arrow/compute/datum.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/datumkind_string.go
b/go/arrow/compute/datumkind_string.go
index 8537c0b7ef..3603e5e495 100644
--- a/go/arrow/compute/datumkind_string.go
+++ b/go/arrow/compute/datumkind_string.go
@@ -1,5 +1,7 @@
// Code generated by "stringer -type=DatumKind -linecomment"; DO NOT EDIT.
+//go:build go1.18
+
package compute
import "strconv"
diff --git a/go/arrow/compute/doc.go b/go/arrow/compute/doc.go
index 07610f7eb7..53a164e61e 100644
--- a/go/arrow/compute/doc.go
+++ b/go/arrow/compute/doc.go
@@ -15,18 +15,7 @@
// limitations under the License.
// Package compute is a native-go implementation of an Acero-like
-// arrow compute engine.
-//
-// For now in order to properly use the compute library you'll need to run:
-//
-// go mod edit -replace
github.com/apache/arrow/go/v${major_version}/arrow/compute=github.com/apache/arrow/go/arrow/compute
-//
-// In order to import
"github.com/apache/arrow/go/v${major_version}/arrow/compute"
-// in your package. This is due to it being a separate module so that it can
-// utilize go1.18. After the release of go1.20, the Arrow modules will be
bumped to
-// a minimum go.mod of go1.18 and the compute package will be integrated
-// into the arrow module proper, rather than being a separate module. At that
-// point, the replace directive will no longer be needed.
+// arrow compute engine. It requires go1.18+
//
// While consumers of Arrow that are able to use CGO could utilize the
// C Data API (using the cdata package) and could link against the
@@ -34,6 +23,11 @@
// is an attempt to provide for those users, and in general create a
// native-go arrow compute engine.
//
+// The overwhemling majority of things in this package require go1.18 as
+// it utilizes generics. The files in this package and its sub-packages
+// are all excluded from being built by go versions lower than 1.18 so
+// that the larger Arrow module itself is still compatible with go1.17.
+//
// Everything in this package should be considered Experimental for now.
package compute
diff --git a/go/arrow/compute/exec.go b/go/arrow/compute/exec.go
index fba92e0424..2920a7c4b1 100644
--- a/go/arrow/compute/exec.go
+++ b/go/arrow/compute/exec.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/exec_internals_test.go
b/go/arrow/compute/exec_internals_test.go
index 3f00d2ef27..88438a00aa 100644
--- a/go/arrow/compute/exec_internals_test.go
+++ b/go/arrow/compute/exec_internals_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/exec_test.go b/go/arrow/compute/exec_test.go
index 92f9188f73..0939011069 100644
--- a/go/arrow/compute/exec_test.go
+++ b/go/arrow/compute/exec_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/executor.go b/go/arrow/compute/executor.go
index f6a2661abd..bccb5d9dda 100644
--- a/go/arrow/compute/executor.go
+++ b/go/arrow/compute/executor.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/expression.go b/go/arrow/compute/expression.go
index b6711faf8a..0231dbf6e5 100644
--- a/go/arrow/compute/expression.go
+++ b/go/arrow/compute/expression.go
@@ -14,11 +14,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
"bytes"
- "context"
"encoding/hex"
"errors"
"fmt"
@@ -66,22 +67,10 @@ type Expression interface {
Hash() uint64
Equals(Expression) bool
- // Bind binds this expression to the given input schema, looking up
appropriate
- // underlying implementations and some expression simplification may be
performed
- // along with implicit casts being inserted.
- // Any state necessary for execution will be initialized.
- //
- // This only works in conjunction with cgo and being able to link
against the
- // C++ libarrow.so compute library. If this was not built with the
libarrow compute
- // support, this will panic.
- Bind(context.Context, memory.Allocator, *arrow.Schema) (Expression,
error)
-
// Release releases the underlying bound C++ memory that is allocated
when
// a Bind is performed. Any bound expression should get released to
ensure
// no memory leaks.
Release()
-
- boundExpr() boundRef
}
func printDatum(datum Datum) string {
@@ -108,13 +97,10 @@ func printDatum(datum Datum) string {
// as a scalar, an array, or so on.
type Literal struct {
Literal Datum
-
- bound boundRef
}
func (Literal) FieldRef() *FieldRef { return nil }
func (l *Literal) String() string { return printDatum(l.Literal) }
-func (l *Literal) boundExpr() boundRef { return l.bound }
func (l *Literal) Type() arrow.DataType { return
l.Literal.(ArrayLikeDatum).Type() }
func (l *Literal) IsBound() bool { return l.Type() != nil }
func (l *Literal) IsScalarExpr() bool { return l.Literal.Kind() ==
KindScalar }
@@ -152,20 +138,8 @@ func (l *Literal) Hash() uint64 {
return 0
}
-func (l *Literal) Bind(ctx context.Context, mem memory.Allocator, schema
*arrow.Schema) (Expression, error) {
- bound, _, _, _, err := bindExprSchema(ctx, mem, l, schema)
- if err != nil {
- return nil, err
- }
-
- return &Literal{l.Literal, bound}, nil
-}
-
func (l *Literal) Release() {
l.Literal.Release()
- if l.bound != 0 {
- l.bound.release()
- }
}
// Parameter represents a field reference and needs to be bound in order to
determine
@@ -176,12 +150,9 @@ type Parameter struct {
// post bind props
dt arrow.DataType
index int
-
- bound boundRef
}
func (Parameter) IsNullLiteral() bool { return false }
-func (p *Parameter) boundExpr() boundRef { return p.bound }
func (p *Parameter) Type() arrow.DataType { return p.dt }
func (p *Parameter) IsBound() bool { return p.Type() != nil }
func (p *Parameter) IsScalarExpr() bool { return p.ref != nil }
@@ -208,25 +179,7 @@ func (p *Parameter) Equals(other Expression) bool {
return false
}
-func (p *Parameter) Bind(ctx context.Context, mem memory.Allocator, schema
*arrow.Schema) (Expression, error) {
- bound, dt, index, _, err := bindExprSchema(ctx, mem, p, schema)
- if err != nil {
- return nil, err
- }
-
- return &Parameter{
- ref: p.ref,
- index: index,
- dt: dt,
- bound: bound,
- }, nil
-}
-
-func (p *Parameter) Release() {
- if p.bound != 0 {
- p.bound.release()
- }
-}
+func (p *Parameter) Release() {}
type comparisonType int8
@@ -319,10 +272,8 @@ type Call struct {
options FunctionOptions
cachedHash uint64
- bound boundRef
}
-func (c *Call) boundExpr() boundRef { return c.bound }
func (c *Call) IsNullLiteral() bool { return false }
func (c *Call) FieldRef() *FieldRef { return nil }
func (c *Call) Type() arrow.DataType { return c.dt }
@@ -388,15 +339,13 @@ func (c *Call) IsScalarExpr() bool {
return false
}
}
- return isFuncScalar(c.funcName)
+
+ return false
+ // return isFuncScalar(c.funcName)
}
func (c *Call) IsBound() bool {
- if c.Type() == nil {
- return false
- }
-
- return c.bound != 0
+ return c.Type() != nil
}
func (c *Call) Equals(other Expression) bool {
@@ -421,14 +370,6 @@ func (c *Call) Equals(other Expression) bool {
return reflect.DeepEqual(c.options, rhs.options)
}
-func (c *Call) Bind(ctx context.Context, mem memory.Allocator, schema
*arrow.Schema) (Expression, error) {
- _, _, _, output, err := bindExprSchema(ctx, mem, c, schema)
- if err != nil {
- return nil, err
- }
- return output, nil
-}
-
func (c *Call) Release() {
for _, a := range c.args {
a.Release()
@@ -436,9 +377,6 @@ func (c *Call) Release() {
if r, ok := c.options.(releasable); ok {
r.Release()
}
- if c.bound != 0 {
- c.bound.release()
- }
}
// FunctionOptions can be any type which has a TypeName function. The fields
diff --git a/go/arrow/compute/expression_test.go
b/go/arrow/compute/expression_test.go
index 9c0aceb7c4..6a52426eff 100644
--- a/go/arrow/compute/expression_test.go
+++ b/go/arrow/compute/expression_test.go
@@ -15,6 +15,8 @@
// specific language governing permissions and limitations
// under the License.
+//go:build go1.18
+
package compute_test
import (
diff --git a/go/arrow/compute/funckind_string.go
b/go/arrow/compute/funckind_string.go
index 97d3eaa031..204e844133 100644
--- a/go/arrow/compute/funckind_string.go
+++ b/go/arrow/compute/funckind_string.go
@@ -1,5 +1,7 @@
// Code generated by "stringer -type=FuncKind -linecomment"; DO NOT EDIT.
+//go:build go1.18
+
package compute
import "strconv"
diff --git a/go/arrow/compute/functions.go b/go/arrow/compute/functions.go
index 08273f189d..5afd813131 100644
--- a/go/arrow/compute/functions.go
+++ b/go/arrow/compute/functions.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/functions_test.go
b/go/arrow/compute/functions_test.go
index 5fc7fec2d0..0fb769bd36 100644
--- a/go/arrow/compute/functions_test.go
+++ b/go/arrow/compute/functions_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute_test
import (
diff --git a/go/arrow/compute/go.mod b/go/arrow/compute/go.mod
deleted file mode 100644
index e71ee87b2f..0000000000
--- a/go/arrow/compute/go.mod
+++ /dev/null
@@ -1,51 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-module github.com/apache/arrow/go/v11/arrow/compute
-
-go 1.18
-
-require (
- github.com/apache/arrow/go/v11 v11.0.0
- github.com/klauspost/cpuid/v2 v2.0.9
- github.com/stretchr/testify v1.8.0
- golang.org/x/exp v0.0.0-20220827204233-334a2380cb91
- golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde
- golang.org/x/sys v0.0.0-20220829200755-d48e67d00261
- golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f
-)
-
-require (
- github.com/andybalholm/brotli v1.0.4 // indirect
- github.com/apache/thrift v0.16.0 // indirect
- github.com/davecgh/go-spew v1.1.1 // indirect
- github.com/goccy/go-json v0.9.11 // indirect
- github.com/golang/snappy v0.0.4 // indirect
- github.com/google/flatbuffers v2.0.8+incompatible // indirect
- github.com/klauspost/asmfmt v1.3.2 // indirect
- github.com/klauspost/compress v1.15.9 // indirect
- github.com/kr/text v0.2.0 // indirect
- github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8 //
indirect
- github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3 // indirect
- github.com/pierrec/lz4/v4 v4.1.15 // indirect
- github.com/pmezard/go-difflib v1.0.0 // indirect
- github.com/rogpeppe/go-internal v1.9.0 // indirect
- github.com/zeebo/xxh3 v1.0.2 // indirect
- golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect
- golang.org/x/tools v0.1.12 // indirect
- gonum.org/v1/gonum v0.11.0 // indirect
- gopkg.in/yaml.v3 v3.0.1 // indirect
-)
diff --git a/go/arrow/compute/go.sum b/go/arrow/compute/go.sum
deleted file mode 100644
index 9c12e5c3b4..0000000000
--- a/go/arrow/compute/go.sum
+++ /dev/null
@@ -1,76 +0,0 @@
-github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c
h1:RGWPOewvKIROun94nF7v2cua9qP+thov/7M50KEoeSU=
-github.com/andybalholm/brotli v1.0.4
h1:V7DdXeJtZscaqfNuAdSRuRFzuiKlHSC/Zh3zl9qY3JY=
-github.com/andybalholm/brotli v1.0.4/go.mod
h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig=
-github.com/apache/arrow/go/v10 v10.0.0-20221012182438-704536b48d7d
h1:+9f5QDC7t2w4VsXcT2aGs1gg5vYzPnZIhmY4Mkf6oUk=
-github.com/apache/arrow/go/v10 v10.0.0-20221012182438-704536b48d7d/go.mod
h1:CH7QuXsCbYxM4utMqmnie6Xy+4SqMD0yaSdOalg0M/o=
-github.com/apache/thrift v0.16.0
h1:qEy6UW60iVOlUy+b9ZR0d5WzUWYGOo4HfopoyBaNmoY=
-github.com/apache/thrift v0.16.0/go.mod
h1:PHK3hniurgQaNMZYaCLEqXKsYK8upmhPbmdP2FXSqgU=
-github.com/creack/pty v1.1.9/go.mod
h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
-github.com/davecgh/go-spew v1.1.0/go.mod
h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
-github.com/davecgh/go-spew v1.1.1
h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
-github.com/davecgh/go-spew v1.1.1/go.mod
h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
-github.com/goccy/go-json v0.9.11
h1:/pAaQDLHEoCq/5FFmSKBswWmK6H0e8g4159Kc/X/nqk=
-github.com/goccy/go-json v0.9.11/go.mod
h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
-github.com/golang/mock v1.5.0/go.mod
h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8=
-github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM=
-github.com/golang/snappy v0.0.4/go.mod
h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
-github.com/google/flatbuffers v2.0.8+incompatible
h1:ivUb1cGomAB101ZM1T0nOiWz9pSrTMoa9+EiY7igmkM=
-github.com/google/flatbuffers v2.0.8+incompatible/go.mod
h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8=
-github.com/klauspost/asmfmt v1.3.2
h1:4Ri7ox3EwapiOjCki+hw14RyKk201CN4rzyCJRFLpK4=
-github.com/klauspost/asmfmt v1.3.2/go.mod
h1:AG8TuvYojzulgDAMCnYn50l/5QV3Bs/tp6j0HLHbNSE=
-github.com/klauspost/compress v1.15.9
h1:wKRjX6JRtDdrE9qwa4b/Cip7ACOshUI4smpCQanqjSY=
-github.com/klauspost/compress v1.15.9/go.mod
h1:PhcZ0MbTNciWF3rruxRgKxI5NkcHHrHUDtV4Yw2GlzU=
-github.com/klauspost/cpuid/v2 v2.0.9
h1:lgaqFMSdTdQYdZ04uHyN2d/eKdOMyi2YLSvlQIBFYa4=
-github.com/klauspost/cpuid/v2 v2.0.9/go.mod
h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
-github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0=
-github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
-github.com/kr/text v0.2.0/go.mod
h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
-github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8
h1:AMFGa4R4MiIpspGNG7Z948v4n35fFGB3RR3G/ry4FWs=
-github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8/go.mod
h1:mC1jAcsrzbxHt8iiaC+zU4b1ylILSosueou12R++wfY=
-github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3
h1:+n/aFZefKZp7spd8DFdX7uMikMLXX4oubIzJF4kv/wI=
-github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3/go.mod
h1:RagcQ7I8IeTMnF8JTXieKnO4Z6JCsikNEzj0DwauVzE=
-github.com/pierrec/lz4/v4 v4.1.15
h1:MO0/ucJhngq7299dKLwIMtgTfbkoSPF6AoMYDd8Q4q0=
-github.com/pierrec/lz4/v4 v4.1.15/go.mod
h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4=
-github.com/pmezard/go-difflib v1.0.0
h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
-github.com/pmezard/go-difflib v1.0.0/go.mod
h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
-github.com/rogpeppe/go-internal v1.9.0
h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8=
-github.com/rogpeppe/go-internal v1.9.0/go.mod
h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
-github.com/stretchr/objx v0.1.0/go.mod
h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
-github.com/stretchr/objx v0.4.0/go.mod
h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
-github.com/stretchr/testify v1.7.1/go.mod
h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
-github.com/stretchr/testify v1.8.0
h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk=
-github.com/stretchr/testify v1.8.0/go.mod
h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
-github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ=
-github.com/zeebo/xxh3 v1.0.2 h1:xZmwmqxHZA8AI603jOQ0tMqmBr9lPeFwGg6d+xy9DC0=
-github.com/zeebo/xxh3 v1.0.2/go.mod
h1:5NWz9Sef7zIDm2JHfFlcQvNekmcEl9ekUZQQKCYaDcA=
-golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod
h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
-golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod
h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
-golang.org/x/exp v0.0.0-20220827204233-334a2380cb91
h1:tnebWN09GYg9OLPss1KXj8txwZc6X6uMr6VFdcGNbHw=
-golang.org/x/exp v0.0.0-20220827204233-334a2380cb91/go.mod
h1:cyybsKvd6eL0RnXn6p/Grxp8F5bW7iYuBgsNCOHpMYE=
-golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
-golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4
h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s=
-golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod
h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
-golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod
h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
-golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod
h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
-golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde
h1:ejfdSekXMDxDLbRrJMwUk6KnSLZ2McaUCVcIKM+N6jc=
-golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
-golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20220829200755-d48e67d00261
h1:v6hYoSR9T5oet+pMXwUWkbiVqx/63mlHjefrHmxwfeY=
-golang.org/x/sys v0.0.0-20220829200755-d48e67d00261/go.mod
h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
-golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod
h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
-golang.org/x/tools v0.1.12 h1:VveCTK38A2rkS8ZqFY25HIDFscX5X9OoEhJd3quQmXU=
-golang.org/x/tools v0.1.12/go.mod
h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
-golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f
h1:uF6paiQQebLeSXkrTqHqz0MXhXXS1KgF41eUdBNvxK0=
-golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f/go.mod
h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8=
-gonum.org/v1/gonum v0.11.0 h1:f1IJhK4Km5tBJmaiJXtk/PkL4cdVX6J+tGiM187uT5E=
-gonum.org/v1/gonum v0.11.0/go.mod
h1:fSG4YDCxxUZQJ7rKsQrj0gMOg00Il0Z96/qMA4bVQhA=
-gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod
h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
-gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c
h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
-gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod
h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
-gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
-gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/go/arrow/compute/internal/exec/hash_util.go
b/go/arrow/compute/internal/exec/hash_util.go
index 7630c7495f..0c8f7df5a3 100644
--- a/go/arrow/compute/internal/exec/hash_util.go
+++ b/go/arrow/compute/internal/exec/hash_util.go
@@ -16,10 +16,6 @@
package exec
-import "hash/maphash"
-
-var hashSeed = maphash.MakeSeed()
-
// ADAPTED FROM HASH UTILITIES FOR BOOST
func HashCombine(seed, value uint64) uint64 {
diff --git a/go/arrow/compute/internal/exec/kernel.go
b/go/arrow/compute/internal/exec/kernel.go
index 4d04567bf1..bc19808b7d 100644
--- a/go/arrow/compute/internal/exec/kernel.go
+++ b/go/arrow/compute/internal/exec/kernel.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package exec
import (
@@ -29,6 +31,8 @@ import (
"golang.org/x/exp/slices"
)
+var hashSeed = maphash.MakeSeed()
+
type ctxAllocKey struct{}
// WithAllocator returns a new context with the provided allocator
diff --git a/go/arrow/compute/internal/exec/kernel_test.go
b/go/arrow/compute/internal/exec/kernel_test.go
index 9df64f4228..5f95aa5f46 100644
--- a/go/arrow/compute/internal/exec/kernel_test.go
+++ b/go/arrow/compute/internal/exec/kernel_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package exec_test
import (
diff --git a/go/arrow/compute/internal/exec/span.go
b/go/arrow/compute/internal/exec/span.go
index 0d7a5995da..c0a8bff04d 100644
--- a/go/arrow/compute/internal/exec/span.go
+++ b/go/arrow/compute/internal/exec/span.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package exec
import (
diff --git a/go/arrow/compute/internal/exec/span_test.go
b/go/arrow/compute/internal/exec/span_test.go
index 2b41cd1a0b..e2b51039bb 100644
--- a/go/arrow/compute/internal/exec/span_test.go
+++ b/go/arrow/compute/internal/exec/span_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package exec_test
import (
diff --git a/go/arrow/compute/internal/exec/utils.go
b/go/arrow/compute/internal/exec/utils.go
index 61a1854a60..e35cf6f516 100644
--- a/go/arrow/compute/internal/exec/utils.go
+++ b/go/arrow/compute/internal/exec/utils.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package exec
import (
diff --git a/go/arrow/compute/internal/exec/utils_test.go
b/go/arrow/compute/internal/exec/utils_test.go
index c1c132c9e7..0109405ce6 100644
--- a/go/arrow/compute/internal/exec/utils_test.go
+++ b/go/arrow/compute/internal/exec/utils_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package exec_test
import (
diff --git a/go/arrow/compute/internal/kernels/base_arithmetic.go
b/go/arrow/compute/internal/kernels/base_arithmetic.go
index 8c405469c0..369e4786a9 100644
--- a/go/arrow/compute/internal/kernels/base_arithmetic.go
+++ b/go/arrow/compute/internal/kernels/base_arithmetic.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/base_arithmetic_amd64.go
b/go/arrow/compute/internal/kernels/base_arithmetic_amd64.go
index 344d7081ac..75ef12294a 100644
--- a/go/arrow/compute/internal/kernels/base_arithmetic_amd64.go
+++ b/go/arrow/compute/internal/kernels/base_arithmetic_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/base_arithmetic_avx2_amd64.go
b/go/arrow/compute/internal/kernels/base_arithmetic_avx2_amd64.go
index 4e646299ef..5ef39aa499 100644
--- a/go/arrow/compute/internal/kernels/base_arithmetic_avx2_amd64.go
+++ b/go/arrow/compute/internal/kernels/base_arithmetic_avx2_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/base_arithmetic_avx2_amd64.s
b/go/arrow/compute/internal/kernels/base_arithmetic_avx2_amd64.s
index 9e0078bb0a..8ac7336f48 100644
--- a/go/arrow/compute/internal/kernels/base_arithmetic_avx2_amd64.s
+++ b/go/arrow/compute/internal/kernels/base_arithmetic_avx2_amd64.s
@@ -1,4 +1,4 @@
-//+build !noasm !appengine
+//go:build !noasm && !appengine && go1.18
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
DATA LCDATA1<>+0x000(SB)/8, $0x00ff00ff00ff00ff
diff --git a/go/arrow/compute/internal/kernels/base_arithmetic_sse4_amd64.go
b/go/arrow/compute/internal/kernels/base_arithmetic_sse4_amd64.go
index 4c72e90b16..67a8bbb4a9 100644
--- a/go/arrow/compute/internal/kernels/base_arithmetic_sse4_amd64.go
+++ b/go/arrow/compute/internal/kernels/base_arithmetic_sse4_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/base_arithmetic_sse4_amd64.s
b/go/arrow/compute/internal/kernels/base_arithmetic_sse4_amd64.s
index c33275041b..486403a22e 100644
--- a/go/arrow/compute/internal/kernels/base_arithmetic_sse4_amd64.s
+++ b/go/arrow/compute/internal/kernels/base_arithmetic_sse4_amd64.s
@@ -1,4 +1,4 @@
-//+build !noasm !appengine
+//go:build !noasm && !appengine && go1.18
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
DATA LCDATA1<>+0x000(SB)/8, $0x00ff00ff00ff00ff
diff --git a/go/arrow/compute/internal/kernels/basic_arithmetic_noasm.go
b/go/arrow/compute/internal/kernels/basic_arithmetic_noasm.go
index d4c8f445b8..81d472fa3b 100644
--- a/go/arrow/compute/internal/kernels/basic_arithmetic_noasm.go
+++ b/go/arrow/compute/internal/kernels/basic_arithmetic_noasm.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build noasm
+//go:build go1.18 && noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/boolean_cast.go
b/go/arrow/compute/internal/kernels/boolean_cast.go
index 70e391cf95..6f51b6b0c7 100644
--- a/go/arrow/compute/internal/kernels/boolean_cast.go
+++ b/go/arrow/compute/internal/kernels/boolean_cast.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/cast.go
b/go/arrow/compute/internal/kernels/cast.go
index a3d1e9b0e0..89107e0792 100644
--- a/go/arrow/compute/internal/kernels/cast.go
+++ b/go/arrow/compute/internal/kernels/cast.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/cast_numeric.go
b/go/arrow/compute/internal/kernels/cast_numeric.go
index 0946970a5d..95de2b495f 100644
--- a/go/arrow/compute/internal/kernels/cast_numeric.go
+++ b/go/arrow/compute/internal/kernels/cast_numeric.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/cast_numeric_amd64.go
b/go/arrow/compute/internal/kernels/cast_numeric_amd64.go
index 2c6cedd6e5..68ef28a97f 100644
--- a/go/arrow/compute/internal/kernels/cast_numeric_amd64.go
+++ b/go/arrow/compute/internal/kernels/cast_numeric_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/cast_numeric_avx2_amd64.go
b/go/arrow/compute/internal/kernels/cast_numeric_avx2_amd64.go
index 29a77c6cb9..f50f42c27f 100644
--- a/go/arrow/compute/internal/kernels/cast_numeric_avx2_amd64.go
+++ b/go/arrow/compute/internal/kernels/cast_numeric_avx2_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/cast_numeric_avx2_amd64.s
b/go/arrow/compute/internal/kernels/cast_numeric_avx2_amd64.s
index 69e27e1506..ffedf7a4f5 100644
--- a/go/arrow/compute/internal/kernels/cast_numeric_avx2_amd64.s
+++ b/go/arrow/compute/internal/kernels/cast_numeric_avx2_amd64.s
@@ -1,4 +1,4 @@
-//+build !noasm !appengine
+//go:build !noasm && !appengine && go1.18
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
DATA LCDATA1<>+0x000(SB)/8, $0x43e0000000000000
diff --git a/go/arrow/compute/internal/kernels/cast_numeric_neon_arm64.go
b/go/arrow/compute/internal/kernels/cast_numeric_neon_arm64.go
index 01c5ae59f5..ba57efd21c 100644
--- a/go/arrow/compute/internal/kernels/cast_numeric_neon_arm64.go
+++ b/go/arrow/compute/internal/kernels/cast_numeric_neon_arm64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/cast_numeric_neon_arm64.s
b/go/arrow/compute/internal/kernels/cast_numeric_neon_arm64.s
index 5adc098ccd..c54eac4403 100644
--- a/go/arrow/compute/internal/kernels/cast_numeric_neon_arm64.s
+++ b/go/arrow/compute/internal/kernels/cast_numeric_neon_arm64.s
@@ -1,4 +1,4 @@
-//+build !noasm !appengine
+//go:build go1.18 && !noasm && !appengine
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
TEXT ·_cast_type_numeric_neon(SB), $0-40
diff --git a/go/arrow/compute/internal/kernels/cast_numeric_sse4_amd64.go
b/go/arrow/compute/internal/kernels/cast_numeric_sse4_amd64.go
index b168926637..6c96962cb5 100644
--- a/go/arrow/compute/internal/kernels/cast_numeric_sse4_amd64.go
+++ b/go/arrow/compute/internal/kernels/cast_numeric_sse4_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/cast_numeric_sse4_amd64.s
b/go/arrow/compute/internal/kernels/cast_numeric_sse4_amd64.s
index 8d1836ee4b..778118ffee 100644
--- a/go/arrow/compute/internal/kernels/cast_numeric_sse4_amd64.s
+++ b/go/arrow/compute/internal/kernels/cast_numeric_sse4_amd64.s
@@ -1,4 +1,4 @@
-//+build !noasm !appengine
+//go:build go1.18 && !noasm && !appengine
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
DATA LCDATA1<>+0x000(SB)/8, $0x43e0000000000000
diff --git a/go/arrow/compute/internal/kernels/cast_temporal.go
b/go/arrow/compute/internal/kernels/cast_temporal.go
index ae6bb2801b..b5a85d2336 100644
--- a/go/arrow/compute/internal/kernels/cast_temporal.go
+++ b/go/arrow/compute/internal/kernels/cast_temporal.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/compareoperator_string.go
b/go/arrow/compute/internal/kernels/compareoperator_string.go
index 34d8ff3c62..036859815c 100644
--- a/go/arrow/compute/internal/kernels/compareoperator_string.go
+++ b/go/arrow/compute/internal/kernels/compareoperator_string.go
@@ -1,5 +1,7 @@
// Code generated by "stringer -type=CompareOperator -linecomment"; DO NOT
EDIT.
+//go:build go1.18
+
package kernels
import "strconv"
diff --git a/go/arrow/compute/internal/kernels/constant_factor.go
b/go/arrow/compute/internal/kernels/constant_factor.go
index 6211dd4303..c57902d6a8 100644
--- a/go/arrow/compute/internal/kernels/constant_factor.go
+++ b/go/arrow/compute/internal/kernels/constant_factor.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
var (
diff --git a/go/arrow/compute/internal/kernels/constant_factor_amd64.go
b/go/arrow/compute/internal/kernels/constant_factor_amd64.go
index 78d87d7932..7229632eaf 100644
--- a/go/arrow/compute/internal/kernels/constant_factor_amd64.go
+++ b/go/arrow/compute/internal/kernels/constant_factor_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/constant_factor_avx2_amd64.go
b/go/arrow/compute/internal/kernels/constant_factor_avx2_amd64.go
index d517b9fb98..7d3574655c 100644
--- a/go/arrow/compute/internal/kernels/constant_factor_avx2_amd64.go
+++ b/go/arrow/compute/internal/kernels/constant_factor_avx2_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/constant_factor_avx2_amd64.s
b/go/arrow/compute/internal/kernels/constant_factor_avx2_amd64.s
index c5d68f62e7..c7c747b19b 100644
--- a/go/arrow/compute/internal/kernels/constant_factor_avx2_amd64.s
+++ b/go/arrow/compute/internal/kernels/constant_factor_avx2_amd64.s
@@ -1,4 +1,4 @@
-//+build !noasm !appengine
+//go:build go1.18 && !noasm && !appengine
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
TEXT ·_multiply_constant_int32_int32_avx2(SB), $0-32
diff --git a/go/arrow/compute/internal/kernels/constant_factor_sse4_amd64.go
b/go/arrow/compute/internal/kernels/constant_factor_sse4_amd64.go
index 7560e20175..1f42f3728c 100644
--- a/go/arrow/compute/internal/kernels/constant_factor_sse4_amd64.go
+++ b/go/arrow/compute/internal/kernels/constant_factor_sse4_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/constant_factor_sse4_amd64.s
b/go/arrow/compute/internal/kernels/constant_factor_sse4_amd64.s
index acec728862..2d42edfcec 100644
--- a/go/arrow/compute/internal/kernels/constant_factor_sse4_amd64.s
+++ b/go/arrow/compute/internal/kernels/constant_factor_sse4_amd64.s
@@ -1,4 +1,4 @@
-//+build !noasm !appengine
+//go:build go1.18 && !noasm && !appengine
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
TEXT ·_multiply_constant_int32_int32_sse4(SB), $0-32
diff --git a/go.work b/go/arrow/compute/internal/kernels/doc.go
similarity index 83%
rename from go.work
rename to go/arrow/compute/internal/kernels/doc.go
index e6674e573d..4a9334bc44 100644
--- a/go.work
+++ b/go/arrow/compute/internal/kernels/doc.go
@@ -14,11 +14,6 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-go 1.18
-
-use (
- ./go
- ./go/arrow/compute
-)
-
-replace github.com/apache/arrow/go/v11 v11.0.0 => ./go
+// Package kernels defines all of the computation kernels for the compute
+// library. This requires >= go1.18 since it utilizes Go generics.
+package kernels
diff --git a/go/arrow/compute/internal/kernels/helpers.go
b/go/arrow/compute/internal/kernels/helpers.go
index ab8f474bf9..c938599d91 100644
--- a/go/arrow/compute/internal/kernels/helpers.go
+++ b/go/arrow/compute/internal/kernels/helpers.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
@@ -852,15 +854,6 @@ type execBufBuilder struct {
sz int
}
-func (bldr *execBufBuilder) resize(newcap int) {
- if bldr.buffer == nil {
- bldr.buffer = memory.NewResizableBuffer(bldr.mem)
- }
-
- bldr.buffer.ResizeNoShrink(newcap)
- bldr.data = bldr.buffer.Bytes()
-}
-
func (bldr *execBufBuilder) reserve(additional int) {
if bldr.buffer == nil {
bldr.buffer = memory.NewResizableBuffer(bldr.mem)
@@ -879,35 +872,6 @@ func (bldr *execBufBuilder) unsafeAppend(data []byte) {
bldr.sz += len(data)
}
-func (bldr *execBufBuilder) unsafeAppendN(n int, val byte) {
- bldr.data[bldr.sz] = val
- for i := 1; i < n; i *= 2 {
- copy(bldr.data[bldr.sz+i:], bldr.data[bldr.sz:bldr.sz+i])
- }
- bldr.sz += n
-}
-
-func (bldr *execBufBuilder) append(data []byte) {
- if bldr.sz+len(data) > cap(bldr.data) {
- bldr.resize(bldr.sz + len(data))
- }
- bldr.unsafeAppend(data)
-}
-
-func (bldr *execBufBuilder) appendN(n int, val byte) {
- bldr.reserve(n)
- bldr.unsafeAppendN(n, val)
-}
-
-func (bldr *execBufBuilder) advance(n int) {
- bldr.reserve(n)
- bldr.sz += n
-}
-
-func (bldr *execBufBuilder) unsafeAdvance(n int) {
- bldr.sz += n
-}
-
func (bldr *execBufBuilder) finish() (buf *memory.Buffer) {
if bldr.buffer == nil {
buf = memory.NewBufferBytes(nil)
@@ -936,46 +900,16 @@ func (b *bufferBuilder[T]) reserve(additional int) {
b.execBufBuilder.reserve(additional * int(unsafe.Sizeof(b.zero)))
}
-func (b *bufferBuilder[T]) resize(newcap int) {
- b.execBufBuilder.resize(newcap * int(unsafe.Sizeof(b.zero)))
-}
-
func (b *bufferBuilder[T]) unsafeAppend(value T) {
b.execBufBuilder.unsafeAppend(exec.GetBytes([]T{value}))
}
-func (b *bufferBuilder[T]) unsafeAppendN(n int, value T) {
- data := exec.GetData[T](b.data)[b.len():]
- b.execBufBuilder.unsafeAdvance(n * int(unsafe.Sizeof(value)))
- data[0] = value
- for i := 1; i < n; i *= 2 {
- copy(data[i:], data[:i])
- }
-}
-
func (b *bufferBuilder[T]) unsafeAppendSlice(values []T) {
b.execBufBuilder.unsafeAppend(exec.GetBytes(values))
}
-func (b *bufferBuilder[T]) advance(n int) {
- b.execBufBuilder.advance(n * int(unsafe.Sizeof(b.zero)))
-}
-
-func (b *bufferBuilder[T]) append(value T) {
- b.execBufBuilder.append(exec.GetBytes([]T{value}))
-}
-
func (b *bufferBuilder[T]) len() int { return b.sz /
int(unsafe.Sizeof(b.zero)) }
-func (b *bufferBuilder[T]) appendN(n int, value T) {
- b.reserve(n + b.len())
- b.unsafeAppendN(n, value)
-}
-
-func (b *bufferBuilder[T]) appendSlice(values []T) {
- b.execBufBuilder.append(exec.GetBytes(values))
-}
-
func (b *bufferBuilder[T]) cap() int {
return cap(b.data) / int(unsafe.Sizeof(b.zero))
}
diff --git a/go/arrow/compute/internal/kernels/numeric_cast.go
b/go/arrow/compute/internal/kernels/numeric_cast.go
index e0e373539a..549648615c 100644
--- a/go/arrow/compute/internal/kernels/numeric_cast.go
+++ b/go/arrow/compute/internal/kernels/numeric_cast.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/scalar_arithmetic.go
b/go/arrow/compute/internal/kernels/scalar_arithmetic.go
index 402ccd742f..bc0bd234a6 100644
--- a/go/arrow/compute/internal/kernels/scalar_arithmetic.go
+++ b/go/arrow/compute/internal/kernels/scalar_arithmetic.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/scalar_boolean.go
b/go/arrow/compute/internal/kernels/scalar_boolean.go
index 5b1c90c149..4e02077aeb 100644
--- a/go/arrow/compute/internal/kernels/scalar_boolean.go
+++ b/go/arrow/compute/internal/kernels/scalar_boolean.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/scalar_comparison_amd64.go
b/go/arrow/compute/internal/kernels/scalar_comparison_amd64.go
index 7d4e3bcc06..c0e82b9cc0 100644
--- a/go/arrow/compute/internal/kernels/scalar_comparison_amd64.go
+++ b/go/arrow/compute/internal/kernels/scalar_comparison_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/scalar_comparison_avx2_amd64.go
b/go/arrow/compute/internal/kernels/scalar_comparison_avx2_amd64.go
index 858ed6b15f..465480e63c 100644
--- a/go/arrow/compute/internal/kernels/scalar_comparison_avx2_amd64.go
+++ b/go/arrow/compute/internal/kernels/scalar_comparison_avx2_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/scalar_comparison_avx2_amd64.s
b/go/arrow/compute/internal/kernels/scalar_comparison_avx2_amd64.s
index c577b6bf53..bfc999b808 100644
--- a/go/arrow/compute/internal/kernels/scalar_comparison_avx2_amd64.s
+++ b/go/arrow/compute/internal/kernels/scalar_comparison_avx2_amd64.s
@@ -1,4 +1,4 @@
-//+build !noasm !appengine
+//go:build go1.18 && !noasm && !appengine
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
TEXT ·_comparison_equal_arr_arr_avx2(SB), $80-48
diff --git a/go/arrow/compute/internal/kernels/scalar_comparison_noasm.go
b/go/arrow/compute/internal/kernels/scalar_comparison_noasm.go
index 119a76e3c8..d8b72e75fd 100644
--- a/go/arrow/compute/internal/kernels/scalar_comparison_noasm.go
+++ b/go/arrow/compute/internal/kernels/scalar_comparison_noasm.go
@@ -14,10 +14,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build noasm
+//go:build go1.18 && noasm
package kernels
+import "github.com/apache/arrow/go/v11/arrow/compute/internal/exec"
+
func genCompareKernel[T exec.NumericTypes](op CompareOperator) *CompareData {
return genGoCompareKernel(getCmpOp[T](op))
}
diff --git a/go/arrow/compute/internal/kernels/scalar_comparison_sse4_amd64.go
b/go/arrow/compute/internal/kernels/scalar_comparison_sse4_amd64.go
index dcf911719c..b8a7bd6498 100644
--- a/go/arrow/compute/internal/kernels/scalar_comparison_sse4_amd64.go
+++ b/go/arrow/compute/internal/kernels/scalar_comparison_sse4_amd64.go
@@ -14,7 +14,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-//go:build !noasm
+//go:build go1.18 && !noasm
package kernels
diff --git a/go/arrow/compute/internal/kernels/scalar_comparison_sse4_amd64.s
b/go/arrow/compute/internal/kernels/scalar_comparison_sse4_amd64.s
index fd0181b099..00fdac38de 100644
--- a/go/arrow/compute/internal/kernels/scalar_comparison_sse4_amd64.s
+++ b/go/arrow/compute/internal/kernels/scalar_comparison_sse4_amd64.s
@@ -1,4 +1,4 @@
-//+build !noasm !appengine
+//go:build go1.18 && !noasm && !appengine
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
TEXT ·_comparison_equal_arr_arr_sse4(SB), $80-48
diff --git a/go/arrow/compute/internal/kernels/scalar_comparisons.go
b/go/arrow/compute/internal/kernels/scalar_comparisons.go
index f98f428c0d..8d27d5d21a 100644
--- a/go/arrow/compute/internal/kernels/scalar_comparisons.go
+++ b/go/arrow/compute/internal/kernels/scalar_comparisons.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/string_casts.go
b/go/arrow/compute/internal/kernels/string_casts.go
index 499efb2068..92f0b6ef04 100644
--- a/go/arrow/compute/internal/kernels/string_casts.go
+++ b/go/arrow/compute/internal/kernels/string_casts.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/internal/kernels/types.go
b/go/arrow/compute/internal/kernels/types.go
index eaea9efadf..772c605d58 100644
--- a/go/arrow/compute/internal/kernels/types.go
+++ b/go/arrow/compute/internal/kernels/types.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
@@ -50,11 +52,6 @@ var (
arrow.BinaryTypes.LargeBinary,
arrow.BinaryTypes.String,
arrow.BinaryTypes.LargeString}
- // non-parametric, non-nested types
- primitiveTypes = append(append([]arrow.DataType{
- arrow.Null, arrow.FixedWidthTypes.Boolean,
- arrow.FixedWidthTypes.Date32, arrow.FixedWidthTypes.Date64},
- numericTypes...), baseBinaryTypes...)
)
//go:generate stringer -type=CompareOperator -linecomment
diff --git a/go/arrow/compute/internal/kernels/vector_selection.go
b/go/arrow/compute/internal/kernels/vector_selection.go
index 9f686405ce..2676d5576e 100644
--- a/go/arrow/compute/internal/kernels/vector_selection.go
+++ b/go/arrow/compute/internal/kernels/vector_selection.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package kernels
import (
diff --git a/go/arrow/compute/no_exec.go b/go/arrow/compute/no_exec.go
deleted file mode 100644
index 76ff60ec60..0000000000
--- a/go/arrow/compute/no_exec.go
+++ /dev/null
@@ -1,45 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-// this file is used to provide dummy implementations for exec
-// functions that are called elsewhere in the compute package by
-// the expression handlers so that the logic can stay where it should
-// belong.
-
-package compute
-
-import (
- "context"
-
- "github.com/apache/arrow/go/v11/arrow"
- "github.com/apache/arrow/go/v11/arrow/memory"
-)
-
-// dummy function which always returns false when not loading the C++ lib
-func isFuncScalar(funcName string) bool {
- return false
-}
-
-type boundRef uintptr
-
-func (boundRef) release() {}
-
-// when compiled without the c++ library (the build tags control whether it
looks for it)
-// then we do not have pure go implementation of the expression binding
currently.
-func bindExprSchema(context.Context, memory.Allocator, Expression,
*arrow.Schema) (boundRef, arrow.DataType, int, Expression, error) {
- panic("arrow/compute: bind expression not implemented")
-}
diff --git a/go/arrow/compute/registry.go b/go/arrow/compute/registry.go
index f82f251263..b3724d2542 100644
--- a/go/arrow/compute/registry.go
+++ b/go/arrow/compute/registry.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/registry_test.go
b/go/arrow/compute/registry_test.go
index 0709b65068..4160dbbd6f 100644
--- a/go/arrow/compute/registry_test.go
+++ b/go/arrow/compute/registry_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute_test
import (
diff --git a/go/arrow/compute/scalar_bool.go b/go/arrow/compute/scalar_bool.go
index 6d9a0f3711..f72116bfc0 100644
--- a/go/arrow/compute/scalar_bool.go
+++ b/go/arrow/compute/scalar_bool.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/scalar_bool_test.go
b/go/arrow/compute/scalar_bool_test.go
index d4f4710fa2..3aaf1d6ecc 100644
--- a/go/arrow/compute/scalar_bool_test.go
+++ b/go/arrow/compute/scalar_bool_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute_test
import (
diff --git a/go/arrow/compute/scalar_compare.go
b/go/arrow/compute/scalar_compare.go
index 8cb8b7d10a..fec52ab766 100644
--- a/go/arrow/compute/scalar_compare.go
+++ b/go/arrow/compute/scalar_compare.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/scalar_compare_test.go
b/go/arrow/compute/scalar_compare_test.go
index a071c05caa..21c6f0648f 100644
--- a/go/arrow/compute/scalar_compare_test.go
+++ b/go/arrow/compute/scalar_compare_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute_test
import (
@@ -106,53 +108,53 @@ func slowCompare[T exec.NumericTypes | string](op
kernels.CompareOperator, lhs,
}
}
-func simpleScalarArrayCompare[T exec.NumericTypes](mem memory.Allocator, op
kernels.CompareOperator, lhs, rhs compute.Datum) compute.Datum {
- var (
- swap = lhs.Kind() == compute.KindArray
- span exec.ArraySpan
- itr exec.ArrayIter[T]
- value T
- )
-
- if swap {
- span.SetMembers(lhs.(*compute.ArrayDatum).Value)
- itr = exec.NewPrimitiveIter[T](&span)
- value =
kernels.UnboxScalar[T](rhs.(*compute.ScalarDatum).Value.(scalar.PrimitiveScalar))
- } else {
- span.SetMembers(rhs.(*compute.ArrayDatum).Value)
- itr = exec.NewPrimitiveIter[T](&span)
- value =
kernels.UnboxScalar[T](lhs.(*compute.ScalarDatum).Value.(scalar.PrimitiveScalar))
- }
-
- bitmap := make([]bool, span.Len)
- for i := 0; i < int(span.Len); i++ {
- if swap {
- bitmap[i] = slowCompare(op, itr.Next(), value)
- } else {
- bitmap[i] = slowCompare(op, value, itr.Next())
- }
- }
-
- var result arrow.Array
- if span.Nulls == 0 {
- result = exec.ArrayFromSlice(mem, bitmap)
- } else {
- nullBitmap := make([]bool, span.Len)
- rdr := bitutil.NewBitmapReader(span.Buffers[0].Buf,
int(span.Offset), int(span.Len))
- for i := 0; i < int(span.Len); i++ {
- nullBitmap[i] = rdr.Set()
- rdr.Next()
- }
- bldr := array.NewBooleanBuilder(mem)
- defer bldr.Release()
-
- bldr.AppendValues(bitmap, nullBitmap)
- result = bldr.NewArray()
- }
-
- defer result.Release()
- return compute.NewDatum(result)
-}
+// func simpleScalarArrayCompare[T exec.NumericTypes](mem memory.Allocator, op
kernels.CompareOperator, lhs, rhs compute.Datum) compute.Datum {
+// var (
+// swap = lhs.Kind() == compute.KindArray
+// span exec.ArraySpan
+// itr exec.ArrayIter[T]
+// value T
+// )
+
+// if swap {
+// span.SetMembers(lhs.(*compute.ArrayDatum).Value)
+// itr = exec.NewPrimitiveIter[T](&span)
+// value =
kernels.UnboxScalar[T](rhs.(*compute.ScalarDatum).Value.(scalar.PrimitiveScalar))
+// } else {
+// span.SetMembers(rhs.(*compute.ArrayDatum).Value)
+// itr = exec.NewPrimitiveIter[T](&span)
+// value =
kernels.UnboxScalar[T](lhs.(*compute.ScalarDatum).Value.(scalar.PrimitiveScalar))
+// }
+
+// bitmap := make([]bool, span.Len)
+// for i := 0; i < int(span.Len); i++ {
+// if swap {
+// bitmap[i] = slowCompare(op, itr.Next(), value)
+// } else {
+// bitmap[i] = slowCompare(op, value, itr.Next())
+// }
+// }
+
+// var result arrow.Array
+// if span.Nulls == 0 {
+// result = exec.ArrayFromSlice(mem, bitmap)
+// } else {
+// nullBitmap := make([]bool, span.Len)
+// rdr := bitutil.NewBitmapReader(span.Buffers[0].Buf,
int(span.Offset), int(span.Len))
+// for i := 0; i < int(span.Len); i++ {
+// nullBitmap[i] = rdr.Set()
+// rdr.Next()
+// }
+// bldr := array.NewBooleanBuilder(mem)
+// defer bldr.Release()
+
+// bldr.AppendValues(bitmap, nullBitmap)
+// result = bldr.NewArray()
+// }
+
+// defer result.Release()
+// return compute.NewDatum(result)
+// }
func simpleScalarArrayCompareString(mem memory.Allocator, op
kernels.CompareOperator, lhs, rhs compute.Datum) compute.Datum {
var (
@@ -265,19 +267,19 @@ type NumericCompareSuite[T exec.NumericTypes] struct {
CompareSuite
}
-func (n *NumericCompareSuite[T]) validateCompareComputed(op
kernels.CompareOperator, lhs, rhs compute.Datum) {
- var expected compute.Datum
+// func (n *NumericCompareSuite[T]) validateCompareComputed(op
kernels.CompareOperator, lhs, rhs compute.Datum) {
+// var expected compute.Datum
- hasScalar := lhs.Kind() == compute.KindScalar || rhs.Kind() ==
compute.KindScalar
- if hasScalar {
- expected = simpleScalarArrayCompare[T](n.mem, op, lhs, rhs)
- } else {
- expected = simpleArrArrCompare[T](n.mem, op, lhs, rhs)
- }
+// hasScalar := lhs.Kind() == compute.KindScalar || rhs.Kind() ==
compute.KindScalar
+// if hasScalar {
+// expected = simpleScalarArrayCompare[T](n.mem, op, lhs, rhs)
+// } else {
+// expected = simpleArrArrCompare[T](n.mem, op, lhs, rhs)
+// }
- defer expected.Release()
- n.CompareSuite.validateCompareDatum(op, lhs, rhs, expected)
-}
+// defer expected.Release()
+// n.CompareSuite.validateCompareDatum(op, lhs, rhs, expected)
+// }
func (n *NumericCompareSuite[T]) TestSimpleCompareArrayScalar() {
dt := exec.GetDataType[T]()
diff --git a/go/arrow/compute/selection.go b/go/arrow/compute/selection.go
index 0e8d4ebc2b..45beaa9ae3 100644
--- a/go/arrow/compute/selection.go
+++ b/go/arrow/compute/selection.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/utils.go b/go/arrow/compute/utils.go
index ade2e3140c..00cb3767e7 100644
--- a/go/arrow/compute/utils.go
+++ b/go/arrow/compute/utils.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute
import (
diff --git a/go/arrow/compute/vector_selection_test.go
b/go/arrow/compute/vector_selection_test.go
index a6b38aa78d..dae253ffcf 100644
--- a/go/arrow/compute/vector_selection_test.go
+++ b/go/arrow/compute/vector_selection_test.go
@@ -14,6 +14,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+//go:build go1.18
+
package compute_test
import (
diff --git a/go/arrow/doc.go b/go/arrow/doc.go
index 513521b5a7..722c350274 100644
--- a/go/arrow/doc.go
+++ b/go/arrow/doc.go
@@ -28,6 +28,10 @@ The fundamental data structure in Arrow is an Array, which
holds a sequence of v
consists of memory holding the data and an additional validity bitmap that
indicates if the corresponding entry in the
array is valid (not null). If the array has no null entries, it is possible to
omit this bitmap.
+Requirements
+
+Despite the go.mod stating go1.18, everything except for the compute package
+is able to be built with go1.17 (and most is also compatible with go1.16).
*/
package arrow
diff --git a/go/go.mod b/go/go.mod
index e88d599b73..e2ff7749b4 100644
--- a/go/go.mod
+++ b/go/go.mod
@@ -16,7 +16,7 @@
module github.com/apache/arrow/go/v11
-go 1.17
+go 1.18
require (
github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c
diff --git a/go/go.sum b/go/go.sum
index b247b659cc..81db210a16 100644
--- a/go/go.sum
+++ b/go/go.sum
@@ -1,32 +1,13 @@
cloud.google.com/go v0.26.0/go.mod
h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
-cloud.google.com/go v0.34.0/go.mod
h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
-dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod
h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
-gioui.org v0.0.0-20210308172011-57750fc8a0a6/go.mod
h1:RSH6KIUZ0p2xy5zHDxgAM4zumjgTw83q2ge/PI+yyw8=
-git.sr.ht/~sbinet/gg v0.3.1/go.mod
h1:KGYtlADtqsqANL9ueOFkWymvzUvLMQllU5Ixo+8v3pc=
github.com/BurntSushi/toml v0.3.1/go.mod
h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
-github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod
h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c
h1:RGWPOewvKIROun94nF7v2cua9qP+thov/7M50KEoeSU=
github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c/go.mod
h1:X0CRv0ky0k6m906ixxpzmDRLvX58TFUKS2eePweuyxk=
-github.com/ajstarks/deck v0.0.0-20200831202436-30c9fc6549a9/go.mod
h1:JynElWSGnm/4RlzPXRlREEwqTHAN3T56Bv2ITsFT3gY=
-github.com/ajstarks/deck/generate v0.0.0-20210309230005-c3f852c02e19/go.mod
h1:T13YZdzov6OU0A1+RfKZiZN9ca6VeKdBdyDV+BY97Tk=
-github.com/ajstarks/svgo v0.0.0-20180226025133-644b8db467af/go.mod
h1:K08gAheRH3/J6wwsYMMT4xOr94bZjxIelGM0+d/wbFw=
-github.com/ajstarks/svgo v0.0.0-20211024235047-1546f124cd8b/go.mod
h1:1KcenG0jGWcpt8ov532z81sp/kMMUG485J2InIOyADM=
github.com/andybalholm/brotli v1.0.4
h1:V7DdXeJtZscaqfNuAdSRuRFzuiKlHSC/Zh3zl9qY3JY=
github.com/andybalholm/brotli v1.0.4/go.mod
h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig=
-github.com/antihax/optional v1.0.0/go.mod
h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=
github.com/apache/thrift v0.16.0
h1:qEy6UW60iVOlUy+b9ZR0d5WzUWYGOo4HfopoyBaNmoY=
github.com/apache/thrift v0.16.0/go.mod
h1:PHK3hniurgQaNMZYaCLEqXKsYK8upmhPbmdP2FXSqgU=
-github.com/boombuler/barcode v1.0.0/go.mod
h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8=
-github.com/boombuler/barcode v1.0.1/go.mod
h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8=
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod
h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
-github.com/cespare/xxhash/v2 v2.1.1/go.mod
h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
github.com/client9/misspell v0.3.4/go.mod
h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
-github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod
h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
-github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod
h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
-github.com/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod
h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI=
-github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod
h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
-github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod
h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
-github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod
h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
github.com/creack/pty v1.1.9/go.mod
h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
github.com/davecgh/go-spew v1.1.0/go.mod
h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1
h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
@@ -35,42 +16,21 @@ github.com/docopt/docopt-go
v0.0.0-20180111231733-ee0de3bc6815 h1:bWDMxwH3px2JBh
github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod
h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE=
github.com/dustin/go-humanize v1.0.0
h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo=
github.com/dustin/go-humanize v1.0.0/go.mod
h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
-github.com/envoyproxy/go-control-plane v0.9.0/go.mod
h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane
v0.9.1-0.20191026205805-5f8ba28d4473/go.mod
h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
-github.com/envoyproxy/go-control-plane v0.9.4/go.mod
h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=
-github.com/envoyproxy/go-control-plane
v0.9.9-0.20201210154907-fd9021fe5dad/go.mod
h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
-github.com/envoyproxy/go-control-plane
v0.10.2-0.20220325020618-49ff273808a1/go.mod
h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE=
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod
h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
-github.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod
h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k=
-github.com/fogleman/gg v1.3.0/go.mod
h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k=
-github.com/ghodss/yaml v1.0.0/go.mod
h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
-github.com/go-fonts/dejavu v0.1.0/go.mod
h1:4Wt4I4OU2Nq9asgDCteaAaWZOV24E+0/Pwo0gppep4g=
-github.com/go-fonts/latin-modern v0.2.0/go.mod
h1:rQVLdDMK+mK1xscDwsqM5J8U2jrRa3T0ecnM9pNujks=
-github.com/go-fonts/liberation v0.1.1/go.mod
h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY=
-github.com/go-fonts/liberation v0.2.0/go.mod
h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY=
-github.com/go-fonts/stix v0.1.0/go.mod
h1:w/c1f0ldAUlJmLBvlbkvVXLAD+tAMqobIIQpmnUIzUY=
-github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod
h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU=
-github.com/go-latex/latex v0.0.0-20210118124228-b3d85cf34e07/go.mod
h1:CO1AlKB2CSIqUrmQPqA0gdRIlnLEY0gK5JGjh37zN5U=
-github.com/go-latex/latex v0.0.0-20210823091927-c0d11ff05a81/go.mod
h1:SX0U8uGpxhq9o2S/CELCSUxEWWAuoCUcVCQWv7G2OCk=
-github.com/go-pdf/fpdf v0.5.0/go.mod
h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M=
-github.com/go-pdf/fpdf v0.6.0/go.mod
h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M=
github.com/goccy/go-json v0.9.11
h1:/pAaQDLHEoCq/5FFmSKBswWmK6H0e8g4159Kc/X/nqk=
github.com/goccy/go-json v0.9.11/go.mod
h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
-github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod
h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod
h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
github.com/golang/mock v1.1.1/go.mod
h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
github.com/golang/mock v1.5.0/go.mod
h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8=
github.com/golang/protobuf v1.2.0/go.mod
h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.3.2/go.mod
h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
-github.com/golang/protobuf v1.3.3/go.mod
h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw=
github.com/golang/protobuf v1.4.0-rc.1/go.mod
h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=
github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod
h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA=
github.com/golang/protobuf v1.4.0-rc.2/go.mod
h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs=
github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod
h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w=
github.com/golang/protobuf v1.4.0/go.mod
h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0=
github.com/golang/protobuf v1.4.1/go.mod
h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8=
-github.com/golang/protobuf v1.4.2/go.mod
h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
-github.com/golang/protobuf v1.4.3/go.mod
h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
github.com/golang/protobuf v1.5.0/go.mod
h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
github.com/golang/protobuf v1.5.2
h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw=
github.com/golang/protobuf v1.5.2/go.mod
h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
@@ -82,22 +42,13 @@ github.com/google/go-cmp v0.2.0/go.mod
h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5a
github.com/google/go-cmp v0.3.0/go.mod
h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.3.1/go.mod
h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.4.0/go.mod
h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
-github.com/google/go-cmp v0.5.0/go.mod
h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.3/go.mod
h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.5/go.mod
h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
-github.com/google/go-cmp v0.5.6/go.mod
h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
-github.com/google/go-cmp v0.5.7/go.mod
h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE=
github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=
-github.com/google/go-cmp v0.5.8/go.mod
h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
-github.com/google/uuid v1.1.2/go.mod
h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I=
github.com/google/uuid v1.3.0/go.mod
h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
-github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod
h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
-github.com/jung-kurt/gofpdf v1.0.0/go.mod
h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes=
-github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod
h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes=
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
h1:Z9n2FFNUXsshfwJMBgNA0RU6/i7WVaAegv3PtuIHPMs=
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod
h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8=
-github.com/kisielk/gotool v1.0.0/go.mod
h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/klauspost/asmfmt v1.3.2
h1:4Ri7ox3EwapiOjCki+hw14RyKk201CN4rzyCJRFLpK4=
github.com/klauspost/asmfmt v1.3.2/go.mod
h1:AG8TuvYojzulgDAMCnYn50l/5QV3Bs/tp6j0HLHbNSE=
github.com/klauspost/compress v1.15.9
h1:wKRjX6JRtDdrE9qwa4b/Cip7ACOshUI4smpCQanqjSY=
@@ -116,145 +67,78 @@ github.com/mattn/go-isatty v0.0.12/go.mod
h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Ky
github.com/mattn/go-isatty v0.0.16
h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ=
github.com/mattn/go-isatty v0.0.16/go.mod
h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
github.com/mattn/go-sqlite3 v1.14.14
h1:qZgc/Rwetq+MtyE18WhzjokPD93dNqLGNT3QJuLvBGw=
-github.com/mattn/go-sqlite3 v1.14.14/go.mod
h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8
h1:AMFGa4R4MiIpspGNG7Z948v4n35fFGB3RR3G/ry4FWs=
github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8/go.mod
h1:mC1jAcsrzbxHt8iiaC+zU4b1ylILSosueou12R++wfY=
github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3
h1:+n/aFZefKZp7spd8DFdX7uMikMLXX4oubIzJF4kv/wI=
github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3/go.mod
h1:RagcQ7I8IeTMnF8JTXieKnO4Z6JCsikNEzj0DwauVzE=
-github.com/phpdave11/gofpdf v1.4.2/go.mod
h1:zpO6xFn9yxo3YLyMvW8HcKWVdbNqgIfOOp2dXMnm1mY=
-github.com/phpdave11/gofpdi v1.0.12/go.mod
h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI=
-github.com/phpdave11/gofpdi v1.0.13/go.mod
h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI=
github.com/pierrec/lz4/v4 v4.1.15
h1:MO0/ucJhngq7299dKLwIMtgTfbkoSPF6AoMYDd8Q4q0=
github.com/pierrec/lz4/v4 v4.1.15/go.mod
h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4=
-github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod
h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
-github.com/pkg/errors v0.8.1/go.mod
h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
-github.com/pkg/errors v0.9.1/go.mod
h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib v1.0.0
h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod
h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod
h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0
h1:OdAsTTz6OkFY5QxjkYwrChwuRruF69c169dPK26NUlk=
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod
h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
-github.com/rogpeppe/fastuuid v1.2.0/go.mod
h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=
github.com/rogpeppe/go-internal v1.6.1/go.mod
h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc=
github.com/rogpeppe/go-internal v1.9.0
h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8=
github.com/rogpeppe/go-internal v1.9.0/go.mod
h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
-github.com/ruudk/golang-pdf417 v0.0.0-20181029194003-1af4ab5afa58/go.mod
h1:6lfFZQK844Gfx8o5WFuvpxWRwnSoipWe/p622j1v06w=
-github.com/ruudk/golang-pdf417 v0.0.0-20201230142125-a7e3863a1245/go.mod
h1:pQAZKsJ8yyVxGRWYNEm9oFB8ieLgKFnamEyDmSA0BRk=
github.com/stretchr/objx v0.1.0/go.mod
h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.4.0 h1:M2gUjqZET1qApGOWNSnZ49BAIMX4F/1plDv3+l31EJ4=
github.com/stretchr/objx v0.4.0/go.mod
h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
-github.com/stretchr/testify v1.2.2/go.mod
h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
-github.com/stretchr/testify v1.5.1/go.mod
h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
-github.com/stretchr/testify v1.7.0/go.mod
h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.7.1/go.mod
h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.8.0
h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk=
github.com/stretchr/testify v1.8.0/go.mod
h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/yuin/goldmark v1.2.1/go.mod
h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
-github.com/yuin/goldmark v1.4.1/go.mod
h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
-github.com/yuin/goldmark v1.4.13/go.mod
h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ=
-github.com/zeebo/assert v1.3.0/go.mod
h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0=
github.com/zeebo/xxh3 v1.0.2 h1:xZmwmqxHZA8AI603jOQ0tMqmBr9lPeFwGg6d+xy9DC0=
github.com/zeebo/xxh3 v1.0.2/go.mod
h1:5NWz9Sef7zIDm2JHfFlcQvNekmcEl9ekUZQQKCYaDcA=
-go.opentelemetry.io/proto/otlp v0.7.0/go.mod
h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod
h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
-golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod
h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod
h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod
h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
-golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod
h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
-golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod
h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
-golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod
h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod
h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
-golang.org/x/exp v0.0.0-20190125153040-c74c464bbbf2/go.mod
h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
-golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod
h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
-golang.org/x/exp v0.0.0-20191002040644-a1355ae1e2c3/go.mod
h1:NOZ3BPKG0ec/BKJQgnvsSFpcKLM5xXVWnvZS97DWHgE=
golang.org/x/exp v0.0.0-20220827204233-334a2380cb91
h1:tnebWN09GYg9OLPss1KXj8txwZc6X6uMr6VFdcGNbHw=
golang.org/x/exp v0.0.0-20220827204233-334a2380cb91/go.mod
h1:cyybsKvd6eL0RnXn6p/Grxp8F5bW7iYuBgsNCOHpMYE=
-golang.org/x/image v0.0.0-20180708004352-c73c2afc3b81/go.mod
h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs=
-golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod
h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js=
-golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod
h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
-golang.org/x/image v0.0.0-20190910094157-69e4b8554b2a/go.mod
h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
-golang.org/x/image v0.0.0-20200119044424-58c23975cae1/go.mod
h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
-golang.org/x/image v0.0.0-20200430140353-33d19683fad8/go.mod
h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
-golang.org/x/image v0.0.0-20200618115811-c13761719519/go.mod
h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
-golang.org/x/image v0.0.0-20201208152932-35266b937fa6/go.mod
h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
-golang.org/x/image v0.0.0-20210216034530-4410531fe030/go.mod
h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
-golang.org/x/image v0.0.0-20210607152325-775e3b0c77b9/go.mod
h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM=
-golang.org/x/image v0.0.0-20210628002857-a66eb6448b8d/go.mod
h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM=
-golang.org/x/image v0.0.0-20211028202545-6944b10bf410/go.mod
h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM=
-golang.org/x/image v0.0.0-20220302094943-723b81ca9867/go.mod
h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM=
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod
h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod
h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod
h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
-golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod
h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o=
-golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
-golang.org/x/mod v0.5.1/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4
h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod
h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod
h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod
h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
-golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod
h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod
h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod
h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod
h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod
h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
-golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod
h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod
h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
-golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod
h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
-golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod
h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b
h1:PxfKdU9lEEDYjdIzOtC4qFWgkU2rGHdKlKowJSMN9h0=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod
h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod
h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
-golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod
h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde
h1:ejfdSekXMDxDLbRrJMwUk6KnSLZ2McaUCVcIKM+N6jc=
golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde/go.mod
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
-golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210304124612-50617c2ba197/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod
h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac/go.mod
h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod
h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod
h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod
h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod
h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220829200755-d48e67d00261
h1:v6hYoSR9T5oet+pMXwUWkbiVqx/63mlHjefrHmxwfeY=
golang.org/x/sys v0.0.0-20220829200755-d48e67d00261/go.mod
h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod
h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
-golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod
h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
-golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod
h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod
h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod
h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
-golang.org/x/tools v0.0.0-20190206041539-40960b6deb8e/go.mod
h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod
h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod
h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod
h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
-golang.org/x/tools v0.0.0-20190927191325-030b2cf1153e/go.mod
h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod
h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20201124115921-2c860bdd6e78/go.mod
h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
-golang.org/x/tools v0.1.0/go.mod
h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0=
-golang.org/x/tools v0.1.9/go.mod
h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU=
golang.org/x/tools v0.1.12 h1:VveCTK38A2rkS8ZqFY25HIDFscX5X9OoEhJd3quQmXU=
golang.org/x/tools v0.1.12/go.mod
h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@@ -263,28 +147,17 @@ golang.org/x/xerrors
v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8T
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f
h1:uF6paiQQebLeSXkrTqHqz0MXhXXS1KgF41eUdBNvxK0=
golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f/go.mod
h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8=
-gonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod
h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo=
-gonum.org/v1/gonum v0.8.2/go.mod
h1:oe/vMfY3deqTw+1EZJhuvEW2iwGF1bW9wwu7XCu0+v0=
-gonum.org/v1/gonum v0.9.3/go.mod
h1:TZumC3NeyVQskjXqmyWt4S3bINhy7B4eYwW69EbyX+0=
gonum.org/v1/gonum v0.11.0 h1:f1IJhK4Km5tBJmaiJXtk/PkL4cdVX6J+tGiM187uT5E=
gonum.org/v1/gonum v0.11.0/go.mod
h1:fSG4YDCxxUZQJ7rKsQrj0gMOg00Il0Z96/qMA4bVQhA=
-gonum.org/v1/netlib v0.0.0-20190313105609-8cb42192e0e0/go.mod
h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw=
-gonum.org/v1/plot v0.0.0-20190515093506-e2840ee46a6b/go.mod
h1:Wt8AAjI+ypCyYX3nZBvf6cAIx93T+c/OS2HFAYskSZc=
-gonum.org/v1/plot v0.9.0/go.mod h1:3Pcqqmp6RHvJI72kgb8fThyUnav364FOsdDo2aGW5lY=
-gonum.org/v1/plot v0.10.1/go.mod
h1:VZW5OlhkL1mysU9vaqNHnsy86inf6Ot+jB3r+BczCEo=
google.golang.org/appengine v1.1.0/go.mod
h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
google.golang.org/appengine v1.4.0/go.mod
h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod
h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod
h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
-google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod
h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=
google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013
h1:+kGHl1aib/qcwaRi1CbqBZ1rk19r85MNUf8HaBghugY=
google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod
h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo=
google.golang.org/grpc v1.19.0/go.mod
h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
google.golang.org/grpc v1.23.0/go.mod
h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
-google.golang.org/grpc v1.25.1/go.mod
h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY=
google.golang.org/grpc v1.27.0/go.mod
h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
-google.golang.org/grpc v1.33.1/go.mod
h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0=
-google.golang.org/grpc v1.36.0/go.mod
h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU=
google.golang.org/grpc v1.49.0 h1:WTLtQzmQori5FUH25Pq4WT22oCsv8USpQ+F6rqtsmxw=
google.golang.org/grpc v1.49.0/go.mod
h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI=
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod
h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
@@ -293,12 +166,9 @@ google.golang.org/protobuf
v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQ
google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod
h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE=
google.golang.org/protobuf v1.21.0/go.mod
h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=
google.golang.org/protobuf v1.22.0/go.mod
h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
-google.golang.org/protobuf v1.23.0/go.mod
h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod
h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
-google.golang.org/protobuf v1.25.0/go.mod
h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c=
google.golang.org/protobuf v1.26.0-rc.1/go.mod
h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
google.golang.org/protobuf v1.26.0/go.mod
h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
-google.golang.org/protobuf v1.27.1/go.mod
h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
google.golang.org/protobuf v1.28.1
h1:d0NfwRgPtno5B1Wa6L2DAG+KivqkdutMf1UhdNx175w=
google.golang.org/protobuf v1.28.1/go.mod
h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod
h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
@@ -306,37 +176,23 @@ gopkg.in/check.v1
v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c
h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod
h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
-gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
-gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod
h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod
h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod
h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
-honnef.co/go/tools v0.1.3/go.mod
h1:NgwopIslSNH47DimFoV78dnkksY2EFtX0ajyb3K/las=
lukechampine.com/uint128 v1.1.1/go.mod
h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk=
lukechampine.com/uint128 v1.2.0 h1:mBi/5l91vocEN8otkC5bDLhi2KdCticRiwbdB0O+rjI=
lukechampine.com/uint128 v1.2.0/go.mod
h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk=
-modernc.org/cc/v3 v3.36.0/go.mod
h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI=
modernc.org/cc/v3 v3.36.2/go.mod
h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI=
modernc.org/cc/v3 v3.36.3 h1:uISP3F66UlixxWEcKuIWERa4TwrZENHSL8tWxZz8bHg=
modernc.org/cc/v3 v3.36.3/go.mod
h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI=
-modernc.org/ccgo/v3 v3.0.0-20220428102840-41399a37e894/go.mod
h1:eI31LL8EwEBKPpNpA4bU1/i+sKOwOrQy8D87zWUcRZc=
-modernc.org/ccgo/v3 v3.0.0-20220430103911-bc99d88307be/go.mod
h1:bwdAnOoaIt8Ax9YdWGjxWsdkPcZyRPHqrOvJxaKAKGw=
-modernc.org/ccgo/v3 v3.16.4/go.mod
h1:tGtX0gE9Jn7hdZFeU88slbTh1UtCYKusWOoCJuvkWsQ=
-modernc.org/ccgo/v3 v3.16.6/go.mod
h1:tGtX0gE9Jn7hdZFeU88slbTh1UtCYKusWOoCJuvkWsQ=
-modernc.org/ccgo/v3 v3.16.8/go.mod
h1:zNjwkizS+fIFDrDjIAgBSCLkWbJuHF+ar3QRn+Z9aws=
modernc.org/ccgo/v3 v3.16.9 h1:AXquSwg7GuMk11pIdw7fmO1Y/ybgazVkMhsZWCV0mHM=
modernc.org/ccgo/v3 v3.16.9/go.mod
h1:zNMzC9A9xeNUepy6KuZBbugn3c0Mc9TeiJO4lgvkJDo=
modernc.org/ccorpus v1.11.6 h1:J16RXiiqiCgua6+ZvQot4yUuUy8zxgqbqEEUuGPlISk=
modernc.org/ccorpus v1.11.6/go.mod
h1:2gEUTrWqdpH2pXsmTM1ZkjeSrUWDpjMu2T6m29L/ErQ=
modernc.org/httpfs v1.0.6 h1:AAgIpFZRXuYnkjftxTAZwMIiwEqAfk8aVB2/oA6nAeM=
modernc.org/httpfs v1.0.6/go.mod
h1:7dosgurJGp0sPaRanU53W4xZYKh14wfzX420oZADeHM=
-modernc.org/libc v0.0.0-20220428101251-2d5f3daf273b/go.mod
h1:p7Mg4+koNjc8jkqwcoFBJx7tXkpj00G77X7A72jXPXA=
-modernc.org/libc v1.16.0/go.mod h1:N4LD6DBE9cf+Dzf9buBlzVJndKr/iJHG97vGLHYnb5A=
-modernc.org/libc v1.16.1/go.mod h1:JjJE0eu4yeK7tab2n4S1w8tlWd9MxXLRzheaRnAKymU=
-modernc.org/libc v1.16.17/go.mod
h1:hYIV5VZczAmGZAnG15Vdngn5HSF5cSkbvfz2B7GRuVU=
-modernc.org/libc v1.16.19/go.mod
h1:p7Mg4+koNjc8jkqwcoFBJx7tXkpj00G77X7A72jXPXA=
modernc.org/libc v1.17.0/go.mod h1:XsgLldpP4aWlPlsjqKRdHPqCxCjISdHfM/yeWC5GyW0=
modernc.org/libc v1.17.1 h1:Q8/Cpi36V/QBfuQaFVeisEBs3WqoGAJprZzmf7TfEYI=
modernc.org/libc v1.17.1/go.mod h1:FZ23b+8LjxZs7XtFMbSzL/EhPxNbfZbErxEHc7cbD9s=
@@ -344,7 +200,6 @@ modernc.org/mathutil v1.2.2/go.mod
h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6
modernc.org/mathutil v1.4.1/go.mod
h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
modernc.org/mathutil v1.5.0 h1:rV0Ko/6SfM+8G+yKiyI830l3Wuz1zRutdslNoQ0kfiQ=
modernc.org/mathutil v1.5.0/go.mod
h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
-modernc.org/memory v1.1.1/go.mod
h1:/0wo5ibyrQiaoUoH7f9D8dnglAmILJ5/cxZlRECf+Nw=
modernc.org/memory v1.2.0/go.mod
h1:/0wo5ibyrQiaoUoH7f9D8dnglAmILJ5/cxZlRECf+Nw=
modernc.org/memory v1.2.1 h1:dkRh86wgmq/bJu2cAS2oqBCz/KsMZU7TUM4CibQ7eBs=
modernc.org/memory v1.2.1/go.mod
h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU=
@@ -357,9 +212,6 @@ modernc.org/strutil v1.1.1/go.mod
h1:DE+MQQ/hjKBZS2zNInV5hhcipt5rLPWkmpbGeW5mmdw
modernc.org/strutil v1.1.3 h1:fNMm+oJklMGYfU9Ylcywl0CO5O6nTfaowNsh2wpPjzY=
modernc.org/strutil v1.1.3/go.mod
h1:MEHNA7PdEnEwLvspRMtWTNnp2nnyvMfkimT1NKNAGbw=
modernc.org/tcl v1.13.1 h1:npxzTwFTZYM8ghWicVIX1cRWzj7Nd8i6AqqX2p+IYao=
-modernc.org/tcl v1.13.1/go.mod h1:XOLfOwzhkljL4itZkK6T72ckMgvj0BDsnKNdZVUOecw=
modernc.org/token v1.0.0 h1:a0jaWiNMDhDUtqOj09wvjWWAqd3q7WpBulmL9H2egsk=
modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM=
modernc.org/z v1.5.1 h1:RTNHdsrOpeoSeOF4FbzTo8gBYByaJ5xT7NgZ9ZqRiJM=
-modernc.org/z v1.5.1/go.mod h1:eWFB510QWW5Th9YGZT81s+LwvaAs3Q2yr4sP0rmLkv8=
-rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=
diff --git a/go/parquet/doc.go b/go/parquet/doc.go
index ccb046f6ce..391927794b 100644
--- a/go/parquet/doc.go
+++ b/go/parquet/doc.go
@@ -20,6 +20,9 @@
// shredding and assembly algorithm to accommodate complex data structures
which
// can then be used to efficiently store the data.
//
+// While the go.mod states go1.18, everything here should be compatible
+// with go versions 1.17 and 1.16.
+//
// This implementation is a native go implementation for reading and writing
the
// parquet file format.
//