diff options
author | Mark Sapiro <mark@msapiro.net> | 2015-01-04 19:03:40 -0800 |
---|---|---|
committer | Mark Sapiro <mark@msapiro.net> | 2015-01-04 19:03:40 -0800 |
commit | c170b01eae9958bc6d0892e8227d2726f60362b7 (patch) | |
tree | c4d0c4d1ea94649f40a993909ad5f85d1fe091c6 | |
parent | 85a6679a3ea5b1ff085453f4e1ed921b5320690b (diff) | |
download | mailman2-c170b01eae9958bc6d0892e8227d2726f60362b7.tar.gz mailman2-c170b01eae9958bc6d0892e8227d2726f60362b7.tar.xz mailman2-c170b01eae9958bc6d0892e8227d2726f60362b7.zip |
Add some explanitory comments for why we defer some Munge From changes
to WrapMessage.
Correct a misplaced item in NEWS.
-rwxr-xr-x | Mailman/Handlers/CookHeaders.py | 5 | ||||
-rw-r--r-- | Mailman/Handlers/WrapMessage.py | 5 | ||||
-rwxr-xr-x | NEWS | 4 |
3 files changed, 10 insertions, 4 deletions
diff --git a/Mailman/Handlers/CookHeaders.py b/Mailman/Handlers/CookHeaders.py index 0139f3c3..30e05655 100755 --- a/Mailman/Handlers/CookHeaders.py +++ b/Mailman/Handlers/CookHeaders.py @@ -72,6 +72,11 @@ def change_header(name, value, mlist, msg, msgdata, delete=True, repl=True): (msgdata.get('from_is_list') == 0 and mlist.from_is_list == 2)) and not msgdata.get('_fasttrack') ) or name.lower() in ('from', 'reply-to', 'cc'): + # The or name.lower() in ... above is because when we are munging + # the From:, we want to defer the resultant changes to From:, + # Reply-To:, and/or Cc: until after the message passes through + # ToDigest, ToArchive and ToUsenet. Thus, we put them in + # msgdata[add_header] here and apply them in WrapMessage. msgdata.setdefault('add_header', {})[name] = value elif repl or not msg.has_key(name): if delete: diff --git a/Mailman/Handlers/WrapMessage.py b/Mailman/Handlers/WrapMessage.py index fba6bc2a..0e47e1e4 100644 --- a/Mailman/Handlers/WrapMessage.py +++ b/Mailman/Handlers/WrapMessage.py @@ -18,7 +18,7 @@ """Wrap the message in an outer message/rfc822 part and transfer/add some headers from the original. -Also, in the case of Munge From, replace the From: and Reply-To: in the +Also, in the case of Munge From, replace the From:, Reply-To: and Cc: in the original message. """ @@ -40,7 +40,8 @@ def process(mlist, msg, msgdata): # is wrap this message or from_is_list applies and is wrap. if not (msgdata.get('from_is_list') == 2 or (mlist.from_is_list == 2 and msgdata.get('from_is_list') == 0)): - # Now see if we need to add a From: and/or Reply-To: without wrapping. + # Now see if we need to add a From:, Reply-To: or Cc: without wrapping. + # See comments in CookHeaders.change_header for why we do this here. a_h = msgdata.get('add_header') if a_h: if a_h.get('From'): @@ -7,12 +7,12 @@ Here is a history of user visible changes to Mailman. 2.1.19 (xx-xxx-xxxx) + New Features + - There is a new DEFAULT_SUBSCRIBE_OR_INVITE setting. Set this to Yes to make the default selection on the admin Mass Subscriptions page Invite rather than Subscribe. (LP: #1404511) - New Features - - There is a new list attribute in the Bounce processing section. bounce_notify_owner_on_bounce_increment if set to Yes will cause Mailman to notify the list owner on every bounce that increments a |