Scaling gopls for the growing Go ecosystem
As the Go ecosystem gets bigger, gopls must get smaller
As the Go ecosystem gets bigger, gopls must get smaller
Series Here are all the posts in this series about the slices package. Binary Search Clip, Clone, and Compact Compare Contains, Delete, and Equal Introduction In the last post of this series, I discussed the Compare API from the slices package. In this post, I will share how th...
Introduction to profile-guided optimization, generally available in Go 1.21.
#474 — September 5, 2023 Unsub | Web Version Go Weekly Perfectly Reproducible, Verified Go Toolchains — Go 1.21 contains some significant features, but truly reproducible builds is a big deal and Russ goes (deep) into how it wor...
Suppose, you have a function that takes an option struct and a message as input. Then it stylizes the message according to the option fields and prints it. What’s the most sensible API you can offer for users to configure your function? Observe: // app/src package src // O...
Suppose, you have a function that takes an option struct and a message as input. Then it stylizes the message according to the option fields and prints it. What’s the most sensible API you can offer for users to configure your function? Observe: // app/src package src // O...
Suppose, you have a function that takes an option struct and a message as input. Then it stylizes the message according to the option fields and prints it. What’s the most sensible API you can offer for users to configure your function? Observe: // app/src package src // O...
Compare three Go option patterns: exposed structs, option constructors, and functional options. Learn when to use each for clean APIs.
When you're writing pure net/http HTTP services with Go, you may want to wrap them in a middleware, for instance to ensure that authentication is provided, or to provide logging. Having largely just used gorilla/mux, I found it was a little bit awkward to do so, but with thanks t...
As noted in Why is Go trying to upgrade my go.mod to Go 1.21?, we've had a report on oapi-codegen that Go is trying to upgrade our go.mod to a newer Go version. Through discussion in the Go community (Gopher) Slack, it appears that this is due to one of the modules in my dependen...