also sprach Carl Worth [2010.01.14.1432 +1300]: > Yes. This approach requires some external means of synchronizing the > tags from one system to another. > > I don't understand what it would mean to have the mailstore and the > database out of synch here. This approach doesn't have the tags in the > mailstore by definition, right? You might have marked a message 'read' on one machine and if the two get out of sync on another machine, you might have the same message unread there. > > How about using pseudo-mails stored in Maildir and synchronised by > > IMAP? E.g. every folder could have a subfolder .TAGS and if we find > > a way to smartly pair messages between parent and subfolder, we'd > > have a tag store alongside the mailstore it refers to, but without > > the danger of leakage, and without having to rewrite messages. > ... > > Anyway, the idea is out now. Thoughts? > > There are a couple of problems that I don't see addressed at all with > this approach. The first is that there's not a one-to-one mapping > between messages and files in the mail store. (I'm CCed on a lot of list > mail meaning that I have multiple files in my mail store for a single > message.) Shouldn't this just be solved? I've had formail+procmail delete my duplicates for 10+ years, and while I don't like the fact that I usually get the CC before the list mail, and thus cannot filter on Delivered-To, I have never looked back. > Second, the only reason I would be interested in synchronizing mail > between two systems is so that I could manipulate the tag data in > multiple places, (that is, remove the "unread" tag whether on my > network-disconnected laptop or via web-mail when away from my > laptop). Using imap for synchronizing a file of tags within the mail > store gives you no mechanism for doing any sort of conflict resolution, > right? (Which I think in almost all cases is going to be quite trivial > if there's a chance for a program to resolve it.) I have not thought about this, but you are right. IMAP does not really allow for conflict resolution, which may well be *the* reason why you cannot update existing messages. > [*] Though, I think a plain-text file with tags managed with > something like git (and perhaps a custom merger) could save a lot > of work. Or perhaps a plain-text journal of tag manipulations on > either end that could be replayed on the other. Git is good at conflict resolution if run interactively, but [0] still makes me question whether it can ever take the place of IMAP. However, Asheesh Laroia, who has floated the idea of Git-for-mail at DebConf8 already, has some ideas and hopefully will soon reply to my mail [0], which I just bounced. 0. http://notmuchmail.org/pipermail/notmuch/2010/001114.html -- martin | http://madduck.net/ | http://two.sentenc.es/ apt-get source --compile gentoo spamtraps: madduck.bogus@madduck.net