Handle rand deprecations in go 1.20

Signed-off-by: James Hewitt <james.hewitt@uk.ibm.com>
This commit is contained in:
James Hewitt 2023-08-27 11:06:16 +01:00
parent 0eb8fee87e
commit 1a3e73cb84
No known key found for this signature in database
GPG Key ID: EA6C3C654B6193E4
8 changed files with 12 additions and 10 deletions

View File

@ -27,7 +27,7 @@ jobs:
matrix:
go:
- 1.20.7
- 1.21
- 1.21.0
steps:
-
name: Checkout

View File

@ -2,7 +2,7 @@
ARG GO_VERSION=1.20.7
ARG ALPINE_VERSION=3.18
ARG GOLANGCI_LINT_VERSION=v1.52
ARG GOLANGCI_LINT_VERSION=v1.54.2
ARG BUILDTAGS="include_gcs"
FROM golangci/golangci-lint:${GOLANGCI_LINT_VERSION}-alpine AS golangci-lint

View File

@ -9,7 +9,6 @@ import (
"reflect"
"strings"
"testing"
"time"
"github.com/gorilla/mux"
)
@ -221,7 +220,6 @@ func TestRouterWithBadCharacters(t *testing.T) {
// with random UTF8 characters not in the 128 bit ASCII range.
// These are not valid characters for the router and we expect
// 404s on every test.
rand.Seed(time.Now().UTC().UnixNano())
tests := make([]routeTestCase, 1000)
for idx := range tests {
tests[idx] = routeTestCase{

View File

@ -21,6 +21,7 @@ import (
)
var sbsMu sync.Mutex
var randSource rand.Rand
type statsBlobStore struct {
stats map[string]int
@ -189,13 +190,13 @@ func makeTestEnv(t *testing.T, name string) *testEnv {
func makeBlob(size int) []byte {
blob := make([]byte, size)
for i := 0; i < size; i++ {
blob[i] = byte('A' + rand.Int()%48)
blob[i] = byte('A' + randSource.Int()%48)
}
return blob
}
func init() {
rand.Seed(42)
randSource = *rand.New(rand.NewSource(42))
}
func populate(t *testing.T, te *testEnv, blobCount, size, numUnique int) {

View File

@ -2,9 +2,9 @@ package s3
import (
"bytes"
"crypto/rand"
"errors"
"fmt"
"math/rand"
"os"
"path"
"reflect"

View File

@ -3,6 +3,7 @@ package testsuites
import (
"bytes"
"context"
crand "crypto/rand"
"crypto/sha256"
"io"
"math/rand"
@ -1232,7 +1233,7 @@ func randomFilename(length int64) string {
var randomBytes = make([]byte, 128<<20)
func init() {
_, _ = rand.Read(randomBytes) // always returns len(randomBytes) and nil error
_, _ = crand.Read(randomBytes) // always returns len(randomBytes) and nil error
}
func randomContents(length int64) []byte {

View File

@ -2,6 +2,7 @@ package storage
import (
"bytes"
crand "crypto/rand"
"io"
mrand "math/rand"
"testing"
@ -14,7 +15,7 @@ import (
func TestSimpleRead(t *testing.T) {
ctx := context.Background()
content := make([]byte, 1<<20)
n, err := mrand.Read(content)
n, err := crand.Read(content)
if err != nil {
t.Fatalf("unexpected error building random data: %v", err)
}

View File

@ -3,6 +3,7 @@ package testutil
import (
"archive/tar"
"bytes"
crand "crypto/rand"
"fmt"
"io"
mrand "math/rand"
@ -45,7 +46,7 @@ func CreateRandomTarFile() (rs io.ReadSeeker, dgst digest.Digest, err error) {
randomData := make([]byte, fileSize)
// Fill up the buffer with some random data.
n, err := mrand.Read(randomData)
n, err := crand.Read(randomData)
if n != len(randomData) {
return nil, "", fmt.Errorf("short read creating random reader: %v bytes != %v bytes", n, len(randomData))