google / google/python-fire

Optional type args are mistyped in help

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

Descrição

Type annotations that use `typing.Optional` are incorrectly documented when showing help.

## Example 1

```python
from typing import Optional

import fire

def main(arg: Optional[str] = 'something'):
"""Do something with arg."""

if __name__ == '__main__':
fire.Fire(main)
```

The corresponding help output is:

```
INFO: Showing help with the command 'firetest.py -- --help'.

NAME
firetest.py - Do something with arg.

SYNOPSIS
firetest.py

DESCRIPTION
Do something with arg.

FLAGS
-a, --arg=ARG
Type: Optional
Default: 'something'
```

**Here, `Type: Optional` is totally incorrect. It should be `Optional[str]`.** My use of `str` is just an example and it can be anything.

## Example 2

```python
from typing import Optional

import fire

def main(arg: Optional[str] = None):
"""Do something with arg."""

if __name__ == '__main__':
fire.Fire(main)
```

The corresponding help output is:

```
INFO: Showing help with the command 'firetest.py -- --help'.

NAME
firetest.py - Do something with arg.

SYNOPSIS
firetest.py

DESCRIPTION
Do something with arg.

FLAGS
-a, --arg=ARG
Type: Optional[Optional]
Default: None
```

**Here, `Type: Optional[Optional]` is even more incorrect. It should be `Optional[str]`.** My use of `str` is just an example and it can be anything.

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.