Expand payload types for `email.message.Message.set_payload`
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Python
- Star
- 77.2k
- Fork
- 35.9k
- Chỉ số merge pull request
- Chỉ số pull request đang chờ
Mô tả
Feature or enhancement
Proposal:
While working on bug in PR #136071 we (me and @picnixz) discussed that set_payload of email.message.Message method could use list, str, bytes or handle buffer objects as payload to set.
For now it using duck type for objects with decode and encode methods. https://github.com/python/cpython/blob/main/Lib/email/message.py#L335-L353
I guess we need to decide necessary of it and if so the types that need to be support. Also update typing in typeshed for email.message.Message
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:
#134759
#136071
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu bằng cách đọc Lib/email/message.py quanh các dòng 335-353 và các cuộc thảo luận được liên kết trong #134759 và #136071. Xác định các kiểu payload được hỗ trợ và cập nhật typing cho email.message.Message trong typeshed; công việc được xem là hoàn tất khi quyết định về kiểu đã được giải quyết và cả hành vi khi chạy lẫn các annotation đều phản ánh quyết định đó.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- python
- Lĩnh vực
- backend
- Loại issue
- Tính năng
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 25/100