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

GO RUNTIME MEMORY TRAP DOCUMENTED AS FREEZE APPROACHES

By RepoJournal · Filed · About Go

Image decoders can allocate memory proportional to untrusted headers before validating pixel data, a security footgun that just got official guidance.

The Go team documented a critical memory allocation pattern in image.Decode that catches developers off guard [1]. When decoding untrusted images, the function allocates buffers based on width and height from the image header before validating the actual pixel data, creating a denial-of-service vector. The fix isn't in the code, it's in the docs: use image.DecodeConfig to validate headers first, which reads only metadata without full buffer allocation [1]. This lands as the freeze tightens, with HTTP/3 tests now disabled ahead of the next release [2]. Compiler work continues in parallel, with splitload type preservation fixes on 386 and AMD64 ensuring pointers don't silently convert to integers [3]. On the tooling front, VS Code Go now adds follow-cursor support to package outlines with configurable sorting [4], while pkg.go.dev fixed a deployment issue where missing Go CLI binaries broke external link resolution [5]. The mobile team aligned Objective-C setter selectors with sanitized property names, keeping bindings consistent with Cocoa conventions [6].

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] image, image/gif: document DecodeConfig before Decode for untrusted input golang/go
  2. [2] net/http: disable HTTP/3 tests prior to freeze golang/go
  3. [3] cmd/compile: preserve pointerness during splitload golang/go
  4. [4] extension: support follow cursor and sorting in package outline golang/vscode-go
  5. [5] internal/frontend: fall back to process env when go env fails golang/pkgsite
  6. [6] bind: align Objective-C setter selectors with sanitized property names golang/mobile

Quick answers

What shipped in Go on May 15, 2026?
Image decoders can allocate memory proportional to untrusted headers before validating pixel data, a security footgun that just got official guidance. In total, 6 commits landed.
What were the notable Go updates?
image, image/gif: document DecodeConfig before Decode for untrusted input, net/http: disable HTTP/3 tests prior to freeze, and cmd/compile: preserve pointerness during splitload.

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?