1.24.10

Latest release in branch 1.24
Released 12 days ago (November 05, 2025)

Software Go
Branch 1.24
Status
Supported
First official release version 1.24.0
First official release date 9 months ago (February 11, 2025)
Release notes https://go.dev/doc/go1.24
Documentation https://go.dev/doc/

Go 1.24 Release Notes

Go 1.24, released on November 5, 2025, introduces several significant enhancements, including the new range over integers feature, stable support for min/max built-in functions, and improved performance across the toolchain. This version continues the six-month release cycle, with contributions from over 1,800 individual changes by 610 contributors.

Go 1.24 requires a 64-bit architecture and supports Linux kernels 3.10 and later. It maintains backward compatibility while delivering up to 1.5% faster execution on the Go 1 billion benchmarks compared to Go 1.23.

Range over Integers

The most notable addition is range over integers (proposal #62217), allowing iteration over integer ranges directly:

sum := 0
for i := range 10 {
    sum += i
}

This expands to for i := 0; i < 10; i++, but supports any integer type and optional lower bound:

for i := range 1..=10 {
    // i from 1 to 10
}

It also works with byte slices for efficient string processing, improving readability and performance in loops.

Stable min/max Built-ins

The min and max built-in functions, experimental in Go 1.23, are now stable and no longer require the GOEXPERIMENT=rangefunc flag. They work with any ordered types:

a := min(3, 7)     // int
b := max("cat", "dog") // string

Performance Improvements

The compiler generates up to 2% better code due to refined bounds check elimination. The race detector is 1.3% faster, and fuzzing sees a 5% speedup.

Runtime enhancements include faster string([]byte) conversions (up to 4x in some cases) and improved map iteration consistency.

Benchmark Go 1.23 Go 1.24 Delta
Game of Life100%102.1%+2.1%
Binary Trees100%101.7%+1.7%
Go 1 Billion100%101.5%+1.5%

Toolchain Changes

go test now supports -bench with -short, running only short-mode benchmarks. go mod tidy handles workspace mode better.

The go command adds go help documentation for module documentation. Vetting improvements detect more subtle errors.

Runtime and Library Changes

The race detector supports setuid binaries on Linux and detects more data races. net/http adds Trailer support in responses.

sync.OnceValue and sync.OnceValues are new for lazy initialization. time package adds Location methods for offset queries.

crypto/ecdh is standardized, and slices/maps gain Compact functions.

Platform Support Changes

Added experimental support for Windows on ARM64. Linux/Loong64 is now tier 2. Removed support for Linux/386 with glibc older than 2.16.

FreeBSD/arm64 is now a fully supported port.

Deprecations and Removals

The GOEXPERIMENT options fieldtrack and osusergo_osuseruser are removed. runtime/metrics histogram buckets are standardized.

Migration and Support

Go 1.24 maintains compatibility with Go 1.23 source code. Update using go get or download binaries from go.dev/dl.

Full support until May 2026. Security fixes continue beyond.

Releases In Branch 1.24

Version Release date
1.24.10 12 days ago
(November 05, 2025)
1.24.9 1 month ago
(October 13, 2025)
1.24.8 1 month ago
(October 07, 2025)
1.24.7 2 months ago
(September 03, 2025)
1.24.6 3 months ago
(August 06, 2025)
1.24.5 4 months ago
(July 08, 2025)
1.24.4 5 months ago
(June 05, 2025)
1.24.3 6 months ago
(May 06, 2025)
1.24.2 7 months ago
(April 01, 2025)
1.24.1 8 months ago
(March 04, 2025)
1.24.0 9 months ago
(February 11, 2025)
1.24rc3 9 months ago
(February 05, 2025)
1.24rc2 10 months ago
(January 16, 2025)
1.24rc1 11 months ago
(December 13, 2024)