Description
When using features that send out emails (page change notification, send login data) I get an error page with "ImportError: No module named Header".
Example
- Click User Preferences at the top right
Enter "user@host.com" as your email address and click "Mail me my account data"
- You get an error page
Details
See error page at the example.
I use a standard installation of Python on SuSE 8.2. I added some Python related packages via Yast but otherwise I didn't change anything.
Here is some output from the error page:
Python Python 2.2.1: /usr/bin/python Linux p15093662 2.4.21-lufs-030704 #1 SMP Fri Jul 4 23:32:47 CEST 2003 i686 MoinMoin Release 1.2.1 [Revision 1.184] Wed Apr 14 12:28:42 2004 /usr/lib/python2.2/site-packages/MoinMoin/util/mail.py in sendmail(request=<MoinMoin.request.RequestCGI instance>, to=['CENSORED@web.de'], subject='Your wiki account data', text='\n\nID: 1081426432.42.43918\nName: BuckRogers\nPassw...wiki/?action=userform&uid=1081426432.42.43918', **kw={'mail_from': 'CENSORED@web.de'}) 34 import smtplib, socket 35 from email.MIMEText import MIMEText 36 from email.Header import Header 37 from email.Utils import formatdate 38 from MoinMoin import config email undefined, Header undefined ImportError: No module named Header __doc__ = "Import can't find module, or can't find name in module." __getitem__ = <bound method ImportError.__getitem__ of <exceptions.ImportError instance at 0x82c7d94>> __init__ = <bound method ImportError.__init__ of <exceptions.ImportError instance at 0x82c7d94>> __module__ = 'exceptions' __str__ = <bound method ImportError.__str__ of <exceptions.ImportError instance at 0x82c7d94>> args = ('No module named Header',)
Discussion
This might be a fault with my Python installation or version. Any ideas?
This is not a bug. You need python >= 2.2.2. I will include some workaround in moin 1.2.2.
Discussion
Quick workaround: edit /usr/lib/python2.2/site-packages/MoinMoin/util/mail.py - comment out the line
- from email.Header import Header
and replace the line
- msg['Subject'] = Header(subject, config.charset)
with
- msg['Subject'] = subject
IMHO, installer should check python version and complain if it's incompatible.
Comment: The workaround works great, thanks!
Plan
- Priority:
Assigned to: ThomasWaldmann
- Will be worked around in release: 1.2.2