<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Release Tooling on Omar Crosby</title>
    <link>https://omarcrosby.com/categories/release-tooling/</link>
    <description>Recent content in Release Tooling on Omar Crosby</description>
    <image>
      <title>Omar Crosby</title>
      <url>https://omarcrosby.com/images/og.jpg</url>
      <link>https://omarcrosby.com/images/og.jpg</link>
    </image>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Mon, 20 Jul 2026 09:40:46 -0400</lastBuildDate>
    <atom:link href="https://omarcrosby.com/categories/release-tooling/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Semantic Versioning, Semantic Release, and a Go-native implementation</title>
      <link>https://omarcrosby.com/posts/semantic-versioning-semantic-release-and-a-go-native-implementation/</link>
      <pubDate>Mon, 20 Jul 2026 09:40:46 -0400</pubDate>
      <guid>https://omarcrosby.com/posts/semantic-versioning-semantic-release-and-a-go-native-implementation/</guid>
      <description>How Semantic Versioning and Semantic Release fit together — the standard, the automation contract that turns commit history into version tags, and why I re-implemented the Node.js tool in Go to remove the JavaScript toolchain from CI pipelines that don&amp;#39;t otherwise need one.</description>
    </item>
    <item>
      <title>Conventional Commits, and the thinking they encourage</title>
      <link>https://omarcrosby.com/posts/conventional-commits-and-the-thinking-they-encourage/</link>
      <pubDate>Mon, 20 Jul 2026 09:12:12 -0400</pubDate>
      <guid>https://omarcrosby.com/posts/conventional-commits-and-the-thinking-they-encourage/</guid>
      <description>A working tour of Conventional Commits — the format, the reason it makes each changeset better before any tool touches it, how to identify good scopes, what the Angular convention adds on top, and where the whole thing fits into the release-automation ecosystem (semantic-release, release-please, cocogitto, git-cliff, commitlint).</description>
    </item>
    <item>
      <title>Distributing CLI tools with a personal Homebrew tap</title>
      <link>https://omarcrosby.com/posts/distributing-cli-tools-with-a-personal-homebrew-tap/</link>
      <pubDate>Mon, 20 Jul 2026 08:16:45 -0400</pubDate>
      <guid>https://omarcrosby.com/posts/distributing-cli-tools-with-a-personal-homebrew-tap/</guid>
      <description>How to publish Python, Go, and Rust command-line tools through your own Homebrew tap — including a personal GitHub account, GoReleaser and cargo-dist for platform builds, and go-semantic-release for automatic version bumps that flow all the way through to `brew upgrade`.</description>
    </item>
  </channel>
</rss>
