You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "Tran Hong Quan (Jira)" <se...@james.apache.org> on 2021/05/20 07:22:00 UTC
[jira] [Commented] (JAMES-3516) [GSOC-2021] Implement Thread
support for JMAP
[ https://issues.apache.org/jira/browse/JAMES-3516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17348121#comment-17348121 ]
Tran Hong Quan commented on JAMES-3516:
---------------------------------------
Hi Benoit and Rene,
I am very happy to have you as my mentors. I am looking forward to work with you on Implementing Thread support for JMAP project in the next coming months.
As what I proposed in my proposal, here are my sub tasks for this project that I will do during the GSoC time:
1. Add a threadId property to MessageResult POJO, MailboxMessage POJO, equal to the message Id
2. Implement Cassandra lookup tables to get threadId related to a Subject, to a mime MessageId
3. Implement the threadId guessing algorithm and add it in the MailboxManager
4. Implement the threadId (1) -> messageId (many) Cassandra table and integrate it in the mailbox
5. Implement Thread/get JMAP method in a non naive way
Because I already joined the Apache James community for a quite time, so I think I gonna start planning and coding from now.
So let's start from sub task number 1. Here is my plan how to do it:
- Define ThreadId Pojo (should be class, not interface)
- Add getThreadId() method in MailboxMessage, MessageResult. Return threadId = messageId.
- Implement getThreadId method for MailboxMessage and MessageResult's implementations (all implementations)
Please have a look then I can start coding.
> [GSOC-2021] Implement Thread support for JMAP
> ---------------------------------------------
>
> Key: JAMES-3516
> URL: https://issues.apache.org/jira/browse/JAMES-3516
> Project: James Server
> Issue Type: New Feature
> Components: elasticsearch, JMAP, mailbox
> Reporter: Benoit Tellier
> Assignee: Antoine Duprat
> Priority: Major
> Labels: gsoc, gsoc2021, mentor
>
> h3. Why ?
> Mail user agents generally allow displaying emails grouped by conversations (replies, forward, etc...).
> As part of JMAP RFC-8621 implementation, there is a dedicated concepts: threads. We did implement JMAP Threads in a rather naive way: each email is a thread of its own.
> This naive implementation is specification compliant but defeat the overall purposes of threads.
> I propose myself to mentor the implementation of Threads as part of the James JMAP implementation.
> See: https://jmap.io/spec-mail.html#threads
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org