[Mailman-Users] add_members and email confirmation

Ren Bucholz ren at trubble.com
Sat Dec 10 18:38:59 CET 2005


This is a followup to an older message, but I wanted to say that Mark's 
fix worked for the error handling.  Thanks, Mark!

I'm still having a problem with the confirmations, however.  To recap, 
I'm trying to use a modified version of add_members (call it 
new_add_members) in order to subscribe people via my own webform (where 
PHP executes add_members).  I modified it because I'd like the list to 
be confirmed opt-in, but add_members assumes that the user has 
confirmed their subscription and doesn't bother with the confirmation 
message. There's a longer description of what I did in this list's 
archives, if you're interested:
   http://www.mail-archive.com/mailman-users@python.org/msg35077.html

The problem is that this script totally breaks Mailman's web 
subscription features.  The first time I run new_add_members, I get a 
seemingly normal looking confirmation.  Upon clicking the confirmation 
link, I get the Mailman's generic "Sorry, We Hit A Bug!" message.  And 
from that point forward, attempting to subscribe via the list's 
standard Mailman info page (foo.com/mailman/listinfo/your_list) 
generates the same error.  You can still subscribe by calling the 
unmodified add_members.  The error logs say:

admin(32487): [----- Mailman Version: 2.1.5 -----]
admin(32487): [----- Traceback ------]
admin(32487): Traceback (most recent call last):
admin(32487):   File "/usr/lib/mailman/scripts/driver", line 101, in 
run_main
admin(32487):     main()
admin(32487):   File "/usr/lib/mailman/Mailman/Cgi/subscribe.py", line 
96, in main
admin(32487):     process_form(mlist, doc, cgidata, language)
admin(32487):   File "/usr/lib/mailman/Mailman/Cgi/subscribe.py", line 
176, in process_form
admin(32487):     mlist.AddMember(userdesc, remote)
admin(32487):   File "/usr/lib/mailman/Mailman/MailList.py", line 854, 
in AddMember
admin(32487):     cookie = self.pend_new(Pending.SUBSCRIPTION, userdesc)
admin(32487):   File "/usr/lib/mailman/Mailman/Pending.py", line 65, in 
pend_new
admin(32487):     db = self.__load()
admin(32487):   File "/usr/lib/mailman/Mailman/Pending.py", line 95, in 
__load
admin(32487):     return cPickle.load(fp)
admin(32487): AttributeError: 'module' object has no attribute 
'UserDesc'
admin(32487): [----- Python Information -----]
admin(32487): sys.version     =   2.3.4 (#1, Feb  2 2005, 11:44:49)
[GCC 3.4.3 20041212 (Red Hat 3.4.3-9.EL4)]

If anyone has any idea how to fix this, I'd be most appreciative.  I 
should also mention that error isn't limited to a single address - 
subscribing me at fake.com via new_add_members will cause a web 
subscription for you at fake.com to fail. Thanks for reading this far!

-Ren




More information about the Mailman-Users mailing list