Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Consider removing dependency on argcomplete #321

Closed
gnarlyquack opened this issue Nov 19, 2020 · 0 comments · Fixed by #325
Closed

Consider removing dependency on argcomplete #321

gnarlyquack opened this issue Nov 19, 2020 · 0 comments · Fixed by #325

Comments

@gnarlyquack
Copy link

Although I'm sympathetic to what the package is trying to achieve, I don't know that I like its solution, especially given the minimal benefit it's providing us:

  • Global completion appears limited to Bash, and it looks like Gourmet may not even be doing what it needs to do to support it (i.e., have "PYTHON_ARGCOMPLETE_OK" somewhere in the code. I'm not even sure where we would need to put it given we're using a setuptools entry point).
  • Non-global completion requires editing one's shell configuration, which is probably problematic if attempting to run Gourmet in a Python virtual environment, and leaves lingering configuration behind if Gourmet is uninstalled.
  • It appears to work by actually executing the application up until the point argcomplete.autocomplete is called, at which point it "hooks" execution of the application and exits if it determines a completion is required. As the documentation mentions itself, this is subject to side effects and performance issues if not careful.
  • Given Gourmet is a GUI app, I wouldn't expect any but a handful of people (mostly developers) to be executing Gourmet from the command line anyway.

If we really want this feature, I'm more inclined to ship a shell/Bash completion script that would exist external to Gourmet itself and could be installed to standard configuration directories.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant