Command output, decoded into a Go value.
execx's DecodeJSON().As[Result]() returns (Result, error), with the output source selected in the chain.
Merged on main; Go 1.27+. Source preview:
https://t.co/URfXUsGmaQ
#golang
HTTPX generic methods are merged on main.
client.Get[User](url) keeps client configuration and the typed response at the call site. Existing package helpers remain available.
Source preview, Go 1.27+:
https://t.co/gDF2UJHKMZ
#golang
Keep your providers. Let Wire generate the constructor calls.
Wire v1.3.0 fixes stale generation after refactors across Go workspace modules and supports project-owned go tool wire commands.
Go 1.25+
https://t.co/sN4pAtq8Hq
Change the element type without breaking the chain.
Collection v4 uses Go 1.27 generic methods for fluent transforms. The result is still a slice you can index and range over.
https://t.co/IJ6PqrlCgK
#golang
Colorized Go dumps, with less clutter.
GoDump v1.10.0 adds:
• WithoutTypes() to hide type annotations
• WithRedactTags() to redact fields marked json:"-"
Zero dependencies. Go 1.18+.
https://t.co/tUcxmYG4PO
#golang
Go 1.26 seems to be the "faster everything" release. Besides GreenTea GC and faster memory allocations, there's also a 20–30% improvement in cgo calls.
Here are some details.
In the Go runtime, a *processor* (often referred to as a P) is a resource required to run user code or the scheduler. For a thread to execute a goroutine, it must first have a processor attached to it.
Processors move through different states. They can be "running" (executing code), "idle" (waiting for work), or "gcstop" (paused because of the garbage collection).
Previously, processors had a state called "syscall" used when a goroutine is making a system or cgo call. Now, this state has been removed. Instead of using a separate processor state, the system now checks the status of the goroutine assigned to the processor to see if it's involved in a system call.
This reduces internal runtime overhead and simplifies code paths for cgo and syscalls.
Neat!