[Mailman-Developers] MM3: Content filter rules

Barry Warsaw barry at list.org
Mon Mar 2 18:19:10 CET 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

As you know, Mailman 2 can filter the content of a message before it's  
forwarded on to the list membership.  It can reorganize the MIME  
structure of a message, based on settings for MIME type and file  
extension.

The rules are fairly complex though:

* If the outer MIME type or file extension matches a filter pattern,  
the entire message is disposed of.

* If there are pass filters and the outer MIME type or file extension  
does not match a pass filter, the message is disposed of.

* If a subpart's MIME type or file extension matches a filter pattern,  
that part is disposed of.

* If there are pass filters and a subpart's MIME type or file  
extension does not match a pass filter, the subpart is disposed of.

* After all that, multipart/alternatives can be collapsed.

* After all that, text/html parts can be converted to text/plain

* After all that, if the outer message's body is empty and it has  
exactly one subpart, the subpart "becomes" the outer part.

Disposal of messages can be one of:

* Reject the message to the original author
* Forward the message to the list owner and discard
* Preserve the message in the 'bad' queue and discard

The Zen of Python says:

"Complex is better than complicated."
"If the implementation is hard to explain, it's a bad idea."

and I think the implementation is both complicated and hard to  
explain, and the u/i is no model of comprehension.  I'm not entirely  
sure how people use this feature though.

Some of the python.org lists have pass-types allowing multipart/mixed,  
multipart/alternative and text/plain, while filtering out various file  
extensions.

So I'd like to solicit your input on how you use the feature, and if  
you have any ideas for an approach that would be easier to understand,  
more useful, or both.

Barry

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Darwin)

iEYEARECAAYFAkmsFQ4ACgkQ2YZpQepbvXEIAACffKwhPLRK4hIbJ7Hs2Cfsitjk
xr8An1RqTVblud9OipgfanywU3Wr8kWV
=E7Nw
-----END PGP SIGNATURE-----


More information about the Mailman-Developers mailing list