Skip to content

feat(release): zap things-cli cache on cask uninstall#86

Merged
ryanlewis merged 1 commit into
mainfrom
cask-zap
May 10, 2026
Merged

feat(release): zap things-cli cache on cask uninstall#86
ryanlewis merged 1 commit into
mainfrom
cask-zap

Conversation

@ryanlewis
Copy link
Copy Markdown
Owner

Summary

Adds a zap: stanza to the Homebrew cask so a full uninstall (brew uninstall --zap things) cleans up ~/Library/Caches/things-cli — the last-list cache that backs things complete 1-style indices.

Standard Homebrew behaviour: zap is opt-in via --zap (or brew zap things separately), so plain brew uninstall things still leaves the cache alone. That's deliberate — uninstall + reinstall (or switching between brew and a local dev build that reads the same cache path) shouldn't blow away state.

Generated cask diff

   binary "things"

   postflight do
     # ...quarantine xattr removal...
   end

+  zap trash: [
+      "~/Library/Caches/things-cli",
+    ]

Test plan

  • goreleaser check passes
  • goreleaser release --snapshot --clean --skip=publish generates a cask with the zap trash: [...] block
  • After merge + the next release tag: brew install ryanlewis/tap/things, then brew uninstall --zap things, confirm ~/Library/Caches/things-cli is moved to Trash

Add a zap stanza to the homebrew_cask so `brew uninstall --zap things`
moves ~/Library/Caches/things-cli to Trash, leaving no orphan state.

Plain `brew uninstall things` still leaves the cache alone — zap only
fires with --zap or `brew zap things`, so users who reinstall don't
unexpectedly lose their last-list indices.
@ryanlewis ryanlewis merged commit 43670de into main May 10, 2026
1 check passed
@ryanlewis ryanlewis deleted the cask-zap branch May 10, 2026 00:06
ryanlewis added a commit that referenced this pull request May 10, 2026
## Summary

Release-notes header for the v0.3.1 patch release. GoReleaser reads this
file at tag time via `readFile ".github/releases/<tag>.md"`, so it must
exist at the tagged commit.

Patch release covers a single change: cask `zap` stanza added in #86 so
`brew uninstall --zap things` cleans up `~/Library/Caches/things-cli`.

## Test plan

- [ ] Merge this PR
- [ ] Tag `v0.3.1` and push, triggering the Release workflow
- [ ] Confirm cask republishes to `ryanlewis/homebrew-tap` with the new
version
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant