[Mailman-Developers] Re-tries for failed SMTPDirect deliveries

Barry A. Warsaw bwarsaw@python.org
Wed, 31 May 2000 14:16:57 -0400 (EDT)


I'm trying to reach closure on this unixfrom issue.  Here's my take
from scanning the back archives:

- The standard Python library module mailbox.py was dropping the
  unixfrom lines.  This didn't have much of real effect on Mailman,
  but Guido checked in a fix anyway.  We can ignore this.

- The unixfrom lines were not getting properly included in held
  messages, which broke the Pipermail archiver.

- The unixfrom lines were also not getting stored in the qfiles/*.msg
  files for delivery pipeline failures.

It seems to me that both of the last two problems are best fixed by
patching the Mailman.Message.Message.__str__() method as given below.
I believe in one of Thomas Wouters last followups on the subject he
suggests this patch.  It appears to fix the problem with approved held
messages not getting properly archived.

This is the patch I intend to check in to fix the problem.  If I've
missed something please let me know.

-Barry

-------------------- snip snip --------------------
Index: Message.py
===================================================================
RCS file: /cvsroot/mailman/mailman/Mailman/Message.py,v
retrieving revision 1.29
diff -c -r1.29 Message.py
*** Message.py	2000/05/08 22:23:17	1.29
--- Message.py	2000/05/31 18:14:57
***************
*** 55,62 ****
          self.body = self.fp.read()
  
      def __str__(self):
!         # TBD: should this include the unixfrom?
!         return string.join(self.headers, '') + '\n' + self.body
  
      def GetSender(self, use_envelope=None):
          """Return the address considered to be the author of the email.
--- 55,61 ----
          self.body = self.fp.read()
  
      def __str__(self):
!         return self.unixfrom + string.join(self.headers, '') + '\n' + self.body
  
      def GetSender(self, use_envelope=None):
          """Return the address considered to be the author of the email.