summaryrefslogtreecommitdiff
path: root/Mailman/Digester.py
diff options
context:
space:
mode:
authormailman1998-03-20 18:04:37 +0000
committermailman1998-03-20 18:04:37 +0000
commit07b3b648de152bee0b154e7fca2c39adaad0effe (patch)
tree14c902764d5fee5205493231680d9c36a09b0b63 /Mailman/Digester.py
parentcbaf655c487515bf43ffd203c19225d1d460c138 (diff)
downloadmailman-07b3b648de152bee0b154e7fca2c39adaad0effe.tar.gz
mailman-07b3b648de152bee0b154e7fca2c39adaad0effe.tar.zst
mailman-07b3b648de152bee0b154e7fca2c39adaad0effe.zip
Diffstat (limited to 'Mailman/Digester.py')
-rw-r--r--Mailman/Digester.py46
1 files changed, 32 insertions, 14 deletions
diff --git a/Mailman/Digester.py b/Mailman/Digester.py
index 29eeea8dc..f0dc98207 100644
--- a/Mailman/Digester.py
+++ b/Mailman/Digester.py
@@ -76,10 +76,12 @@ class Digester:
# Internal function, don't call this.
def SaveForDigest(self, post):
- # Add message to index, and to the digest.
- # If the digest is large enough when we're done writing, send it out.
- digest_file = open(os.path.join(self._full_path, "next-digest"), "a+")
- topics_file = open(os.path.join(self._full_path, "next-digest-topics"),
+ """Add message to index, and to the digest. If the digest is large
+ enough when we're done writing, send it out."""
+ digest_file = open(os.path.join(self._full_path, "next-digest"),
+ "a+")
+ topics_file = open(os.path.join(self._full_path,
+ "next-digest-topics"),
"a+")
sender = self.QuoteMime(post.GetSenderName())
fromline = self.QuoteMime(post.getheader("from"))
@@ -103,11 +105,12 @@ class Digester:
self.SendDigestOnSize(0)
def SendDigestOnSize(self, threshhold):
- """"Call SendDigest if accumulated digest exceeds threshhold.
+ """Call SendDigest if accumulated digest exceeds threshhold.
(There must be some content, even if threshhold is 0.)"""
try:
- size = os.stat(os.path.join(self._full_path, "next-digest"))[6]
+ ndf = os.path.join(self._full_path, "next-digest")
+ size = os.stat(ndf)[6]
if size == 0:
return
elif (size/1024.) >= threshhold:
@@ -115,7 +118,8 @@ class Digester:
except os.error, err:
if err[0] == 2:
# No such file or directory
- pass
+ self.LogMsg("system", "mm_digest lost digest file %s, %s",
+ ndf, err)
# If the mime separator appears in the text anywhere, throw a space on
# both sides of it, so it doesn't get interpreted as a real mime separator.
@@ -138,9 +142,15 @@ class Digester:
recipients = filter(DeliveryEnabled, self.digest_members)
mime_recipients = filter(LikesMime, recipients)
text_recipients = filter(HatesMime, recipients)
- digest_log = open('/tmp/digest.log', 'a+')
- digest_log.write('%s digest %d log--\n' % (self.real_name, self.next_digest_number))
- digest_log.write('%d total digesters. %d w/ Delivery disabled. Of the rest, %d Like MIME. %d Do not.\n' % (len(self.digest_members), len(self.digest_members) - len(recipients), len(mime_recipients), len(text_recipients)))
+ self.LogMsg("digest",
+ '%s digest %d log--',
+ self.real_name, self.next_digest_number)
+ self.LogMsg("digest",
+ ('%d digesters, %d disabled. '
+ 'Active: %d MIMEers, %d non.'),
+ len(self.digest_members),
+ len(self.digest_members) - len(recipients),
+ len(mime_recipients), len(text_recipients))
def SendDigest(self):
msg = mm_message.OutgoingMessage()
@@ -206,11 +216,19 @@ Date: %s
recipients = filter(DeliveryEnabled, self.digest_members)
mime_recipients = filter(LikesMime, recipients)
text_recipients = filter(HatesMime, recipients)
- digest_log = open('/tmp/digest.log', 'a+')
- digest_log.write('%s digest %d log--\n' % (self.real_name, self.next_digest_number))
- digest_log.write('%d total digesters. %d w/ Delivery disabled. Of the rest, %d Like MIME. %d Do not.\n' % (len(self.digest_members), len(self.digest_members) - len(recipients), len(mime_recipients), len(text_recipients)))
+ self.LogMsg("digest",
+ '%s digest %d log--',
+ self.real_name, self.next_digest_number)
+ self.LogMsg("digest",
+ ('%d digesters, %d disabled. '
+ 'Active: %d MIMEers, %d non.'),
+ len(self.digest_members),
+ len(self.digest_members) - len(recipients),
+ len(mime_recipients),
+ len(text_recipients))
self.DeliverToList(msg, mime_recipients, digest_header,
- digest_footer, remove_to=1, tmpfile_prefix = "mime.")
+ digest_footer, remove_to=1,
+ tmpfile_prefix = "mime.")
msg.SetHeader('content-type', 'text/plain', crush_duplicates=1)
self.DeliverToList(msg, text_recipients, digest_header,
digest_footer, remove_to=1)