summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Mailman/Queue/ArchRunner.py3
-rw-r--r--Mailman/Queue/IncomingRunner.py2
-rw-r--r--Mailman/Queue/NewsRunner.py15
-rw-r--r--Mailman/Queue/OutgoingRunner.py5
-rw-r--r--Mailman/Queue/Runner.py2
-rw-r--r--Mailman/Queue/Switchboard.py6
6 files changed, 13 insertions, 20 deletions
diff --git a/Mailman/Queue/ArchRunner.py b/Mailman/Queue/ArchRunner.py
index 67d5eff62..bc4c67f44 100644
--- a/Mailman/Queue/ArchRunner.py
+++ b/Mailman/Queue/ArchRunner.py
@@ -17,8 +17,7 @@
"""Outgoing queue runner."""
import time
-
-from mimelib.date import parsedate_tz, mktime_tz, formatdate
+from email.Utils import parsedate_tz, mktime_tz, formatdate
from Mailman import mm_cfg
from Mailman import LockFile
diff --git a/Mailman/Queue/IncomingRunner.py b/Mailman/Queue/IncomingRunner.py
index 58052c376..8aadad45f 100644
--- a/Mailman/Queue/IncomingRunner.py
+++ b/Mailman/Queue/IncomingRunner.py
@@ -76,13 +76,13 @@
import sys
import os
+from cStringIO import StringIO
from Mailman import mm_cfg
from Mailman import Errors
from Mailman import LockFile
from Mailman.Queue.Runner import Runner
from Mailman.Logging.Syslog import syslog
-from Mailman.pythonlib.StringIO import StringIO
diff --git a/Mailman/Queue/NewsRunner.py b/Mailman/Queue/NewsRunner.py
index 62976f13c..bc247bdf0 100644
--- a/Mailman/Queue/NewsRunner.py
+++ b/Mailman/Queue/NewsRunner.py
@@ -19,9 +19,10 @@
import re
import socket
import nntplib
+from cStringIO import StringIO
-from mimelib.MsgReader import MsgReader
-from mimelib.address import getaddresses
+import email
+from email.Utils import getaddresses
COMMASPACE = ', '
@@ -29,7 +30,7 @@ from Mailman import mm_cfg
from Mailman import Utils
from Mailman.Queue.Runner import Runner
from Mailman.Logging.Syslog import syslog
-from Mailman.pythonlib.StringIO import StringIO
+
# Matches our Mailman crafted Message-IDs. See Utils.unique_message_id()
mcre = re.compile(r"""
@@ -124,13 +125,7 @@ def prepare_message(mlist, msg, msgdata):
# Lines: is useful
if msg['Lines'] is None:
# BAW: is there a better way?
- reader = MsgReader(msg)
- count = 0
- while 1:
- line = reader.readline()
- if not line:
- break
- count += 1
+ count = len(email.Iterators.body_line_iterator(msg))
msg['Lines'] = str(count)
#
# Get rid of these lines
diff --git a/Mailman/Queue/OutgoingRunner.py b/Mailman/Queue/OutgoingRunner.py
index 3ccf3675c..bbf0eca37 100644
--- a/Mailman/Queue/OutgoingRunner.py
+++ b/Mailman/Queue/OutgoingRunner.py
@@ -20,7 +20,7 @@ import sys
import os
import time
-from mimelib.Parser import Parser
+import email
from Mailman import mm_cfg
from Mailman import Message
@@ -67,8 +67,7 @@ class OutgoingRunner(Runner):
# HandleBouncingAddress(). I'm not sure this is necessary, or the
# right thing to do.
pcnt = len(e.permfailures)
- p = Parser(Message.Message)
- copy = p.parsestr(str(msg))
+ copy = email.message_from_string(str(msg))
self._permfailures.setdefault(mlist, []).extend(
zip(e.permfailures, [copy] * pcnt))
# Temporary failures
diff --git a/Mailman/Queue/Runner.py b/Mailman/Queue/Runner.py
index 3ed9cc34b..2efb539a8 100644
--- a/Mailman/Queue/Runner.py
+++ b/Mailman/Queue/Runner.py
@@ -20,6 +20,7 @@
import random
import time
import traceback
+from cStringIO import StringIO
from Mailman import mm_cfg
from Mailman import Utils
@@ -27,7 +28,6 @@ from Mailman import Errors
from Mailman import MailList
from Mailman import i18n
-from Mailman.pythonlib.StringIO import StringIO
from Mailman.Queue.Switchboard import Switchboard
from Mailman.Logging.Syslog import syslog
diff --git a/Mailman/Queue/Switchboard.py b/Mailman/Queue/Switchboard.py
index 9bdbf681c..f2a411d15 100644
--- a/Mailman/Queue/Switchboard.py
+++ b/Mailman/Queue/Switchboard.py
@@ -18,7 +18,7 @@
"""
# enqueue() and dequeue() are not symmetric. enqueue() takes a Message
-# object. dequeue() returns a mimelib.Message object tree.
+# object. dequeue() returns a email.Message object tree.
#
# Message metadata is represented internally as a Python dictionary. Keys and
# values must be strings. When written to a queue directory, the metadata is
@@ -40,7 +40,7 @@ import marshal
import errno
import cPickle
-from mimelib.Parser import Parser
+import email
from Mailman import mm_cfg
from Mailman import Utils
@@ -153,7 +153,7 @@ class _Switchboard:
msgfp = None
try:
msgfp = open(msgfile)
- msg = Parser(_class=Message.Message).parse(msgfp)
+ msg = email.message_from_file(msgfp, Message.Message)
os.unlink(msgfile)
except EnvironmentError, e:
if e.errno <> errno.ENOENT: raise