56 Commits

Author SHA1 Message Date
Stephan Renatus 19855342fe build(go): bump to 1.26.5
https://groups.google.com/g/golang-announce/c/OrmQE_Yp5Sc

govulncheck flagged us for:

* crypto/tls: Encrypted Client Hello privacy leak

The Encrypted Client Hello implementation would leak the pre-shared key
identities during the handshake, allowing a passive network observer who can
collect handshakes to de-anonymize the hostname of the server, even when ECH was
being used.

Thanks to Coia Prant (github.com/rbqvq) for reporting this issue.

This is CVE-2026-42505 and Go issue https://go.dev/issue/79282.

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2026-07-09 11:43:57 +02:00
Stephan Renatus 299760c6ab build: bump go 1.26.3 -> 1.26.4
Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2026-06-03 11:59:01 +02:00
Stephan Renatus bd26ba618c build: bump go 1.26.2 -> 1.26.3
Lots of small things:

https://groups.google.com/g/golang-announce/c/qcCIEXso47M

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2026-05-08 08:45:30 +02:00
Sebastian Spaink e7b6a90e66 build: bump go 1.26.2 (#8497)
Signed-off-by: Sebastian Spaink <sebastianspaink@gmail.com>
2026-04-08 14:07:27 +02:00
Stephan Renatus 24611c0262 build: bump go 1.26.1 (#8409)
https://groups.google.com/g/golang-announce/c/EdhZqrQ98hk

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2026-03-06 13:32:31 -06:00
Stephan Renatus c256ef1f39 build: bump golang 1.25.7 -> 1.26.0
And raise `go` version in go.mod. 1.24.x is no longer supported.

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2026-02-12 08:42:05 +01:00
Stephan Renatus 3eefe047e1 build: bump go 1.25.6 -> 1.25.7
https://groups.google.com/g/golang-announce/c/K09ubi9FQFk

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2026-02-05 08:23:51 +01:00
Stephan Renatus a938b9202e build: bump go 1.25.5 -> 1.25.6
https://groups.google.com/g/golang-announce/c/Vd2tYVM8eUc

Unsure about the TLS issues. Let's just update to err on the safe side.

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2026-01-16 09:12:14 +01:00
Stephan Renatus e4472ea7b0 deps: bump golang 1.25.4 -> 1.25.5
https://groups.google.com/g/golang-announce/c/8FJoBkPddm4

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2025-12-03 09:21:13 +01:00
Stephan Renatus e0f2ac2ad7 build: go 1.25.3 -> 1.25.4 (#8051)
Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2025-11-17 08:20:37 +01:00
Stephan Renatus 2226e190e4 build: bump golang 1.25.2 -> 1.25.3
https://groups.google.com/g/golang-announce/c/YEyj6FUNbik

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2025-10-15 11:33:40 +02:00
Stephan Renatus 40ec031d5c build: bump golang for build: 1.25.1 -> 1.25.2
https://groups.google.com/g/golang-announce/c/4Emdl2iQ_bI

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2025-10-13 17:22:04 +02:00
Stephan Renatus cef6c430b1 build+ci: fix go versions
- build with 1.25.1 (.go-version)
- go-compat test run with 1.24.*
- adjust prometheus metrics test

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2025-09-22 13:44:51 +02:00
Stephan Renatus 088e101ac0 build: bump go (1.24.6 -> 1.24.7) (#7881)
* build: bump go (1.24.6 -> 1.24.7)

https://groups.google.com/g/golang-announce/c/PtW9VW21NPs

* ci: run go stuff if .go-version changed
* Makefile: change debian base image

There is no 1.24.7-bullseye, because that distribution is EOL

* build: remove GOOS from Makefile call

Some change either in the debian trixie golang image, or in golang's
toolchain made this necessary: Prior to this commit, `GOOS` was set to
windows, causing a cross-build. We don't want a crossbuild for this
utility, we want to invoke the Linux binary (on the Linux host) to do
its job on a Windows binary (cross-built from the Linux host).

---------

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2025-09-04 14:44:57 +02:00
Johan Fylling 5ac310470e build: Bump go to 1.24.6 (1.23.12) (#7834)
Build version: from 1.24.4 to 1.24.6
SDK version: from 1.23.8 to 1.23.12

See: https://pkg.go.dev/vuln/GO-2025-3849

Signed-off-by: Johan Fylling <johan.dev@fylling.se>
2025-08-12 18:36:54 +02:00
Stephan Renatus f62cc7d4bc build: bump golang 1.24.3 -> 1.24.4
https://groups.google.com/g/golang-announce/c/ufZ8WpEsA3A

Signed-off-by: Stephan Renatus <stephan@styra.com>
2025-06-06 12:31:30 +02:00
Sebastian Spaink 5a8932326f build: bump go to 1.24.3 (#7553)
Signed-off-by: sspaink <sspaink@styra.com>
2025-05-07 14:32:26 -05:00
Sebastian Spaink 026ea16d28 build: bump go to 1.24.2 (#7544)
Signed-off-by: sspaink <sspaink@styra.com>
2025-05-02 10:25:05 -05:00
Anders Eknert afb30d3f9d Add gocritic linter, fix a bunch of stuff (#7377)
Brace yourselves! For there are many touched files here. No changes
in semantics however.

Spent a long time trying out the various optional rules gocritic
provides, and settled for a few of them. There are more I really
like, but that would take many hours to address across the codebase.

Perhaps others find gocritic too pedantic? If so, we can merge the
fixes without enabling the rule.

Signed-off-by: Anders Eknert <anders@styra.com>
2025-02-24 16:28:41 +01:00
Stephan Renatus d00b575079 build: bump go to 1.23.6 (#7348)
Signed-off-by: Stephan Renatus <stephan@styra.com>
2025-02-09 17:41:33 +01:00
Stephan Renatus 2f3a6fb8b8 build(go): bump to 1.23.5
CVE-2024-45341
CVE-2024-45336

https://groups.google.com/g/golang-announce/c/sSaUhLA-2SI/m/Y9wOnjSUDgAJ

Signed-off-by: Stephan Renatus <stephan@styra.com>
2025-01-17 12:09:26 -08:00
Stephan Renatus 1554ce286e build: bump go used for build to 1.23.1 (#7006)
Signed-off-by: Stephan Renatus <stephan@styra.com>
2024-09-09 15:26:03 +02:00
Stephan Renatus b9302f3998 build(go): bump 1.22.4 -> 1.22.5 (#6845)
https://groups.google.com/g/golang-announce/c/gyb7aM1C9H4

Also adds a new metric to our Prometheus tests.

Signed-off-by: Stephan Renatus <stephan@styra.com>
2024-07-04 10:48:20 +02:00
Stephan Renatus 56e3a55805 build: bump golang 1.22.3 -> 1.22.4
https://groups.google.com/g/golang-announce/c/XbxouI9gY7k

Signed-off-by: Stephan Renatus <stephan@styra.com>
2024-06-05 08:29:35 -07:00
Ashutosh Narkar e168c3bc4b build(go): bump 1.22.2 -> 1.22.3
This minor release includes 2 security fixes:

* cmd/go: arbitrary code execution during build on darwin
* net: malformed DNS message can cause infinite loop

Details: https://groups.google.com/g/golang-announce/c/wkkO4P9stm0

Signed-off-by: Ashutosh Narkar <anarkar4387@gmail.com>
2024-05-08 09:42:43 -07:00
Stephan Renatus 457305a0a7 build(go): bump 1.22.1 -> 1.22.2 (#6672)
https://go.dev/doc/devel/release#go1.22.2

Signed-off-by: Stephan Renatus <stephan@styra.com>
2024-04-04 10:25:26 +02:00
Stephan Renatus 5448790782 build: bump golang 1.22.0 -> 1.22.1 (#6616)
https://groups.google.com/g/golang-announce/c/5pwGVUPoMbg

Signed-off-by: Stephan Renatus <stephan@styra.com>
2024-03-06 10:44:41 +01:00
Stephan Renatus e1a3b9b57a build: update .go-version to unblock netlify build (#6605)
With .go-version containing 1.22, netlify fails to pick up the golang binary:

    9:32:09 AM: Installing Go version 1.22 (requested 1.22)
    9:32:09 AM: Failed to install Go version "1.22"
    9:32:12 AM: Continue with existing version "1.19.13"

and the build breaks with 1.19.x.

Setting .go-version to 1.22.0 (with .0 at the end) matches the versioning
scheme on https://go.dev/dl/, and it seems to succeed picking up the right
go version for the website build:

    9:33:35 AM: Installing Go version 1.22.0 (requested 1.22.0)
    9:33:37 AM: go version go1.22.0 linux/amd64

Signed-off-by: Stephan Renatus <stephan@styra.com>
2024-02-29 10:13:32 +01:00
Stephan Renatus 963f5eaada build(go): bump golang, build with 1.22, support 1.20+ (#6595)
https://go.dev/doc/go1.22

Signed-off-by: Stephan Renatus <stephan@styra.com>
2024-02-20 12:46:17 +01:00
Stephan Renatus 8dda66dec5 golang: bump 1.21.4 -> 1.21.5 (#6460)
https://pkg.go.dev/vuln/GO-2023-2185

Signed-off-by: Stephan Renatus <stephan@styra.com>
2023-12-07 09:14:50 +01:00
Ashutosh Narkar 7933a40006 golang: Update golang to 1.21.4
This version includes security fixes which addresses
vulnerability GO-2023-2186 and GO-2023-2185.

Signed-off-by: Ashutosh Narkar <anarkar4387@gmail.com>
2023-11-14 10:36:54 -08:00
Ashutosh Narkar 7637f609f7 golang: Update golang to 1.21.3
This version includes security fixes which addresses
vulnerability GO-2023-2102.

Signed-off-by: Ashutosh Narkar <anarkar4387@gmail.com>
2023-10-12 10:35:01 -07:00
Ashutosh Narkar cdf2d35a25 golang: Update golang to 1.21.1
This version includes security fixes which address the following CVEs:

* CVE-2023-39318
* CVE-2023-39319
* CVE-2023-39320
* CVE-2023-39321
* CVE-2023-39322

Also changes to internal/prometheus/TestJSONSerialization: add new metric

Signed-off-by: Ashutosh Narkar <anarkar4387@gmail.com>
2023-09-08 11:31:29 -07:00
Stephan Renatus f8e1e4bf2d golang: 1.20.7 -> 1.21 (#6189)
https://tip.golang.org/doc/go1.21

This required some test updates:

* topdown/tokens_test: adjust for go1.21

   What was correct for 1.20 is correct for 1.21, so I've flipped the exception logic.

* plugins/rest/TestClientCert: adapt cert-related error string

* internal/prometheus/TestJSONSerialization: add new metrics

   There are new metrics!

Signed-off-by: Stephan Renatus <stephan@styra.com>
2023-08-29 15:26:09 +02:00
Ashutosh Narkar c41f44c7c8 build: bump golang 1.20.6 -> 1.20.7
https://pkg.go.dev/vuln/GO-2023-1987

Signed-off-by: Ashutosh Narkar <anarkar4387@gmail.com>
2023-08-03 10:07:36 -07:00
Stephan Renatus cda3bfbd50 build: bump golang 1.20.5 -> 1.20.6 (#6087)
https://pkg.go.dev/vuln/GO-2023-1878

Signed-off-by: Stephan Renatus <stephan@styra.com>
2023-07-12 10:46:46 +02:00
Stephan Renatus 5ec8e68cdc build: bump golang 1.20.4 -> 1.20.5 (#5991)
https://groups.google.com/g/golang-announce/c/q5135a9d924

I don't think we're affected, but it's tripping up govulncheck because some
code actually uses the "runtime" package.

Signed-off-by: Stephan Renatus <stephan@styra.com>
2023-06-09 10:25:28 +02:00
Stephan Renatus 8dc9b1e53b build: bump golang v1.20.3 -> v1.20.4 (#5908)
This is for https://pkg.go.dev/vuln/GO-2023-1753, although I don't
think we're vulnerable.

Signed-off-by: Stephan Renatus <stephan@styra.com>
2023-05-08 11:18:54 +02:00
Ashutosh Narkar d9d18d3053 build: bump golang 1.20.2 -> 1.20.3
This Go release includes the following security fixes:

* CVE-2023-24537
* CVE-2023-24538
* CVE-2023-24534
* CVE-2023-24536

https://groups.google.com/g/golang-announce/c/Xdv6JL9ENs8

Signed-off-by: Ashutosh Narkar <anarkar4387@gmail.com>
2023-04-05 11:57:37 -07:00
Ashutosh Narkar 85a10ff095 build: bump golang 1.20.1 -> 1.20.2 (#5740)
Fixes CVE-2023-24532:

> crypto/elliptic: incorrect P-256 ScalarMult and ScalarBaseMult result

https://groups.google.com/g/golang-announce/c/3-TpUx48iQY

Signed-off-by: Ashutosh Narkar <anarkar4387@gmail.com>
2023-03-09 12:10:42 +01:00
Stephan Renatus c9ec05d3fe bump: go 1.19.5 -> 1.20.1
This PR bumps go to 1.20.1 (https://go.dev/doc/go1.20) which
addresses the following vulnerabilities:
https://pkg.go.dev/vuln/GO-2023-1571
https://pkg.go.dev/vuln/GO-2023-1570
https://pkg.go.dev/vuln/GO-2023-1568

As part of the migration, general Golang
stdlib deprecations and test failures were addressed as well.
Some of those changes are:

* Bump golangci-lint for support with go1.20
* Migrate rand.Seed() calls to the newer rand.New(rand.NewSource(seed))

Co-authored-by: Stephan Renatus <stephan@styra.com>
Co-authored-by: Philip Conrad <philipaconrad@gmail.com>

Signed-off-by: Ashutosh Narkar <anarkar4387@gmail.com>
2023-02-21 13:51:23 -08:00
yanggang 45e3a62e23 build: bump golang 1.19.4 -> 1.19.5
Signed-off-by: yanggang <gang.yang@daocloud.io>
2023-01-23 11:59:55 -08:00
Stephan Renatus e55dc67fad build: bump golang 1.19.3 -> 1.19.4 (#5448)
Fixes CVE-2022-41717:

> net/http: limit canonical header cache by bytes, not entries

https://groups.google.com/g/golang-announce/c/L_3rmdT0BMU

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2022-12-07 09:54:13 +01:00
Stephan Renatus b0e2c99138 build: bump golang 1.19.2 -> 1.19.2 (#5337)
This addresses https://pkg.go.dev/vuln/GO-2022-1095.

The only relevant call sites are in the wasm optimizations, where you can
opt into shelling out to wasm-opt (binaryen). None of this is done by default.

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2022-11-02 09:19:40 +01:00
Stephan Renatus 615f6f8273 build: bump golang 1.19.1 -> 1.19.2 (#5213)
https://groups.google.com/g/golang-announce/c/xtuG5faxtaU

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2022-10-06 13:44:18 +02:00
Stephan Renatus 1bcf82cd06 build: bump golang: 1.19 -> 1.19.1 (#5099)
Golang Announcement: https://groups.google.com/g/golang-announce/c/x49AQzIVX-s

Notably:
* CVE-2022-27664 and Go issue https://go.dev/issue/54658

Also adding 'opa version' output to the binary smoke tests for easier
verification here.

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2022-09-07 10:25:35 +02:00
Stephan Renatus 27274e08b6 build: use go 1.19, drop go 1.16 (#5013)
With this, we'll build our container images and binaries using golang 1.19.

Also, the go.mod version stanza is increased, letting us use go1.17+ features.

I had to run

    go mod tidy -go=1.16 && go mod tidy -go=1.17

to get rid of `go mod tidy` related messages, and ran `go mod vendor`
afterwards.

* prometheus: adjust tests for new go1.19 metrics

Note that the new metrics only appear when using the Go runtime of 1.19. So,
we do the same we've done before when 1.17 brought in new metrics: add them
to the tests, and use build flags to not run the tests in the previous versions.

When the bump of github.com/prometheus/go_client to 1.13.0 was merged, it was
properly tested with all of 1.17 and 1.18. So, the previously expected metrics
should be there when using OPA from 1.17 or 1.18.

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2022-08-15 18:05:55 +02:00
Stephan Renatus d2914c0d54 build: bump golang: 1.17 -> 1.18
No change to go.mod's `go` stanza, so no changes in code compatibility.

However, it's used for building our docker images and release
binaries, and for fuzz testing in our nightly workflow.

Some test-related changes with the dns lookup built-in function's
error handling; and the hardcoded signature. Running

    go test ./topdown -run TestTopdownJWTEncodeSignECWithSeedReturnsSameSignature -count 10000

makes me believe that for whatever reason the signature changed,
it's at least stable.

topdown/http_test: Test-only change to accomodate this change in Go (https://go.dev/doc/go1.18):

    Certificate.Verify now uses platform APIs to verify certificate
    validity on macOS and iOS when it is called with a nil
    VerifyOpts.Roots or when using the root pool returned from
    SystemCertPool.

We're keeping the old message for go <= 1.17; in a silly-simple way.

Also:

* ci: build and test two old golang version on macos|linux

  We'll drop golang 1.15, keep one unsupported version (1.16).

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2022-03-28 07:24:21 +02:00
Stephan Renatus f2cb3ddcc2 build: bump go-version (1.17)
We're keeping 1.15 in go.mod, so we don't break anyone who's still on
1.15.x.

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2021-08-30 16:56:53 -07:00
Stephan Renatus aa4a799de9 build: bump golang 1.16.5 -> 1.16.7 (#3710)
https://github.com/golang/go/issues?q=milestone%3AGo1.16.6+label%3ACherryPickApproved
https://github.com/golang/go/issues?q=milestone%3AGo1.16.7+label%3ACherryPickApproved

Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
2021-08-06 10:46:50 +02:00