From: Dmitry Shachnev Subject: email: Always add newline after ending boundary in multipart messages Date: Fri, 01 Jun 2012 17:28:14 +0400 Before this change, it was impossible to PGP-sign multipart messages because there was no empty line between the ending boundary of last part of message being signed and the opening line of signature part, which shouldn't be the case for PGP-signed messages. --Part 1 begin --Part 1.1 begin --Part 1.2 begin --Part 1 end-- << No empty line between this line --Part 2 begin << And this one --End of the message-- This change makes email.generator always add newlines after ending boundaries. diff -ruN a/Lib/email/generator.py b/Lib/email/generator.py --- a/Lib/email/generator.py 2012-06-01 17:15:01.195738361 +0400 +++ b/Lib/email/generator.py 2012-06-01 17:15:37.108578025 +0400 @@ -267,9 +267,8 @@ # body-part self._fp.write(body_part) # close-delimiter transport-padding - self.write(self._NL + '--' + boundary + '--') + self.write(self._NL + '--' + boundary + '--' + self._NL) if msg.epilogue is not None: - self.write(self._NL) self.write(msg.epilogue) def _handle_multipart_signed(self, msg):