Expose message ID list from `ReferencesHeader`
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- Python
- Estrelas
- 77.2k
- Forks
- 35.9k
- Métricas de merge de PRs
- Métricas de PR pendentes
Descrição
Feature or enhancement
Proposal:
When sending, parsing or validating mails which are replies to other mails it is necessary to access the message IDs from the In-Reply-To and References headers. These, however, are currently not exposed.
# Example use case
if "In-Reply-To" in msg and "References" in msg:
[in_reply_to_token] = msg["In-Reply-To"].message_ids
[*_, most_recent_reference_token] = msg["References"].message_ids
if in_reply_to_token.value != most_recent_reference_token.value:
raise ValueError(f"Error: References list end must match In-Reply-To message ID")
A workaround is to access the private _parse_tree property which does expose the message_id, though like any private property that should obviously be avoided. This is comparable to AddressHeader which already exposes addresses.
Has this already been discussed elsewhere?
This is a minor feature, which does not need previous discussion elsewhere
Links to previous discussion of this feature:
No response
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Comece lendo ReferencesHeader e a API existente de AddressHeader; em seguida, inspecione como ReferencesHeader atualmente expõe seus dados privados de _parse_tree. Disponibilize os IDs de mensagem por meio da interface pública de headers para que o uso mostrado de In-Reply-To e References funcione sem acesso privado e verifique se os valores expostos preservam as informações existentes dos IDs de mensagem.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- python
- Domínio
- backend
- Tipo de issue
- Funcionalidade
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Status de atividade
- Pouca atividade
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 70/100