Engineering

go-redis 9.23.0 drops Go older than 1.26

go-redis 9.23.0, tagged 5 October, sets Go 1.26 as the minimum. Builds on 1.24 or 1.25 have to move first.

Choi Hyun-im

go-redis 9.23.0 was tagged on 5 October 2026. The maintainers call it a minor release and say it contains everything from 9.23.0-beta.1, so the notes cover the whole step up from 9.22.0. The change that will stop a build is the toolchain floor. Go 1.26 is now the minimum. The go line in the root module and the submodules moved from 1.24 to 1.26, as part of dependency bumps tied to govulncheck findings. A project still compiling with Go 1.24 or 1.25 cannot take this tag until the toolchain moves.

That is a sharper requirement than most library minors. Go’s own 1.26 release was in February, and the current security patch on that line, 1.26.9, shipped on 8 October. A service that was waiting on a library excuse to leave 1.24 now has one. A service that cannot move the toolchain yet should stay on the 9.22 line of go-redis and say so in the lockfile, instead of letting a routine bump fail CI on Monday.

The beta notes also describe the release as adding features on top of the 9.22 work, which itself brought Redis 8.10 support, new commands, and a batch of parser fixes, with client-side caching and automatic pipelining called out as experimental flagships on the way into this series. Read the 9.23 changelog before you assume those experiments are on by default. The mandatory part is the Go version. Everything else is opt-in until your code calls it.

If you vendor go-redis, pin the upgrade next to the Go upgrade. Taking 9.23.0 on a 1.25 builder will not compile. Taking it on Go 1.26.9 gets you the library and the current toolchain fixes in one change, which is the combination worth testing.