Message353641
I agree with you that according to the RFC, the cte can of course only be "B" or "Q". My point is that, in my example, if you try to do that you get a KeyError propagating all the way down to email.message.get(), which I believe is incorrect.
Consider an encoded word which is syntactically incorrect in a different way, like if for instance it's missing the terminating '?=':
'=?UTF-8?Q?somevalue'
Currently, this case will cause _encoded_words.py to throw a ValueError on this line:
_, charset, cte, cte_string, _ = ew.split('?')
Which is then caught by _header_value_parser.get_encoded_word() and handled appropriately.
To me this is the same kind of thing. I agree that an exception should be thrown, I just don't think it should propagate all the way back to the caller of email.message.get().
On a separate note, I agree with you that perhaps _encoded_words.decode() should throw more specific exceptions instead of ValueError and KeyError but that's a separate thing. I can fix that if you prefer. |
|
Date |
User |
Action |
Args |
2019-10-01 07:47:20 | aft90 | set | recipients:
+ aft90, barry, r.david.murray, eamanu |
2019-10-01 07:47:20 | aft90 | set | messageid: <1569916040.5.0.982646977495.issue38332@roundup.psfhosted.org> |
2019-10-01 07:47:20 | aft90 | link | issue38332 messages |
2019-10-01 07:47:20 | aft90 | create | |
|