Skip to content

Shell completions do not look for the new launchd plist names #24006

Description

@tombell

brew doctor output

Your system is ready to brew.

Verification

  • I ran brew update twice and am still able to reproduce my issue.
  • I have supplied my brew doctor output above and it seems unrelated to my issue.
  • This issue's title and/or description do not reference a single formula e.g. brew install wget. If they do, open an issue at https://github.com/Homebrew/homebrew-core/issues/new/choose instead.
  • I did not use AI/LLM to create this issue, or I disclosed the tool and model used; I will answer maintainer questions myself without AI/LLM.

brew config output

HOMEBREW_VERSION: 7.0.3
ORIGIN: https://github.com/Homebrew/brew
HEAD: 99fd9a8eed4ff942c448da0c1f11156302441e4a
Last commit: 3 hours ago
Branch: main
Core tap: N/A
Core cask tap: N/A
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_NO_ASK: set
HOMEBREW_NO_ENV_HINTS: set
HOMEBREW_NO_UPGRADE_AUTO_UPDATES_CASKS: set
Homebrew Ruby: 4.0.7 => /opt/homebrew/Library/Homebrew/vendor/portable-ruby/4.0.7/bin/ruby
CPU: deca-core 64-bit arm_donan
Clang: 21.0.0 build 2100
Git: 2.55.0 => /opt/homebrew/bin/git
Curl: 8.7.1 => /usr/bin/curl
macOS: 27.0-arm64
CLT: 27.0.0.0.1788430756
Xcode: 27.0
Metal Toolchain: N/A
Rosetta 2: false

What were you trying to do (and why)?

I was trying to tab complete services when doing brew services <start/stop/restart>, which worked previously when the launchd plist files were using the old name.

Now they're using the new sh.brew.<name>.plist, the completion scripts don't find them.

Bash: https://github.com/Homebrew/brew/blob/main/completions/bash/brew#L120
Fish: https://github.com/Homebrew/brew/blob/main/completions/fish/brew.fish#L220
ZSH: https://github.com/Homebrew/brew/blob/main/completions/zsh/_brew#L340

I assume it's just a case of having to add the sh.brew. case.

What happened (include all command output)?

When tab completing the service, it only completed services with the old plist file names.

What did you expect to happen?

Should complete any service for any Homebrew service plist.

Step-by-step reproduction instructions (running brew commands)

Install any formula that has a service, then attempt to tab complete it.

brew install postgresql@18
brew services start <press tab>

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions