python / python/typeshed

iscoroutinefunction should use TypeIs

Ouverte Adaptée aux débutants
#15,529 4 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

stubs: improvement
Langage dominant
Python
Étoiles
5.1k
Forks
2.1k
Merge moyen
1 j 19 h
PR mergées (30 j)
82

Description

One of the things I find myself writing a lot is

if iscoroutinefunction(myfunction):
    do_something_with_async(myfunction)
else:
    do_something_with_just_sync(myfunction)

however the else block doesn't narrow the type to non-awaitable. Shouldn't it? Some of the other is... functions in inspect seem to use TypeIs as well.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Repérez l’entrée du stub typeshed pour inspect.iscoroutinefunction et comparez son annotation avec celles des autres fonctions inspect is... qui utilisent TypeIs. Mettez à jour l’annotation afin que les deux branches soient affinées comme décrit, puis exécutez les tests de vérification de types pertinents pour confirmer que les fonctions coroutine et la branche else sont correctement affinées.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python
Domaine
tooling
Type d'issue
Fonctionnalité
Difficulté
2/5
Temps estimé
1-3 heures
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
64/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.