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 FIXES A SUBTLE BODY-CLOSE BUG

By RepoJournal · Filed · About Go

The net/http change you didn't know you needed just landed, and it could save you from chasing a phantom io.EOF.

The first story of the day is a quiet but critical fix in net/http: closing a server request body now correctly returns nil instead of io.EOF when the handler stops reading early and the body is drained [1]. This regression came from CL 794640, which consolidated request body draining and dropped the assignment that cleared the error. For any handler that relies on Close returning nil after a successful drain, this is the fix you've been waiting for. Meanwhile, the compiler team is at it again on loong64: a new optimization folds ANDconst with 16/32-bit all-ones masks into zero-extension instructions, removing 644 instructions from the Go binary [2]. That's a meaningful win for anyone targeting loong64. The third story is a Plan 9 landmine: using LEAVE on amd64 for Plan 9 stubs can cause a crash because BP holds the system call number, not the frame pointer [3]. This is a 'pat your back if you're on Plan 9' moment, but it's a good reminder that platform-specific code has sharp edges. If you're on Plan 9, this change is a must-have before your next build. For the rest of us, the net/http fix deserves a quick patch and a regression test.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] net/http: clear io.EOF when Close drains a server request body golang/go
  2. [2] cmd/compile: fold ANDconst with 16/32-bit all-ones mask to zero-extend on loong64 golang/go
  3. [3] cmd/internal/obj/x86: don't use LEAVE on plan9/amd64 golang/go

Quick answers

What shipped in Go on August 23, 2026?
The net/http change you didn't know you needed just landed, and it could save you from chasing a phantom io.EOF. In total, 3 commits landed.
Who contributed to Go on August 23, 2026?
3 developers shipped this update, including Moises Vega, XiaolinZhao, and David du Colombier.
What were the notable Go updates?
net/http: clear io.EOF when Close drains a server request body, cmd/compile: fold ANDconst with 16/32-bit all-ones mask to zero-extend on loong64, and cmd/internal/obj/x86: don't use LEAVE on plan9/amd64.

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?