Skip to content

Inconsistent behaviour between --help and no arguments #438

Open
@jeanCarloMachado

Description

@jeanCarloMachado

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

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