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

WINDOWS PANIC FIX AND SUMDB VALIDATION PATCH — GO TEAM SHIPS TWO CRITICAL SECURITY HARDENERS

By RepoJournal · Filed · About Go

Go just patched a panic in Windows syscalls that could crash net.Dial and LookupPort, and tightened sumdb validation to block a proxy attack vector that could slip corrupted modules past verification.

Two fixes landed that matter immediately for production systems. First, syscall.StringToUTF16Ptr now rejects inputs with NUL characters instead of panicking [1], fixing crashes in net.Dial, net.LookupPort, and syscall.Readlink on Windows—this is CVE-2026-39836 and you're shipping this. Second, the module proxy validation now requires that sumdb /lookup/ responses actually contain a hash for the requested module [2], closing a gap where a malicious proxy could serve corrupted code with a valid-but-unrelated sumdb response. On the compiler side, closure naming just got simpler [3]—inlined closures now use their pre-inlining names instead of accumulating caller names through multiple levels, which cuts clutter and makes debugging easier. Generic method name mangling got a fix too [4]: pointer receivers on generic types now correctly nest type arguments inside parentheses as (*T[int]).M[int] instead of (*T)[int].M[int]. The vulndb team added 11 first-party vulnerability reports to the database [6], and the tools team refined the modernize pass to only suggest min/max replacements when user functions actually match the pattern [5].

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] all: avoid unsafe StringToUTF16Ptr on Windows golang/go
  2. [2] cmd/go: reject sumdb response lacking module hash golang/go
  3. [3] cmd/compile: simplify closure name golang/go
  4. [4] cmd/compile/internal/noder: put type args inside parenthesis golang/go
  5. [5] go/analysis/passes/modernize: minmax: only remove exact userdefined golang/tools
  6. [6] data/reports: add 11 first-party reports golang/vulndb

Quick answers

What shipped in Go on May 8, 2026?
Go just patched a panic in Windows syscalls that could crash net.Dial and LookupPort, and tightened sumdb validation to block a proxy attack vector that could slip corrupted modules past verification. In total, 25 commits landed.
What were the notable Go updates?
all: avoid unsafe StringToUTF16Ptr on Windows, cmd/go: reject sumdb response lacking module hash, and cmd/compile: simplify closure name.

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?