Allgemein

Go 1.26 is released

Go 1.26 is released

The Go Blog

Go 1.26 is released

Carlos Amedee, on behalf of the Go team
10 February 2026

Today the Go team is pleased to release Go 1.26.
You can find its binary archives and installers on the download page.

Language changes

Go 1.26 introduces two significant refinements to the language
syntax and type system.

First, the built-in new function, which creates a new variable, now allows its operand to be an
expression, specifying the initial value of the variable.

A simple example of this change means that code such as this:

x := int64(300)
ptr := &x

Can be simplified to:

ptr := new(int64(300))

Second, generic types may now refer to themselves in their own type parameter list. This change
simplifies the implementation of complex data structures and interfaces.

Performance improvements

The previously experimental Green Tea garbage collector
is now enabled by default.

The baseline cgo overhead has been reduced
by approximately 30%.

The compiler can now allocate the backing store for
slices on the stack in more situations, which improves performance.

Tool improvements

The go fix command has been completely rewritten to use the
Go analysis framework, and now includes a
couple dozen “modernizers”, analyzers
that suggest safe fixes to help your code take advantage of newer features of the language
and standard library. It also includes the
inline analyzer, which
attempts to inline all calls to each function annotated with a //go:fix inline directive.
Two upcoming blog posts will address these features in more detail.

More improvements and changes

Go 1.26 introduces many improvements over Go 1.25 across
its tools, the runtime,
compiler, linker,
and the standard library.
This includes the addition of three new packages: crypto/hpke,
crypto/mlkem/mlkemtest, and
testing/cryptotest.
There are port-specific changes
and GODEBUG settings updates.

Some of the additions in Go 1.26 are in an experimental stage
and become exposed only when you explicitly opt in. Notably:

These experiments are all expected to be generally available in a
future version of Go. We encourage you to try them out ahead of time.
We really value your feedback!

Please refer to the Go 1.26 Release Notes for the complete list
of additions, changes, and improvements in Go 1.26.

Over the next few weeks, follow-up blog posts will cover some of the topics
relevant to Go 1.26 in more detail. Check back later to read those posts.

Thanks to everyone who contributed to this release by writing code, filing bugs,
trying out experimental additions, sharing feedback, and testing the release candidates.
Your efforts helped make Go 1.26 as stable as possible.
As always, if you notice any problems, please file an issue.

We hope you enjoy using the new release!

Previous article: Results from the 2025 Go Developer Survey

Blog Index