Using Renovate to manage updates to golangci-lint
versions (1 mins read).

How to run Renovate to manage your golangci-lint
dependency versions, using the official installation script.
Using Renovate to manage updates to golangci-lint
versions (1 mins read).
How to run Renovate to manage your golangci-lint
dependency versions, using the official installation script.
There are numerous blog posts about table-driven tests in Go. In this blog post, I want to show a technique we have recently started using in our unit tests. I saw it the first time when my friend Matt Layher introduced it to me at work, and since then, I
vacuum is the worlds fastest OpenAPI 3, OpenAPI 2 / Swagger linter and quality analysis tool. Built in go, it tears through API specs faster than you can think. vacuum is compatible with Spectral r...
How to statically link Go, updated for 2022
Constructs and snippets to build your job queue in Golang.
This paper First appeared in My blog , if you think it's useful, please like the collection and let more friends see it. Recently, I developed a very simple tool, the total code is less than 200 lines. Today, briefly introduce it. What tool is this? It is a tool for visualizing Go Module depenUTF-8...
Golang online books, articles, tools, etc.
libopenapi is a fully featured, high performance, enterprise grade OpenAPI 3.1, 3.0 and Swagger 2.0 parser, library and toolkit for golang applications. - GitHub - pb33f/libopenapi: libopenapi is a...
Generate interfaces from structure methods. Contribute to vburenin/ifacemaker development by creating an account on GitHub.
How we host our own internal Proxy and internal pkg.go.dev at Xendit
lambda-go-api-proxy makes it easy to port APIs written with Go frameworks such as Gin (https://gin-gonic.github.io/gin/ ) to AWS Lambda and Amazon API Gateway. - GitHub - awslabs/aws-lambda-go-api-...
Go version 1.13 includes new functions to work with errors. These functions are expired by popular github.com/pkg/errors package. Let’s see if new wrapper can replace existing library.
Practice your Go movements 🥋. Contribute to jreisinger/gokatas development by creating an account on GitHub.
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.