Go can't kill a stuck goroutine
#611 — July 24, 2026
Go Weekly
GoMLX: Accelerated Machine Learning Framework for Go — A Python-free, idiomatically Go alternative to TensorFlow or PyTorch. It's come a long way since we linked to it last, with more SIMD support, a new homepage, thorough docs, and support for more Hugging Face models out of the box.
Jan Pfeifer and Contributors
💡 The new docs include a guide to training your own Convolutional Neural Network (CNN) with it to classify the MNIST digits.
Build Production-Ready CI/CD Pipelines with GitHub Actions — Erik Reinert takes you from your first workflow to production pipelines: matrix builds, caching, composite actions, reusable workflows, and secure cloud deploys with OIDC.
Master.dev sponsor
Storing Passkeys Like Password Hashes, and a Go API to Match — A proposal for storing WebAuthn credentials as opaque strings, a la password hashes, plus a draft stateless crypto/passkey API that could reach the standard library in Go 1.28. Filippo wants feedback on both now.
Filippo Valsorda
Go's Stuck Goroutine Problem (And Why to Let It Fail) — How goroutines get stuck, why Go can't kill them, and River v0.40's Erlang-inspired 'let it crash' answer for background jobs that ignore cancellation.
Brandur Leach
Escape Analysis in Go: Stack vs. Heap Allocations Explained — An approachable intro to Go's escape analysis and reading -gcflags="-m" output that doubles as a demo of GoLand 2026.2's new tooling for it.
Dominika Stankiewicz (JetBrains)
Building a Metrics Backend? Keep It in Postgres — TimescaleDB extends Postgres to ingest and query metrics at scale. One database, not two. Get $1000 credit to start.
Tiger Data (creators of TimescaleDB) sponsor
📄 Building a pkg.go.dev TUI Explorer – A written alternative to ▶️ Alex's video on the same build. Alex Pliutau
📄 Memory Profiling and Optimization in Go: How One Line Allocated 687GB – An accidentally quadratic slice prepend that was caught by the allocation profiler. Solomon Oladiran
📄 Everyone Should Know SIMD – More relevant now as Go continues to add support. Mitchell Hashimoto
🛠 Code & Tools
httpretty 0.2: Pretty-Print HTTP Requests Made from Go — Inspired by curl's --verbose, this could be handy when debugging. We first linked this 7 years ago(!) and it's been rounded out with support for multipart bodies, HTTP trailers, and http.Flusher/http.ResponseController.
Henrique Vicente
oapi-codegen 2.8.0: Now with OpenAPI 3.1 Support — A long-standing way to generate idiomatic Go client and server boilerplate code from OpenAPI 3 specifications, and now OpenAPI 3.1 too. Specs are now validated prior to generation too, Fiber v3 is supported, and Go 1.25+ is now required.
Jamie Tanna and Contributors
go-diskfs: Manipulate Disks and Disk Images from Go — For tasks that you might otherwise use fdisk, mkfs.vfat, or mtools for – partitioning, making filesystems, etc.
Avi Deitcher
- 🤖 Crush 0.86.0 – Charm's Go-powered CLI agentic development tool adds new LSP tools for better refactoring.
- iso8601 1.8 – Fast ISO8601 date parsing library. v1.8 adds support for ordinal dates (e.g.
2026-205which is today). - Agent Development Kit (ADK) for Go 2.1 – Google's toolkit for building agents.
- do 2.1 – Dependency injection toolkit built on generics.
- go-ora 3.0 – Pure Go Oracle Database client library.
- Ergo 2.19 – Modern Go-powered IRCv3 daemon.
- go-pinecone 6.0 – Official Go SDK for Pinecone.
📰 Classifieds
Scala on Go: sealed types, exhaustive matching, Option/Try & new bind/also do-notation — compiled to plain Go. Try it: gala.fyi.
🤖 If you can code, you can build a robot. Viam 101 is a free 90-min course — no hardware needed. Sign up by July 31 to win a $3,500 arm.
📢 Elsewhere in the ecosystem
- Shirei is a cross-platform Go immediate-mode GUI framework that now has early support for generating iOS and Android apps from the same codebase.
- Anton Zhiyanov's Solod, an attempt to create a 'better C' based on a subset of Go, now supports networking in v0.2.
- 🤖 In How I Stopped Running Out of Tokens, a developer whose company uses Claude Enterprise shares some tools you can use (like rtk) to get the most out of your assigned limits.
- Metago is an experimental template-based metaprogramming approach to writing templates that write Go.
- OctoGo is a Go-like language for the Parallax Propeller 2 microcontroller with the unusual property that goroutines are not scheduled, they take over a CPU core each.
-
/r/golangdiscussed why is Cgo so bad? (Or not!)