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...
On oapi-codegen we recently had a report that Go 1.21 results in go test being unable to run without having go mod tidy'd the project.
If you're running Go 1.21:
$ go version
go version go1.21.0 linux/amd64
Then checking out the project (as of the latest commit and running make t...