google / google/python-fire

[feature request] Exclude function (kw)args from synopsis, arguments and flags in help output

Aberta
#465 0 comentários 3 reações 0 responsáveis Ver no GitHub
enhancement
Linguagem predominante
Python
Estrelas
28.2k
Forks
1.5k
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

The help output lists all function (keyword) arguments in the synopsis, arguments and flags.

In my specific use case, I would like to exclude some of those arguments, because they are:

1. of non-literal type, and therefore not easily provided through the means of CLI
2. injected by a dependency injection decorator

The option to exclude (keyword) arguments could be done in a couple of ways:
1. prefix the argument name with an underscore, e.g.
```python
def my_function(a: bool, _complex_type: ComplexType = ComplexType()):
...
```
2. limit args and kwargs to literal types
```python
fire.Fire(help_include_literals_only=True)
```
3. provide the means to exclude arguments based on module or instance type, e.g.
```python
def my_function(a: bool, s: service.ComplexType):
...

fire.Fire(
help_exclude_arg_types=[service.ComplexType],
help_exclude_arg_modules=[service]
)
```

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.