---
title: "A plan to bring generic collections to Go 1.28"
publication: "Go Weekly"
issue: 612
published_at: "2026-07-31"
canonical_url: "https://golangweekly.com/issues/612"
---

Plus watching Go's garbage collector at work, supervised fire-and-forget tasks, and why nice APIs don't have to be slow.        

#​612 — July 31, 2026 

[Read the Web Version](https://golangweekly.com/issues/612)  

Together with [![agentfield.ai\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,e_trim,w_1280,h_229/e_make_transparent/co_white,e_outline:10/kfuqkwkso6tqxqr2r1jz.png)](https://agentfield.ai/github/pr-af/?utm_source=golang&utm_medium=newsletter&utm_campaign=golang-260731&utm_id=golang-260731-pr-af&utm_content=pr-af)   

Go Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/jceqsfo8ll9htkttsdzl.jpg)](https://github.com/golang/go/issues/80590)  

[Go's Proposals for Generic Collection Types in Go 1.28](https://github.com/golang/go/issues/80590) — An umbrella proposal from Go's Collections working group covering several collection data structures intended for the eventual Go 1.28 standard library. Includes a canonical `set.Set` type, hash-based maps and sets with custom hashers, an ordered map, and a new generic binary heap. 

Alan Donovan (Go Team)   [![\](https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/bbfde8ae.png)](https://agentfield.ai/github/pr-af/?utm_source=golang&utm_medium=newsletter&utm_campaign=golang-260731&utm_id=golang-260731-pr-af&utm_content=pr-af) 

[Top Open-Source Code Reviewer on Code-Review-Bench](https://agentfield.ai/github/pr-af/?utm_source=golang&utm_medium=newsletter&utm_campaign=golang-260731&utm_id=golang-260731-pr-af&utm_content=pr-af) — pr-af, AgentField's open-source reviewer, just outranked leading closed models — #2 of 42 on Code-Review-Bench. Multi-agent PR review with ~3× more valid findings than closed tools at ~10× lower cost. Self-hosted, drops into GitHub Actions. 

Agentfield.ai sponsor   

[Watching Go's New Garbage Collector Move Through the Heap](https://theconsensus.dev/p/2026/07/19/observing-gos-garbage-collector-old-and-new.html) — [Green Tea](https://go.dev/blog/greenteagc) became the default GC in Go 1.26, and Phil goes looking with `perf` and an ASCII map of the heap. Go lays objects out in size-segregated spans and never moves them, which can mean freeing 90% of your objects frees almost no memory. 

Phil Eaton   

**IN BRIEF:** 

- All being well, Go 1.27 is expected to land in the next couple of weeks, but [the draft Go 1.27 release notes](https://go.dev/doc/go1.27) have been fleshed out some more if you want to get ahead of it.
- `go vet` is [now set](https://github.com/golang/go/issues/62595#issuecomment-5122622360) to [flag formatting pointers with `%d` in `printf`](https://github.com/golang/go/issues/62595).
- Eitam Ring [teases _KinetiGo_](https://eitamring.github.io/posts/kinetigo.html), a TinyGo-based toolchain for working with LEGO robotics devices.
- [Stacked pull requests are now in public preview](https://github.blog/changelog/2026-07-30-stacked-pull-requests-are-now-in-public-preview/) on GitHub.   

[Supervised Fire-and-Forget Tasks in Go](https://rednafi.com/go/supervised-fire-and-forget/) — How to run 'fire and forget' tasks with bounded concurrency, panic recovery, and graceful shutdown, instead of bare `go func()` calls. 

Redowan Delowar   

[Adding Go to a Browser Code Runner](https://blog.lvmbdv.dev/posts/adding-go-to-a-browser-code-runner/) — A look at adding Go to a browser code runner, why the usual `GOOS=js` approach didn't work in a V8 isolate, and how compiling the [Yaegi](https://github.com/traefik/yaegi) interpreter to WASI got it working cleanly. 

Ata Kuyumcu   

[`pgx.CollectRows` or Why Nice APIs Don't Have To Be Slow](https://zolstein.substack.com/p/pgxcollectrows-nice-apis-dont-have) — [pgx](https://github.com/jackc/pgx)'s `CollectRows` and `RowToStructByName` helpers were much slower than handwritten loops. The author got caching fixes into pgx 5.6 (released in 2024) and shows how a rethought abstraction closes the gap almost entirely. 

zolstein   

[A Second Database Is a Dependency You Can Skip](https://www.tigerdata.com/go/trial?utm_source=content-syndication&utm_medium=referral&utm_campaign=golang-weekly-newsletter) — TimescaleDB extends Postgres for analytics at scale, no new service to run. [Get $1000 credit to start](https://www.tigerdata.com/go/trial?utm_source=content-syndication&utm_medium=referral&utm_campaign=golang-weekly-newsletter). 

Tiger Data (creators of TimescaleDB) sponsor   

📄 [Wrapping Errors with Defer](https://www.zombiezen.com/blog/2026/07/wrapping-errors-with-defer/) – A small pattern combining `defer` with a named error result to avoid repetition while still adding context to errors. Roxy Light 

📄 [Go's Maps: How Swiss Tables Replaced the Old Bucket Design](https://blog.gaborkoos.com/posts/2026-07-24-Golang-Maps-How-Swiss-Tables-Replaced-the-Old-Bucket-Design/) Gabor Koos  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/cvohm7zepez9mzxi7q0u.jpg)](https://github.com/x-motemen/gore)  

[Gore 0.7: A Full-Featured Go REPL Environment](https://github.com/x-motemen/gore) — Has all the niceties you'd expect like line editing, history, multi-line input, expression evaluation, the ability to import packages (and, in [v0.7](https://github.com/x-motemen/gore/releases/tag/v0.7.0), you can create import aliases too) and gopls-powered code completion. 

motemen   

[Goph 2.0: A Native Go SSH Client Library](https://github.com/melbahja/goph) — Supports connections using passwords, private keys, keys with passphrases, doing file transfers, etc. v2 brings a functional options API, context-aware commands, SOCKS5 proxy, jump hosts, and more. 

Mohamed El Bahja   

🖼️ [webp-go-pure: Pure Go WebP Encoding and Decoding](https://github.com/SeriousBug/webp-go-pure) — A pure Go WebP encoder/decoder for when you want to avoid cgo and `libwebp`. 

Kaan Barmore-Genc   

[soup 2.0: A _Beautiful Soup_-Inspired Web Scraper](https://github.com/anaskhan96/soup) — Takes inspiration from Python's popular [Beautiful Soup](https://www.crummy.com/software/BeautifulSoup/bs4/doc/) and provides functions for loading and parsing pages and then navigating or reading the elements on them. 

Anas Khan   

- [Wish 2.0.2](https://github.com/charmbracelet/wish) – Charm's SSH server framework for building terminal-accessible apps. v2.0.2 fixes a bug with apps running under `bubbletea.Middleware`.
- [jsonparser 1.6](https://github.com/buger/jsonparser) – Fast JSON parser offering path-based access without predefined structs and minimal allocations.
- [Milvus 3.0](https://milvus.io/blog/announcing-milvus-3-lake-native-vector-search-and-a-more-powerful-retrieval-engine.md) – Go-powered cloud-native vector database built for vector ANN search. ([Repo](https://github.com/milvus-io/milvus).)
- [req 3.60](https://github.com/imroc/req) – Simple, powerful HTTP client library with advanced features.         

Curated by Peter Cooper and [Glenn Goodrich](https://twitter.com/ruprict).
Go is a [trademark of Google](https://go.dev/brand).
The [Go gopher](https://go.dev/blog/gopher), whenever used, is an original creation by Renée French. 

[Change your email](https://golangweekly.com/edit_subscription/*|UID|*)
[Stop getting this newsletter](https://golangweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
