Skip to content

fix(release): use positional shell arg for cask completions#97

Merged
ryanlewis merged 1 commit into
mainfrom
fix/completions-shell-arg
May 30, 2026
Merged

fix(release): use positional shell arg for cask completions#97
ryanlewis merged 1 commit into
mainfrom
fix/completions-shell-arg

Conversation

@ryanlewis
Copy link
Copy Markdown
Owner

Fixes the completion install broken in v0.4.0. Cuts v0.4.1.

Bug

v0.4.0's cask used shell_parameter_format: arg, so Homebrew invoked things completions --shell=bash. But things completions takes the shell as a positional arg, so Kong rejected the unknown --shell flag (exit 80) and brew install wrote no completion files — with three "Failed to generate … completions" warnings.

(The preflight quarantine fix from #95 worked — the binary executed; exit 80 is our own arg-parse error, not a Gatekeeper block.)

Fix

Drop shell_parameter_format so Homebrew uses its default: a bare positional arg, things completions bash. The GoReleaser docs claim arg means positional, but Homebrew's :arg actually emits --shell=<name>; bare positional is the no-format default.

Generated cask now reads:

generate_completions_from_executable "things", "completions",
  base_name: "things",
  shells: [:bash, :zsh, :fish]

Verification

  • goreleaser check ✅; snapshot cask omits shell_parameter_format
  • Against the installed v0.4.0 binary: things completions --shell=bash → exit 80 (reproduces the failure); things completions bash → exit 0 emitting complete -C things things; all of bash/zsh/fish exit 0 positionally ✅

After v0.4.1 releases: brew update && brew reinstall ryanlewis/tap/things should write the completion files with no warnings.

v0.4.0's cask set shell_parameter_format: arg, which makes Homebrew invoke
`things completions --shell=bash`. `things completions` takes the shell as a
positional argument, so it rejected the unknown --shell flag (exit 80) and
`brew install` wrote no completion files.

Drop shell_parameter_format so Homebrew uses its default — a bare positional
arg, `things completions bash` — which matches the CLI. Verified against the
installed v0.4.0 binary: `completions --shell=bash` exits 80, `completions bash`
exits 0.

Includes the v0.4.1 release notes header.

Part of #88
@ryanlewis ryanlewis merged commit 24c4fd1 into main May 30, 2026
1 check passed
@ryanlewis ryanlewis deleted the fix/completions-shell-arg branch May 30, 2026 15:56
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