Post details
Announcing vulnerability management for Go, to help developers learn about known vulnerabilities in their dependencies.

Announcing vulnerability management for Go, to help developers learn about known vulnerabilities in their dependencies.
If have a general #golang rule for the following code snippet. I like the first call to Claim over the second. General Rule: When the API is only returning an error value and you are not using the short variable declaration operator ( := ), question the choice.William (Bill) Kennedy (@goinggodotnet)Mon, 29 Aug 2022 14:06 +0000
Linter checks if examples are testable (have an expected output) - GitHub - maratori/testableexamples: Linter checks if examples are testable (have an expected output)
Gotcha: testable examples in Go need an output
comment (2 mins read).
Beware that your Go Example
tests may not actually be running.
Introducing the tidied
tool, to more easily check whether go mod tidy
has been run (2 mins read).
Why I've created a command-line application called tidied
to check go mod tidy
has been run.
Learn how to perform some operations before a request is processed in Go
Go 1.19 has shipped. A few things I’d love to see next.
Converting HTTP requests to Wiremock stubs, with Go (2 mins read).
How to take an HTTP request and convert it into a Wiremock JSON mapping, on the command-line, in Go.
Learning a new language, or how I gained familiarity with Go (10 mins read).
How I've eased into a new language, Go, as a Senior Software Engineer, and some initial thoughts on the language.
Releasing a Go library for content-type negotiation (2 mins read).
Introducing a new Go library for performing server-driven content negotiation.
Using generics to get a pointer to any type, in Go (1 mins read).
How to use Go generics to create a helper method for getting a pointer to any type.
A tool for glamorous shell scripts 🎀. Contribute to charmbracelet/gum development by creating an account on GitHub.
Life without a REPL, and how to still be able to manipulate production which even has quite a few benefits over more one-off REPL-driven operations..
Something I've been thinking about for an alternative to rails console
for Go, and of course Brandur Leach has excellent thoughts about it
How to stop your Magefile execution on the first error that occurs
Optional configuration for configuring Go code (2 mins read).
How to use optional types to allow configuring your library's Go code.
I’m leaving my role as the Product Lead for the Go Language at Google. I’m super proud of everything the Go team has accomplished in the last six years, and I’ve never been more excited for Go’s future. Read on if you’re interested in what led me to my decision, what I’ll be doing next, and what I’ll miss about my time at Google. Go has been my passion for the past 10 years Ten years ago, I used Go for the first time.
Go OAuth 2.0 Introspection Client Middleware. Contribute to srikrsna/oauth-introspection development by creating an account on GitHub.
Building a Go RESTful API with design-first OpenAPI contracts (6 mins read).
How to use oapi-codegen
to generate an RESTful API using design-first OpenAPI and code generation.
Merge JSON objects to one (replaces only existent values) - GitHub - apapsch/go-jsonmerge: Merge JSON objects to one (replaces only existent values)
When programming, we often need to write ‘generic’ functions where the exact data type is not important. For example, you might want to write a simple function that sums up numbers. Go lacked this notion until recently, but it was recently added (as of version 1.18). So I took it out for a spin. In … Continue reading Go generics are not bad
A minor release of Go with a grab bag of nice improvements
Pointing to a fork of a Go module (1 mins read).
How to pin your Go modules to a given fork of a repository.
Go templates (text/template, html/template) accept a single argument to render. That’s generally enough when you’re executing them from Go code. But when invoking a template from another template, you often want to pass multiple things to it. For example, we might have a template that renders a nav bar item. It requires a title, a url, and an “enabled” bool. We want to invoke it from another template. How do you do that?
Running Go tests in Parallel (2 mins read).
How to get Go tests to run in parallel for speed.
Ignoring slow-running tests in Go (1 mins read).
How to use Go's -short
testing mode to avoid running slower tests.
The HTTP protocol is fast, secure, and reliable. However, it needs other protocols and services to work properly, and when things don’t go well it is necessary to have access to detailed information about the time spent in each step. The steps to make an HTTP call are as follows: DNS Lookup The client sends a DNS query to the DNS server. The DNS server responds with the IP for the name.
Shipping services more quickly with design-first OpenAPI contracts (8 mins read).
How using OpenAPI has led to being able to ship a new service more effectively, by removing the need to write scaffolding, and instead focus on the business logic.
I am working on a go project, which has a dependency on original-project. I now want to change the behavior in this project by modifying original-project. So I cloned github.com/y/original-project to
Automating boilerplate/scaffolding code with custom code generation in Go (4 mins read).
How to use Go's code generation tooling to add custom code generation to your project.
Go modules analysis tool. Contribute to Helcaraxan/gomod development by creating an account on GitHub.
Stubbing out the Go http.Client
to test an HTTP HandlerFunc
(2 mins read).
How to write a unit test to validate your router's HTTP handlers work, by stubbing out the http.Client
implementation.
Automagically determining feeds provided for a given URL on the command-line (1 mins read).
Creating a command-line application to discover feeds for a given URL.
Managing your Go tool versions with go.mod
and a tools.go
(3 mins read).
Better dependency management for your tools and without needing to go install
the tools before executing them.
Mutation testing for Go source code. Fork from https://github.com/zimmski/go-mutesting - GitHub - avito-tech/go-mutesting: Mutation testing for Go source code. Fork from https://github.com/zimmski/...
⚡️ Go 1.19 Beta 1 is released! ⚙️ Try it! File bugs! go.dev/issue/new 📣 Announcement: groups.google.com/g/golang-annou… 🚚 Download: go.dev/dl/#go1.19beta1 #golangGo (@golang)Fri, 10 Jun 2022 17:58 +0000
Writing a GitHub Action to bump Go depenendencies and put the change in a pull request.
Since the day it was open sourced in 2009, the Go programming language has consistently grown in popularity. Now the five Google software engineers behind its original creation are taking a look back at what fueled that growth.
Only testing your public API in a Go package (3 mins read).
How to test only exported parts of a package in Go.
Getting Go errors to work well with Sentry is hard. This post explains how we got them playing nicely by deduping stacktraces.
Golang WireMock admin client . Contribute to walkerus/go-wiremock development by creating an account on GitHub.
Introducing a library for OpenAPI contract testing with Go's net/http
package (2 mins read).
Creating a Go library that can verify net/http
handlers implement an OpenAPI contract, for use with testing.
Testing Go net/http
handlers (1 mins read).
How to write unit tests to validate an HTTP handler.