You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Well, since I'm using Pathy and I'd love to get rid of yet another annoying dependency which only causes problems and multiplies dependency hell (click).
If you agree, I can submit a PR (trivial). Or if have any specific requirements/steps-to-follow, please, outline them.
The linting task has to pass; usually, running format.sh first is enough:
shtools/format.shshtools/lint.sh
The suite includes tests for the CLI, so they need to be run twice when the code is optional. This kind of testing is already done for the client adapters, so you can copy that approach. See test_package.sh for how it's put together. You just need to make sure that the CLI file is run once when click isn't installed and then again when it is so that the code cov hits all the paths for the error message with installation instructions. This might not require anything from you, I don't recall 😅
Developer Experience
Since the CLI part will be optional, we need to provide the user with instructions to install the proper dependencies if they use the CLI without them installed. You can reference any of the client adapters to see the pattern for this. It goes like:
User actually tries to use the thing that's not installed
Catch the error, and display a message containing the pip install instructions to fix the problem
And don't forget to add the "cli" extras in setup.py
Because:
typer
depends onclick
and it's quite often hard to find a suitable version ofclick
which isn't conflicting with other deps.The text was updated successfully, but these errors were encountered: