Should logging.Handler.lock allow None?

Aberta
#13,381 1 comentário 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
30/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
python
Domínio
tooling

Direção de pesquisa

Comece pelo commit do CPython 74723e11109a320e628898817ab449b3dad9ee96 e compare Handler.lock, acquire(), release() e handle() com as declarações do typeshed. Verifique como o lock e o handle() sobrescrito de NullHandler são representados e, em seguida, analise a política do typeshed para variáveis de instância cujos valores válidos dependem de sobrescritas. A tarefa estará concluída quando a anotação refletir o comportamento compatível do CPython e a questão de política estiver resolvida.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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.

Linguagem predominante
Python
Estrelas
5.1k
Forks
2.1k
Merge médio
1d 19h
PRs com merge (30d)
82

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de python/typeshed

Todas as issues de python/typeshed

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.