Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package fortio for openSUSE:Factory checked in at 2023-12-21 23:39:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/fortio (Old) and /work/SRC/openSUSE:Factory/.fortio.new.1840 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fortio" Thu Dec 21 23:39:39 2023 rev:56 rq:1134505 version:1.63.1 Changes: -------- --- /work/SRC/openSUSE:Factory/fortio/fortio.changes 2023-12-10 19:39:48.487314188 +0100 +++ /work/SRC/openSUSE:Factory/.fortio.new.1840/fortio.changes 2023-12-21 23:39:44.997027334 +0100 @@ -1,0 +2,10 @@ +Wed Dec 20 12:57:29 UTC 2023 - opensuse_buildserv...@ojkastl.de + +- Update to version 1.63.1: + * fix timeout not used by proxy client in fetch2 (#875) + * Bump google.golang.org/grpc from 1.60.0 to 1.60.1 (#877) + * Bump actions/setup-go from 4.1.0 to 5.0.0 (#869) + * Bump github.com/google/uuid from 1.4.0 to 1.5.0 (#872) + * Bump google.golang.org/grpc from 1.59.0 to 1.60.0 (#871) + +------------------------------------------------------------------- Old: ---- fortio-1.63.0.obscpio New: ---- fortio-1.63.1.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fortio.spec ++++++ --- /var/tmp/diff_new_pack.A1IP5J/_old 2023-12-21 23:39:45.841058155 +0100 +++ /var/tmp/diff_new_pack.A1IP5J/_new 2023-12-21 23:39:45.841058155 +0100 @@ -19,7 +19,7 @@ %define __arch_install_post export NO_BRP_STRIP_DEBUG=true Name: fortio -Version: 1.63.0 +Version: 1.63.1 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.A1IP5J/_old 2023-12-21 23:39:45.869059177 +0100 +++ /var/tmp/diff_new_pack.A1IP5J/_new 2023-12-21 23:39:45.873059324 +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.0</param> + <param name="revision">v1.63.1</param> <param name="versionformat">@PARENT_TAG@</param> <param name="changesgenerate">enable</param> <param name="versionrewrite-pattern">v(.*)</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.A1IP5J/_old 2023-12-21 23:39:45.889059908 +0100 +++ /var/tmp/diff_new_pack.A1IP5J/_new 2023-12-21 23:39:45.893060054 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/fortio/fortio</param> - <param name="changesrevision">6b492e20fffc070f3ab624cf960793a01651cd19</param></service></servicedata> + <param name="changesrevision">63083144350d8b9acabd2908a51b2953c9f83262</param></service></servicedata> (No newline at EOF) ++++++ fortio-1.63.0.obscpio -> fortio-1.63.1.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/.github/workflows/codecov.yml new/fortio-1.63.1/.github/workflows/codecov.yml --- old/fortio-1.63.0/.github/workflows/codecov.yml 2023-12-09 01:00:11.000000000 +0100 +++ new/fortio-1.63.1/.github/workflows/codecov.yml 2023-12-19 21:07:52.000000000 +0100 @@ -15,7 +15,7 @@ with: fetch-depth: 2 - name: Set up Go - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # pin@v4 + uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # pin@v4 with: go-version: '1.20' check-latest: true diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/README.md new/fortio-1.63.1/README.md --- old/fortio-1.63.0/README.md 2023-12-09 01:00:11.000000000 +0100 +++ new/fortio-1.63.1/README.md 2023-12-19 21:07:52.000000000 +0100 @@ -1,4 +1,4 @@ -<!-- 1.63.0 --> +<!-- 1.63.1 --> # 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.0/fortio-linux_amd64-1.63.0.tgz \ +curl -L https://github.com/fortio/fortio/releases/download/v1.63.1/fortio-linux_amd64-1.63.1.tgz \ | sudo tar -C / -xvzpf - # or the debian package -wget https://github.com/fortio/fortio/releases/download/v1.63.0/fortio_1.63.0_amd64.deb -dpkg -i fortio_1.63.0_amd64.deb +wget https://github.com/fortio/fortio/releases/download/v1.63.1/fortio_1.63.1_amd64.deb +dpkg -i fortio_1.63.1_amd64.deb # or the rpm -rpm -i https://github.com/fortio/fortio/releases/download/v1.63.0/fortio-1.63.0-1.x86_64.rpm +rpm -i https://github.com/fortio/fortio/releases/download/v1.63.1/fortio-1.63.1-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.0/fortio_win_1.63.0.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.1/fortio_win_1.63.1.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.0 usage: +ΦοÏÏίο 1.63.1 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.0/fhttp/http_forwarder.go new/fortio-1.63.1/fhttp/http_forwarder.go --- old/fortio-1.63.0/fhttp/http_forwarder.go 2023-12-09 01:00:11.000000000 +0100 +++ new/fortio-1.63.1/fhttp/http_forwarder.go 2023-12-19 21:07:52.000000000 +0100 @@ -260,18 +260,28 @@ } } +func setClientOptions(client *http.Client, opts *HTTPOptions) { + log.Debugf("Setting client options to %+v", opts) + client.Timeout = opts.HTTPReqTimeOut + tls, _ := opts.TLSConfig() + client.Transport = &http.Transport{ + // TODO make configurable, should be fine for now for most but extreme -c values + MaxIdleConnsPerHost: 128, // must be more than incoming parallelization; divided by number of fan out if using parallel mode + MaxIdleConns: 256, + // This avoids Accept-Encoding: gzip being added to outgoing requests when no encoding accept is specified + // yet if passed by request, it will do gzip end to end. Issue #624. + DisableCompression: true, + Proxy: http.ProxyFromEnvironment, + TLSHandshakeTimeout: DefaultHTTPOptions.HTTPReqTimeOut, + TLSClientConfig: tls, + } +} + // CreateProxyClient http client for connection reuse. func CreateProxyClient() *http.Client { - client := &http.Client{ - Transport: &http.Transport{ - // TODO make configurable, should be fine for now for most but extreme -c values - MaxIdleConnsPerHost: 128, // must be more than incoming parallelization; divided by number of fan out if using parallel mode - MaxIdleConns: 256, - // This avoids Accept-Encoding: gzip being added to outgoing requests when no encoding accept is specified - // yet if passed by request, it will do gzip end to end. Issue #624. - DisableCompression: true, - }, - } + log.Debugf("Creating proxy client") + client := &http.Client{} + setClientOptions(client, DefaultHTTPOptions) return client } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/fhttp/http_server.go new/fortio-1.63.1/fhttp/http_server.go --- old/fortio-1.63.0/fhttp/http_server.go 2023-12-09 01:00:11.000000000 +0100 +++ new/fortio-1.63.1/fhttp/http_server.go 2023-12-19 21:07:52.000000000 +0100 @@ -18,7 +18,6 @@ import ( "bytes" - "crypto/tls" "fmt" "io" "net" @@ -29,6 +28,7 @@ "sort" "strconv" "strings" + "sync" "sync/atomic" "time" @@ -504,7 +504,17 @@ // -- Fetch er (simple http proxy) -- -var proxyClient = CreateProxyClient() +var ( + sharedProxyClient *http.Client + once sync.Once +) + +func getProxyClient() *http.Client { + once.Do(func() { + sharedProxyClient = CreateProxyClient() + }) + return sharedProxyClient +} // FetcherHandler2 is the handler for the fetcher/proxy that supports h2 input and makes a // new request with all headers copied (allows to test sticky routing) @@ -531,10 +541,8 @@ return } OnBehalfOfRequest(req, r) - tr := proxyClient.Transport.(*http.Transport) - if tr.TLSClientConfig == nil || tr.TLSClientConfig.InsecureSkipVerify != opts.Insecure { - tr.TLSClientConfig = &tls.Config{InsecureSkipVerify: opts.Insecure} //nolint:gosec // as requested by the options. - } + proxyClient := getProxyClient() + setClientOptions(proxyClient, opts) resp, err := proxyClient.Do(req) if err != nil { msg := fmt.Sprintf("Error for %q: %v", url, err) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/go.mod new/fortio-1.63.1/go.mod --- old/fortio-1.63.0/go.mod 2023-12-09 01:00:11.000000000 +0100 +++ new/fortio-1.63.1/go.mod 2023-12-19 21:07:52.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.4.0 + github.com/google/uuid v1.5.0 golang.org/x/net v0.19.0 - google.golang.org/grpc v1.59.0 + google.golang.org/grpc v1.60.1 ) // Local dev of dependencies changes diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/go.sum new/fortio-1.63.1/go.sum --- old/fortio-1.63.0/go.sum 2023-12-09 01:00:11.000000000 +0100 +++ new/fortio-1.63.1/go.sum 2023-12-19 21:07:52.000000000 +0100 @@ -23,8 +23,8 @@ 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.4.0 h1:MtMxsa51/r9yyhkyLsVeVt0B+BGQZzpQiTQ4eHZ8bc4= -github.com/google/uuid v1.4.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= +github.com/google/uuid v1.5.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.19.0 h1:zTwKpTd2XuCqf8huc7Fo2iSy+4RHPd10s4KzeTnVr1c= @@ -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.59.0 h1:Z5Iec2pjwb+LEOqzpB2MR12/eKFhDPhuqW91O+4bwUk= -google.golang.org/grpc v1.59.0/go.mod h1:aUPDwccQo6OTjy7Hct4AfBPD1GptF4fyUjIkQ9YtF98= +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/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= ++++++ fortio.obsinfo ++++++ --- /var/tmp/diff_new_pack.A1IP5J/_old 2023-12-21 23:39:46.033065166 +0100 +++ /var/tmp/diff_new_pack.A1IP5J/_new 2023-12-21 23:39:46.033065166 +0100 @@ -1,5 +1,5 @@ name: fortio -version: 1.63.0 -mtime: 1702080011 -commit: 6b492e20fffc070f3ab624cf960793a01651cd19 +version: 1.63.1 +mtime: 1703016472 +commit: 63083144350d8b9acabd2908a51b2953c9f83262 ++++++ vendor.tar.gz ++++++ ++++ 5005 lines of diff (skipped)