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

SUFFIX ARRAY PANIC FIX AND BUILD CONSTRAINT BUG LAND IN COMPILER CHANGES

By RepoJournal · Filed · About Go

Go's standard library is hardening against corrupted data while the compiler fixes a critical precedence bug in build constraints that affects real codebases today.

The index/suffixarray package now reports errors instead of panicking when it encounters corrupted data [1], with additional boundary checks to prevent index-out-of-bounds crashes [2] — both trivial fixes that prevent silent failures in production. Meanwhile, cmd/dist landed a fix for a long-standing bug in build constraint evaluation where `gccgo && gc || gc` incorrectly evaluated to false instead of true [3][4], a precedence issue the previous implementation had that's now resolved using go/build/constraint. On the http2 front, the net package is stabilizing its http2wrap support by switching from DefaultTransport to an empty Transport during initialization [5], improving correctness when users don't explicitly configure http2. The compiler itself is tightening generic method handling by asserting byte stream version V4 at the type level [6], preventing silent drops of generic methods for experimental Go 1.27 users. pkg.go.dev shipped a search performance optimization [7] that dynamically calculates database limits based on offset and limit parameters, cutting latency while preserving correct grouping, and fixed a `latest` version resolution bug in GetModulePackages [8]. Tools saw a fix for gopls hover logic that was incorrectly including comments due to unchecked BinarySearchFunc results [9], plus a js platform test suppression [10].

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] index/suffixarray: report error rather than panic for corrupted data golang/go
  2. [2] index/suffixarray: protect against another data corruption golang/go
  3. [3] cmd/dist: use go/build/constraint to parse build constraints golang/go
  4. [4] cmd/dist: add a 'gccgo && gc || gc' build constraint testcase golang/go
  5. [5] http2: use empty Transport rather than DefaultTransport in http2wrap golang/net
  6. [6] cmd/compile/internal/noder: hoist up generic methods assertion golang/go
  7. [7] internal/api: optimize search performance golang/pkgsite
  8. [8] internal/postgres: fix GetModulePackages for latest golang/pkgsite
  9. [9] gopls/internal/golang: fix invalid comment on hover golang/tools
  10. [10] internal/typesinternal/typeindex: suppress test on js golang/tools

Quick answers

What shipped in Go on May 5, 2026?
Go's standard library is hardening against corrupted data while the compiler fixes a critical precedence bug in build constraints that affects real codebases today. In total, 15 commits landed.
What were the notable Go updates?
index/suffixarray: report error rather than panic for corrupted data, index/suffixarray: protect against another data corruption, and cmd/dist: use go/build/constraint to parse build constraints.

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?