Message319807
I tried the test case on master branch. I ran the test case on 1GB RAM Linux based digitalocean droplet to have the script killed. Please find the results as below :
# Python build
➜ cpython git:(master) ✗ ./python
Python 3.8.0a0 (heads/bpo33095-add-reference:9d49f85, Jun 17 2018, 07:22:33)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
# Test case
➜ cpython git:(master) ✗ cat foo.py
from email.message import EmailMessage
from email.policy import default
policy = default # max_line_length = 78
msg = EmailMessage()
msg["Subject"] = "á"*100
policy.fold("Subject", msg["Subject"])
# Test case execution
➜ cpython git:(master) ✗ time ./python foo.py
[2] 13637 killed ./python foo.py
./python foo.py 387.36s user 3.85s system 90% cpu 7:11.94 total
# I tried to do Ctrl + C after 2 minutes to stop and the stack trace is as below :
➜ cpython git:(master) ✗ time ./python foo.py
^CTraceback (most recent call last):
File "foo.py", line 7, in <module>
policy.fold("Subject", msg["Subject"])
File "/root/cpython/Lib/email/policy.py", line 183, in fold
return self._fold(name, value, refold_binary=True)
File "/root/cpython/Lib/email/policy.py", line 205, in _fold
return value.fold(policy=self)
File "/root/cpython/Lib/email/headerregistry.py", line 258, in fold
return header.fold(policy=policy)
File "/root/cpython/Lib/email/_header_value_parser.py", line 144, in fold
return _refold_parse_tree(self, policy=policy)
File "/root/cpython/Lib/email/_header_value_parser.py", line 2650, in _refold_parse_tree
part.ew_combine_allowed, charset)
File "/root/cpython/Lib/email/_header_value_parser.py", line 2728, in _fold_as_ew
ew = _ew.encode(first_part, charset=encode_as)
File "/root/cpython/Lib/email/_encoded_words.py", line 226, in encode
qlen = _cte_encode_length['q'](bstring)
File "/root/cpython/Lib/email/_encoded_words.py", line 93, in len_q
return sum(len(_q_byte_map[x]) for x in bstring)
File "/root/cpython/Lib/email/_encoded_words.py", line 93, in <genexpr>
return sum(len(_q_byte_map[x]) for x in bstring)
KeyboardInterrupt
./python foo.py 131.41s user 0.43s system 98% cpu 2:13.89 total
Thanks |
|
Date |
User |
Action |
Args |
2018-06-17 07:47:24 | xtreak | set | recipients:
+ xtreak, barry, r.david.murray, rad164 |
2018-06-17 07:47:24 | xtreak | set | messageid: <1529221644.89.0.56676864532.issue33529@psf.upfronthosting.co.za> |
2018-06-17 07:47:24 | xtreak | link | issue33529 messages |
2018-06-17 07:47:23 | xtreak | create | |
|