Browse Source

fix: revert go mod compat for sdk,api to 1.19 (#16323)

pull/16338/head
Dan Stough 2 years ago committed by GitHub
parent
commit
82b5b4cc92
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      api/go.mod
  2. 2
      envoyextensions/go.mod
  3. 6
      sdk/freeport/freeport.go
  4. 2
      sdk/go.mod
  5. 2
      troubleshoot/go.mod

2
api/go.mod

@ -1,6 +1,6 @@
module github.com/hashicorp/consul/api module github.com/hashicorp/consul/api
go 1.20 go 1.19
replace github.com/hashicorp/consul/sdk => ../sdk replace github.com/hashicorp/consul/sdk => ../sdk

2
envoyextensions/go.mod

@ -1,6 +1,6 @@
module github.com/hashicorp/consul/envoyextensions module github.com/hashicorp/consul/envoyextensions
go 1.20 go 1.19
replace github.com/hashicorp/consul/api => ../api replace github.com/hashicorp/consul/api => ../api

6
sdk/freeport/freeport.go

@ -76,6 +76,9 @@ var (
// total is the total number of available ports in the block for use. // total is the total number of available ports in the block for use.
total int total int
// seededRand is a random generator that is pre-seeded from the current time.
seededRand *rand.Rand
// stopCh is used to signal to background goroutines to terminate. Only // stopCh is used to signal to background goroutines to terminate. Only
// really exists for the safety of reset() during unit tests. // really exists for the safety of reset() during unit tests.
stopCh chan struct{} stopCh chan struct{}
@ -114,6 +117,7 @@ func initialize() {
panic("freeport: block size too big or too many blocks requested") panic("freeport: block size too big or too many blocks requested")
} }
seededRand = rand.New(rand.NewSource(time.Now().UnixNano())) // This is compatible with go 1.19 but unnecessary in >= go1.20
firstPort, lockLn = alloc() firstPort, lockLn = alloc()
condNotEmpty = sync.NewCond(&mu) condNotEmpty = sync.NewCond(&mu)
@ -255,7 +259,7 @@ func adjustMaxBlocks() (int, error) {
// be automatically released when the application terminates. // be automatically released when the application terminates.
func alloc() (int, net.Listener) { func alloc() (int, net.Listener) {
for i := 0; i < attempts; i++ { for i := 0; i < attempts; i++ {
block := int(rand.Int31n(int32(effectiveMaxBlocks))) block := int(seededRand.Int31n(int32(effectiveMaxBlocks)))
firstPort := lowPort + block*blockSize firstPort := lowPort + block*blockSize
ln, err := net.ListenTCP("tcp", tcpAddr("127.0.0.1", firstPort)) ln, err := net.ListenTCP("tcp", tcpAddr("127.0.0.1", firstPort))
if err != nil { if err != nil {

2
sdk/go.mod

@ -1,6 +1,6 @@
module github.com/hashicorp/consul/sdk module github.com/hashicorp/consul/sdk
go 1.20 go 1.19
require ( require (
github.com/hashicorp/go-cleanhttp v0.5.1 github.com/hashicorp/go-cleanhttp v0.5.1

2
troubleshoot/go.mod

@ -1,6 +1,6 @@
module github.com/hashicorp/consul/troubleshoot module github.com/hashicorp/consul/troubleshoot
go 1.20 go 1.19
replace github.com/hashicorp/consul/api => ../api replace github.com/hashicorp/consul/api => ../api

Loading…
Cancel
Save