RepoJournal
Go

@golang

Go and the standard library - backend infrastructure at scale

Keep up with Go in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

One email a day. Unsubscribe in one click.

Pick a date

Topics: Go Infrastructure Full archive →

The Wire · Showcase

CRYPTO/TLS PATCHES KEYUPDATE DOS, COMPILER FIXES TIME-TRAVELING PROOFS

By RepoJournal · Filed · About Go

Go shipped a critical fix for a denial-of-service vulnerability in TLS handshake handling that allowed malicious clients to force infinite key derivation operations on servers.

The crypto/tls fix [1] stops counting handshake messages like KeyUpdate as state-advancing after the handshake completes, closing a window where attackers could trigger repeated expensive operations. In the compiler, a subtle bug in the prove pass [2] allowed proofs to be applied before their underlying values executed, leading to incorrect optimizations that have now been retabulated. Integer constant optimization [3] now shares static backing variables across all integer sizes up to 255, letting the linker eliminate redundant symbols in the read-only data segment. Separately, crypto/ecdsa [4] no longer panics when Sign receives an invalid crypto.Hash(0) argument. On the tooling front, gopls [5] now correctly adds missing fmt imports when the fill switch code action generates a default case with fmt.Sprintf, ensuring generated code compiles without manual fixes. The benchmarks suite [7] has been refreshed to latest versions with problematic ones disabled, and the module build version bumped to 1.26, though benchmarks-50 currently runs 387 benchmarks instead of its target. vscode-go [6] upgraded to TypeScript 5 and @types/node 16, fixing breaking changes from the version bump.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] crypto/tls: do not count handshake messages as state-advancing post-handshake golang/go
  2. [2] cmd/compile: fix time traveling proofs in prove golang/go
  3. [3] cmd/compile: generalize staticuint64s sharing to larger integer constant types golang/go
  4. [4] crypto/ecdsa: avoid panic when Sign is called with crypto.Hash(0) golang/go
  5. [5] gopls/internal/analysis/fillswitch: add missing fmt import golang/tools
  6. [6] extension/package.json: bump to typescript 5 & @types/node 16 golang/vscode-go
  7. [7] cmd/bent: refresh versions of all the bent benchmarks golang/benchmarks

Quick answers

What shipped in Go on July 29, 2026?
Go shipped a critical fix for a denial-of-service vulnerability in TLS handshake handling that allowed malicious clients to force infinite key derivation operations on servers. In total, 10 commits landed.
Who contributed to Go on July 29, 2026?
8 developers shipped this update, including Nicholas S. Husin, Jorropo, ArsenySamoylov, Filippo Valsorda, cuishuang, Hongxiang Jiang, David Chase, and Junyang Shao.
What were the notable Go updates?
crypto/tls: do not count handshake messages as state-advancing post-handshake, cmd/compile: fix time traveling proofs in prove, and cmd/compile: generalize staticuint64s sharing to larger integer constant types.

More from @golang

Daily updates, in your inbox

Follow Go

Keep up with Go in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?