167 wires and counting

$ follow Go

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

or

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.

$ status

wire 2026-05-02
stories 38

© 2026 RepoJournal Home Showcase How it works Privacy

$ the-wire · showcase

CRYPTO/TLS TEST HARNESS GETS TEETH, COMPILER SHEDS DEADWEIGHT

By RepoJournal · Filed · About Go · Composed from the cited sources · methodology

Go's TLS test suite now actually catches errors it was silently dropping, while the compiler trims fat and JSON encoding ditches generics that were creating more problems than they solved.

The crypto/tls test infrastructure got a critical fix overnight [1]. Before, recorded TLS handshake tests would swallow both OpenSSL and client/server errors, replay transcripts that included partial failures, then ignore those same errors on playback—defeating the entire point of regression testing. Adding -naccept 1 to s_server arguments now forces clean exits after single connections, finally surfacing real errors. In parallel, the compiler shed unnecessary deadcode [2] as cleanup continues, and encoding/json ditched its generic implementations [3] after discovering the underlying utf8 package couldn't support them without allocations—a lesson in when generics create more friction than they eliminate. FreeBSD+race test isolation [4] and TLS handshake regeneration [5] address platform-specific flakiness. Across the ecosystem, vulndb locked toolchain requirements [6], gopls fixed a parameter type alias renaming bug [7], and ACME OrderError now includes actual problem details instead of burying diagnostics [9]. The ARM64 SVE store instruction generation [10] keeps instruction operand ordering consistent. Scattered flakiness in gopls [8] continues to demand attention, but the core improvements here strengthen the testing and diagnostics foundations everyone depends on.

Action items

References

  1. [1] crypto/tls: fix error handling in recorded test connections ↗ golang/go
  2. [2] cmd/compile: remove deadcode ↗ golang/go
  3. [3] encoding/json/internal/jsonwire: remove generic implementations ↗ golang/go
  4. [4] runtime: disable CgoCallbackX15 test on freebsd+race ↗ golang/go
  5. [5] crypto/tls: clean up and regenerate server recorded test handshakes ↗ golang/go
  6. [6] go.mod: make go1.26.2 toolchain requirement explicit ↗ golang/vulndb
  7. [7] go/analysis/passes/inline: fix bug renaming param type aliases ↗ golang/tools
  8. [8] gopls/integration/misc: Test61208 flaky ↗ golang/tools
  9. [9] acme: include Problem in OrderError.Error ↗ golang/crypto
  10. [10] arm64/instgen: make addr the last op in SVE stores ↗ golang/arch

Quick answers

What shipped in Go on May 2, 2026?
Go's TLS test suite now actually catches errors it was silently dropping, while the compiler trims fat and JSON encoding ditches generics that were creating more problems than they solved. In total, 38 commits landed.
What were the notable Go updates?
crypto/tls: fix error handling in recorded test connections, cmd/compile: remove deadcode, and encoding/json/internal/jsonwire: remove generic implementations.