[Mailman-Users] Hit a but & use of VERP

Henrik Rasmussen her at adm.ku.dk
Thu Nov 9 13:22:05 CET 2006

It seems that the only files containing something like %(......)p is

[root at mailman lib]# find /usr/lib/mailman -name "*.py" -exec grep -H
")p" {} \; 

/usr/lib/mailman/tests/test_handlers.py:        mlist.msg_header =
'%(real_name)p header\n'
/usr/lib/mailman/tests/test_handlers.py:        mlist.msg_footer =
'%(real_name)p footer'
/usr/lib/mailman/tests/test_handlers.py:%(real_name)p header
/usr/lib/mailman/tests/test_handlers.py:%(real_name)p footer""")

I most likely read the error message wrong, but according to the error
message to me it seems it is line 105 in the file i18n.py that would
contain the unexpected format character 'p', but it doesn not contain
anything with )p

However, changing "your %(extra)smembership" to "your %(extra)s
membership" in the file /usr/lib/mailman/Mailman/Cgi/options.py have
solved the problem. Se I guess it must have been the p in smembership
that it was referring to.

Thanks for pointing out where to look.


-----Oprindelig meddelelse-----
Fra: Mark Sapiro [mailto:msapiro at value.net] 
Sendt: 8. november 2006 16:44
Til: Henrik Rasmussen; mailman-users at python.org
Emne: Re: [Mailman-Users] Hit a but & use of VERP

Henrik Rasmussen wrote:
>Problem 2) When calling
>[mailmanserver]/mailman/options/nyhedsbrev/michaelh at telia.com
><mailto:mailserver/mailman/options/nyhedsbrev/michaelh at telia.com>  and
>other addresses, I get the message
>We're sorry, we hit a bug!
>This is described a lot of places, but not exactly my problem (maybe I
>just didn't find it yet).
>The error log shows:
>admin(1354): [----- Traceback ------]
>admin(1354): Traceback (most recent call last):
>admin(1354):   File "/usr/lib/mailman/scripts/driver", line 101, in
>admin(1354):     main()
>admin(1354):   File "/usr/lib/mailman/Mailman/Cgi/options.py", line
>in main
>admin(1354):     loginpage(mlist, doc, user, language)
>admin(1354):   File "/usr/lib/mailman/Mailman/Cgi/options.py", line
>in loginpage
>admin(1354):     table.AddRow([_("""In order to change your membership
>option, you must
>admin(1354):   File "/usr/lib/mailman/Mailman/i18n.py", line 89, in _
>admin(1354):     return tns % dict
>admin(1354): ValueError: unsupported format character 'p' (0x70) at
>index 105

The code at line 813 in options.py in the 2.1.5 base is (with some
lisnes wrapped)

    table.AddRow([_("""In order to change your membership option, you
    first log in by giving your %(extra)smembership password in the
    below.  If you don't remember your membership password, you can
have it
    emailed to you by clicking on the button below.  If you just want to
    unsubscribe from this list, click on the <em>Unsubscribe</em>
button and a
    confirmation message will be sent to you.

    <p><strong><em>Important:</em></strong> From this point on, you
must have
    cookies enabled in your browser, otherwise none of your changes
will take

It appears that this has been edited in the area of
"%(extra)smembership password" creating something like %(......)p

The "%(extra)s" is a substitution that receives either "email address
and " or nothing depending on context. It can be deleted, but it can't
be changed.

Mark Sapiro <msapiro at value.net>       The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan

More information about the Mailman-Users mailing list