66 Posts

golang

GoTime #311 - Ship software, not code

I was live with Natalie to discuss how GOOS and GOARCH spark joy. Go Time 311: Ship software, …

Announcing GoReleaser v1.25 - Easter Edition

Happy Easter! The second release of 2024 is here! It’s the result of 2 months of work by …

Announcing GoReleaser v1.24 - the first of 2024

Happy new year! The first release of 2024 is here! Highlights security: goreleaser would log …

Announcing GoReleaser v1.23 — the last of 2023

The yearly Christmas edition, and the last release of 2023. This release contains mostly small …

Announcing GoReleaser v1.22 — steady improvement

Another boring release, with mostly bug fixes and quality-of-life improvements. Highlights …

Integrating Alarm Systems with Homekit

This post documents my journey implementing a Homekit integration for my Intelbras AMT8000 …

Announcing GoReleaser v1.21 — mostly bug fixes

A boring release, mostly bug fixes. Boring is good. Highlights You can now sort tags by semver …

Announcing GoReleaser v1.20 — a quality-of-life release

A little over 100 commits in small-ish quality-of-life improvements.

Wishlist Endpoint Discovery

Learn how to use the recently-added Tailscale, DNS, and Zeroconf endpoint discovery in …

Announcing GoReleaser v1.19 — the big release

Almost 200 commits adding Nix, Winget, and much more…

Writing Bubble Tea Tests

Learn how to use x/exp/teatest to write tests for your Bubble Tea apps.

Announcing GoReleaser v1.18 — the maintainers month release

May is the maintainers month, so I would first like to thank all the maintainers out there for …

Announcing GoReleaser v1.17 — the late Easter release

The Easter release is here!

Announcing GoReleaser v1.16 — the late February release

The February release got a little late… better later than even later, I guess! 😄 …

Announcing GoReleaser v1.15 — the first of 2023

Keeping our pace of 1 minor a month, this is the January 2023 release. GoReleaser’s Ko …

Announcing GoReleaser v1.14 — the Christmas release

Another month, another release! In fact, the last release of the year. This one in particular …

Announcing GoReleaser v1.13 — the November release

Another month, another release! Like the previous 2 releases, this is a beefy one: over 100 …

GoReleaser v1 — one year later

We launched GoReleaser v1 exactly 1 year ago today! onefetch First, I wanted to wholeheartedly …

GoReleaser Split and Merge

Since v1.12.0-pro, GoReleaser can split and merge its release process. This means that you can …

Announcing GoReleaser v1.12 — the more-than-a-hundred commits release

The previous release had ~100 commits, and this one has 149 since previous feature release! …

Creating a tag and releasing from a GitHub Action, with GoReleaser

Most people run GoReleaser by creating a tag locally, pushing it, and letting their CI takes …

Announcing GoReleaser v1.11 — the hundred commits release

This release took a while, for all the good reasons: a ton of new features and bug fixes for …

Enabling Nightly releases using GoReleaser Pro

GoReleaser Pro v1.11+ added support to keeping a nightly release. That means that, whenever you …

Shipping completions for Go CLIs using GoReleaser and Cobra

Everyone likes command line completions, so much that some even install extra tools just to …

Announcing GoReleaser v1.10 — the summer release

Fun fact: it is actually winter now here in Brazil. Regardless, this release is packed with new …

Announcing GoReleaser v1.9 — the 10k stars release

This release contains several minor improvements and a couple of new features! Let’s have …

Using SSH Certificates with Go’s SSH Client

A couple of weeks ago I was working on adding SSH Certificate Authentication support to Wish, …

Announcing GoReleaser v1.8 — the GOAMD64 release

