---
title: "The one with the big Go 1.25 release"
publication: "Go Weekly"
issue: 566
published_at: "2025-08-20"
canonical_url: "https://golangweekly.com/issues/566"
---

Plus TinyGo gets Go 1.25 too, a look at logging libraries, and why one team moved from Python to Go. |        

#​566 — August 20, 2025 

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

☀️ We're back from a week off – [the previous issue is here](https://golangweekly.com/issues/565) if you want to check it out again – and we should now be back every week until October at least :-)
__
_Peter Cooper, your editor_ 

Together with [![WorkOS\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_514,h_98/e_make_transparent/co_white,e_outline:9/tdfxwgk852ui9leli4wm.png)](https://workos.com/rbac?utm_source=cpgo&utm_medium=newsletter&utm_campaign=q32025)   

Go Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/xvwcefryzm8pftl9r5ro.jpg)](https://go.dev/blog/go1.25)  

⭐ [Go 1.25 Released](https://go.dev/blog/go1.25) — Sadly Go 1.25’s release coincided with my vacation – what luck! Nonetheless, 1.25 is a solid release, focused on fixes, improvements, and tool upgrades, rather than language changes, making it an easy upgrade for most. Here are some of the highlights and further resources to check out: 

- [The final Go 1.25 release notes](https://go.dev/doc/go1.25) provide all the details of the release.
- A [new, experimental garbage collector](https://go.dev/doc/go1.25#new-experimental-garbage-collector) is available to try, behind the `GOEXPERIMENT=greenteagc` build-time option.
- Anton Zhiyanov's [Go 1.25 interactive tour](https://antonz.org/go-1-25/) remains a great way to get up to speed with the few language tweaks there are, including [`WaitGroup.Go()`](https://appliedgo.net/spotlight/go-1.25-waitgroup-go/), the [v2 JSON package](https://antonz.org/go-json-v2/), and the now-generally-available [`testing/synctest`package.](https://go.dev/blog/synctest)
- Microsoft has issued [a release of its own Go 1.25.0 build](https://devblogs.microsoft.com/go/go-1-25-0-1-microsoft-build-now-available/) and *TinyGo* has a Go 1.25 build too _(more on that below)._ 

Dmitri Shuralyov (The Go Team)   [![\](https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/89172c1a.png)](https://workos.com/rbac?utm_source=cpgo&utm_medium=newsletter&utm_campaign=q32025) 

[Take Control of User Roles and Permissions](https://workos.com/rbac?utm_source=cpgo&utm_medium=newsletter&utm_campaign=q32025) — As your app grows, hard-coded roles and permissions become messy and slow development. WorkOS RBAC makes it easy to define roles, group permissions, and manage access at scale with simple APIs, a powerful dashboard, and native SSO and SCIM integrations. 

WorkOS sponsor   

**IN BRIEF:** 

- Amazon Web Services has [created an 'Advanced Go Driver' for Amazon RDS and Aurora](https://aws.amazon.com/about-aws/whats-new/2025/08/aws-advanced-go-driver-generally-available/) that wraps `pgx` or the native MySQL driver to provide enhanced functionality, particularly around auth and switchover/failover scenarios.
- [Embedded Go](https://embeddedgo.github.io/getting_started) is a Go toolchain that adapts the Go compiler to target alternative devices [including the Raspberry Pi Pico 2 and even the Nintendo 64.](https://embeddedgo.github.io/2025/08/17/news.html)
- 🇬🇧 Jamie Tanna shares a detailed writeup of [his experiences at last week's GopherCon UK 2025.](https://www.jvt.me/posts/2025/08/15/gophercon-uk-2025/)   

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/do6xy9u53xbqiktd5bbl.jpg)](https://d2lang.com/)  

[D2: A Declarative Diagramming Tool in Go](https://d2lang.com/) — If you’re familiar with [Mermaid](https://mermaid.js.org/), this is a similar idea but built in Go. It’s a powerful tool, and has become even more so this week with [support for ASCII outputs](https://d2lang.com/blog/ascii/), so you can use your diagrams in even more places. [GitHub repo.](https://github.com/terrastruct/d2) 

Terrastruct   

[What is the Go Proxy Even Doing?](https://flak.tedunangst.com/post/what-is-the-go-proxy-even-doing) — [Go’s module proxy](https://proxy.golang.org/) provides stability for developers, but its design can hit upstream servers with redundant clones. Ted shows the logs and explains how he defends his server. 

Ted Unangst   

📄 [From Python to Go: Why We Rewrote Our Ingest Pipeline](https://telemetryharbor.com/blog/from-python-to-go-why-we-rewrote-our-ingest-pipeline-at-telemetry-harbor/) – They started with Python for faster prototyping but rapidly saw huge gains after shifting to Go. Telemetry Harbor 

📄 [Understanding Go Error Types: Pointer vs. Value](https://blog.fillmore-labs.com/posts/errors-1/) – _“The subtle distinction between pointer and value error types can silently break your code.”_ Fillmore Labs  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/uiutx6rh2aelnph5khzf.jpg)](https://preslav.me/2025/08/12/introducing-gomjml/)  

[Introducing `gomjml`: MJML Email Markup for Go Developers](https://preslav.me/2025/08/12/introducing-gomjml/) — [MJML](https://mjml.io/) is a framework for writing emails using special, custom HTML tags which then get transformed into safe, responsive HTML that notoriously touchy email clients can handle. MJML’s main implementation is for Node.js, however, but Preslav has built a new, Go-native approach. 

Preslav Rachev   

[TinyGo 0.39: Now with Go 1.25 Support](https://github.com/tinygo-org/tinygo/releases/tag/v0.39.0) — [TinyGo](https://tinygo.org/) is a popular Go compiler that takes Go to ‘small places’ like embedded systems, microcontrollers and WebAssembly use cases. v0.39 is a bigger release than it sounds as it brings Go 1.25 support. 

Ron Evans et al.   

[How to Boost Your Kubernetes Security with Smart Add-On Management](https://www.fairwinds.com/kubernetes-security-add-on-management?utm_campaign=golang+weekly+sponsorship+8+25&utm_source=newsletters&utm_medium=referral) — Learn proven strategies to identify risks, meet compliance, and streamline add-on updates in our K8s security guide. 

Fairwinds sponsor   

[The 5 Best Logging Libraries for Go](https://launchdarkly.com/blog/the-5-best-logging-libraries-for-golang/) — An opinionated, but potentially useful, list. 

Vadim Korolik (LaunchDarkly)   

[Go-edlib: String Comparison and Edit-Distance Algorithms](https://github.com/hbollon/go-edlib) — Levenshtein, LCS, Hamming, Damerau levenshtein (OSA and Adjacent transpositions algorithms), Jaro-Winkler, Cosine, and more make an appearance here. 

Hugo Bollon   

- [Ginkgo 2.24](https://github.com/onsi/ginkgo/releases/tag/v2.24.0) – Mature testing framework. A new [semantic versioning filter](https://onsi.github.io/ginkgo/#spec-semantic-version-filtering) has been added so you can run specs based on version constraints.
- [Mongo DB Driver 2.3](https://github.com/mongodb/mongo-go-driver/releases/tag/v2.3.0) – The official Go driver for MongoDB. Go 1.19+ is now required, and this is the final release to support MongoDB 4.0.
- [River 0.24](https://github.com/riverqueue/river/releases/tag/v0.24.0) – Robust job processing system for Go and Postgres.
- [graphql-go 1.7](https://github.com/graph-gophers/graphql-go) – GraphQL server with a focus on ease of use.
- [Ristretto 2.3](https://github.com/hypermodeinc/ristretto) – High performance memory-bound Go cache.
- [NATS.go 1.45](https://github.com/nats-io/nats.go/releases/tag/v1.45.0) – Go client for the NATS messaging system.
- [go-zero 1.9](https://github.com/zeromicro/go-zero) – Cloud-native Go microservices framework.
- [golangci-lint 2.4](https://github.com/golangci/golangci-lint) – A faster way to run Go linters.
- [Dynamo 2.4](https://github.com/guregu/dynamo) – Expressive DynamoDB library.      

📰 Classifieds   

🏁 Scale sub-ms speed. Redis 8.2 pushes 1M+ ops/sec. [Deploy for free](https://redis.io/lp/get-started2/?utm_source=cooper-press&utm_medium=cpa&utm_campaign=2025-08-app_performance-go-newsletter-1&utm_content=cloud_-_redis_cloud_users) and stress-test it in your own stack. 

--- 

🐘 Postgres user? Be sure to check out our sister newsletter, [Postgres Weekly.](https://postgresweekly.com/)     

📢 Elsewhere  

A roundup of other interesting stories from the broader developer landscape: 

- [GitHub's CEO, Thomas Dohmke, has stood down](https://github.blog/news-insights/company-news/goodbye-github/) and with it, GitHub has been rolled into Microsoft's 'CoreAI' organization more completely.
- If you've never quite got your head around SVGs (Scalable Vector Graphics) and how paths are defined in them, [Josh W Comeau has a new, fantastic guide to SVG paths.](https://www.joshwcomeau.com/svg/interactive-guide-to-paths/)
- [Redis 8.2,](https://redis.io/blog/redis-82-ga/) the latest version of the popular data structure store/database, has been released. Over 70 commands now run faster than in Redis 8.0 and I/O threads now enable significant concurrent performance gains. Some neat memory usage reductions feature too.]
- GitHub's Taylor Blau shares [some highlights from this week's Git 2.51 release.](https://github.blog/open-source/git/highlights-from-git-2-51/)         

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
