---
title: "Let's get patching"
publication: "Go Weekly"
issue: 514
published_at: "2024-07-09"
canonical_url: "https://golangweekly.com/issues/514"
---

Plus Google promotes PGO, Go 1.22.5 lands, and the latest library releases. |        

#​514 — July 9, 2024 

[Unsub](https://golangweekly.com/leave/*|UID|*)|[Web Version](https://golangweekly.com/issues/514)  

Together with [![Frontend Masters logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_300,h_70/e_make_transparent/co_white,e_outline:5/nk0tfdvalivacz8rw7rt.png)](https://frontendmasters.com/courses/go-aws/?utm_source=email&utm_medium=golangweekly&utm_content=goaws)  

Go Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/j7tdxrv6bet15kctpuu5.jpg)](https://eli.thegreenplace.net/2024/locally-patching-dependencies-in-go/)  

[Locally Patching Dependencies in Go](https://eli.thegreenplace.net/2024/locally-patching-dependencies-in-go/) — When you want to temporarily modify the code of a dependency (say, with a log statement or small change), `go mod` makes it super simple. There are also some tools and other approaches to consider. 

Eli Bendersky   

[Using Go to Send 500 Million HTTP Requests to 2.5 Million Hosts](https://www.moczadlo.com/2024/how-i-sent-500-million-http-requests-in-under-24h) — Dawid leant on Go’s powerful concurrency features to speed up the mammoth task of sending 500 million HTTP requests quickly, but had to poke around a little to do it. _As ever, use this knowledge for good, not evil :-)_ 

Dawid Moczadło   [![\](https://copm.s3.amazonaws.com/e464ff56.png)](https://frontendmasters.com/courses/go-aws/?utm_source=email&utm_medium=golangweekly&utm_content=goaws) 

[Build Go Apps That Scale on AWS](https://frontendmasters.com/courses/go-aws/?utm_source=email&utm_medium=golangweekly&utm_content=goaws) — Learn how to build and deploy scalable applications to AWS using Go. This detailed video course will cover AWS Lambda, DynamoDB, API Gateway, JSON Web Tokens, and more. 

Frontend Masters sponsor   

[Using Profile-Guided Optimization (PGO) for Go Apps](https://cloud.google.com/blog/products/application-development/using-profile-guided-optimization-for-your-go-apps) — We’ve featured many case studies of the improvements teams have seen when using PGO recently – here’s Google’s high level take on getting started yourself before you dig [into the docs.](https://go.dev/doc/pgo) 

Cameron Balahan and James Ma   

**IN BRIEF:** 

- [Go 1.22.5 and Go 1.21.12](https://groups.google.com/g/golang-announce/c/gyb7aM1C9H4) were released, including a security fix.
- A couple of months ago we featured the Go-powered [Logdy log viewing tool](https://logdy.dev/) – it's just been updated to [support being embedded directly into Go apps](https://logdy.dev/blog/post/logs-browser-for-golang-apps) to make your app observability even better.
- [Some tips for moving between Go and C#.](https://clipperhouse.com/go-csharp/)   

📄 [Resetting Timers in Go](https://antonz.org/timer-reset/) – _“If you use `Timer.Reset()` in Go 1.22 or earlier, you may be doing it wrong.”_ Anton Zhiyanov 

📄 [Compile Go Directly to WebAssembly Components with TinyGo and WASI P2](https://wasmcloud.com/blog/compile-go-directly-to-webassembly-components-with-tinygo-and-wasi-p2) Eric Gregory (wasmCloud) 

📄 [Error Handling in Go Web Apps Shouldn't Be So Awkward](https://boldlygo.tech/posts/2024-01-08-error-handling/) – A useful error handling pattern for REST, gRPC, and other services. Jonathan Hall 

📄 [Know When to Break Up with Go's `http.DefaultClient`](https://vishnubharathi.codes/blog/know-when-to-break-up-with-go-http-defaultclient/) Vishnu Bharathi 

📄 [Automating Image Metadata Extraction with AWS Lambda, Go, and Postgres](https://docs.rapidapp.io/blog/automating-image-metadata-extraction-with-aws-lambda-go-and-postgresql) Hüseyin BABAL 

📄 [Contextualizing the Go Context API: Program Scopes](https://matttproud.com/blog/posts/contextualizing-context-scopes.html) Matt T. Proud 

📄 [How to Implement OAuth 2.0 into a Go App](https://permify.co/post/implement-oauth-2-golang-app/) Permify      

📰 Classifieds   

Want to kill meetings? We’re looking for software engineering leaders to join the beta for a product aiming to do just that. [Apply here](https://docs.google.com/forms/d/e/1FAIpQLSdBPMJathunNduH8LKM5EPcUSIyFGzL3K3zPq_dpOZJ1ImIuQ/viewform).     

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/ivkdvgc10mtyvype83su.jpg)](https://github.com/AllenDang/giu)  

[Giu 0.8: A Dear ImGui-Based Cross Platform GUI Framework](https://github.com/AllenDang/giu) — Another way to create GUI apps in Go. [Dear ImGui](https://github.com/ocornut/imgui) is an interesting GUI library (for C++) that generates UIs aimed at power users in particular. 

Allen Dang   

[CxGo: A Tool for Transpiling C to Go](https://github.com/gotranspile/cxgo) — There’s [an online demo](https://gotranspile.dev/) if you want to see a basic example of what goes in and comes out. 

Go Transpile   

[Stop Worrying About Your Auth. Let FusionAuth Handle It](https://fusionauth.io/docs/sdks/go?utm_medium=newsletter&utm_source=gonewsletter&utm_campaign=july24_newsletter) — Flexible deployment. Advanced features like MFA, SSO, and more. Check out the Go SDK. 

FusionAuth sponsor   

💡 [OpenHue Go: Interact with Philips Hue Smart Lighting](https://github.com/openhue/openhue-go) — Philips’ range of _Hue_ smart lights are pretty neat (I’ve had a few!) and if, for some reason, you’d like to fiddle with your lights from Go code, now there’s a way. 

OpenHue Project   

[Joker 1.4: A Small Interpreted Dialect of Clojure Written in Go](https://joker-lang.org/) — A small interpreter, linter and formatter for the popular Lisp dialect. [GitHub repo.](https://github.com/candid82/joker) 

Roman Bataev   

[Ergo 2.14: A Modern IRC Server/`ircd`](https://github.com/ergochat/ergo/releases/tag/v2.14.0) — Formerly known as Oragono, this is a Go-powered IRCv3-compatible chat server that continues to get frequent upgrades as a very mature project. 

Lingamneni, Oaks, Huber, Latt, et al.   

[CoreDNS: A DNS and Service Discovery Server](https://coredns.io/) — A DNS server built in Go that supports a variety of plugins, is a CNCF graduated project, and can integrate with Kubernetes and numerous cloud providers, should you need it. 

CoreDNS Authors   

[OmniParser: A Go-Powered ETL System](https://github.com/jf-tech/omniparser) — Ingest CSV, XML, JSON, EDIFACT, X12, and more, in a streaming fashion, and transform it into JSON based upon a schema itself written in JSON. 

JF Technology   

- [gocron 2.8](https://github.com/go-co-op/gocron) – Run Go functions at pre-determined intervals.
- [Go Micro 5.3](https://github.com/micro/go-micro) – Popular Go microservices framework.
- [River 0.9](https://github.com/riverqueue/river/releases/tag/v0.9.0) – Fast and reliable background jobs in Go.
- [go-arg 1.5](https://github.com/alexflint/go-arg) – Struct-based argument parsing.         

Curated by Peter Cooper and [Glenn Goodrich](https://twitter.com/ruprict). 

[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
