Redundant cast warning in nested function in a narrowed block
Aperta
Nessuno ha ancora preso questa issue.
bug
false-positive
priority-0-high
topic-casts
- Lingua principale
- Python
- Stelle
- 20.6k
- Fork
- 3.3k
- Metriche di merge delle PR
- Metriche PR in attesa
Descrizione
mypy version: 0.641
Given the following (in a file named test.py):
from typing import Optional, List, cast
things: Optional[List[int]] = None
others: List[int] = []
if things is not None:
filtered = filter(lambda x: x in cast(List[int], things), others)
Running mypy --warn-redundant-casts test.py gives the following warning:
test.py:7: note: Redundant cast to "List[int]"
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'esempio in test.py con mypy 0.641 e --warn-redundant-casts. Traccia come viene gestito il narrowing all'interno del lambda, quindi aggiungi un test di regressione per questo caso; il lavoro è completato quando l'esempio di funzione annidata non produce più un avviso errato relativo a un cast ridondante.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- compilers
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 45/100