![](https://secure.gravatar.com/avatar/b009b2809a98fc29d87d2ef8a9609005.jpg?s=120&d=mm&r=g)
Hi folks
I assume a great deal of thought has gone into message threading and how it works. Is there anyone willing to share the basics with me - specifically as it relates to Mailman and related projects?
There is of course plenty of information on google which I am researching including the seminal http://www.jwz.org/doc/threading.html but if there is anyone on the Mailman team willing to give me a Mailman oriented understanding that would be great. It appears to me there are a number of ways to implement threading, and how it is done is somewhat arbitrary. For example, this description of Gmail threading http://xkahn.zoned.net/software/evolution/threads/ seems to suggest that Gmail includes arbitrary business rules for threading based on message content (i.e. subject prefix).
In particular I want to know the basics of message threading - i.e.
** What data defines how emails are connected to one another? ** How is that connecting data organised (i.e. in a tree, a flat list, by date, whatever)? ** What happens when thread data is missing (i.e. a message in a thread is deleted)? ** Are there any algorithms/mechanisms/patterns that are effective for implementing threading? ** Any code in Mailman/Hyperkitty/elsewhere that is particularly good to study? ** Anything else I should know?
I’m wanting to find the most simple and effective way to deal with threading which of course has the potential to be complex if I get it wrong.
thanks!
as