suggestion for Full Customization [Mailman-Developers]

James Ralston qralston+ml.mailman-developers at andrew.cmu.edu
Wed May 5 19:03:14 EDT 2004


Mailman 2.1.4, Mailman/Handlers/CookHeaders.py, line 138:

        # The To field normally contains the list posting address.  However
        # when messages are fully personalized, that header will get
        # overwritten with the address of the recipient.  We need to get the
        # posting address in one of the recipient headers or they won't be
        # able to reply back to the list.  It's possible the posting address
        # was munged into the Reply-To header, but if not, we'll add it to a
        # Cc header.  BAW: should we force it into a Reply-To header in the
        # above code?
        if mlist.personalize == 2 and mlist.reply_goes_to_list <> 1:
            # Watch out for existing Cc headers, merge, and remove dups.  Note
            # that RFC 2822 says only zero or one Cc header is allowed.
            new = []
            d = {}
            for pair in getaddresses(msg.get_all('cc', [])):
                add(pair)
            i18ndesc = uheader(mlist, mlist.description)
            add((str(i18ndesc), mlist.GetListEmail()))
            del msg['Cc']
            msg['Cc'] = COMMASPACE.join([formataddr(pair) for pair in new])

Question: why was this done?

If I have set the "personalize" option to "Full Personalization", a
very likely reason why I have done so is because I don't *WANT* the
recipient to reply back to the list--or, for that matter, even realize
that the message was sent through a mailing list at all.  I want the
recipient to see an individual message that looked like it was sent
*from* an individual person *to* an individual person.

Adding the list address to the CC header perfectly defeats this.

While I can address this locally simply by excising the above code
snippet, I'd rather see this issue addressed upstream.

Would it make sense to split the "Full Personalization" setting into
its own option?  Meaning, make the existing personalize Option a
yes/no toggle, and create another option to specify how to customize
the headers:

    - To: header is listname; recipient address does not appear (default)
    - To: header is recipient; CC: header is listname
    - To: header is recipient; listname does not appear

If someone would be willing to double-check my Python code (and
proofread my documentation), I'd be willing to implement a patch to
perform the above split.

Thoughts?

-- 
James Ralston, Information Technology
Software Engineering Institute
Carnegie Mellon University, Pittsburgh, PA, USA




More information about the Mailman-Developers mailing list