Bug with filter
Ouverte
Personne n'a encore pris cette issue.
bug
- Langage dominant
- Python
- Étoiles
- 20.6k
- Forks
- 3.3k
- Métriques de merge des PR
- Métriques de PR en attente
Description
from typing import Optional
from typing import Sequence
from more_itertools import first
class A:
def some_method(self):
pass
def f(inp: Sequence[A]) -> Optional[A]:
return first(filter(lambda a: a.some_method(), inp), None)
Output
test.py:13: error: Item "None" of "Optional[A]" has no attribute "some_method"
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par reproduire le diagnostic avec le snippet Python de l’issue, puis suivez la manière dont mypy infère les types du callback et du résultat pour filter et more_itertools.first. Le correctif est complet lorsque cet exemple ne signale plus que la valeur peut être None, tandis que les valeurs réellement optionnelles restent correctement vérifiées.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- compilers
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 35/100