Go 1.25 Released with Experimental Garbage Collector and New JSON API

Go 1.25 lands with major toolchain and runtime enhancements, including experimental GC, encoding/json v2, and new testing/synctest support.

The Go team announced the official release of the Go 1.25 programming language, arriving right on schedule six months after version 1.24, packed a lot under the hood, touching nearly every corner of the toolchain, runtime, and standard library.

One of the most talked-about additions is the new experimental garbage collector, designed to improve performance when handling small objects, potentially cutting GC overhead by 10–40% in real-world workloads.

Alongside that comes another experimental feature—the encoding/json/v2 package—promising faster decoding and more flexible configuration. Both are opt-in for now, giving developers a chance to try them early and offer feedback before they’re finalized.

Go 1.25 also brings container-aware GOMAXPROCS by default, meaning applications running in environments like Kubernetes can automatically adjust to CPU limits without manual tweaks. On top of that, the compiler gets smarter with faster slice allocations and DWARF5 debug info, reducing binary size and speeding up linking for large projects.

The tooling sees its share of love too, with new go vet analyzers catching common pitfalls and several go command enhancements, like the ability to ignore directories in go.mod or spin up a local documentation server with go doc -http. There’s also a brand-new testing/synctest package, making it easier to test concurrent code without the usual headaches.

Lastly, as always, there’s a laundry list of standard library improvements—from cryptographic performance boosts to more consistent ASN.1 parsing, plus new networking and TLS features. Support for older macOS versions is dropped, and Go 1.25 marks the last stop for the broken 32-bit Windows/ARM port before its removal.

Refer to the announcement or check the release notes for a deep dive into all changes.

Bobby Borisov

Bobby Borisov

Bobby, an editor-in-chief at Linuxiac, is a Linux professional with over 20 years of experience. With a strong focus on Linux and open-source software, he has worked as a Senior Linux System Administrator, Software Developer, and DevOps Engineer for small and large multinational companies.

Leave a Reply

Your email address will not be published. Required fields are marked *