NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Go modules · #2006 by repository stars
Last release 7 months ago
19 Feb 2026
Release timing varies
gaps range from 1 weeks to 6 months
Rarely documented
notes for 9 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
290 releases · first in 2019
Nothing published for this version
This commit adds Windows platform support to gaio using WSAPoll-based I/O multiplexing (Reactor pattern).
This commit adds Windows platform support to gaio using WSAPoll-based
I/O multiplexing (Reactor pattern).
Changes:
Add aio_windows.go: WSAPoll-based poller implementation
Add affinity_windows.go: CPU affinity using SetThreadAffinityMask
Add aio_unix.go: Extract Unix-specific dupconn() and closeFd()
Update aio_test.go: Skip high-concurrency tests (8k+ connections) on
Windows due to system ephemeral port limits
Tested on:
One column per quarter.
refactor: replace unsafe interface pointer access with reflect.ValueO…
refactor: replace unsafe interface pointer access with reflect.ValueO…
The previous implementation incorrectly extracted the type pointer (first word) from Go interfaces instead of the data pointer (second word). Since al
The previous implementation incorrectly extracted the type pointer (first word)
from Go interfaces instead of the data pointer (second word). Since all
*net.TCPConn share the same type pointer, this caused:
Root cause:
Go interfaces are laid out as [type_ptr, data_ptr] (two machine words).
The old code: ptr := *(*uintptr)(unsafe.Pointer(&conn))
only retrieved the type pointer, which is identical for all *net.TCPConn.
Fix:
Changed to extract the second word (data pointer) which uniquely identifies
each connection instance:
iface := ([2]uintptr)(unsafe.Pointer(&conn))
ptr := iface[1] // data pointer
Affected functions:
Also includes:
All tests pass with race detector enabled.
Add pre-allocated results slice to watcher struct to reuse across WaitIO calls, reducing GC pressure in high-throughput scenarios
Benchmark results (BenchmarkEcho1K):
Before: 478 B/op, 4 allocs/op
After: 0 B/op, 0 allocs/op
Memory profile shows WaitIO allocation dropped from 60.51MB to 0MB,
which is critical for C10K+ concurrent connection scenarios.
Nothing published for this version
Fix eventfd error handling: return actual syscall error instead of nil
Bug fixes:
Performance optimizations:
Fix: whenever a request is pushed onto w.timeouts, compare it with th…
Fix: whenever a request is pushed onto w.timeouts, compare it with th…
use channel to notify buffer swap to create a full memory barrier, wh…
use channel to notify buffer swap to create a full memory barrier, wh…
Nothing published for this version
same with previous commit
same with previous commit
to prevent allocation of the same address for net.Conn
to prevent allocation of the same address for net.Conn
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →