Skip to content

Shell completions not auto-installed by Homebrew cask #11

Description

@unni-facets

Background

PR #10 migrated .goreleaser.yml from the deprecated brews: key to homebrew_casks:. The old formula ran:

generate_completions_from_executable(bin/"praxis", "completion")

which wired bash/zsh/fish completions automatically on brew install. The cask migration dropped this and PR #10's body described it as a "Known regression" requiring users to run praxis completion <shell> manually.

Update — not actually unavoidable

Anshul flagged in PR #10 review that goreleaser's homebrew_casks does support generate_completions_from_executable (since goreleaser v2.15; we're on v2.16). So the regression is recoverable in .goreleaser.yml with ~4 lines:

homebrew_casks:
  - name: praxis
    # …existing config…
    generate_completions_from_executable:
      executable: praxis
      args: [completion]
      shells: [bash, zsh, fish]

Action

  • Re-add generate_completions_from_executable to .goreleaser.yml under homebrew_casks[0].
  • Validate with goreleaser check + --snapshot; confirm the generated cask emits the equivalent completion stanza.
  • Confirm post-install via brew install --cask Facets-cloud/tap/praxis on a clean Mac that praxis <TAB> works in a fresh zsh/bash session.

Why deferred

PR #10 was scoped tight to unbreaking CI. This is a follow-up that landed in the review discussion but wasn't part of the original migration. Non-blocking — users can still source completions manually via praxis completion <shell> until this lands.

Tracking per Anshul's + Pramodh's review asks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions