[email] bpo-29478: Fix passing max_line_length=None from Compat32 policy (GH-595)
If max_line_length=None is specified while using the Compat32 policy, it is no longer ignored.
This commit is contained in:
parent
3fd54d4a7e
commit
b459f74826
|
@ -361,8 +361,12 @@ class Compat32(Policy):
|
||||||
# Assume it is a Header-like object.
|
# Assume it is a Header-like object.
|
||||||
h = value
|
h = value
|
||||||
if h is not None:
|
if h is not None:
|
||||||
parts.append(h.encode(linesep=self.linesep,
|
# The Header class interprets a value of None for maxlinelen as the
|
||||||
maxlinelen=self.max_line_length))
|
# default value of 78, as recommended by RFC 2822.
|
||||||
|
maxlinelen = 0
|
||||||
|
if self.max_line_length is not None:
|
||||||
|
maxlinelen = self.max_line_length
|
||||||
|
parts.append(h.encode(linesep=self.linesep, maxlinelen=maxlinelen))
|
||||||
parts.append(self.linesep)
|
parts.append(self.linesep)
|
||||||
return ''.join(parts)
|
return ''.join(parts)
|
||||||
|
|
||||||
|
|
|
@ -162,6 +162,13 @@ class TestGeneratorBase:
|
||||||
g.flatten(msg)
|
g.flatten(msg)
|
||||||
self.assertEqual(s.getvalue(), self.typ(expected))
|
self.assertEqual(s.getvalue(), self.typ(expected))
|
||||||
|
|
||||||
|
def test_compat32_max_line_length_does_not_fold_when_none(self):
|
||||||
|
msg = self.msgmaker(self.typ(self.refold_long_expected[0]))
|
||||||
|
s = self.ioclass()
|
||||||
|
g = self.genclass(s, policy=policy.compat32.clone(max_line_length=None))
|
||||||
|
g.flatten(msg)
|
||||||
|
self.assertEqual(s.getvalue(), self.typ(self.refold_long_expected[0]))
|
||||||
|
|
||||||
|
|
||||||
class TestGenerator(TestGeneratorBase, TestEmailBase):
|
class TestGenerator(TestGeneratorBase, TestEmailBase):
|
||||||
|
|
||||||
|
|
|
@ -310,6 +310,7 @@ Garrett Cooper
|
||||||
Greg Copeland
|
Greg Copeland
|
||||||
Ian Cordasco
|
Ian Cordasco
|
||||||
Aldo Cortesi
|
Aldo Cortesi
|
||||||
|
Mircea Cosbuc
|
||||||
David Costanzo
|
David Costanzo
|
||||||
Scott Cotton
|
Scott Cotton
|
||||||
Greg Couch
|
Greg Couch
|
||||||
|
|
|
@ -142,6 +142,9 @@ Core and Builtins
|
||||||
|
|
||||||
- bpo-29546: Improve from-import error message with location
|
- bpo-29546: Improve from-import error message with location
|
||||||
|
|
||||||
|
- bpo-29478: If max_line_length=None is specified while using the Compat32 policy,
|
||||||
|
it is no longer ignored. Patch by Mircea Cosbuc.
|
||||||
|
|
||||||
- Issue #29319: Prevent RunMainFromImporter overwriting sys.path[0].
|
- Issue #29319: Prevent RunMainFromImporter overwriting sys.path[0].
|
||||||
|
|
||||||
- Issue #29337: Fixed possible BytesWarning when compare the code objects.
|
- Issue #29337: Fixed possible BytesWarning when compare the code objects.
|
||||||
|
|
Loading…
Reference in New Issue