]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
bpo-40597: email: Use CTE if lines are longer than max_line_length consistently ...
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Mon, 18 May 2020 00:57:42 +0000 (17:57 -0700)
committerGitHub <noreply@github.com>
Mon, 18 May 2020 00:57:42 +0000 (20:57 -0400)
commitc1f1ddf30a595c2bfa3c06e54fb03fa212cd28b5
treeeaf147b7a9a36163917ece7bfbdefe50c9778d6c
parent7a3522d478d456b38ef5e647c21595904bea79df
bpo-40597: email: Use CTE if lines are longer than max_line_length consistently (gh-20038) (gh-20084)

raw_data_manager (default for EmailPolicy, EmailMessage)
does correct wrapping of 'text' parts as long as the message contains
characters outside of 7bit US-ASCII set: base64 or qp
Content-Transfer-Encoding is applied if the lines would be too long
without it.  It did not, however, do this for ascii-only text,
which could result in lines that were longer than
policy.max_line_length or even the rfc 998  maximum.

This changeset fixes the heuristic so that if lines are longer than
policy.max_line_length, it will always apply a
content-transfer-encoding so that the lines are wrapped correctly.
(cherry picked from commit 6f2f475d5a2cd7675dce844f3af436ba919ef92b)

Co-authored-by: Arkadiusz Hiler <arek.l1@gmail.com>
Lib/email/contentmanager.py
Lib/test/test_email/test_contentmanager.py
Misc/NEWS.d/next/Library/2020-05-11-19-17-23.bpo-40597.4SGfgm.rst [new file with mode: 0644]