Mercurial > public > mercurial-scm > hg
diff mercurial/mail.py @ 7948:de377b1a9a84
move encoding bits from util to encoding
In addition to cleaning up util, this gets rid of some circular dependencies.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Fri, 03 Apr 2009 14:51:48 -0500 |
parents | 9fabcb1fe68d |
children | 46293a0c7e9f |
line wrap: on
line diff
--- a/mercurial/mail.py Fri Apr 03 13:20:52 2009 -0500 +++ b/mercurial/mail.py Fri Apr 03 14:51:48 2009 -0500 @@ -8,7 +8,7 @@ from i18n import _ import os, smtplib, socket import email.Header, email.MIMEText, email.Utils -import util +import util, encoding def _smtp(ui): '''build an smtp connection and return a function to send mail''' @@ -100,8 +100,8 @@ def _charsets(ui): '''Obtains charsets to send mail parts not containing patches.''' charsets = [cs.lower() for cs in ui.configlist('email', 'charsets')] - fallbacks = [util._fallbackencoding.lower(), - util._encoding.lower(), 'utf-8'] + fallbacks = [encoding.fallbackencoding.lower(), + encoding.encoding.lower(), 'utf-8'] for cs in fallbacks: # util.unique does not keep order if cs not in charsets: charsets.append(cs) @@ -110,14 +110,14 @@ def _encode(ui, s, charsets): '''Returns (converted) string, charset tuple. Finds out best charset by cycling through sendcharsets in descending - order. Tries both _encoding and _fallbackencoding for input. Only as + order. Tries both encoding and fallbackencoding for input. Only as last resort send as is in fake ascii. Caveat: Do not use for mail parts containing patches!''' try: s.decode('ascii') except UnicodeDecodeError: sendcharsets = charsets or _charsets(ui) - for ics in (util._encoding, util._fallbackencoding): + for ics in (encoding.encoding, encoding.fallbackencoding): try: u = s.decode(ics) except UnicodeDecodeError: