邮件主题串断开

我的邮件客户端不再将来自 Discourse 的邮件分组为线索。我猜测这与 In-Reply-To 永远不匹配先前 Message-ID 的事实有关:

第一个帖子:

Message-ID: <topic/1084.23319831779de465ac375ecf@mydomain.com>
References: <topic/1084@mydomain.com>

第一个回复:

Message-ID: <topic/1084/2214.3da8a000c93bc4ebe1be7dc8@mydomain.com>
In-Reply-To: <topic/1084@mydomain.com>
References: <topic/1084@mydomain.com>

第二个回复:

Message-ID: <topic/1084/2215.9e39f57fbc3836748bbb7407@mydomain.com>
In-Reply-To: <topic/1084/2214.1db1dbd94b11c9d94ca45b3a@mydomain.com>
References: <topic/1084@mydomain.com>

我的实例运行的是 Discourse 2.9.0.beta2 (ea3a58d051)

4 个赞

@martin 最近对此进行了修改并修复了问题,您可以尝试更新到最新版本吗?

3 个赞

您好 @tomtjes

感谢您的反馈。我们收到报告称,新的线程功能与 Thunderbird 配合不佳。您使用的是 Thunderbird 还是其他邮件客户端?

如果此功能给更多人带来了问题,我们可能会考虑进一步优化它。

5 个赞

嗯,这确实取决于客户端。我的主要客户是 MailMate,但我现在测试了其他几个客户端,那里的线程运行得很好。

4 个赞

我认为这不是 Thunderbird 的问题,而是任何支持邮件线程的邮件客户端的问题。但我不知道 in-reply-to 和 references 中的不同信息差异是否可能源于不同的解释。

根据 rfc5322,我实际上看到的是你已经修复了 References:
In-Reply-To:引用你回复的那条邮件的 message-id。
References:将回复邮件的 message id 追加到之前的 references 中。

第一帖

Message-ID: <msg-id1>
…没有 References

第一次回复


`
Message-ID: <msg-id2>
In-Reply-To: <msg-id1>
References: <msg-id1>
`

第二次回复:

Message-ID: <msg-id3>
In-Reply-To: <msg-id2>
References: <msg-id1>  <msg-id2>

但是,你破坏了邮件 ID,如 Mailing list mode: threading is broken 中所示。

顺便问一下:是否还有另一个 bug,即将多行标记为 preformatted text 时,会多次包含 cmd-e 标记,每行一次?

1 个赞

感谢您也报告了这个问题——我希望尽快安排一些工作来解决它。

3 个赞

大家好,作为 OpenStreetMap 的一员,我发现 Discourse(他们现在使用的在线论坛)存在一些问题。

我听说邮件列表界面应该工作得很好。然而,我发现了一个 bug,即通过电子邮件回复时,主题会断开。然后会生成一个新的消息 ID,而不是重新使用原始 ID。

示例
主要概念是好的——它使用了,例如:

格式:thread msg-id in-reply-id
1 topic/851.

初始主题

1.1 topic/851/2747. topic/851

消息 2747 是对初始主题 851 的回复,如 in-reply-to: 和 references: 标头所示:

1.1.1 ee76eed4-a255-6d1c-0f5b-59da9772f230@gmx topic/851/2747.

这是对 topic/851/2747 的电子邮件回复,消息 ID 为 ee76eed4-a255-6d1c-0f5b-59da9772f230@gmx

1.1.1.1 topic/851/2749. ee76eed4-a255-6d1c-0f5b-59da9772f230@gmx

这里论坛回复 2749 正确地链接到我的消息 ID ee76eed4-a255-6d1c-0f5b-59da9772f230@gmx

1.1.1.1.1 07289952-0e88-c08a-ea66-b34774c8554e@gmx topic/851/2749.

…等等

但是,当我回复消息 ID ee76eed4-a255-6d1c-0f5b-59da9772f230@gmx 到上一个主题时,我引用了

References:… <topic/851/2747. bae9c8af72f1f7ef599f1bcd @OSM>

但是我的消息(HTML 论坛版本)被发回给我,其中包含

References: …
<topic/851/2747. ae42d62b1252f1572b2a9a07 @OSM>

您注意到引用中的消息 ID 有何不同吗?

论坛系统在引用中破坏了消息 ID!

这导致主题断开,出现以下情况:
1.2 topic/851/2748. topic/851/2747.
1.3 topic/851/2751. topic/851/2749.

其中 1.2 是 1.1.1 的论坛版本(新的消息 ID topic/851/2748.e6be773dbcc599ad5f35bae5@OSM,而不是我原来的消息 ID),
而 1.3 是 1.1.1.1.1 的论坛版本。

我还没有验证其他人是否收到残缺的主题——因为他们不会收到我原始回复的消息 ID
1.1.1 ee76eed4-a255-6d1c-0f5b-59da9772f230@gmx,
但也会收到论坛版本
1.2 消息 ID 为 topic/851/2748.e6be773dbcc599ad5f35bae5@OSM,同时还收到回复
1.1.1.1 引用了 ee76eed4-a255-6d1c-0f5b-59da9772f230@gmx

我在这里省略了域名,因为该论坛会将这些消息 ID 转换为 mailto 链接,从而超出了我允许的链接数量限制。

1 个赞

将此主题合并到 Discourse email messages are incorrectly threaded - #36 by sam ,我们将在那里解决所有问题。

1 个赞