python / python/typeshed

Should logging.Handler.lock allow None?

Ouverte
#13,381 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

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

Description

Since https://github.com/python/cpython/commit/74723e11109a320e628898817ab449b3dad9ee96 (in CPython 3.13 and later), a variety of calls of Handler.acquire() and Handler.release() got converted into with Handler.lock.

As a result, unless you're overriding Handler.handle, Handler.lock cannot be None, which it could be previously.

Note that logging.NullHandler does actually set lock to None in the stdlib, but it does override Handler.handle.

I’m unsure about the policy for typeshed is about instance variables whose valid values depend on whether a particular method is overridden.

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

Commencez par le commit CPython 74723e11109a320e628898817ab449b3dad9ee96 et comparez Handler.lock, acquire(), release() et handle() avec les déclarations de typeshed. Vérifiez comment sont représentés le lock de NullHandler et le handle() redéfini, puis examinez la politique de typeshed concernant les variables d’instance dont les valeurs valides dépendent de redéfinitions. Le travail est terminé lorsque l’annotation reflète le comportement pris en charge par CPython et que la question de politique est résolue.

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

Évaluation

Stack technique
python
Domaine
tooling
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
30/100

Recevez les nouvelles issues par e-mail

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