typing.get_type_hints wrong namespace for forward-declaration of inner class

Aberta
#82,016 8 comentários 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
32/100
Tipo de issue
Bug
Clareza
Precisa de esclarecimento
Status de atividade
Estagnada
Stack de tecnologia
python
Domínio
tooling

Direção de pesquisa

Comece executando typing_check.py para reproduzir a falha de get_type_hints e, em seguida, inspecione a implementação de typing envolvida na resolução de declarações antecipadas para classes internas. Use get_type_hints_for_inner_classes.zip e metaclass_workaround.py para casos adicionais; a issue estará concluída quando a declaração antecipada da classe interna for resolvida no namespace correto.

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

Descrição

stdlib topic-typing type-bug
BPO 37835
Nosy @ilevkivskyi
Files
  • typing_check.py: A simple file to reproduce the error with inner classes.
  • get_type_hints_for_inner_classes.zip
  • metaclass_workaround.py
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = None
    created_at = <Date 2019-08-13.09:36:43.877>
    labels = ['3.7', 'type-bug', 'library']
    title = 'typing.get_type_hints wrong namespace for forward-declaration of inner class'
    updated_at = <Date 2019-09-09.09:59:14.831>
    user = 'https://bugs.python.org/netbnd'
    

    bugs.python.org fields:

    activity = <Date 2019-09-09.09:59:14.831>
    actor = 'levkivskyi'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['Library (Lib)']
    creation = <Date 2019-08-13.09:36:43.877>
    creator = 'netbnd'
    dependencies = []
    files = ['48539', '48552', '48562']
    hgrepos = []
    issue_num = 37835
    keywords = []
    message_count = 8.0
    messages = ['349535', '349958', '349986', '349988', '350468', '350982', '351282', '351398']
    nosy_count = 2.0
    nosy_names = ['levkivskyi', 'netbnd']
    pr_nums = []
    priority = 'normal'
    resolution = None
    stage = None
    status = 'open'
    superseder = None
    type = 'behavior'
    url = 'https://bugs.python.org/issue37835'
    versions = ['Python 3.6', 'Python 3.7']
    

    Linguagem predominante
    Python
    Estrelas
    77.2k
    Forks
    36k
    Merge médio
    1d 9h
    PRs com merge (30d)
    558

    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/cpython

    Todas as issues de python/cpython

    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.