From: Karl Hasselström <kha@xxxxxxxxxxx> Some mail servers dislike the 8bit transfer encoding, so use quoted-printable instead. Signed-off-by: Karl Hasselström <kha@xxxxxxxxxxx> --- stgit/commands/mail.py | 16 +++++++++------- 1 files changed, 9 insertions(+), 7 deletions(-) diff --git a/stgit/commands/mail.py b/stgit/commands/mail.py index b661308..885d5e9 100644 --- a/stgit/commands/mail.py +++ b/stgit/commands/mail.py @@ -15,7 +15,7 @@ along with this program; if not, write t Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA """ -import sys, os, re, time, datetime, smtplib, email.Header, email.Utils +import sys, os, re, time, datetime, quopri, smtplib, email.Header, email.Utils from optparse import OptionParser, make_option from stgit.commands.common import * @@ -253,7 +253,7 @@ def __build_extra_headers(): """Build extra headers like content-type etc. """ headers = 'Content-Type: text/plain; charset=utf-8; format=fixed\n' - headers += 'Content-Transfer-Encoding: 8bit\n' + headers += 'Content-Transfer-Encoding: quoted-printable\n' headers += 'User-Agent: StGIT/%s\n' % version.version return headers @@ -425,9 +425,9 @@ def encode_header(s, enc): else: return s -def encode_headers(msg, enc): - """rfc2047-encode the headers of msg, assuming it is encoded in - enc.""" +def encode_message(msg, enc): + """rfc2047-encode the headers of msg, and quoted-printable-encode + the body. msg is assumed to be encoded in enc.""" in_header = True lines = [] for line in msg.splitlines(True): @@ -436,6 +436,8 @@ def encode_headers(msg, enc): line = encode_header(line, enc) else: in_header = False + else: + line = quopri.encodestring(line) lines.append(line) return ''.join(lines) @@ -497,7 +499,7 @@ def func(parser, options, args): raise CmdException, 'No cover message template file found' msg_id = email.Utils.make_msgid('stgit') - msg = encode_headers(__build_cover(tmpl, total_nr, msg_id, options), + msg = encode_message(__build_cover(tmpl, total_nr, msg_id, options), 'UTF-8') from_addr, to_addr_list = __parse_addresses(msg) @@ -524,7 +526,7 @@ def func(parser, options, args): for (p, patch_nr) in zip(patches, range(1, len(patches) + 1)): msg_id = email.Utils.make_msgid('stgit') - msg = encode_headers(__build_message(tmpl, p, patch_nr, total_nr, + msg = encode_message(__build_message(tmpl, p, patch_nr, total_nr, msg_id, ref_id, options), 'UTF-8') from_addr, to_addr_list = __parse_addresses(msg) - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html