forked from quic-go/quic-go
bump Go version in go.mod, stop testing on Go 1.21 (#4633)
* bump Go version in go.mod, stop testing on Go 1.21 * ci: update golangci-lint to v1.60.1 * ignore Go 1.23 0-RTT events in exhaustive linter
This commit is contained in:
@@ -3,7 +3,7 @@ FROM gcr.io/oss-fuzz-base/base-builder-go:v1
|
|||||||
ARG TARGETPLATFORM
|
ARG TARGETPLATFORM
|
||||||
RUN echo "TARGETPLATFORM: ${TARGETPLATFORM}"
|
RUN echo "TARGETPLATFORM: ${TARGETPLATFORM}"
|
||||||
|
|
||||||
ENV GOVERSION=1.22.0
|
ENV GOVERSION=1.23.0
|
||||||
|
|
||||||
RUN platform=$(echo ${TARGETPLATFORM} | tr '/' '-') && \
|
RUN platform=$(echo ${TARGETPLATFORM} | tr '/' '-') && \
|
||||||
filename="go${GOVERSION}.${platform}.tar.gz" && \
|
filename="go${GOVERSION}.${platform}.tar.gz" && \
|
||||||
|
|||||||
2
.github/workflows/cross-compile.yml
vendored
2
.github/workflows/cross-compile.yml
vendored
@@ -4,7 +4,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
go: [ "1.21.x", "1.22.x" ]
|
go: [ "1.22.x", "1.23.x" ]
|
||||||
runs-on: ${{ fromJSON(vars['CROSS_COMPILE_RUNNER_UBUNTU'] || '"ubuntu-latest"') }}
|
runs-on: ${{ fromJSON(vars['CROSS_COMPILE_RUNNER_UBUNTU'] || '"ubuntu-latest"') }}
|
||||||
name: "Cross Compilation (Go ${{matrix.go}})"
|
name: "Cross Compilation (Go ${{matrix.go}})"
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
|
|||||||
8
.github/workflows/integration.yml
vendored
8
.github/workflows/integration.yml
vendored
@@ -6,17 +6,17 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
os: [ "ubuntu" ]
|
os: [ "ubuntu" ]
|
||||||
go: [ "1.21.x", "1.22.x", "1.23.0-rc.2" ]
|
go: [ "1.22.x", "1.23.x" ]
|
||||||
race: [ false ]
|
race: [ false ]
|
||||||
include:
|
include:
|
||||||
- os: "ubuntu"
|
- os: "ubuntu"
|
||||||
go: "1.22.x"
|
go: "1.23.x"
|
||||||
race: true
|
race: true
|
||||||
- os: "windows"
|
- os: "windows"
|
||||||
go: "1.21.x"
|
go: "1.23.x"
|
||||||
race: false
|
race: false
|
||||||
- os: "macos"
|
- os: "macos"
|
||||||
go: "1.21.x"
|
go: "1.23.x"
|
||||||
race: false
|
race: false
|
||||||
runs-on: ${{ fromJSON(vars[format('INTEGRATION_RUNNER_{0}', matrix.os)] || format('"{0}-latest"', matrix.os)) }}
|
runs-on: ${{ fromJSON(vars[format('INTEGRATION_RUNNER_{0}', matrix.os)] || format('"{0}-latest"', matrix.os)) }}
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
|
|||||||
6
.github/workflows/lint.yml
vendored
6
.github/workflows/lint.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- uses: actions/setup-go@v5
|
- uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
go-version: "1.22.x"
|
go-version: "1.23.x"
|
||||||
- name: Check that no non-test files import Ginkgo or Gomega
|
- name: Check that no non-test files import Ginkgo or Gomega
|
||||||
run: .github/workflows/no_ginkgo.sh
|
run: .github/workflows/no_ginkgo.sh
|
||||||
- name: Check for //go:build ignore in .go files
|
- name: Check for //go:build ignore in .go files
|
||||||
@@ -39,9 +39,9 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
go: [ "1.21.x", "1.22.x" ]
|
go: [ "1.22.x", "1.23.x" ]
|
||||||
env:
|
env:
|
||||||
GOLANGCI_LINT_VERSION: v1.58.0
|
GOLANGCI_LINT_VERSION: v1.60.1
|
||||||
name: golangci-lint (Go ${{ matrix.go }})
|
name: golangci-lint (Go ${{ matrix.go }})
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|||||||
2
.github/workflows/unit.yml
vendored
2
.github/workflows/unit.yml
vendored
@@ -7,7 +7,7 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
os: [ "ubuntu", "windows", "macos" ]
|
os: [ "ubuntu", "windows", "macos" ]
|
||||||
go: [ "1.21.x", "1.22.x", "1.23.0-rc.2" ]
|
go: [ "1.22.x", "1.23.x" ]
|
||||||
runs-on: ${{ fromJSON(vars[format('UNIT_RUNNER_{0}', matrix.os)] || format('"{0}-latest"', matrix.os)) }}
|
runs-on: ${{ fromJSON(vars[format('UNIT_RUNNER_{0}', matrix.os)] || format('"{0}-latest"', matrix.os)) }}
|
||||||
name: Unit tests (${{ matrix.os}}, Go ${{ matrix.go }})
|
name: Unit tests (${{ matrix.os}}, Go ${{ matrix.go }})
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
|
|||||||
2
go.mod
2
go.mod
@@ -1,6 +1,6 @@
|
|||||||
module github.com/quic-go/quic-go
|
module github.com/quic-go/quic-go
|
||||||
|
|
||||||
go 1.21
|
go 1.22
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/francoispqt/gojay v1.2.13
|
github.com/francoispqt/gojay v1.2.13
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
module test
|
module test
|
||||||
|
|
||||||
go 1.21
|
go 1.22
|
||||||
|
|
||||||
|
toolchain go1.22.4
|
||||||
|
|
||||||
// The version doesn't matter here, as we're replacing it with the currently checked out code anyway.
|
// The version doesn't matter here, as we're replacing it with the currently checked out code anyway.
|
||||||
require github.com/quic-go/quic-go v0.21.0
|
require github.com/quic-go/quic-go v0.21.0
|
||||||
|
|||||||
@@ -229,6 +229,9 @@ func (h *cryptoSetup) handleMessage(data []byte, encLevel protocol.EncryptionLev
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (h *cryptoSetup) handleEvent(ev tls.QUICEvent) (done bool, err error) {
|
func (h *cryptoSetup) handleEvent(ev tls.QUICEvent) (done bool, err error) {
|
||||||
|
//nolint:exhaustive
|
||||||
|
// Go 1.23 added new 0-RTT events, see https://github.com/quic-go/quic-go/issues/4272.
|
||||||
|
// We will start using these events when dropping support for Go 1.22.
|
||||||
switch ev.Kind {
|
switch ev.Kind {
|
||||||
case tls.QUICNoEvent:
|
case tls.QUICNoEvent:
|
||||||
return true, nil
|
return true, nil
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ RUN echo "TARGETPLATFORM: ${TARGETPLATFORM}"
|
|||||||
|
|
||||||
RUN apt-get update && apt-get install -y wget tar git
|
RUN apt-get update && apt-get install -y wget tar git
|
||||||
|
|
||||||
ENV GOVERSION=1.22.0
|
ENV GOVERSION=1.23.0
|
||||||
|
|
||||||
RUN platform=$(echo ${TARGETPLATFORM} | tr '/' '-') && \
|
RUN platform=$(echo ${TARGETPLATFORM} | tr '/' '-') && \
|
||||||
filename="go${GOVERSION}.${platform}.tar.gz" && \
|
filename="go${GOVERSION}.${platform}.tar.gz" && \
|
||||||
|
|||||||
@@ -3,12 +3,12 @@
|
|||||||
# Install Go manually, since oss-fuzz ships with an outdated Go version.
|
# Install Go manually, since oss-fuzz ships with an outdated Go version.
|
||||||
# See https://github.com/google/oss-fuzz/pull/10643.
|
# See https://github.com/google/oss-fuzz/pull/10643.
|
||||||
export CXX="${CXX} -lresolv" # required by Go 1.20
|
export CXX="${CXX} -lresolv" # required by Go 1.20
|
||||||
wget https://go.dev/dl/go1.22.0.linux-amd64.tar.gz \
|
wget https://go.dev/dl/go1.23.0.linux-amd64.tar.gz \
|
||||||
&& mkdir temp-go \
|
&& mkdir temp-go \
|
||||||
&& rm -rf /root/.go/* \
|
&& rm -rf /root/.go/* \
|
||||||
&& tar -C temp-go/ -xzf go1.22.0.linux-amd64.tar.gz \
|
&& tar -C temp-go/ -xzf go1.23.0.linux-amd64.tar.gz \
|
||||||
&& mv temp-go/go/* /root/.go/ \
|
&& mv temp-go/go/* /root/.go/ \
|
||||||
&& rm -rf temp-go go1.22.0.linux-amd64.tar.gz
|
&& rm -rf temp-go go1.23.0.linux-amd64.tar.gz
|
||||||
|
|
||||||
(
|
(
|
||||||
# fuzz qpack
|
# fuzz qpack
|
||||||
|
|||||||
Reference in New Issue
Block a user