Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork32k
gh-87720 Fix additional header refolding-quoting edge case#134271
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
base:main
Are you sure you want to change the base?
Conversation
In this case, the higher level syntactic unit fit on the remainder ofthe line in un-encoded format, so the encoding check never happened. Tofix this, we look inside the current unit to see if has anything thatwas originally encoded.
@medmunds Do you feel like reviewing this? :) |
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
This fix LGTM. But I found another corner case while looking at it. Here's the failing test:
--- a/Lib/test/test_email/test__header_value_parser.py(revision ebde4e897750963b82bcae785949ac11b3877640)+++ b/Lib/test/test_email/test__header_value_parser.py(date 1748289921461)@@ -3101,6 +3101,8 @@ '=?utf-8?q?a=2C?=\n' ' 123456789012345678901234567890123456\n' ' <abc@example.com>\n'),+ ('abc@example.com (, but definitely not also sent to def@example.net)',+ 'abc@example.com (, but definitely not\n also sent to def@example.net)\n'), ] for (to, folded) in cases: with self.subTest(to=to):
(This case belongs in a new test covering comment folding, but you'll get the point. Guessing I should open a new issue—it's more like the earlier quoted-string problem. I bring it up here in case it might help you spot other xtext variations needing attention.)
(Also, is this on Seth's radar yet?)
Uh oh!
There was an error while loading.Please reload this page.
In this case, the higher level syntactic unit fit on the remainder of the line in un-encoded format, so the encoding check never happened. To fix this, we look inside the current unit to see if has anything that was originally encoded.
I'm not really happy with the method name 'has_token_type', but I haven't thought of anything I like better. Ideas welcome.