Docs don't mention when a class method is considered private v.s public / --help behavior is confusing
- Dominant language
- Python
- Stars
- 28.2k
- Forks
- 1.5k
- PR merge metrics
- No merged PRs in 30d
Description
Here's a MWE:
```python
#!/usr/bin/env python
from fire import Fire
class Example:
def version(self):
return "bla"
def start(self):
print("starting")
def stop(self):
print("stopping")
Fire(Example)
```
Running this script without arguments shows the available commands - OK:
```
NAME
fire-bug.py
SYNOPSIS
fire-bug.py COMMAND
COMMANDS
COMMAND is one of the following:
start
stop
version
```
But the more common (and usually safe) thing to do when a user is being introduced a new command, is to run it with a `--help`. However, `Fire` doesn't behave the same for this argument:
```
INFO: Showing help with the command 'fire-bug.py -- --help'.
NAME
fire-bug.py
SYNOPSIS
fire-bug.py -
```
Unless you use `--verbose` as well. Why is that? This is not trivial for a user to guess, and only reading the docs here led me to this conclusion. Plus, the docs don't mention how to make a class method a "public" method...
Contributor guide
Assessment
This issue has not been assessed yet.