Next Release Notes Draft

DRAFT RELEASE NOTES — Introduction to Go 1.26

Go 1.26 is not yet released. These are work-in-progress release notes. Go 1.26 is expected to be released in February 2026.

Tools

Go command

cmd/doc, and go tool doc have been deleted. go doc can be used as a replacement for go tool doc: it takes the same flags and arguments and has the same behavior.

Bootstrap

As mentioned in the Go 1.24 release notes, Go 1.26 now requires Go 1.24.6 or later for bootstrap. We expect that Go 1.28 will require a minor release of Go 1.26 or later for bootstrap.

Standard library

Minor changes to the library

go/types

The Var.Kind method returns an enumeration of type VarKind that classifies the variable (package-level, local, receiver, parameter, result, or struct field). See issue #70250.

Callers of NewVar or NewParam are encouraged to call Var.SetKind to ensure that this attribute is set correctly in all cases.

crypto/ecdsa

The big.Int fields of PublicKey and PrivateKey are now deprecated.

crypto/rsa

If PrivateKey fields are modified after calling PrivateKey.Precompute, PrivateKey.Validate now fails.

PrivateKey.D is now checked for consistency with precomputed values, even if it is not used.

database/sql/driver

A database driver may implement RowsColumnScanner to entirely override Scan behavior.

log/slog

The NewMultiHandler function creates a MultiHandler that invokes all the given Handlers. Its Enable method reports whether any of the handlers’ Enabled methods return true. Its Handle, WithAttr and WithGroup methods call the corresponding method on each of the enabled handlers.

net

Added context aware dial functions for TCP, UDP, IP and Unix networks.

net/http/httptest

The HTTP client returned by Server.Client will now redirect requests for example.com and any subdomains to the server being tested.

net/netip

The new Prefix.Compare method compares two prefixes.

os

The new Process.WithHandle method provides access to an internal process handle on supported platforms (Linux 5.4 or later and Windows). On Linux, the process handle is a pidfd. The method returns ErrNoHandle on unsupported platforms or when no process handle is available.

On Windows, the OpenFile flag parameter can now contain any combination of Windows-specific file flags, such as FILE_FLAG_OVERLAPPED and FILE_FLAG_SEQUENTIAL_SCAN, for control of file or device caching behavior, access modes, and other special-purpose flags.

Ports

Windows

As announced in the Go 1.25 release notes, the broken 32-bit windows/arm port (GOOS=windows GOARCH=arm) is removed.