[MlMt] question about Message-ID based threading
Chris Newman
chris.newman at oracle.com
Tue Sep 11 19:01:53 EDT 2018
On 6 Sep 2018, at 0:24, Benny Kjær Nielsen wrote:
> On 3 Sep 2018, at 15:11, Peter van Dijk wrote:
>
>> when one of my coworkers makes a new calendar appointment, I get an
>> email with headers like this:
>>
>> Message-ID:
>> <Appointment.c26b5086-af7a-11e8-91be-b3acf41bfd87.1535975573228 at example.com>
>> In-Reply-To:
>> <Appointment.c26b5086-af7a-11e8-91be-b3acf41bfd87 at example.com>
>> References:
>> <Appointment.c26b5086-af7a-11e8-91be-b3acf41bfd87 at example.com>
>> Subject: New appointment: ...
>
> Ok, the `Message-ID` header is fine, but it makes little sense that it
> refers to non-existing messages. I wonder if that serves any purpose
> at all...
>
>> Then when somebody accepts, declines, etc., I get an email with
>> headers like this:
>>
>> Message-ID:
>> <Appointment.c26b5086-af7a-11e8-91be-b3acf41bfd87.1535976655967 at example.com>
>> In-Reply-To:
>> <Appointment.c26b5086-af7a-11e8-91be-b3acf41bfd87 at example.com>
>> References:
>> <Appointment.c26b5086-af7a-11e8-91be-b3acf41bfd87 at example.com>
>> Subject: Appointment changed: ...
>
> Again, the `Message-ID` is fine. The only requirement is that two
> different messages should never have the same `Message-ID`.
>
>> Several mail clients tie these two messages together into a thread,
>> but MailMate does not. Is this configurable? Is this a bug?
>
> It's not a bug. MailMate threading is based on the headers above and
> the non-existing root messages means that MailMate cannot display
> these messages as children of the same message.
>
> It's also not configurable, but that's something which is still not on
> my list. Usually, other email clients would group emails based on the
> subject, but in this case that appears to not be sufficient. In this
> case they should be grouped because they refer to the same
> non-existing message (which I still think is weird). I'll make a note
> of this special case.
>
>> To be clear, there is no actual message with the ID referred to in
>> In-Reply-To and References.
>
> I would claim that is a bug, but that's not something I can do
> anything about (other than trying to work around it when threading is
> more flexible).
The THREAD=REFERENCES algorithm in RFC 5256 handles this case (by using
a dummy message in the thread tree). This scenario also happens if the
thread's root message is expunged and there are two messages with
In-Reply-To/References to only that root message. I think a threading
algorithm is better if it handles this case as users expect.
Whether the mail generator has a bug depends on whether it's considered
valid to assign a 'Message-ID' to a Calendar event and refer to that
Message-ID in email messages related to that event. The standards don't
explicitly permit that, but it seems like a reasonable behavior.
- Chris
More information about the mailmate
mailing list