changelog

rss feed

Define the database view once, in Go

go / declarative views moves the SQL of a database view into Go. A list of field definitions generates the view, and the same list drives the filter UI, so only one copy of the SQL exists. web / css describes a stylesheet in five layers with a lint for class names. Before, a style change on one page sometimes broke another page.

The job queue, pool, and test articles now say how a pool recovers after it loses a database connection, and what to do after editing a migration that already ran.

cmd / sockeye changed the most. It is my own git forge, so when a 277 KB diff didn't display, I raised its patch limit to 2 MiB.

A health check must fail when the service is broken

In web / health checks, the health endpoint now reads data that the service uses. That endpoint blocks traffic to a new version until it passes, and it runs every minute after that.

One rule changed in unix / systemd. Each service runs as its own system user, so app state and credentials stay out of my home directory. A missing useradd step doesn't matter anymore, because StateDirectory= makes systemd create the directory.

apps / sports also has a description of the sports content agent.

← All articles