ci: Update to Go 1.21 (#5719)

* ci: Update to Go 1.21

* Bump quic-go to v0.37.4

* Check EnableFullDuplex err

* Linter bug suppression

See https://github.com/timakin/bodyclose/issues/52

---------

Co-authored-by: Francis Lavoie <lavofr@gmail.com>
This commit is contained in:
Matt Holt 2023-08-09 10:34:28 -06:00 committed by GitHub
parent fbb0ecfa32
commit 6cdcc2a782
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 22 additions and 17 deletions

View File

@ -24,7 +24,7 @@ jobs:
- windows-latest - windows-latest
go: go:
- '1.20' - '1.20'
# - '1.21' - '1.21'
include: include:
# Set the minimum Go patch version for the given Go minor # Set the minimum Go patch version for the given Go minor
@ -32,8 +32,8 @@ jobs:
- go: '1.20' - go: '1.20'
GO_SEMVER: '~1.20.6' GO_SEMVER: '~1.20.6'
# - go: '1.21' - go: '1.21'
# GO_SEMVER: '~1.21.0' GO_SEMVER: '~1.21.0'
# Set some variables per OS, usable via ${{ matrix.VAR }} # Set some variables per OS, usable via ${{ matrix.VAR }}
# CADDY_BIN_PATH: the path to the compiled Caddy binary, for artifact publishing # CADDY_BIN_PATH: the path to the compiled Caddy binary, for artifact publishing

View File

@ -28,13 +28,13 @@ jobs:
- 'darwin' - 'darwin'
- 'netbsd' - 'netbsd'
go: go:
- '1.20' - '1.21'
include: include:
# Set the minimum Go patch version for the given Go minor # Set the minimum Go patch version for the given Go minor
# Usable via ${{ matrix.GO_SEMVER }} # Usable via ${{ matrix.GO_SEMVER }}
- go: '1.20' - go: '1.21'
GO_SEMVER: '~1.20.6' GO_SEMVER: '~1.21.0'
runs-on: ubuntu-latest runs-on: ubuntu-latest
continue-on-error: true continue-on-error: true

View File

@ -31,7 +31,7 @@ jobs:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- uses: actions/setup-go@v4 - uses: actions/setup-go@v4
with: with:
go-version: '~1.20.6' go-version: '~1.21.0'
check-latest: true check-latest: true
# Workaround for https://github.com/golangci/golangci-lint-action/issues/135 # Workaround for https://github.com/golangci/golangci-lint-action/issues/135

View File

@ -13,13 +13,13 @@ jobs:
os: os:
- ubuntu-latest - ubuntu-latest
go: go:
- '1.20' - '1.21'
include: include:
# Set the minimum Go patch version for the given Go minor # Set the minimum Go patch version for the given Go minor
# Usable via ${{ matrix.GO_SEMVER }} # Usable via ${{ matrix.GO_SEMVER }}
- go: '1.20' - go: '1.21'
GO_SEMVER: '~1.20.6' GO_SEMVER: '~1.21.0'
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
# https://github.com/sigstore/cosign/issues/1258#issuecomment-1002251233 # https://github.com/sigstore/cosign/issues/1258#issuecomment-1002251233

2
go.mod
View File

@ -17,7 +17,7 @@ require (
github.com/mastercactapus/proxyprotocol v0.0.4 github.com/mastercactapus/proxyprotocol v0.0.4
github.com/mholt/acmez v1.2.0 github.com/mholt/acmez v1.2.0
github.com/prometheus/client_golang v1.14.0 github.com/prometheus/client_golang v1.14.0
github.com/quic-go/quic-go v0.37.3 github.com/quic-go/quic-go v0.37.4
github.com/smallstep/certificates v0.24.3-rc.5 github.com/smallstep/certificates v0.24.3-rc.5
github.com/smallstep/nosql v0.6.0 github.com/smallstep/nosql v0.6.0
github.com/smallstep/truststore v0.12.1 github.com/smallstep/truststore v0.12.1

4
go.sum
View File

@ -863,8 +863,8 @@ github.com/quic-go/qpack v0.4.0 h1:Cr9BXA1sQS2SmDUWjSofMPNKmvF6IiIfDRmgU0w1ZCo=
github.com/quic-go/qpack v0.4.0/go.mod h1:UZVnYIfi5GRk+zI9UMaCPsmZ2xKJP7XBUvVyT1Knj9A= github.com/quic-go/qpack v0.4.0/go.mod h1:UZVnYIfi5GRk+zI9UMaCPsmZ2xKJP7XBUvVyT1Knj9A=
github.com/quic-go/qtls-go1-20 v0.3.1 h1:O4BLOM3hwfVF3AcktIylQXyl7Yi2iBNVy5QsV+ySxbg= github.com/quic-go/qtls-go1-20 v0.3.1 h1:O4BLOM3hwfVF3AcktIylQXyl7Yi2iBNVy5QsV+ySxbg=
github.com/quic-go/qtls-go1-20 v0.3.1/go.mod h1:X9Nh97ZL80Z+bX/gUXMbipO6OxdiDi58b/fMC9mAL+k= github.com/quic-go/qtls-go1-20 v0.3.1/go.mod h1:X9Nh97ZL80Z+bX/gUXMbipO6OxdiDi58b/fMC9mAL+k=
github.com/quic-go/quic-go v0.37.3 h1:pkHH3xaMNUNAh6OtgEV/0K6Fz+YIJXhPzgd/ShiRDm4= github.com/quic-go/quic-go v0.37.4 h1:ke8B73yMCWGq9MfrCCAw0Uzdm7GaViC3i39dsIdDlH4=
github.com/quic-go/quic-go v0.37.3/go.mod h1:YsbH1r4mSHPJcLF4k4zruUkLBqctEMBDR6VPvcYjIsU= github.com/quic-go/quic-go v0.37.4/go.mod h1:YsbH1r4mSHPJcLF4k4zruUkLBqctEMBDR6VPvcYjIsU=
github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg=
github.com/rogpeppe/fastuuid v1.1.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/fastuuid v1.1.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=

View File

@ -20,6 +20,7 @@ import (
"net/http" "net/http"
) )
func enableFullDuplex(w http.ResponseWriter) { func enableFullDuplex(w http.ResponseWriter) error {
// Do nothing, Go 1.20 and earlier do not support full duplex // Do nothing, Go 1.20 and earlier do not support full duplex
return nil
} }

View File

@ -20,6 +20,7 @@ import (
"net/http" "net/http"
) )
func enableFullDuplex(w http.ResponseWriter) { func enableFullDuplex(w http.ResponseWriter) error {
http.NewResponseController(w).EnableFullDuplex() //nolint:bodyclose
return http.NewResponseController(w).EnableFullDuplex()
} }

View File

@ -291,7 +291,10 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
if s.EnableFullDuplex { if s.EnableFullDuplex {
// TODO: Remove duplex_go12*.go abstraction once our // TODO: Remove duplex_go12*.go abstraction once our
// minimum Go version is 1.21 or later // minimum Go version is 1.21 or later
enableFullDuplex(w) err := enableFullDuplex(w)
if err != nil {
s.accessLogger.Warn("failed to enable full duplex", zap.Error(err))
}
} }
// encode the request for logging purposes before // encode the request for logging purposes before