💾 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
-=-=-=-=-=-=-
Re: "Misfin-Server Update 0.5.9c"
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.
Oct 14 · 2 months ago
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