DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] mailing list configuration
@ 2016-03-12 18:37 Thomas Monjalon
  2016-03-14  7:43 ` Yuanhan Liu
  0 siblings, 1 reply; 2+ messages in thread
From: Thomas Monjalon @ 2016-03-12 18:37 UTC (permalink / raw)
  To: dev; +Cc: olivier.matz

Hi all,

Please find an information notice about mailman running this mailing list.

You can change your settings at this URL:
	http://dpdk.org/ml/options/dev/

There is an option "nodupes":
"
Avoid duplicate copies of messages?
When you are listed explicitly in the To: or Cc: headers of a list message,
you can opt to not receive another copy from the mailing list.
"
It is enabled most of the time (default).

It may be helpful to disable "nodupes", i.e. receive copies, to filter
whole threads from the mailing list (List-Id) in a folder while keeping
a copy of the messages addressed to you in your inbox.
It is a way to avoid missing important messages.

For those who want to keep "nodupes" enabled, i.e. receive only one copy,
mailman will not send them the messages where they are explicit recipients.
So they will receive only the message directly from the sender' SMTP
(untouched by mailman).
But it is not the full story. The other members of the mailing list will
receive the message from mailman with a modified CC header.
Indeed, members having enabled "nodupes" are dropped from CC list.

Some members were complaining about this weird bug-haviour.
That's why this patch has been applied to keep CC list untouched:

--- mailman-2.1.15/Handlers/AvoidDuplicates.py
+++ mailman-2.1.15/Handlers/AvoidDuplicates.py
@@ -51,12 +51,8 @@
     for addr in listaddrs:
         explicit_recips[addr.lower()] = True
     # Figure out the set of explicit recipients
-    ccaddrs = {}
     for header in ('to', 'cc', 'resent-to', 'resent-cc'):
         addrs = getaddresses(msg.get_all(header, []))
-        if header == 'cc':
-            for name, addr in addrs:
-                ccaddrs[addr.lower()] = name, addr
         for name, addr in addrs:
             if not addr:
                 continue
@@ -85,8 +81,6 @@
             if send_duplicate:
                 msgdata.setdefault('add-dup-header', {})[r] = True
                 newrecips.append(r)
-            elif ccaddrs.has_key(r.lower()):
-                del ccaddrs[r.lower()]
         else:
             # Otherwise, this is the first time they've been in the recips
             # list.  Add them to the newrecips list and flag them as having
@@ -94,7 +88,3 @@
             newrecips.append(r)
     # Set the new list of recipients
     msgdata['recips'] = newrecips
-    # RFC 2822 specifies zero or one CC header
-    del msg['cc']
-    if ccaddrs:
-        msg['Cc'] = COMMASPACE.join([formataddr(i) for i in ccaddrs.values()])

Thanks to Olivier for helping.
If anyone is volunteer to work with mailman community, a configuration option
could be introduced.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-03-14  7:43 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-12 18:37 [dpdk-dev] mailing list configuration Thomas Monjalon
2016-03-14  7:43 ` Yuanhan Liu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).