New submission from radical164 <tpt...@tuta.io>: Python 3.6.5 has trouble on folding email messages:
Traceback (most recent call last): File "emailtest.py", line 7, in <module> policy.fold("Subject", msg["Subject"]) File "/usr/lib/python3.6/email/policy.py", line 183, in fold return self._fold(name, value, refold_binary=True) File "/usr/lib/python3.6/email/policy.py", line 205, in _fold return value.fold(policy=self) File "/usr/lib/python3.6/email/headerregistry.py", line 258, in fold return header.fold(policy=policy) File "/usr/lib/python3.6/email/_header_value_parser.py", line 144, in fold return _refold_parse_tree(self, policy=policy) File "/usr/lib/python3.6/email/_header_value_parser.py", line 2651, in _refold_parse_tree part.ew_combine_allowed, charset) File "/usr/lib/python3.6/email/_header_value_parser.py", line 2728, in _fold_as_ew first_part = to_encode[:text_space] TypeError: slice indices must be integers or None or have an __index__ method The message has non-ascii characters in header and set max_line_length=0, regardless length of the header. Here is the code to reproduce. from email.message import EmailMessage from email.policy import default policy = default.clone(max_line_length=0) msg = EmailMessage() msg["Subject"] = "รก" policy.fold("Subject", msg["Subject"]) I first found this issue on Maildir.add, which saves the message to a file without word wrap. ---------- components: email messages: 316680 nosy: barry, r.david.murray, radical164 priority: normal severity: normal status: open title: non-ascii characters in headers causes TypeError on email.policy.Policy.fold type: behavior versions: Python 3.6 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue33524> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com