python / python/cpython

Provide triggering AttributeError exception to __getattr__ for reraising

Aberta
#81,560 5 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

3.9 (EOL) interpreter-core type-feature
Linguagem predominante
Python
Estrelas
77.2k
Forks
36k
Merge médio
1d 9h
PRs com merge (30d)
558

Descrição

BPO 37379
Nosy @stevendaprano, @serhiy-storchaka, @hernot
Files
  • test6.py: Example one function catching exception which is reraised by othe function called from within except branch
  • tes_attr1.py: Examples showing the problem and what would change.
  • 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-06-23.13:59:44.812>
    labels = ['interpreter-core', 'type-feature', '3.9']
    title = 'Provide triggering AttributeError exception to __getattr__ for reraising'
    updated_at = <Date 2019-06-23.20:11:33.654>
    user = 'https://github.com/hernot'
    

    bugs.python.org fields:

    activity = <Date 2019-06-23.20:11:33.654>
    actor = 'serhiy.storchaka'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['Interpreter Core']
    creation = <Date 2019-06-23.13:59:44.812>
    creator = 'nother'
    dependencies = []
    files = ['48432', '48433']
    hgrepos = []
    issue_num = 37379
    keywords = []
    message_count = 4.0
    messages = ['346323', '346325', '346336', '346337']
    nosy_count = 3.0
    nosy_names = ['steven.daprano', 'serhiy.storchaka', 'nother']
    pr_nums = []
    priority = 'normal'
    resolution = None
    stage = None
    status = 'open'
    superseder = None
    type = 'enhancement'
    url = 'https://bugs.python.org/issue37379'
    versions = ['Python 3.9']
    

    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.

    Direção de pesquisa

    Comece lendo os exemplos anexados em tes_attr1.py e, depois, test6.py, para entender o comportamento relatado de getattr e do reraising. Rastreie o ponto de entrada relevante do interpretador CPython para a busca de atributos e determine o fluxo esperado de exceções. Está concluído quando o AttributeError que dispara o comportamento estiver disponível para getattr e os exemplos anexados de reraising se comportarem conforme o esperado, com cobertura de regressão.

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

    Avaliação

    Stack de tecnologia
    python
    Domínio
    compilers
    Tipo de issue
    Funcionalidade
    Dificuldade
    5/5
    Tempo estimado
    Mais de uma semana
    Status de atividade
    Estagnada
    Clareza
    Razoavelmente clara
    Facilidade para iniciantes
    25/100

    Receba novas issues na sua caixa de entrada

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