Repost

Reposted a post on Twitter
Post details

 Note

Fun JS bug of the day introduced by a linting change, that lost me a good amount of time trying to work out what was going wrong:

-  const tokenSet = await client.oauthCallback(redirect, params, { code_verifier });
+  const tokenSet = await client.oauthCallback(redirect, params, { codeVerifier })

Silently changed the meaning of the code here, and needed to be fixed with:

-  const tokenSet = await client.oauthCallback(redirect, params, { codeVerifier }).catch((err) => {
+  const tokenSet = await client.oauthCallback(redirect, params, { code_verifier: codeVerifier }).catch((err) => {

Funnily enough, I've had this lead to dangerous logging in the past, but didn't spot this at first. That'll teach me!

 Note

Love to be told "we tried to deliver your package but no one was in" without any of the security cameras or our very sensitive guard dog triggering, while both me and Anna Dodson are working from home 🙃

 Repost

Reposted a post on Twitter
Post details

 Listen

Listened to Container base images with glibc & musl featuring Ariadne Conill, Alpine Linux TSC member & Chainguard SWE (Ship It! #76)
Post details
In today’s episode, we talk about distroless, ko, apko, melange, musl and glibc. The context is Wolfi OS, a community Linux OS designed for the container and cloud-native era. If you are looking for the lightest possible container base image with 0 CVEs and both glibc and musl support, Wolfi OS & the related chaing...

 Note

Folks who've printed stickers in the UK in the last couple of years - who'd you recommend? Happy to pay a little more for quality, but only looking at getting a small batch of stickers 👀

 Bookmark

Bookmarked How to Build Software like an SRE
Post details
I’ve been doing this “reliability” stuff for a little while now (~5 years), at companies ranging from about 20 developers to over 2,000. I’ve always cared primarily about the software elements I describe as living “outside” the application – like, how does it get its configuration? What kinds of instances does it run on, and are those the best kinds to use? What steps does it take on its path from “code in a repository” to “running in production”? And I’ve always kept track of what I liked – which mechanisms allowed fast iteration and which caused frustration, which led to outages and which prevented them.