💾 Archived View for bbs.geminispace.org › u › clseibold › 20874 captured on 2024-12-17 at 15:59:57. Gemini links have been rewritten to link to archived content

View Raw

More Information

-=-=-=-=-=-=-

Comment by 🚀 clseibold

Re: "Misfin-Server Update 0.5.9c"

In: s/misfin

If anyone wants to know how I did threading, I basically just create a hashmap of Thread structs that contain pointers to GemMails in them. The Hashmap key is the Subject of the thread (trimmed so there's no "Re: ") and a hash of participants. The hash of participants is the addresses of the last sender and recipients (and mailbox holder) all ordered alphabetically, and then written to a sha256 hasher.

That's all there is to this simple implementation. In fact, the implementation would be much simpler, but less minimal, if I had a database backend for the server (which will probably come in a future update).

The branching off of threads based on participants is just a natural and intuitive outcome of the simpler implementation. To create threads that don't branch off with the additions or removals of participants, the implementation has to be more complicated.

🚀 clseibold [OP]

Oct 14 · 2 months ago

Original Post

🌒 s/misfin

Misfin-Server Update 0.5.9c — More advanced threading system - threads now take into account the participants. A change in participants creates a new thread (or "branch"); which is actually a compromise that makes the system *simpler* because of the lack of message IDs and reply-to IDs in misfin. Minimalism often makes simple things more complex. Reply links on gemini mail interface. Misfin links now use new "misfin:" format (rather than "misfin://") You can install misfin-server here, for...

💬 clseibold · 1 comment · 1 like · Oct 14 · 2 months ago