Ricardo SIGNES 😄


Email::Store::List - Detect and store information about mailing lists


    # Look for cross-posts in perl6-internals
    my ($p6i) = Email::Store::List->search( name => "perl6-internals" );
    @mails = $p6i->posts;
    for my $mail (@mails) {
        print "Mail ".$mail->message_id." cross-posted to ".$_->name."\n"
        for grep {$_ != $p6i} $mail->lists;


This plugin adds the concepts of a list and a post. A list represents a mailing list, which has a name and a posting_address. When mails are indexed, Mail::ListDetector is used to identify lists mentioned in mail headers. post, which is largely transparent, is the many-to-many table used to map mails to lists and vice versa.

If a mail is seen for the second time, it is re-examined for mailing list headers, as a mail with the same message ID may be Cc'd to multiple lists and appear through them several times. Note that Mail::ListDetector looks at headers added by the mailing list software, not the Cc, To and From headers.