Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Inconsistent behaviour between --help and no arguments #438

Open
jeanCarloMachado opened this issue Feb 22, 2023 · 1 comment · May be fixed by #504
Open

Inconsistent behaviour between --help and no arguments #438

jeanCarloMachado opened this issue Feb 22, 2023 · 1 comment · May be fixed by #504

Comments

@jeanCarloMachado
Copy link

jeanCarloMachado commented Feb 22, 2023

I'm a big fan of Python Fire, it's been a huge help in building my projects. I have a small improvement request: I noticed that when I don't pass any arguments to my Fire program, I get an overview of all options of my class. However, when I pass --help, it only describes the class-level functions and misses out the instance-level ones.

I would love to see consistent behavior between the two approaches, ideally it should print all options of the class in both cases.

Thank you for your time!

Example of a personal project.

$ python_search
NAME
    python_search - Welcome to PythonSearch, An open-source assistant that helps you collect, retrieve and refactor information (and programs) efficiently using Python

SYNOPSIS
    python_search - GROUP | COMMAND

DESCRIPTION
    Welcome to PythonSearch, An open-source assistant that helps you collect, retrieve and refactor information (and programs) efficiently using Python

GROUPS
    GROUP is one of the following:

     configuration
       The main _configuration of Python Search Everything to customize about the application is configurable via code through this class

COMMANDS
    COMMAND is one of the following:

     configure_shortcuts
       Generate shortcuts for the current configuration

     install_missing_dependencies
       Install all missing dependencies that cannot be provided through the default installer

     new_project
       Create a new project in the current directory with the given name

     register_new_ui
       Starts the UI for collecting a new entry into python search

     run_key
       Runs an entry given its name or its partial name.

     search
       Opens the Search UI. Main entrypoint of the application

     set_project_location
       If you have a python search project already you can specify its location with this command

And with the --help with less content

$ python_search --help
NAME
    python_search - Welcome to PythonSearch, An open-source assistant that helps you collect, retrieve and refactor information (and programs) efficiently using Python

SYNOPSIS
    python_search COMMAND | <flags>

DESCRIPTION
    Welcome to PythonSearch, An open-source assistant that helps you collect, retrieve and refactor information (and programs) efficiently using Python

FLAGS
    --configuration=CONFIGURATION
        Type: Optional[Optional]
        Default: None

COMMANDS
    COMMAND is one of the following:

     install_missing_dependencies
       Install all missing dependencies that cannot be provided through the default installer

     new_project
       Create a new project in the current directory with the given name

     set_project_location
       If you have a python search project already you can specify its location with this command
@ESPR3SS0
Copy link

Hello, I know this was made awhile ago, however I think the consistency would be nice!

The issue that causes this is that when the script is run without any flags and the class that is passed to fire has no arguments passed to it's init function, an object initialized so we get the better help message!

Specifically it would be nice to see the verbose help message when I use the --help flag. Currently, the more verbose help message being shown when no flag is passed is a little counterintuitive

PR at: #504.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants