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
