$ cat golang/week/2026-09-07.log
the week in review · Sep 7 – Sep 13, 2026
Go unified V5 export data lands, then reverts
By RepoJournal · composed from the cited sources · human-reviewed weekly · methodology
Compiler fixes for interface hashing, an HTTP/1 deadlock, and a net/http TLS gap also shipped this period.
cmd/compile: support unified V5 export data (method indices) golang/go
The new format encodes nongeneric methods followed by generic methods in source order, fixing objectpath breakage and crashes tracked in #81188. Tooling that reads export data will need to handle it once it sticks.
Revert "cmd/compile: support unified V5 export data (method indices)" golang/go
The V5 export data change broke the build and was reverted the same day, so nothing shipped in this period. The underlying method-order problem it addressed is still open.
runtime: fold interface type into hash golang/go
Interface hashing now folds in the compiler's typehash to prevent collisions between distinct types that previously hashed alike. This changes hash values for interface keys, so map iteration order and any persisted hash may shift.
net/http: fix HTTP/1 deadlock on concurrent response body Read and Close golang/go
Closing an HTTP/1 response body before EOF while a concurrent read reaches EOF would deadlock on the shared eofc channel. Code that closes bodies early in a goroutine and reads elsewhere no longer risks hanging.
net/http: populate Request.TLS from HTTP/2 connection state golang/go
The HTTP/2 server only set Request.TLS for requests with an https :scheme, leaving it nil for http targets through a TLS proxy and for CONNECT requests. Handlers that branch on r.TLS will now see it populated in those cases.
quic: clear fast-path receive buffer on stream reset golang/net
Resetting a stream left the fast-path read buffer holding a dangling reference after the underlying memory was returned to the pool. The buffer is now cleared on reset, closing a reuse hazard in golang/net's QUIC implementation.
gopls/internal/analysis/fillstruct: fix stack overflow golang/tools
Fillstruct recursed through pointer element types, so recursive pointer types like type P *P blew the stack. The analysis now stops at non-composite element types.
cmd/compile/internal/ssa: move ssa rewrite packages to ssa/rewrite golang/go
The SSA rewrite packages move from cmd/compile/internal/ssa/rewrite to cmd/compile/internal/ssa/rewrite/<arch>, with 386 renamed i386 because package names cannot start with a number. Internal only, but any out-of-tree tooling importing those paths will need updating.
$ ls golang/week/ # the briefings behind this review
Keep up with Go in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.
Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.