agronholm / agronholm/typeguard

NameError on Enum

Aberta
#402 20 comentários 0 reações 0 responsáveis Ver no GitHub
bug
Linguagem predominante
Python
Estrelas
1.8k
Forks
146
Merge médio
8d 12h
PRs com merge (30d)
1

Descrição

### Things to check first

- [X] I have searched the existing issues and didn't find my bug already reported there

- [X] I have checked that my bug is still present in the latest release

### Typeguard version

4.1.5

### Python version

3.10.12

### What happened?

```
Traceback (most recent call last):
File "test.py", line 3, in
from A import A
File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "/home/jolaf/.local/lib/python3.10/site-packages/typeguard/_importhook.py", line 98, in exec_module
super().exec_module(module)
File "A.py", line 7, in
A()
File "A.py", line 5, in __init__
def __init__(self, e: E = E.X) -> None:
NameError: name 'E' is not defined. Did you mean: 'e'?
```

### How can we reproduce the bug?

`test.py`:
```python3

from typeguard import install_import_hook
with install_import_hook(('A',)):
import A
```
`A.py`:
```python3
from enum import Enum
class A:
class E(Enum):
X = 1
def __init__(self, e: E = E.X) -> None:
print("OK")
A()
```
```shell
$ python3 A.py
OK

$ python3 test.py

```

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.