allow_redefinition ignored for functions
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 20.6k
- Fork
- 3.3k
- Metriche di merge delle PR
- Metriche PR in attesa
Descrizione
Bug Report
Mypy complains with error: Name "step_impl" already defined on line 13 error for functions, although allow_redefinition is set to True.
To Reproduce
- Add mypy.ini configuration (listed below)
- Add behave tests; for example:
@given("I am on the main page")
def step_impl(context):
pass
@when("I type login and password")
def step_impl(context):
pass
@then("I am logged in")
def step_impl(context):
pass
- Run mypy
Expected Behavior
Mypy checks pass because allow_redefinition is set to True.
Actual Behavior
Mypy fails with
error: Name "step_impl" already defined on line 13
Your Environment
- Mypy version used: 0.910
- Mypy command-line flags: none
- Mypy configuration options from
mypy.ini(and other config files):
[mypy]
python_version = 3.6
allow_redefinition = True
ignore_missing_imports = True
check_untyped_defs = False
- Python version used: 3.6
- Operating system and version: Ubuntu 20.04.2
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia riproducendo l'errore segnalato con la configurazione mypy.ini mostrata e definizioni di funzione ripetute in stile behave. Poi traccia la gestione delle ridefinizioni di funzione da parte di mypy e aggiungi un test di regressione; il lavoro è completato quando allow_redefinition sopprime questa diagnostica, mentre gli errori non correlati di definizione duplicata continuano a essere segnalati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- devtools
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 38/100