v0.17.0

charmbracelet/gumv0.17.0Sep 5, 2025by github-actions[bot]

AI Summary

This feature release adds `--padding` support to most gum commands, allowing users to add padding around content similar to CSS behavior. Padding can be specified with one, two, or four values to control padding on different sides.

Key Highlights

  • Added `--padding` option to choose, confirm, file, filter, input, pager, spin, style, table, and write commands
  • Padding supports CSS-style values: single value for all sides, two values for vertical/horizontal, four values for top/right/bottom/left
  • Special thanks to @caarlos0 for implementing this feature

New Features

  • --padding flag added to multiple commands (choose, confirm, file, filter, input, pager, spin, style, table, write)

Full Release Notes

# Pad Everything

This is a small feature release that adds `--padding` to as many commands as possible. For example:

<p><img width="875" height="376" alt="image" src="https://github.com/user-attachments/assets/88d7ec90-296c-478a-ac31-f652184798f7" /></p>

Padding arguments work similarly to CSS values:

* With one value, padding applies to all sides (`--padding="4"`)
* With two values, padding applies vertically and horizontally, respectively (`--padding="4 10"`)
* With four values, padding applies top, right, bottom, and left, respectively (`--padding="4 10"`)

Which commands can be padded? These:

* `choose`
* `confirm`
* `file`
* `filter`
* `input`
* `pager`
* `spin`
* `style`
* `table`
* `write`

Special thanks to @caarlos0 for banging this one out in record time, for none other than @dhh. 💎

## Changelog

### New Features
* 6045525ab92f75c169d3c69596844d8748437e37: feat: adding `--padding` to most commands (#960) (@caarlos0)

### Other work
* 09940da8c024f518d5820239e38e2edc20e2b431: ci: sync dependabot config (#956) (@charmcli)
* 8c12c2a6a2025b349fce7ad045dbe68a76d23583: ci: sync golangci-lint config (#946) (@github-actions[bot])

---

<details>
<summary>Verifying the artifacts</summary>

First, download the [`checksums.txt` file](https://github.com/charmbracelet/gum/releases/download/v0.17.0/checksums.txt), for example, with `wget`:

```bash
wget 'https://github.com/charmbracelet/gum/releases/download/v0.17.0/checksums.txt'
```

Then, verify it using [`cosign`](https://github.com/sigstore/cosign):

```bash
cosign verify-blob \
  --certificate-identity 'https://github.com/charmbracelet/meta/.github/workflows/goreleaser.yml@refs/heads/main' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  --cert 'https://github.com/charmbracelet/gum/releases/download/v0.17.0/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/gum/releases/download/v0.17.0/checksums.txt.sig' \
  ./checksums.txt
```

If the output is `Verified OK`, you can safely use it to verify the checksums of other artifacts you downloaded from the release using `sha256sum`:

```bash
sha256sum --ignore-missing -c checksums.txt
```

Done! You artifacts are now verified!

</details>

<a href="https://charm.land/"><img alt="The Charm logo" src="https://stuff.charm.sh/charm-banner-next.jpg" width="400"></a>

Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli), [Discord](https://charm.land/discord), [Slack](https://charm.land/slack), [The Fediverse](https://mastodon.technology/@charm).