This release’s biggest feature is the GOAMD64 support. Highlights support GOAMD64(#3016) …

Announcing GoReleaser v1.7 — The Go 1.18 release

The title would have been more creative if it was GoReleaser 1.18 as well… maybe… …

Announcing GoReleaser v1.6 — the boring release

GoReleaser 1.6 is out! Another “boring” release with some miscellaneous …

Announcing GoReleaser v1.5 — the misc improvements release

GoReleaser 1.5 is out, with a handful of miscellaneous improvements. Highlights Better manpages …

Announcing GoReleaser v1.4 — the AUR release

GoReleaser can now create and publish Arch Linux PKGBUILD files to Arch User Repositories! …

Announcing GoReleaser 1.3 — the first of 2022

We just launched GoReleaser v1.3, the first release of 2022! Highlights Announce to any HTTP …

Announcing GoReleaser v1.2 — Santa/5 year anniversary edition

GoReleaser v1.2 is out — likely be the last feature release of 2021. It also marks the first 5 …

Changelog grouping with GoReleaser v1.1

In the v1.1 release, GoReleaser introduced a new feature called “changelog groups”. …

Announcing GoReleaser v1 — the first v1 release

Hello everyone! I’ve been holding on the “v1” release for, checks notes, …

Using the new prebuilt builder on GoReleaser

You can now import pre-built binaries into GoReleaser! This feature was made with mainly two …

Signing releases with cosign and GoReleaser

In GoReleaser v0.176.0 (both OSS and Pro), we released the ability to sign Docker images - with …

Supply chain integrity with GoReleaser using Go mod proxy

Since the infamous SolarWinds attack, supply chain integrity is something a lot of people are …

Sri Lanka Golang meetup

A hands on talk on how to create and setup a project with GoReleaser.

Using GoReleaser includes feature

GoReleaser Pro was released about a month ago, and with it, the ability to include GoReleaser …

Announcing GoReleaser Pro

After more than 4 years working on GoReleaser, I’m launching a Pro version! Why? I think …

GoTime #173 - Releasing with (and without) GoReleaser

I was live with Mat, Natalie & Johnny and we talked a bit about releases, with and without …

GoReleaser: 4 years releasing software

Last year, I made a blog post about GoReleaser turning 3 years old. I kind of like it, so this …

Multi-platform Docker images with GoReleaser and GitHub Actions

GoReleaser v0.148.0 is out, and with it, the ability to release multi-platform Docker images, …

Publishing libraries with GoReleaser

What if I told you you can now automate the release of your libraries as well? I think some of …

GoReleaser: 3 years later

GoReleaser’s journey begins in December 21, 2016: the day I made its very first commit. …

Faster Docker builds using go modules

Quick tip to improve the docker build speed using go modules. Normally, I would do something …

GoReleaser Docker support

The next GoReleaser version will have a more flexible Docker configuration format. In this post …

Golang: cache things using interfaces

Caching things can be hard to do and hard to test. In this post I’ll demonstrate a …

Keeping json files formatted

I’m working in a project that uses Chef, so it has a lot of JSON files. I like everything …

GoReleaser: build and push Snapcraft packages from TravisCI

GoReleaser was able to build Snapcraft packages for a long time, but it wasn’t able to …

GopherCon Brasil 2018

A quick review of my second ever GopherCon - the first one as a speaker, and my experience …

GopherCon Brasil

My first ever talk at a GopherCon. I shared my experiences coding GoReleaser, more or less …

GoReleaser: lessons learned so far

I’ve started GoReleaser almost 2 years ago. This is a summary of (some) things I’ve …

GoReleaser: 1k repositories and beyond

When first announced GoReleaser roughly 1 year ago, on January 2017, I never thought it would …

2º Joinville Go Meetup

It was the Go 1.10 Release party - my talk was about what changed in Go 1.10.

Creating debs and rpms with Go

I’ve been working on GoReleaser for more than a year now, and one of the things that was …

1º Changelog Meetup

I showed how to build and release binaries in Go, including cross-compiling, Docker images, …

Writing CLI applications with Golang

Last few months I’ve been using Go to write quite a lot of tools. In this post I intent …

Fast and easy Go binaries delivery

I have some apps written in Go, which I deliver as binaries for each platform using GitHub …

Setting up a Go build with Glide on CircleCI

I’ve lost a considerable amount of time trying to bind those things together, so I …

Parse environment variables to structs in Go

In Go, it’s dead simple to get the value from an environment variable: …

Small Go Apps Containers

Or: how to ship your app in a <20Mb container. Well, as you may know, there is a good amount …

Cross-compiling Go

go build generates a binary for the platform you run it in. So, if I build antibody in a Linux …

I wrote Antigen in Go: Antibody

Learning Go was in my TODO list for a while, and finally I did something about it. This post …