#555 — May 28, 2025 |
|
Go Weekly |
![]() |
▶ What's New in Go: Google's Take — Released as part of last week’s Google I/O, Go’s project lead and lead devrel team up to present an extensive list of recent additions and improvements to Go. It’s good to see Google presenting an official roundup and there’s more depth in 20 minutes than you might expect (though you can skip the first few minutes which is essentially a pitch for the language). |
![]() 2x-40x Faster Docker Builds with Blacksmith — With a one-line code change, Blacksmith can make your Docker builds incremental by mounting your Docker layer cache into your GitHub Actions runner. Blacksmith is used by 600+ companies like Ashby, Clerk, and Mintlify. Blacksmith sponsor |
The Results of Go's Cryptography Security Audit — The core team brought in an external security firm to audit Go’s cryptography packages, resulting in a single low-severity issue in an unsupported integration (fixed in Go 1.24) and various other findings. The team also explains some other security enhancements coming to Go soon. Roland Shoemaker and Filippo Valsorda |
IN BRIEF:
|
Solving Flaky Tests with Go 1.24's Phuong Le |
The Generics Way to Use GORM — GORM is a popular ORM library for Go and its latest release (v1.30.0) has added support for using generics. This post shows off the benefits. Jinzhu |
CodeRabbit’s Free AI Code Reviews in IDE - VS Code, Cursor, Windsurf — AI code reviews in VS Code, Cursor & Windsurf: line-by-line checks, one-click fixes & code-aware feedback - free in your IDE. Install now. CodeRabbit sponsor |
📄 Taking More Control Over Your Cobra CLI Documentation – A tip for those using the Cobra CLI framework. Jamie Tanna 📄 Another Tale of 📄 Working with JSON Web Tokens in Go Alex Pliutau 📺 Coding a MySQL Database Proxy for Fun Package Main 📺 Building a Minesweeper Game with Go and Raylib Package Main 📄 An Experiment in Using Git as S3 Kris Tun |
🛠 Code & Tools |
![]() |
chafa-go: Render Images in the Terminal with Chafa — Go bindings for Chafa, a C library that uses smart combinations of Unicode symbols to render graphics in terminal environments (or pass images through to terminal emulators with direct image rendering abilities). It uses purego to avoid needing CGO but does need Go 1.24. Konstantinos Artopoulos |
FSBroker: Broker, Group, Dedup, and Filter FSNotify Events — A library that sits on top of fsnotify (which works cross-platform) and converts raw file system events into a more usable form. Hazem Elshabini |
godump: A Pretty-Printer and Debug Dumper for Structs — Inspired by a similar feature in Laravel, this library lets you print structs, slices, maps, and more, in an easy to read fashion at the terminal. Chris Miles |
vipsgen: Go Binding Generator for libvips — libvps is a popular and efficient image processing library. vipsgen lets you generate Go bindings against a libvips install that are type-safe, robust, and fully documented. Adrian Shum |
|
![]() |
|
🕹️ And one for fun.. |
![]() |
Night Knight: A 60 FPS Go Remake of an 80's Videogame — A reader and their partner made an Ebitengine powered retro game, converted from a game originally on the 1980’s MSX home computer. It’s available to download for Windows only. Anca and Claus |
😅 I've been 'vibe coding' my own Go 3D game too – it's been a lot of fun and definitely a learning experience.. |