Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package fortio for openSUSE:Factory checked in at 2024-02-11 15:45:15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/fortio (Old) and /work/SRC/openSUSE:Factory/.fortio.new.1815 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fortio" Sun Feb 11 15:45:15 2024 rev:58 rq:1145564 version:1.63.3 Changes: -------- --- /work/SRC/openSUSE:Factory/fortio/fortio.changes 2024-01-17 22:19:37.964548374 +0100 +++ /work/SRC/openSUSE:Factory/.fortio.new.1815/fortio.changes 2024-02-11 15:45:25.342347599 +0100 @@ -1,0 +2,11 @@ +Sat Feb 10 06:29:09 UTC 2024 - [email protected] + +- Update to version 1.63.3: + * bumping go build, linter related changes, prep release, adding + a test to check coverage is working and increased (#886) + * Bump golang.org/x/net from 0.20.0 to 0.21.0 (#887) + * Bump github.com/google/uuid from 1.5.0 to 1.6.0 (#882) + * Bump google.golang.org/grpc from 1.60.1 to 1.61.0 (#883) + * Bump codecov/codecov-action from 3.1.4 to 4.0.1 (#885) + +------------------------------------------------------------------- Old: ---- fortio-1.63.2.obscpio New: ---- fortio-1.63.3.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fortio.spec ++++++ --- /var/tmp/diff_new_pack.yS82Eb/_old 2024-02-11 15:45:26.054373200 +0100 +++ /var/tmp/diff_new_pack.yS82Eb/_new 2024-02-11 15:45:26.058373344 +0100 @@ -19,7 +19,7 @@ %define __arch_install_post export NO_BRP_STRIP_DEBUG=true Name: fortio -Version: 1.63.2 +Version: 1.63.3 Release: 0 Summary: Load testing library, command line tool, advanced echo server and web UI License: Apache-2.0 ++++++ _service ++++++ --- /var/tmp/diff_new_pack.yS82Eb/_old 2024-02-11 15:45:26.082374206 +0100 +++ /var/tmp/diff_new_pack.yS82Eb/_new 2024-02-11 15:45:26.086374351 +0100 @@ -3,7 +3,7 @@ <param name="url">https://github.com/fortio/fortio</param> <param name="scm">git</param> <param name="exclude">.git</param> - <param name="revision">v1.63.2</param> + <param name="revision">v1.63.3</param> <param name="versionformat">@PARENT_TAG@</param> <param name="changesgenerate">enable</param> <param name="versionrewrite-pattern">v(.*)</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.yS82Eb/_old 2024-02-11 15:45:26.102374925 +0100 +++ /var/tmp/diff_new_pack.yS82Eb/_new 2024-02-11 15:45:26.106375069 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/fortio/fortio</param> - <param name="changesrevision">a9a6b4e2e89f813e7f18a0f15270b02e6d3f26af</param></service></servicedata> + <param name="changesrevision">03c4e44e2e48f539bed119f120245369d252bfc3</param></service></servicedata> (No newline at EOF) ++++++ fortio-1.63.2.obscpio -> fortio-1.63.3.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/.circleci/config.yml new/fortio-1.63.3/.circleci/config.yml --- old/fortio-1.63.2/.circleci/config.yml 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/.circleci/config.yml 2024-02-09 23:24:12.000000000 +0100 @@ -8,7 +8,7 @@ &defaultEnv docker: # specify the version - - image: docker.io/fortio/fortio.build:v67@sha256:cf1744d102e6aef54e8ca3ef85cfe48c6c44f53740b1535112af8bb95604cf8a + - image: docker.io/fortio/fortio.build:v68@sha256:eb854e95a07ff4bec2d4d8a2967a443e7879ba692066adb27e61f36312ab101e working_directory: /build/fortio jobs: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/.github/workflows/codecov.yml new/fortio-1.63.3/.github/workflows/codecov.yml --- old/fortio-1.63.2/.github/workflows/codecov.yml 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/.github/workflows/codecov.yml 2024-02-09 23:24:12.000000000 +0100 @@ -22,4 +22,6 @@ - name: Run coverage run: make coverage - name: Upload coverage to Codecov - uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@v3 + uses: codecov/codecov-action@e0b68c6749509c5f83f984dd99a76a1c1a231044 # pin@v4 + with: + token: ${{ secrets.CODECOV_TOKEN }} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/Dockerfile new/fortio-1.63.3/Dockerfile --- old/fortio-1.63.2/Dockerfile 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/Dockerfile 2024-02-09 23:24:12.000000000 +0100 @@ -1,5 +1,5 @@ # Build the binaries in larger image -FROM docker.io/fortio/fortio.build:v67@sha256:cf1744d102e6aef54e8ca3ef85cfe48c6c44f53740b1535112af8bb95604cf8a as build +FROM docker.io/fortio/fortio.build:v68@sha256:eb854e95a07ff4bec2d4d8a2967a443e7879ba692066adb27e61f36312ab101e as build WORKDIR /build COPY --chown=build:build . fortio ARG MODE=install diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/Dockerfile.build new/fortio-1.63.3/Dockerfile.build --- old/fortio-1.63.2/Dockerfile.build 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/Dockerfile.build 2024-02-09 23:24:12.000000000 +0100 @@ -1,5 +1,5 @@ # Dependencies and linters for build: -FROM golang:1.21.6@sha256:6fbd2d3398db924f8d708cf6e94bd3a436bb468195daa6a96e80504e0a9615f2 +FROM golang:1.21.7@sha256:b7bac393658f891b69189cfd98111525f951ac0fec8bab97a1990fe43c85d342 # Need gcc for -race test (and some linters though those work with CGO_ENABLED=0) RUN apt-get -y update && \ apt-get --no-install-recommends -y upgrade && \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/Dockerfile.echosrv new/fortio-1.63.3/Dockerfile.echosrv --- old/fortio-1.63.2/Dockerfile.echosrv 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/Dockerfile.echosrv 2024-02-09 23:24:12.000000000 +0100 @@ -1,5 +1,5 @@ # Build the binaries in larger image -FROM docker.io/fortio/fortio.build:v67@sha256:cf1744d102e6aef54e8ca3ef85cfe48c6c44f53740b1535112af8bb95604cf8a as build +FROM docker.io/fortio/fortio.build:v68@sha256:eb854e95a07ff4bec2d4d8a2967a443e7879ba692066adb27e61f36312ab101e as build WORKDIR /build COPY . fortio RUN make -C fortio official-build-version BUILD_DIR=/build OFFICIAL_TARGET=fortio.org/fortio/echosrv diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/Dockerfile.fcurl new/fortio-1.63.3/Dockerfile.fcurl --- old/fortio-1.63.2/Dockerfile.fcurl 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/Dockerfile.fcurl 2024-02-09 23:24:12.000000000 +0100 @@ -1,5 +1,5 @@ # Build the binaries in larger image -FROM docker.io/fortio/fortio.build:v67@sha256:cf1744d102e6aef54e8ca3ef85cfe48c6c44f53740b1535112af8bb95604cf8a as build +FROM docker.io/fortio/fortio.build:v68@sha256:eb854e95a07ff4bec2d4d8a2967a443e7879ba692066adb27e61f36312ab101e as build WORKDIR /build COPY . fortio RUN make -C fortio official-build-version BUILD_DIR=/build OFFICIAL_TARGET=fortio.org/fortio/fcurl diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/Makefile new/fortio-1.63.3/Makefile --- old/fortio-1.63.2/Makefile 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/Makefile 2024-02-09 23:24:12.000000000 +0100 @@ -7,7 +7,7 @@ IMAGES=echosrv fcurl # plus the combo image / Dockerfile without ext. DOCKER_PREFIX := docker.io/fortio/fortio -BUILD_IMAGE_TAG := v67@sha256:cf1744d102e6aef54e8ca3ef85cfe48c6c44f53740b1535112af8bb95604cf8a +BUILD_IMAGE_TAG := v68@sha256:eb854e95a07ff4bec2d4d8a2967a443e7879ba692066adb27e61f36312ab101e BUILDX_PLATFORMS := linux/amd64,linux/arm64,linux/ppc64le,linux/s390x BUILDX_POSTFIX := ifeq '$(shell echo $(BUILDX_PLATFORMS) | awk -F "," "{print NF-1}")' '0' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/README.md new/fortio-1.63.3/README.md --- old/fortio-1.63.2/README.md 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/README.md 2024-02-09 23:24:12.000000000 +0100 @@ -1,4 +1,4 @@ -<!-- 1.63.2 --> +<!-- 1.63.3 --> # Fortio [](https://github.com/avelino/awesome-go#networking) @@ -60,13 +60,13 @@ The [releases](https://github.com/fortio/fortio/releases) page has binaries for many OS/architecture combinations (see assets): ```shell -curl -L https://github.com/fortio/fortio/releases/download/v1.63.2/fortio-linux_amd64-1.63.2.tgz \ +curl -L https://github.com/fortio/fortio/releases/download/v1.63.3/fortio-linux_amd64-1.63.3.tgz \ | sudo tar -C / -xvzpf - # or the debian package -wget https://github.com/fortio/fortio/releases/download/v1.63.2/fortio_1.63.2_amd64.deb -dpkg -i fortio_1.63.2_amd64.deb +wget https://github.com/fortio/fortio/releases/download/v1.63.3/fortio_1.63.3_amd64.deb +dpkg -i fortio_1.63.3_amd64.deb # or the rpm -rpm -i https://github.com/fortio/fortio/releases/download/v1.63.2/fortio-1.63.2-1.x86_64.rpm +rpm -i https://github.com/fortio/fortio/releases/download/v1.63.3/fortio-1.63.3-1.x86_64.rpm # and more, see assets in release page ``` @@ -76,7 +76,7 @@ brew install fortio ``` -On Windows, download https://github.com/fortio/fortio/releases/download/v1.63.2/fortio_win_1.63.2.zip and extract `fortio.exe` to any location, then using the Windows Command Prompt: +On Windows, download https://github.com/fortio/fortio/releases/download/v1.63.3/fortio_win_1.63.3.zip and extract `fortio.exe` to any location, then using the Windows Command Prompt: ``` fortio.exe server ``` @@ -130,7 +130,7 @@ <!-- use release/updateFlags.sh to update this section --> <pre> <!-- USAGE_START --> -ΦοÏÏίο 1.63.2 usage: +ΦοÏÏίο 1.63.3 usage: fortio command [flags] target where command is one of: load (load testing), server (starts ui, rest api, http-echo, redirect, proxies, tcp-echo, udp-echo and grpc ping servers), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/Webtest.sh new/fortio-1.63.3/Webtest.sh --- old/fortio-1.63.2/Webtest.sh 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/Webtest.sh 2024-02-09 23:24:12.000000000 +0100 @@ -140,7 +140,7 @@ PPROF_URL="$BASE_URL/debug/pprof/heap?debug=1" $CURL "$PPROF_URL" | grep -i TotalAlloc # should find this in memory profile # creating dummy container to hold a volume for test certs due to remote docker bind mount limitation. -DOCKERCURLID=$(docker run -d -v $TEST_CERT_VOL --net host --name $DOCKERSECVOLNAME docker.io/fortio/fortio.build:v67@sha256:cf1744d102e6aef54e8ca3ef85cfe48c6c44f53740b1535112af8bb95604cf8a sleep 120) +DOCKERCURLID=$(docker run -d -v $TEST_CERT_VOL --net host --name $DOCKERSECVOLNAME docker.io/fortio/fortio.build:v68@sha256:eb854e95a07ff4bec2d4d8a2967a443e7879ba692066adb27e61f36312ab101e sleep 120) # while we have something with actual curl binary do # Test for h2c upgrade (#562) docker exec $DOCKERSECVOLNAME /usr/bin/curl -v --http2 -m 10 -d foo42 http://localhost:8080/debug | tee >(cat 1>&2) | grep foo42 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/fgrpc/grpcrunner.go new/fortio-1.63.3/fgrpc/grpcrunner.go --- old/fortio-1.63.2/fgrpc/grpcrunner.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/fgrpc/grpcrunner.go 2024-02-09 23:24:12.000000000 +0100 @@ -54,7 +54,7 @@ serverAddr := grpcDestination(o.Destination) if o.UnixDomainSocket != "" { log.Warnf("Using domain socket %v instead of %v for grpc connection", o.UnixDomainSocket, serverAddr) - opts = append(opts, grpc.WithContextDialer(func(ctx context.Context, addr string) (net.Conn, error) { + opts = append(opts, grpc.WithContextDialer(func(_ context.Context, _ string) (net.Conn, error) { return net.Dial(fnet.UnixDomainSocket, o.UnixDomainSocket) })) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/fhttp/http_client.go new/fortio-1.63.3/fhttp/http_client.go --- old/fortio-1.63.2/fhttp/http_client.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/fhttp/http_client.go 2024-02-09 23:24:12.000000000 +0100 @@ -351,7 +351,7 @@ reuseRangeString := strings.Split(inp, ":") if len(reuseRangeString) > 2 { - return fmt.Errorf("more than two integers were provided in the connection reuse range") + return errors.New("more than two integers were provided in the connection reuse range") } reuseRangeInt := make([]int, 2) for i, input := range reuseRangeString { @@ -662,7 +662,7 @@ } tr2 := &http2.Transport{ AllowHTTP: true, - DialTLSContext: func(ctx context.Context, network, addr string, cfg *tls.Config) (net.Conn, error) { + DialTLSContext: func(ctx context.Context, network, addr string, _ *tls.Config) (net.Conn, error) { return dialCtx(ctx, network, addr) }, DisableCompression: !o.Compression, @@ -676,7 +676,7 @@ client.client.Transport = rt if !o.FollowRedirects { // Lets us see the raw response instead of auto following redirects. - client.client.CheckRedirect = func(req *http.Request, via []*http.Request) error { + client.client.CheckRedirect = func(_ *http.Request, _ []*http.Request) error { return http.ErrUseLastResponse } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/fhttp/http_test.go new/fortio-1.63.3/fhttp/http_test.go --- old/fortio-1.63.2/fhttp/http_test.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/fhttp/http_test.go 2024-02-09 23:24:12.000000000 +0100 @@ -1614,7 +1614,7 @@ } func TestInsecureRequestWithResolve(t *testing.T) { - handler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + handler := http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) { w.WriteHeader(http.StatusOK) }) srv := httptest.NewTLSServer(handler) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/fhttp/httprunner_test.go new/fortio-1.63.3/fhttp/httprunner_test.go --- old/fortio-1.63.2/fhttp/httprunner_test.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/fhttp/httprunner_test.go 2024-02-09 23:24:12.000000000 +0100 @@ -287,7 +287,7 @@ atomic.AddInt64(&numTrace, 1) }, } - traceFactory := func(ctx context.Context) *httptrace.ClientTrace { return trace } + traceFactory := func(_ context.Context) *httptrace.ClientTrace { return trace } opts.DisableFastClient = true opts.ClientTrace = traceFactory opts.LogErrors = true diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/fnet/network.go new/fortio-1.63.3/fnet/network.go --- old/fortio-1.63.2/fnet/network.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/fnet/network.go 2024-02-09 23:24:12.000000000 +0100 @@ -92,7 +92,7 @@ if valid[inp] { return nil } - return fmt.Errorf("invalid value for dns method, should be one of cached-rr, first, rnd or rr") + return errors.New("invalid value for dns method, should be one of cached-rr, first, rnd or rr") } //nolint:gochecknoinits // needed here (unit change) @@ -415,7 +415,7 @@ host = host[1 : len(host)-1] } if host == "" { - return nil, fmt.Errorf("can't resolve empty host") + return nil, errors.New("can't resolve empty host") } isAddr := net.ParseIP(host) if isAddr != nil { @@ -519,7 +519,7 @@ } // ErrNilDestination returned when trying to proxy to a nil address. -var ErrNilDestination = fmt.Errorf("nil destination") +var ErrNilDestination = errors.New("nil destination") func handleProxyRequest(conn net.Conn, dest net.Addr) { err := ErrNilDestination @@ -577,7 +577,7 @@ func NormalizeHostPort(inputPort string, addr net.Addr) string { urlHostPort := addr.String() if addr.Network() == UnixDomainSocket { - urlHostPort = fmt.Sprintf("-unix-socket=%s", urlHostPort) + urlHostPort = "-unix-socket=" + urlHostPort } else if strings.HasPrefix(inputPort, ":") || !strings.Contains(inputPort, ":") { urlHostPort = fmt.Sprintf("localhost:%d", addr.(*net.TCPAddr).Port) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/fnet/network_test.go new/fortio-1.63.3/fnet/network_test.go --- old/fortio-1.63.2/fnet/network_test.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/fnet/network_test.go 2024-02-09 23:24:12.000000000 +0100 @@ -386,7 +386,7 @@ t.Fatalf("Nil socket in unix socket proxy listen") } hp := fnet.NormalizeHostPort("", addr) - expected := fmt.Sprintf("-unix-socket=%s", fname) + expected := "-unix-socket=" + fname if hp != expected { t.Errorf("Got %s, expected %s from fnet.NormalizeHostPort(%v)", hp, expected, addr) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/go.mod new/fortio-1.63.3/go.mod --- old/fortio-1.63.2/go.mod 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/go.mod 2024-02-09 23:24:12.000000000 +0100 @@ -12,9 +12,9 @@ fortio.org/testscript v0.3.1 fortio.org/version v1.0.3 github.com/golang/protobuf v1.5.3 - github.com/google/uuid v1.5.0 - golang.org/x/net v0.20.0 - google.golang.org/grpc v1.60.1 + github.com/google/uuid v1.6.0 + golang.org/x/net v0.21.0 + google.golang.org/grpc v1.61.0 ) // Local dev of dependencies changes @@ -31,7 +31,7 @@ fortio.org/struct2env v0.4.0 // indirect github.com/fsnotify/fsnotify v1.7.0 // indirect golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb // indirect - golang.org/x/sys v0.16.0 // indirect + golang.org/x/sys v0.17.0 // indirect golang.org/x/text v0.14.0 // indirect golang.org/x/tools v0.16.0 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20231127180814-3a041ad873d4 // indirect diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/go.sum new/fortio-1.63.3/go.sum --- old/fortio-1.63.2/go.sum 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/go.sum 2024-02-09 23:24:12.000000000 +0100 @@ -22,15 +22,15 @@ github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= -github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= -github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb h1:c0vyKkb6yr3KR7jEfJaOSv4lG7xPkbN6r52aJz1d8a8= golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI= -golang.org/x/net v0.20.0 h1:aCL9BSgETF1k+blQaYUBx9hJ9LOGP3gAVemcZlf1Kpo= -golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= -golang.org/x/sys v0.16.0 h1:xWw16ngr6ZMtmxDyKyIgsE93KNKz5HKmMa3b8ALHidU= -golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/net v0.21.0 h1:AQyQV4dYCvJ7vGmJyKki9+PBdyvhkSd8EIx/qb0AYv4= +golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= +golang.org/x/sys v0.17.0 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y= +golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/tools v0.16.0 h1:GO788SKMRunPIBCXiQyo2AaexLstOrVhuAL5YwsckQM= @@ -38,8 +38,8 @@ golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/genproto/googleapis/rpc v0.0.0-20231127180814-3a041ad873d4 h1:DC7wcm+i+P1rN3Ff07vL+OndGg5OhNddHyTA+ocPqYE= google.golang.org/genproto/googleapis/rpc v0.0.0-20231127180814-3a041ad873d4/go.mod h1:eJVxU6o+4G1PSczBr85xmyvSNYAKvAYgkub40YGomFM= -google.golang.org/grpc v1.60.1 h1:26+wFr+cNqSGFcOXcabYC0lUVJVRa2Sb2ortSK7VrEU= -google.golang.org/grpc v1.60.1/go.mod h1:OlCHIeLYqSSsLi6i49B5QGdzaMZK9+M7LXN2FKz4eGM= +google.golang.org/grpc v1.61.0 h1:TOvOcuXn30kRao+gfcvsebNEa5iZIiLkisYEkf7R7o0= +google.golang.org/grpc v1.61.0/go.mod h1:VUbo7IFqmF1QtCAstipjG0GIoq49KvMe9+h1jFLBNJs= 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.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/periodic/periodic.go new/fortio-1.63.3/periodic/periodic.go --- old/fortio-1.63.2/periodic/periodic.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/periodic/periodic.go 2024-02-09 23:24:12.000000000 +0100 @@ -506,7 +506,7 @@ // AccessLogger info check extra := "" if r.AccessLogger != nil { - extra = fmt.Sprintf(" with access logger %s", r.AccessLogger.Info()) + extra = " with access logger " + r.AccessLogger.Info() } requestedQPS := "max" if useQPS { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/rapi/restHandler_test.go new/fortio-1.63.3/rapi/restHandler_test.go --- old/fortio-1.63.2/rapi/restHandler_test.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/rapi/restHandler_test.go 2024-02-09 23:24:12.000000000 +0100 @@ -163,7 +163,7 @@ // Check payload is used and that query arg overrides payload jsonData := fmt.Sprintf("{\"metadata\": {\"url\":%q, \"save\":\"on\", \"n\":\"200\", \"payload\": \"test payload\"}}", echoURL) - runURL = fmt.Sprintf("%s?jsonPath=.metadata&qps=100&n=100", restURL) + runURL = restURL + "?jsonPath=.metadata&qps=100&n=100" res = GetResult(t, runURL, jsonData) totalReq = res.DurationHistogram.Count httpOk = res.RetCodes[http.StatusOK] @@ -179,33 +179,33 @@ } // Send a bad (missing unit) duration (test error return) - runURL = fmt.Sprintf("%s?jsonPath=.metadata&qps=100&n=10&t=42", restURL) + runURL = restURL + "?jsonPath=.metadata&qps=100&n=10&t=42" errObj := GetErrorResult(t, runURL, jsonData) if errObj.Message != "parsing duration" || errObj.Exception != "time: missing unit in duration \"42\"" { t.Errorf("Didn't get the expected duration parsing error, got %+v", errObj) } // bad json path: doesn't exist - runURL = fmt.Sprintf("%s?jsonPath=.foo", restURL) + runURL = restURL + "?jsonPath=.foo" errObj = GetErrorResult(t, runURL, jsonData) if errObj.Exception != "\"foo\" not found in json" { t.Errorf("Didn't get the expected json body access error, got %+v", errObj) } // bad json path: wrong type - runURL = fmt.Sprintf("%s?jsonPath=.metadata.url", restURL) + runURL = restURL + "?jsonPath=.metadata.url" errObj = GetErrorResult(t, runURL, jsonData) if errObj.Exception != "\"url\" path is not a map" { t.Errorf("Didn't get the expected json type mismatch error, got %+v", errObj) } // missing url and a few other cases jsonData = `{"metadata": {"n": 200}}` - runURL = fmt.Sprintf("%s?jsonPath=.metadata", restURL) + runURL = restURL + "?jsonPath=.metadata" errObj = GetErrorResult(t, runURL, jsonData) if errObj.Message != "URL is required" { t.Errorf("Didn't get the expected url missing error, got %+v", errObj) } // not well formed json jsonData = `{"metadata": {"n":` - runURL = fmt.Sprintf("%s?jsonPath=.metadata", restURL) + runURL = restURL + "?jsonPath=.metadata" errObj = GetErrorResult(t, runURL, jsonData) if errObj.Exception != "unexpected end of JSON input" { t.Errorf("Didn't get the expected error for truncated/invalid json, got %+v", errObj) @@ -660,3 +660,22 @@ } SetDataDir(oldDir) } + +func TestStateEnum(t *testing.T) { + // Test the unknown and error cases + var se StateEnum + actual := se.String() + expected := "unknown" + if actual != expected { + t.Errorf("Expected %q got %q", expected, actual) + } + se = StateEnum(1000) + // handle panic: + defer func() { + if r := recover(); r == nil { + t.Errorf("Expected panic for unknown state, got nil") + } + }() + actual = se.String() + t.Errorf("Expected panic, got %q", actual) +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/release/Dockerfile.in new/fortio-1.63.3/release/Dockerfile.in --- old/fortio-1.63.2/release/Dockerfile.in 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/release/Dockerfile.in 2024-02-09 23:24:12.000000000 +0100 @@ -1,5 +1,5 @@ # Concatenated after ../Dockerfile to create the tgz -FROM docker.io/fortio/fortio.build:v67@sha256:cf1744d102e6aef54e8ca3ef85cfe48c6c44f53740b1535112af8bb95604cf8a as stage +FROM docker.io/fortio/fortio.build:v68@sha256:eb854e95a07ff4bec2d4d8a2967a443e7879ba692066adb27e61f36312ab101e as stage ARG archs="amd64 arm64 ppc64le s390x" ENV archs=${archs} # Build image defaults to build user, switch back to root for diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/tcprunner/tcprunner.go new/fortio-1.63.3/tcprunner/tcprunner.go --- old/fortio-1.63.2/tcprunner/tcprunner.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/tcprunner/tcprunner.go 2024-02-09 23:24:12.000000000 +0100 @@ -96,9 +96,9 @@ TCPURLPrefix = "tcp://" // TCPStatusOK is the map key on success. TCPStatusOK = "OK" - errShortRead = fmt.Errorf("short read") - errLongRead = fmt.Errorf("bug: long read") - errMismatch = fmt.Errorf("read not echoing writes") + errShortRead = errors.New("short read") + errLongRead = errors.New("bug: long read") + errMismatch = errors.New("read not echoing writes") ) // GeneratePayload generates a default 24 bytes unique payload for each runner thread and message sent diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/udprunner/udprunner.go new/fortio-1.63.3/udprunner/udprunner.go --- old/fortio-1.63.2/udprunner/udprunner.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/udprunner/udprunner.go 2024-02-09 23:24:12.000000000 +0100 @@ -17,6 +17,7 @@ import ( "bytes" "context" + "errors" "fmt" "io" "net" @@ -98,10 +99,10 @@ UDPURLPrefix = "udp://" // UDPStatusOK is the map key on success. UDPStatusOK = "OK" - errTimeout = fmt.Errorf("timeout") - errShortRead = fmt.Errorf("short read") - errLongRead = fmt.Errorf("bug: long read") - errMismatch = fmt.Errorf("read not echoing writes") + errTimeout = errors.New("timeout") + errShortRead = errors.New("short read") + errLongRead = errors.New("bug: long read") + errMismatch = errors.New("read not echoing writes") ) // NewUDPClient creates and initialize and returns a client based on the UDPOptions. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.2/ui/uihandler.go new/fortio-1.63.3/ui/uihandler.go --- old/fortio-1.63.2/ui/uihandler.go 2024-01-15 22:53:07.000000000 +0100 +++ new/fortio-1.63.3/ui/uihandler.go 2024-02-09 23:24:12.000000000 +0100 @@ -250,7 +250,6 @@ } // A bit awkward api because of trying to reuse yet be compatible from old UI code with // new `rapi` code. - //nolint:contextcheck // we use the internal Aborter to cancel run through api/stop button in UI. res, savedAs, json, err := rapi.Run(runWriter, r, nil, runner, url, &ro, httpopts, true /*html mode*/) if err != nil { _, _ = w.Write([]byte(fmt.Sprintf( ++++++ fortio.obsinfo ++++++ --- /var/tmp/diff_new_pack.yS82Eb/_old 2024-02-11 15:45:26.242379959 +0100 +++ /var/tmp/diff_new_pack.yS82Eb/_new 2024-02-11 15:45:26.242379959 +0100 @@ -1,5 +1,5 @@ name: fortio -version: 1.63.2 -mtime: 1705355587 -commit: a9a6b4e2e89f813e7f18a0f15270b02e6d3f26af +version: 1.63.3 +mtime: 1707517452 +commit: 03c4e44e2e48f539bed119f120245369d252bfc3 ++++++ vendor.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/google/uuid/CHANGELOG.md new/vendor/github.com/google/uuid/CHANGELOG.md --- old/vendor/github.com/google/uuid/CHANGELOG.md 2024-01-17 08:23:48.000000000 +0100 +++ new/vendor/github.com/google/uuid/CHANGELOG.md 2024-02-10 07:29:10.000000000 +0100 @@ -1,5 +1,18 @@ # Changelog +## [1.6.0](https://github.com/google/uuid/compare/v1.5.0...v1.6.0) (2024-01-16) + + +### Features + +* add Max UUID constant ([#149](https://github.com/google/uuid/issues/149)) ([c58770e](https://github.com/google/uuid/commit/c58770eb495f55fe2ced6284f93c5158a62e53e3)) + + +### Bug Fixes + +* fix typo in version 7 uuid documentation ([#153](https://github.com/google/uuid/issues/153)) ([016b199](https://github.com/google/uuid/commit/016b199544692f745ffc8867b914129ecb47ef06)) +* Monotonicity in UUIDv7 ([#150](https://github.com/google/uuid/issues/150)) ([a2b2b32](https://github.com/google/uuid/commit/a2b2b32373ff0b1a312b7fdf6d38a977099698a6)) + ## [1.5.0](https://github.com/google/uuid/compare/v1.4.0...v1.5.0) (2023-12-12) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/google/uuid/hash.go new/vendor/github.com/google/uuid/hash.go --- old/vendor/github.com/google/uuid/hash.go 2024-01-17 08:23:48.000000000 +0100 +++ new/vendor/github.com/google/uuid/hash.go 2024-02-10 07:29:10.000000000 +0100 @@ -17,6 +17,12 @@ NameSpaceOID = Must(Parse("6ba7b812-9dad-11d1-80b4-00c04fd430c8")) NameSpaceX500 = Must(Parse("6ba7b814-9dad-11d1-80b4-00c04fd430c8")) Nil UUID // empty UUID, all zeros + + // The Max UUID is special form of UUID that is specified to have all 128 bits set to 1. + Max = UUID{ + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + } ) // NewHash returns a new UUID derived from the hash of space concatenated with diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/google/uuid/version7.go new/vendor/github.com/google/uuid/version7.go --- old/vendor/github.com/google/uuid/version7.go 2024-01-17 08:23:48.000000000 +0100 +++ new/vendor/github.com/google/uuid/version7.go 2024-02-10 07:29:10.000000000 +0100 @@ -44,7 +44,7 @@ // makeV7 fill 48 bits time (uuid[0] - uuid[5]), set version b0111 (uuid[6]) // uuid[8] already has the right version number (Variant is 10) -// see function NewV7 and NewV7FromReader +// see function NewV7 and NewV7FromReader func makeV7(uuid []byte) { /* 0 1 2 3 @@ -52,7 +52,7 @@ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | unix_ts_ms | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - | unix_ts_ms | ver | rand_a | + | unix_ts_ms | ver | rand_a (12 bit seq) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |var| rand_b | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ @@ -61,7 +61,7 @@ */ _ = uuid[15] // bounds check - t := timeNow().UnixMilli() + t, s := getV7Time() uuid[0] = byte(t >> 40) uuid[1] = byte(t >> 32) @@ -70,6 +70,35 @@ uuid[4] = byte(t >> 8) uuid[5] = byte(t) - uuid[6] = 0x70 | (uuid[6] & 0x0F) - // uuid[8] has already has right version + uuid[6] = 0x70 | (0x0F & byte(s>>8)) + uuid[7] = byte(s) +} + +// lastV7time is the last time we returned stored as: +// +// 52 bits of time in milliseconds since epoch +// 12 bits of (fractional nanoseconds) >> 8 +var lastV7time int64 + +const nanoPerMilli = 1000000 + +// getV7Time returns the time in milliseconds and nanoseconds / 256. +// The returned (milli << 12 + seq) is guarenteed to be greater than +// (milli << 12 + seq) returned by any previous call to getV7Time. +func getV7Time() (milli, seq int64) { + timeMu.Lock() + defer timeMu.Unlock() + + nano := timeNow().UnixNano() + milli = nano / nanoPerMilli + // Sequence number is between 0 and 3906 (nanoPerMilli>>8) + seq = (nano - milli*nanoPerMilli) >> 8 + now := milli<<12 + seq + if now <= lastV7time { + now = lastV7time + 1 + milli = now >> 12 + seq = now & 0xfff + } + lastV7time = now + return milli, seq } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/net/http2/frame.go new/vendor/golang.org/x/net/http2/frame.go --- old/vendor/golang.org/x/net/http2/frame.go 2024-01-17 08:23:48.000000000 +0100 +++ new/vendor/golang.org/x/net/http2/frame.go 2024-02-10 07:29:10.000000000 +0100 @@ -1510,13 +1510,12 @@ } func (fr *Framer) maxHeaderStringLen() int { - v := fr.maxHeaderListSize() - if uint32(int(v)) == v { - return int(v) + v := int(fr.maxHeaderListSize()) + if v < 0 { + // If maxHeaderListSize overflows an int, use no limit (0). + return 0 } - // They had a crazy big number for MaxHeaderBytes anyway, - // so give them unlimited header lengths: - return 0 + return v } // readMetaFrame returns 0 or more CONTINUATION frames from fr and diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/mkerrors.sh new/vendor/golang.org/x/sys/unix/mkerrors.sh --- old/vendor/golang.org/x/sys/unix/mkerrors.sh 2024-01-17 08:23:48.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/mkerrors.sh 2024-02-10 07:29:10.000000000 +0100 @@ -584,7 +584,7 @@ $2 ~ /^KEY_(SPEC|REQKEY_DEFL)_/ || $2 ~ /^KEYCTL_/ || $2 ~ /^PERF_/ || - $2 ~ /^SECCOMP_MODE_/ || + $2 ~ /^SECCOMP_/ || $2 ~ /^SEEK_/ || $2 ~ /^SCHED_/ || $2 ~ /^SPLICE_/ || diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux.go new/vendor/golang.org/x/sys/unix/zerrors_linux.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux.go 2024-02-10 07:29:10.000000000 +0100 @@ -1785,6 +1785,8 @@ LANDLOCK_ACCESS_FS_REMOVE_FILE = 0x20 LANDLOCK_ACCESS_FS_TRUNCATE = 0x4000 LANDLOCK_ACCESS_FS_WRITE_FILE = 0x2 + LANDLOCK_ACCESS_NET_BIND_TCP = 0x1 + LANDLOCK_ACCESS_NET_CONNECT_TCP = 0x2 LANDLOCK_CREATE_RULESET_VERSION = 0x1 LINUX_REBOOT_CMD_CAD_OFF = 0x0 LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef @@ -2465,6 +2467,7 @@ PR_MCE_KILL_GET = 0x22 PR_MCE_KILL_LATE = 0x0 PR_MCE_KILL_SET = 0x1 + PR_MDWE_NO_INHERIT = 0x2 PR_MDWE_REFUSE_EXEC_GAIN = 0x1 PR_MPX_DISABLE_MANAGEMENT = 0x2c PR_MPX_ENABLE_MANAGEMENT = 0x2b @@ -2669,8 +2672,9 @@ RTAX_FEATURES = 0xc RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ECN = 0x1 - RTAX_FEATURE_MASK = 0xf + RTAX_FEATURE_MASK = 0x1f RTAX_FEATURE_SACK = 0x2 + RTAX_FEATURE_TCP_USEC_TS = 0x10 RTAX_FEATURE_TIMESTAMP = 0x4 RTAX_HOPLIMIT = 0xa RTAX_INITCWND = 0xb @@ -2913,9 +2917,38 @@ SCM_RIGHTS = 0x1 SCM_TIMESTAMP = 0x1d SC_LOG_FLUSH = 0x100000 + SECCOMP_ADDFD_FLAG_SEND = 0x2 + SECCOMP_ADDFD_FLAG_SETFD = 0x1 + SECCOMP_FILTER_FLAG_LOG = 0x2 + SECCOMP_FILTER_FLAG_NEW_LISTENER = 0x8 + SECCOMP_FILTER_FLAG_SPEC_ALLOW = 0x4 + SECCOMP_FILTER_FLAG_TSYNC = 0x1 + SECCOMP_FILTER_FLAG_TSYNC_ESRCH = 0x10 + SECCOMP_FILTER_FLAG_WAIT_KILLABLE_RECV = 0x20 + SECCOMP_GET_ACTION_AVAIL = 0x2 + SECCOMP_GET_NOTIF_SIZES = 0x3 + SECCOMP_IOCTL_NOTIF_RECV = 0xc0502100 + SECCOMP_IOCTL_NOTIF_SEND = 0xc0182101 + SECCOMP_IOC_MAGIC = '!' SECCOMP_MODE_DISABLED = 0x0 SECCOMP_MODE_FILTER = 0x2 SECCOMP_MODE_STRICT = 0x1 + SECCOMP_RET_ACTION = 0x7fff0000 + SECCOMP_RET_ACTION_FULL = 0xffff0000 + SECCOMP_RET_ALLOW = 0x7fff0000 + SECCOMP_RET_DATA = 0xffff + SECCOMP_RET_ERRNO = 0x50000 + SECCOMP_RET_KILL = 0x0 + SECCOMP_RET_KILL_PROCESS = 0x80000000 + SECCOMP_RET_KILL_THREAD = 0x0 + SECCOMP_RET_LOG = 0x7ffc0000 + SECCOMP_RET_TRACE = 0x7ff00000 + SECCOMP_RET_TRAP = 0x30000 + SECCOMP_RET_USER_NOTIF = 0x7fc00000 + SECCOMP_SET_MODE_FILTER = 0x1 + SECCOMP_SET_MODE_STRICT = 0x0 + SECCOMP_USER_NOTIF_FD_SYNC_WAKE_UP = 0x1 + SECCOMP_USER_NOTIF_FLAG_CONTINUE = 0x1 SECRETMEM_MAGIC = 0x5345434d SECURITYFS_MAGIC = 0x73636673 SEEK_CUR = 0x1 @@ -3075,6 +3108,7 @@ SOL_TIPC = 0x10f SOL_TLS = 0x11a SOL_UDP = 0x11 + SOL_VSOCK = 0x11f SOL_X25 = 0x106 SOL_XDP = 0x11b SOMAXCONN = 0x1000 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_386.go new/vendor/golang.org/x/sys/unix/zerrors_linux_386.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_386.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_386.go 2024-02-10 07:29:10.000000000 +0100 @@ -281,6 +281,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x40182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x40082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x40082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go new/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go 2024-02-10 07:29:10.000000000 +0100 @@ -282,6 +282,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x40182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x40082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x40082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go new/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go 2024-02-10 07:29:10.000000000 +0100 @@ -288,6 +288,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x40182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x40082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x40082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go new/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go 2024-02-10 07:29:10.000000000 +0100 @@ -278,6 +278,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x40182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x40082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x40082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go new/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go 2024-02-10 07:29:10.000000000 +0100 @@ -275,6 +275,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x40182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x40082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x40082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go new/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go 2024-02-10 07:29:10.000000000 +0100 @@ -281,6 +281,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x80182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x80082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x80082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x80 SIOCATMARK = 0x40047307 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go new/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go 2024-02-10 07:29:10.000000000 +0100 @@ -281,6 +281,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x80182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x80082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x80082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x80 SIOCATMARK = 0x40047307 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go new/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go 2024-02-10 07:29:10.000000000 +0100 @@ -281,6 +281,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x80182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x80082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x80082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x80 SIOCATMARK = 0x40047307 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go new/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go 2024-02-10 07:29:10.000000000 +0100 @@ -281,6 +281,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x80182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x80082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x80082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x80 SIOCATMARK = 0x40047307 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go new/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go 2024-02-10 07:29:10.000000000 +0100 @@ -336,6 +336,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x80182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x80082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x80082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go new/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go 2024-02-10 07:29:10.000000000 +0100 @@ -340,6 +340,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x80182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x80082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x80082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go new/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go 2024-02-10 07:29:10.000000000 +0100 @@ -340,6 +340,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x80182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x80082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x80082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go new/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go 2024-02-10 07:29:10.000000000 +0100 @@ -272,6 +272,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x40182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x40082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x40082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go new/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go 2024-02-10 07:29:10.000000000 +0100 @@ -344,6 +344,9 @@ SCM_TIMESTAMPNS = 0x23 SCM_TXTIME = 0x3d SCM_WIFI_STATUS = 0x29 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x40182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x40082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x40082104 SFD_CLOEXEC = 0x80000 SFD_NONBLOCK = 0x800 SIOCATMARK = 0x8905 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go new/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go --- old/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go 2024-02-10 07:29:10.000000000 +0100 @@ -335,6 +335,9 @@ SCM_TIMESTAMPNS = 0x21 SCM_TXTIME = 0x3f SCM_WIFI_STATUS = 0x25 + SECCOMP_IOCTL_NOTIF_ADDFD = 0x80182103 + SECCOMP_IOCTL_NOTIF_ID_VALID = 0x80082102 + SECCOMP_IOCTL_NOTIF_SET_FLAGS = 0x80082104 SFD_CLOEXEC = 0x400000 SFD_NONBLOCK = 0x4000 SF_FP = 0x38 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go 2024-02-10 07:29:10.000000000 +0100 @@ -448,4 +448,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go 2024-02-10 07:29:10.000000000 +0100 @@ -371,4 +371,7 @@ SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go 2024-02-10 07:29:10.000000000 +0100 @@ -412,4 +412,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go 2024-02-10 07:29:10.000000000 +0100 @@ -315,4 +315,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go 2024-02-10 07:29:10.000000000 +0100 @@ -309,4 +309,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go 2024-02-10 07:29:10.000000000 +0100 @@ -432,4 +432,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 4450 SYS_CACHESTAT = 4451 SYS_FCHMODAT2 = 4452 + SYS_MAP_SHADOW_STACK = 4453 + SYS_FUTEX_WAKE = 4454 + SYS_FUTEX_WAIT = 4455 + SYS_FUTEX_REQUEUE = 4456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go 2024-02-10 07:29:10.000000000 +0100 @@ -362,4 +362,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 5450 SYS_CACHESTAT = 5451 SYS_FCHMODAT2 = 5452 + SYS_MAP_SHADOW_STACK = 5453 + SYS_FUTEX_WAKE = 5454 + SYS_FUTEX_WAIT = 5455 + SYS_FUTEX_REQUEUE = 5456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go 2024-02-10 07:29:10.000000000 +0100 @@ -362,4 +362,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 5450 SYS_CACHESTAT = 5451 SYS_FCHMODAT2 = 5452 + SYS_MAP_SHADOW_STACK = 5453 + SYS_FUTEX_WAKE = 5454 + SYS_FUTEX_WAIT = 5455 + SYS_FUTEX_REQUEUE = 5456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go 2024-02-10 07:29:10.000000000 +0100 @@ -432,4 +432,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 4450 SYS_CACHESTAT = 4451 SYS_FCHMODAT2 = 4452 + SYS_MAP_SHADOW_STACK = 4453 + SYS_FUTEX_WAKE = 4454 + SYS_FUTEX_WAIT = 4455 + SYS_FUTEX_REQUEUE = 4456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go 2024-02-10 07:29:10.000000000 +0100 @@ -439,4 +439,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go 2024-02-10 07:29:10.000000000 +0100 @@ -411,4 +411,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go 2024-02-10 07:29:10.000000000 +0100 @@ -411,4 +411,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go 2024-02-10 07:29:10.000000000 +0100 @@ -316,4 +316,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go 2024-02-10 07:29:10.000000000 +0100 @@ -377,4 +377,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go new/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go --- old/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go 2024-02-10 07:29:10.000000000 +0100 @@ -390,4 +390,8 @@ SYS_SET_MEMPOLICY_HOME_NODE = 450 SYS_CACHESTAT = 451 SYS_FCHMODAT2 = 452 + SYS_MAP_SHADOW_STACK = 453 + SYS_FUTEX_WAKE = 454 + SYS_FUTEX_WAIT = 455 + SYS_FUTEX_REQUEUE = 456 ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/unix/ztypes_linux.go new/vendor/golang.org/x/sys/unix/ztypes_linux.go --- old/vendor/golang.org/x/sys/unix/ztypes_linux.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/unix/ztypes_linux.go 2024-02-10 07:29:10.000000000 +0100 @@ -174,7 +174,8 @@ Contents_encryption_mode uint8 Filenames_encryption_mode uint8 Flags uint8 - _ [4]uint8 + Log2_data_unit_size uint8 + _ [3]uint8 Master_key_identifier [16]uint8 } @@ -455,60 +456,63 @@ } type TCPInfo struct { - State uint8 - Ca_state uint8 - Retransmits uint8 - Probes uint8 - Backoff uint8 - Options uint8 - Rto uint32 - Ato uint32 - Snd_mss uint32 - Rcv_mss uint32 - Unacked uint32 - Sacked uint32 - Lost uint32 - Retrans uint32 - Fackets uint32 - Last_data_sent uint32 - Last_ack_sent uint32 - Last_data_recv uint32 - Last_ack_recv uint32 - Pmtu uint32 - Rcv_ssthresh uint32 - Rtt uint32 - Rttvar uint32 - Snd_ssthresh uint32 - Snd_cwnd uint32 - Advmss uint32 - Reordering uint32 - Rcv_rtt uint32 - Rcv_space uint32 - Total_retrans uint32 - Pacing_rate uint64 - Max_pacing_rate uint64 - Bytes_acked uint64 - Bytes_received uint64 - Segs_out uint32 - Segs_in uint32 - Notsent_bytes uint32 - Min_rtt uint32 - Data_segs_in uint32 - Data_segs_out uint32 - Delivery_rate uint64 - Busy_time uint64 - Rwnd_limited uint64 - Sndbuf_limited uint64 - Delivered uint32 - Delivered_ce uint32 - Bytes_sent uint64 - Bytes_retrans uint64 - Dsack_dups uint32 - Reord_seen uint32 - Rcv_ooopack uint32 - Snd_wnd uint32 - Rcv_wnd uint32 - Rehash uint32 + State uint8 + Ca_state uint8 + Retransmits uint8 + Probes uint8 + Backoff uint8 + Options uint8 + Rto uint32 + Ato uint32 + Snd_mss uint32 + Rcv_mss uint32 + Unacked uint32 + Sacked uint32 + Lost uint32 + Retrans uint32 + Fackets uint32 + Last_data_sent uint32 + Last_ack_sent uint32 + Last_data_recv uint32 + Last_ack_recv uint32 + Pmtu uint32 + Rcv_ssthresh uint32 + Rtt uint32 + Rttvar uint32 + Snd_ssthresh uint32 + Snd_cwnd uint32 + Advmss uint32 + Reordering uint32 + Rcv_rtt uint32 + Rcv_space uint32 + Total_retrans uint32 + Pacing_rate uint64 + Max_pacing_rate uint64 + Bytes_acked uint64 + Bytes_received uint64 + Segs_out uint32 + Segs_in uint32 + Notsent_bytes uint32 + Min_rtt uint32 + Data_segs_in uint32 + Data_segs_out uint32 + Delivery_rate uint64 + Busy_time uint64 + Rwnd_limited uint64 + Sndbuf_limited uint64 + Delivered uint32 + Delivered_ce uint32 + Bytes_sent uint64 + Bytes_retrans uint64 + Dsack_dups uint32 + Reord_seen uint32 + Rcv_ooopack uint32 + Snd_wnd uint32 + Rcv_wnd uint32 + Rehash uint32 + Total_rto uint16 + Total_rto_recoveries uint16 + Total_rto_time uint32 } type CanFilter struct { @@ -551,7 +555,7 @@ SizeofIPv6MTUInfo = 0x20 SizeofICMPv6Filter = 0x20 SizeofUcred = 0xc - SizeofTCPInfo = 0xf0 + SizeofTCPInfo = 0xf8 SizeofCanFilter = 0x8 SizeofTCPRepairOpt = 0x8 ) @@ -3399,7 +3403,7 @@ DEVLINK_PORT_FN_ATTR_STATE = 0x2 DEVLINK_PORT_FN_ATTR_OPSTATE = 0x3 DEVLINK_PORT_FN_ATTR_CAPS = 0x4 - DEVLINK_PORT_FUNCTION_ATTR_MAX = 0x4 + DEVLINK_PORT_FUNCTION_ATTR_MAX = 0x5 ) type FsverityDigest struct { @@ -4183,7 +4187,8 @@ ) type LandlockRulesetAttr struct { - Access_fs uint64 + Access_fs uint64 + Access_net uint64 } type LandlockPathBeneathAttr struct { @@ -5134,7 +5139,7 @@ NL80211_FREQUENCY_ATTR_GO_CONCURRENT = 0xf NL80211_FREQUENCY_ATTR_INDOOR_ONLY = 0xe NL80211_FREQUENCY_ATTR_IR_CONCURRENT = 0xf - NL80211_FREQUENCY_ATTR_MAX = 0x1b + NL80211_FREQUENCY_ATTR_MAX = 0x1c NL80211_FREQUENCY_ATTR_MAX_TX_POWER = 0x6 NL80211_FREQUENCY_ATTR_NO_10MHZ = 0x11 NL80211_FREQUENCY_ATTR_NO_160MHZ = 0xc @@ -5547,7 +5552,7 @@ NL80211_REGDOM_TYPE_CUSTOM_WORLD = 0x2 NL80211_REGDOM_TYPE_INTERSECTION = 0x3 NL80211_REGDOM_TYPE_WORLD = 0x1 - NL80211_REG_RULE_ATTR_MAX = 0x7 + NL80211_REG_RULE_ATTR_MAX = 0x8 NL80211_REKEY_DATA_AKM = 0x4 NL80211_REKEY_DATA_KCK = 0x2 NL80211_REKEY_DATA_KEK = 0x1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/windows/env_windows.go new/vendor/golang.org/x/sys/windows/env_windows.go --- old/vendor/golang.org/x/sys/windows/env_windows.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/windows/env_windows.go 2024-02-10 07:29:10.000000000 +0100 @@ -37,14 +37,17 @@ return nil, err } defer DestroyEnvironmentBlock(block) - blockp := unsafe.Pointer(block) - for { - entry := UTF16PtrToString((*uint16)(blockp)) - if len(entry) == 0 { - break + size := unsafe.Sizeof(*block) + for *block != 0 { + // find NUL terminator + end := unsafe.Pointer(block) + for *(*uint16)(end) != 0 { + end = unsafe.Add(end, size) } - env = append(env, entry) - blockp = unsafe.Add(blockp, 2*(len(entry)+1)) + + entry := unsafe.Slice(block, (uintptr(end)-uintptr(unsafe.Pointer(block)))/size) + env = append(env, UTF16ToString(entry)) + block = (*uint16)(unsafe.Add(end, size)) } return env, nil } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/windows/syscall_windows.go new/vendor/golang.org/x/sys/windows/syscall_windows.go --- old/vendor/golang.org/x/sys/windows/syscall_windows.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/golang.org/x/sys/windows/syscall_windows.go 2024-02-10 07:29:10.000000000 +0100 @@ -125,8 +125,7 @@ for ptr := unsafe.Pointer(p); *(*uint16)(ptr) != 0; n++ { ptr = unsafe.Pointer(uintptr(ptr) + unsafe.Sizeof(*p)) } - - return string(utf16.Decode(unsafe.Slice(p, n))) + return UTF16ToString(unsafe.Slice(p, n)) } func Getpagesize() int { return 4096 } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go new/vendor/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go --- old/vendor/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go 2024-02-10 07:29:10.000000000 +0100 @@ -430,7 +430,7 @@ MethodName string `protobuf:"bytes,2,opt,name=method_name,json=methodName,proto3" json:"method_name,omitempty"` // A single process may be used to run multiple virtual // servers with different identities. - // The authority is the name of such a server identitiy. + // The authority is the name of such a server identity. // It is typically a portion of the URI in the form of // <host> or <host>:<port> . Authority string `protobuf:"bytes,3,opt,name=authority,proto3" json:"authority,omitempty"` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/clientconn.go new/vendor/google.golang.org/grpc/clientconn.go --- old/vendor/google.golang.org/grpc/clientconn.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/clientconn.go 2024-02-10 07:29:10.000000000 +0100 @@ -1860,27 +1860,15 @@ } endpoint := cc.parsedTarget.Endpoint() - target := cc.target - switch { - case authorityFromDialOption != "": + if authorityFromDialOption != "" { cc.authority = authorityFromDialOption - case authorityFromCreds != "": + } else if authorityFromCreds != "" { cc.authority = authorityFromCreds - case strings.HasPrefix(target, "unix:") || strings.HasPrefix(target, "unix-abstract:"): - // TODO: remove when the unix resolver implements optional interface to - // return channel authority. - cc.authority = "localhost" - case strings.HasPrefix(endpoint, ":"): + } else if auth, ok := cc.resolverBuilder.(resolver.AuthorityOverrider); ok { + cc.authority = auth.OverrideAuthority(cc.parsedTarget) + } else if strings.HasPrefix(endpoint, ":") { cc.authority = "localhost" + endpoint - default: - // TODO: Define an optional interface on the resolver builder to return - // the channel authority given the user's dial target. For resolvers - // which don't implement this interface, we will use the endpoint from - // "scheme://authority/endpoint" as the default authority. - // Escape the endpoint to handle use cases where the endpoint - // might not be a valid authority by default. - // For example an endpoint which has multiple paths like - // 'a/b/c', which is not a valid authority by default. + } else { cc.authority = encodeAuthority(endpoint) } channelz.Infof(logger, cc.channelzID, "Channel authority set to %q", cc.authority) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/internal/internal.go new/vendor/google.golang.org/grpc/internal/internal.go --- old/vendor/google.golang.org/grpc/internal/internal.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/internal/internal.go 2024-02-10 07:29:10.000000000 +0100 @@ -57,7 +57,7 @@ // GetXDSHandshakeInfoForTesting returns a pointer to the xds.HandshakeInfo // stored in the passed in attributes. This is set by // credentials/xds/xds.go. - GetXDSHandshakeInfoForTesting any // func (*attributes.Attributes) *xds.HandshakeInfo + GetXDSHandshakeInfoForTesting any // func (*attributes.Attributes) *unsafe.Pointer // GetServerCredentials returns the transport credentials configured on a // gRPC server. An xDS-enabled server needs to know what type of credentials // is configured on the underlying gRPC server. This is set by server.go. @@ -68,11 +68,6 @@ // This is used in the 1.0 release of gcp/observability, and thus must not be // deleted or changed. CanonicalString any // func (codes.Code) string - // DrainServerTransports initiates a graceful close of existing connections - // on a gRPC server accepted on the provided listener address. An - // xDS-enabled server invokes this method on a grpc.Server when a particular - // listener moves to "not-serving" mode. - DrainServerTransports any // func(*grpc.Server, string) // IsRegisteredMethod returns whether the passed in method is registered as // a method on the server. IsRegisteredMethod any // func(*grpc.Server, string) bool @@ -188,6 +183,19 @@ ExitIdleModeForTesting any // func(*grpc.ClientConn) error ChannelzTurnOffForTesting func() + + // TriggerXDSResourceNameNotFoundForTesting triggers the resource-not-found + // error for a given resource type and name. This is usually triggered when + // the associated watch timer fires. For testing purposes, having this + // function makes events more predictable than relying on timer events. + TriggerXDSResourceNameNotFoundForTesting any // func(func(xdsresource.Type, string), string, string) error + + // TriggerXDSResourceNotFoundClient invokes the testing xDS Client singleton + // to invoke resource not found for a resource type name and resource name. + TriggerXDSResourceNameNotFoundClient any // func(string, string) error + + // FromOutgoingContextRaw returns the un-merged, intermediary contents of metadata.rawMD. + FromOutgoingContextRaw any // func(context.Context) (metadata.MD, [][]string, bool) ) // HealthChecker defines the signature of the client-side LB channel health checking function. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/internal/resolver/unix/unix.go new/vendor/google.golang.org/grpc/internal/resolver/unix/unix.go --- old/vendor/google.golang.org/grpc/internal/resolver/unix/unix.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/internal/resolver/unix/unix.go 2024-02-10 07:29:10.000000000 +0100 @@ -61,6 +61,10 @@ return b.scheme } +func (b *builder) OverrideAuthority(resolver.Target) string { + return "localhost" +} + type nopResolver struct { } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/internal/tcp_keepalive_nonunix.go new/vendor/google.golang.org/grpc/internal/tcp_keepalive_nonunix.go --- old/vendor/google.golang.org/grpc/internal/tcp_keepalive_nonunix.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/internal/tcp_keepalive_nonunix.go 1970-01-01 01:00:00.000000000 +0100 @@ -1,29 +0,0 @@ -//go:build !unix - -/* - * Copyright 2023 gRPC authors. - * - * Licensed 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. - * - */ - -package internal - -import ( - "net" -) - -// NetDialerWithTCPKeepalive returns a vanilla net.Dialer on non-unix platforms. -func NetDialerWithTCPKeepalive() *net.Dialer { - return &net.Dialer{} -} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/internal/tcp_keepalive_others.go new/vendor/google.golang.org/grpc/internal/tcp_keepalive_others.go --- old/vendor/google.golang.org/grpc/internal/tcp_keepalive_others.go 1970-01-01 01:00:00.000000000 +0100 +++ new/vendor/google.golang.org/grpc/internal/tcp_keepalive_others.go 2024-02-10 07:29:10.000000000 +0100 @@ -0,0 +1,29 @@ +//go:build !unix && !windows + +/* + * Copyright 2023 gRPC authors. + * + * Licensed 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. + * + */ + +package internal + +import ( + "net" +) + +// NetDialerWithTCPKeepalive returns a vanilla net.Dialer on non-unix platforms. +func NetDialerWithTCPKeepalive() *net.Dialer { + return &net.Dialer{} +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/internal/tcp_keepalive_windows.go new/vendor/google.golang.org/grpc/internal/tcp_keepalive_windows.go --- old/vendor/google.golang.org/grpc/internal/tcp_keepalive_windows.go 1970-01-01 01:00:00.000000000 +0100 +++ new/vendor/google.golang.org/grpc/internal/tcp_keepalive_windows.go 2024-02-10 07:29:10.000000000 +0100 @@ -0,0 +1,54 @@ +//go:build windows + +/* + * Copyright 2023 gRPC authors. + * + * Licensed 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. + * + */ + +package internal + +import ( + "net" + "syscall" + "time" + + "golang.org/x/sys/windows" +) + +// NetDialerWithTCPKeepalive returns a net.Dialer that enables TCP keepalives on +// the underlying connection with OS default values for keepalive parameters. +// +// TODO: Once https://github.com/golang/go/issues/62254 lands, and the +// appropriate Go version becomes less than our least supported Go version, we +// should look into using the new API to make things more straightforward. +func NetDialerWithTCPKeepalive() *net.Dialer { + return &net.Dialer{ + // Setting a negative value here prevents the Go stdlib from overriding + // the values of TCP keepalive time and interval. It also prevents the + // Go stdlib from enabling TCP keepalives by default. + KeepAlive: time.Duration(-1), + // This method is called after the underlying network socket is created, + // but before dialing the socket (or calling its connect() method). The + // combination of unconditionally enabling TCP keepalives here, and + // disabling the overriding of TCP keepalive parameters by setting the + // KeepAlive field to a negative value above, results in OS defaults for + // the TCP keealive interval and time parameters. + Control: func(_, _ string, c syscall.RawConn) error { + return c.Control(func(fd uintptr) { + windows.SetsockoptInt(windows.Handle(fd), windows.SOL_SOCKET, windows.SO_KEEPALIVE, 1) + }) + }, + } +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/internal/transport/http2_client.go new/vendor/google.golang.org/grpc/internal/transport/http2_client.go --- old/vendor/google.golang.org/grpc/internal/transport/http2_client.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/internal/transport/http2_client.go 2024-02-10 07:29:10.000000000 +0100 @@ -59,6 +59,8 @@ // atomically. var clientConnectionCounter uint64 +var metadataFromOutgoingContextRaw = internal.FromOutgoingContextRaw.(func(context.Context) (metadata.MD, [][]string, bool)) + // http2Client implements the ClientTransport interface with HTTP2. type http2Client struct { lastRead int64 // Keep this field 64-bit aligned. Accessed atomically. @@ -568,7 +570,7 @@ headerFields = append(headerFields, hpack.HeaderField{Name: "grpc-trace-bin", Value: encodeBinHeader(b)}) } - if md, added, ok := metadata.FromOutgoingContextRaw(ctx); ok { + if md, added, ok := metadataFromOutgoingContextRaw(ctx); ok { var k string for k, vv := range md { // HTTP doesn't allow you to set pseudoheaders after non pseudoheaders were set. @@ -1323,10 +1325,8 @@ for streamID, stream := range t.activeStreams { if streamID > id && streamID <= upperLimit { // The stream was unprocessed by the server. - if streamID > id && streamID <= upperLimit { - atomic.StoreUint32(&stream.unprocessed, 1) - streamsToClose = append(streamsToClose, stream) - } + atomic.StoreUint32(&stream.unprocessed, 1) + streamsToClose = append(streamsToClose, stream) } } t.mu.Unlock() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/internal/transport/http2_server.go new/vendor/google.golang.org/grpc/internal/transport/http2_server.go --- old/vendor/google.golang.org/grpc/internal/transport/http2_server.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/internal/transport/http2_server.go 2024-02-10 07:29:10.000000000 +0100 @@ -960,7 +960,12 @@ } } if err := t.writeHeaderLocked(s); err != nil { - return status.Convert(err).Err() + switch e := err.(type) { + case ConnectionError: + return status.Error(codes.Unavailable, e.Desc) + default: + return status.Convert(err).Err() + } } return nil } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/metadata/metadata.go new/vendor/google.golang.org/grpc/metadata/metadata.go --- old/vendor/google.golang.org/grpc/metadata/metadata.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/metadata/metadata.go 2024-02-10 07:29:10.000000000 +0100 @@ -25,8 +25,14 @@ "context" "fmt" "strings" + + "google.golang.org/grpc/internal" ) +func init() { + internal.FromOutgoingContextRaw = fromOutgoingContextRaw +} + // DecodeKeyValue returns k, v, nil. // // Deprecated: use k and v directly instead. @@ -238,16 +244,13 @@ return vals } -// FromOutgoingContextRaw returns the un-merged, intermediary contents of rawMD. +// fromOutgoingContextRaw returns the un-merged, intermediary contents of rawMD. // // Remember to perform strings.ToLower on the keys, for both the returned MD (MD // is a map, there's no guarantee it's created using our helper functions) and // the extra kv pairs (AppendToOutgoingContext doesn't turn them into // lowercase). -// -// This is intended for gRPC-internal use ONLY. Users should use -// FromOutgoingContext instead. -func FromOutgoingContextRaw(ctx context.Context) (MD, [][]string, bool) { +func fromOutgoingContextRaw(ctx context.Context) (MD, [][]string, bool) { raw, ok := ctx.Value(mdOutgoingKey{}).(rawMD) if !ok { return nil, nil, false diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/reflection/README.md new/vendor/google.golang.org/grpc/reflection/README.md --- old/vendor/google.golang.org/grpc/reflection/README.md 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/reflection/README.md 2024-02-10 07:29:10.000000000 +0100 @@ -2,7 +2,7 @@ Package reflection implements server reflection service. -The service implemented is defined in: https://github.com/grpc/grpc/blob/master/src/proto/grpc/reflection/v1alpha/reflection.proto. +The service implemented is defined in: https://github.com/grpc/grpc/blob/master/src/proto/grpc/reflection/v1/reflection.proto. To register server reflection on a gRPC server: ```go diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/reflection/serverreflection.go new/vendor/google.golang.org/grpc/reflection/serverreflection.go --- old/vendor/google.golang.org/grpc/reflection/serverreflection.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/reflection/serverreflection.go 2024-02-10 07:29:10.000000000 +0100 @@ -176,11 +176,20 @@ // wire format ([]byte). The fileDescriptors will include fd and all the // transitive dependencies of fd with names not in sentFileDescriptors. func (s *serverReflectionServer) fileDescWithDependencies(fd protoreflect.FileDescriptor, sentFileDescriptors map[string]bool) ([][]byte, error) { + if fd.IsPlaceholder() { + // If the given root file is a placeholder, treat it + // as missing instead of serializing it. + return nil, protoregistry.NotFound + } var r [][]byte queue := []protoreflect.FileDescriptor{fd} for len(queue) > 0 { currentfd := queue[0] queue = queue[1:] + if currentfd.IsPlaceholder() { + // Skip any missing files in the dependency graph. + continue + } if sent := sentFileDescriptors[currentfd.Path()]; len(r) == 0 || !sent { sentFileDescriptors[currentfd.Path()] = true fdProto := protodesc.ToFileDescriptorProto(currentfd) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/resolver/resolver.go new/vendor/google.golang.org/grpc/resolver/resolver.go --- old/vendor/google.golang.org/grpc/resolver/resolver.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/resolver/resolver.go 2024-02-10 07:29:10.000000000 +0100 @@ -314,3 +314,13 @@ // Close closes the resolver. Close() } + +// AuthorityOverrider is implemented by Builders that wish to override the +// default authority for the ClientConn. +// By default, the authority used is target.Endpoint(). +type AuthorityOverrider interface { + // OverrideAuthority returns the authority to use for a ClientConn with the + // given target. The implementation must generate it without blocking, + // typically in line, and must keep it unchanged. + OverrideAuthority(Target) string +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/rpc_util.go new/vendor/google.golang.org/grpc/rpc_util.go --- old/vendor/google.golang.org/grpc/rpc_util.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/rpc_util.go 2024-02-10 07:29:10.000000000 +0100 @@ -640,14 +640,18 @@ return b, nil } -// compress returns the input bytes compressed by compressor or cp. If both -// compressors are nil, returns nil. +// compress returns the input bytes compressed by compressor or cp. +// If both compressors are nil, or if the message has zero length, returns nil, +// indicating no compression was done. // // TODO(dfawley): eliminate cp parameter by wrapping Compressor in an encoding.Compressor. func compress(in []byte, cp Compressor, compressor encoding.Compressor) ([]byte, error) { if compressor == nil && cp == nil { return nil, nil } + if len(in) == 0 { + return nil, nil + } wrapErr := func(err error) error { return status.Errorf(codes.Internal, "grpc: error while compressing: %v", err.Error()) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/server.go new/vendor/google.golang.org/grpc/server.go --- old/vendor/google.golang.org/grpc/server.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/server.go 2024-02-10 07:29:10.000000000 +0100 @@ -74,9 +74,6 @@ return srv.isRegisteredMethod(method) } internal.ServerFromContext = serverFromContext - internal.DrainServerTransports = func(srv *Server, addr string) { - srv.drainServerTransports(addr) - } internal.AddGlobalServerOptions = func(opt ...ServerOption) { globalServerOptions = append(globalServerOptions, opt...) } @@ -139,7 +136,8 @@ quit *grpcsync.Event done *grpcsync.Event channelzRemoveOnce sync.Once - serveWG sync.WaitGroup // counts active Serve goroutines for GracefulStop + serveWG sync.WaitGroup // counts active Serve goroutines for Stop/GracefulStop + handlersWG sync.WaitGroup // counts active method handler goroutines channelzID *channelz.Identifier czData *channelzData @@ -176,6 +174,7 @@ headerTableSize *uint32 numServerWorkers uint32 recvBufferPool SharedBufferPool + waitForHandlers bool } var defaultServerOptions = serverOptions{ @@ -573,6 +572,21 @@ }) } +// WaitForHandlers cause Stop to wait until all outstanding method handlers have +// exited before returning. If false, Stop will return as soon as all +// connections have closed, but method handlers may still be running. By +// default, Stop does not wait for method handlers to return. +// +// # Experimental +// +// Notice: This API is EXPERIMENTAL and may be changed or removed in a +// later release. +func WaitForHandlers(w bool) ServerOption { + return newFuncServerOption(func(o *serverOptions) { + o.waitForHandlers = w + }) +} + // RecvBufferPool returns a ServerOption that configures the server // to use the provided shared buffer pool for parsing incoming messages. Depending // on the application's workload, this could result in reduced memory allocation. @@ -932,6 +946,12 @@ return } + if cc, ok := rawConn.(interface { + PassServerTransport(transport.ServerTransport) + }); ok { + cc.PassServerTransport(st) + } + if !s.addConn(lisAddr, st) { return } @@ -941,15 +961,6 @@ }() } -func (s *Server) drainServerTransports(addr string) { - s.mu.Lock() - conns := s.conns[addr] - for st := range conns { - st.Drain("") - } - s.mu.Unlock() -} - // newHTTP2Transport sets up a http/2 transport (using the // gRPC http2 server transport in transport/http2_server.go). func (s *Server) newHTTP2Transport(c net.Conn) transport.ServerTransport { @@ -1010,9 +1021,11 @@ streamQuota := newHandlerQuota(s.opts.maxConcurrentStreams) st.HandleStreams(ctx, func(stream *transport.Stream) { + s.handlersWG.Add(1) streamQuota.acquire() f := func() { defer streamQuota.release() + defer s.handlersWG.Done() s.handleStream(st, stream) } @@ -1911,6 +1924,10 @@ s.serverWorkerChannelClose() } + if graceful || s.opts.waitForHandlers { + s.handlersWG.Wait() + } + if s.events != nil { s.events.Finish() s.events = nil diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/stream.go new/vendor/google.golang.org/grpc/stream.go --- old/vendor/google.golang.org/grpc/stream.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/stream.go 2024-02-10 07:29:10.000000000 +0100 @@ -48,6 +48,8 @@ "google.golang.org/grpc/status" ) +var metadataFromOutgoingContextRaw = internal.FromOutgoingContextRaw.(func(context.Context) (metadata.MD, [][]string, bool)) + // StreamHandler defines the handler called by gRPC server to complete the // execution of a streaming RPC. // @@ -184,7 +186,7 @@ // when the RPC completes. opts = append([]CallOption{OnFinish(func(error) { cc.idlenessMgr.OnCallEnd() })}, opts...) - if md, added, ok := metadata.FromOutgoingContextRaw(ctx); ok { + if md, added, ok := metadataFromOutgoingContextRaw(ctx); ok { // validate md if err := imetadata.Validate(md); err != nil { return nil, status.Error(codes.Internal, err.Error()) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/version.go new/vendor/google.golang.org/grpc/version.go --- old/vendor/google.golang.org/grpc/version.go 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/version.go 2024-02-10 07:29:10.000000000 +0100 @@ -19,4 +19,4 @@ package grpc // Version is the current grpc version. -const Version = "1.60.1" +const Version = "1.61.0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/google.golang.org/grpc/vet.sh new/vendor/google.golang.org/grpc/vet.sh --- old/vendor/google.golang.org/grpc/vet.sh 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/google.golang.org/grpc/vet.sh 2024-02-10 07:29:10.000000000 +0100 @@ -88,7 +88,7 @@ git grep -l '"math/rand"' -- "*.go" 2>&1 | not grep -v '^examples\|^interop/stress\|grpcrand\|^benchmark\|wrr_test' # - Do not use "interface{}"; use "any" instead. -git grep -l 'interface{}' -- "*.go" 2>&1 | not grep -v '\.pb\.go\|protoc-gen-go-grpc' +git grep -l 'interface{}' -- "*.go" 2>&1 | not grep -v '\.pb\.go\|protoc-gen-go-grpc\|grpc_testing_not_regenerate' # - Do not call grpclog directly. Use grpclog.Component instead. git grep -l -e 'grpclog.I' --or -e 'grpclog.W' --or -e 'grpclog.E' --or -e 'grpclog.F' --or -e 'grpclog.V' -- "*.go" | not grep -v '^grpclog/component.go\|^internal/grpctest/tlogger_test.go' @@ -127,7 +127,7 @@ grep -v "(ST1000)" "${SC_OUT}" | grep -v "(SA1019)" | grep -v "(ST1003)" | not grep -v "(ST1019)\|\(other import of\)" # Exclude underscore checks for generated code. -grep "(ST1003)" "${SC_OUT}" | not grep -v '\(.pb.go:\)\|\(code_string_test.go:\)' +grep "(ST1003)" "${SC_OUT}" | not grep -v '\(.pb.go:\)\|\(code_string_test.go:\)\|\(grpc_testing_not_regenerate\)' # Error for duplicate imports not including grpc protos. grep "(ST1019)\|\(other import of\)" "${SC_OUT}" | not grep -Fv 'XXXXX PleaseIgnoreUnused @@ -152,6 +152,7 @@ XXXXX Protobuf related deprecation errors: "github.com/golang/protobuf .pb.go: +grpc_testing_not_regenerate : ptypes. proto.RegisterType XXXXX gRPC internal usage deprecation errors: @@ -184,9 +185,6 @@ GetSuffixMatch GetTlsCertificateCertificateProviderInstance GetValidationContextCertificateProviderInstance -XXXXX TODO: Remove the below deprecation usages: -CloseNotifier -Roots.Subjects XXXXX PleaseIgnoreUnused' echo SUCCESS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/modules.txt new/vendor/modules.txt --- old/vendor/modules.txt 2024-01-17 08:23:49.000000000 +0100 +++ new/vendor/modules.txt 2024-02-10 07:29:10.000000000 +0100 @@ -45,14 +45,14 @@ github.com/golang/protobuf/ptypes/any github.com/golang/protobuf/ptypes/duration github.com/golang/protobuf/ptypes/timestamp -# github.com/google/uuid v1.5.0 +# github.com/google/uuid v1.6.0 ## explicit github.com/google/uuid # golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb ## explicit; go 1.20 golang.org/x/exp/constraints golang.org/x/exp/slices -# golang.org/x/net v0.20.0 +# golang.org/x/net v0.21.0 ## explicit; go 1.18 golang.org/x/net/context golang.org/x/net/http/httpguts @@ -62,7 +62,7 @@ golang.org/x/net/idna golang.org/x/net/internal/timeseries golang.org/x/net/trace -# golang.org/x/sys v0.16.0 +# golang.org/x/sys v0.17.0 ## explicit; go 1.18 golang.org/x/sys/unix golang.org/x/sys/windows @@ -78,7 +78,7 @@ # google.golang.org/genproto/googleapis/rpc v0.0.0-20231127180814-3a041ad873d4 ## explicit; go 1.19 google.golang.org/genproto/googleapis/rpc/status -# google.golang.org/grpc v1.60.1 +# google.golang.org/grpc v1.61.0 ## explicit; go 1.19 google.golang.org/grpc google.golang.org/grpc/attributes
