One of my users changed their subscription address by copying and pasting in List Options, and accidentally included the mailto: protocol. While they received messages at their new address, they were not recognised as subscribers when attempting to send.
Testing this, I find that the Mass Subscription page strips mailto: and subscribes the proper address.
**The normal deletion tools fail to operate on the invalid address**:
Membership list unsub checkbox;
Mass Removal page;
Command Line remove_members
- all fail to remove an address with mailto:
remove_members produces the following error for the example address mailto:testaddress@server:
Traceback (most recent call last):
File "/usr/sbin/remove_members", line 186, in ?
File "/usr/sbin/remove_members", line 176, in main
File "/usr/lib/mailman/Mailman/MailList.py", line 1014, in ApprovedDeleteMember
File "/usr/lib/mailman/Mailman/OldStyleMemberships.py", line 220, in removeMember
File "/usr/lib/mailman/Mailman/OldStyleMemberships.py", line 113, in __assertIsMember
raise Errors.NotAMemberError, member
- indicating (I think) that the search function fails because it doesn't include mailto: as part of the address.
There *is* a workaround: clone_member -r will delete the invalid address. (Using clone_member without -r successfully creates a new valid subscription, e.g. testaddress@server - but this then will be deleted by any of the above tools rather than "mailto:testaddress@server"!)
However, the main problem here is that mailto: is accepted by the List Options page change of address mechanism. Hopefully it would not be too hard to adapt the filtering used on the Mass Subscription page?