From mboxrd@z Thu Jan 1 00:00:00 1970 From: ehabkost@raisama.net (Eduardo Habkost) Date: Thu, 27 Nov 2008 11:46:06 -0200 Subject: [sup-talk] Handling of messages appearing on multiple sources In-Reply-To: <1227740974-sup-6395@entry> References: <1227547347-sup-6279@blackpad> <1227647755-sup-3231@ausone.local> <20081126213523.GB4628@blackpad> <1227740974-sup-6395@entry> Message-ID: <1227791474-sup-2961@blackpad> Excerpts from William Morgan's message of Qua Nov 26 21:31:27 -0200 2008: > Reformatted excerpts from Eduardo Habkost's message of 2008-11-26: > > I would even argue that adding the tags configured for both sources > > should be the default, but I don't know if there are users relying on > > the current behavior, today. What do you think? > > Actually, I think you're right. I don't know that there's a reason, at > least during normal operation, to discard previous index state. It doesn't discard previous index state, currently. The problem is the inverse: it uses the previous index state and doesn't add any other label to an alrady indexed message. > > Can you try the attached patch and see if it fixes the problem? It seems to do exactly what I want for new messages, but won't it break the ability to keep unread/inbox state unchanged if I use --all on sup-sync? I wouldn't like to all my archived messages to pop on inbox again if I specify --all. Sometimes I specify --all because messages were moved between sources, but I want to keep their archived/read state. > > > But as an user, I expect that a message appearing on both a non-inbox > > source and an inbox source would get into the inbox. The problem would > > be handling a message appearing on an inbox source after the user have > > archived it. On this case, the user may expect the message to not > > appear on the inbox again (I am not sure what would be more > > intuitive). > > Well, it's an ambiguous situation, and I'm generally happy in ambiguous > situations to take the simplest (to implement!) approach, which in this > case is to pop it back into the inbox. On the specific case of a message delivered to multiple sources, I agree. But if messages were just moved or copied between mailboxes, the user may want to keep the current archived/unread state. Actually, the archived/read state is currently the most important data the Sup index carries for me. Ouch, that's complicated. 8) I think the problem here is that the unread/inbox labels are special in a way: for most labels, I don't care if Sup adds them to my messages in addition to the current labels. But I would really care if the inbox/unread labels were re-added to my messages when I didn't expect it. Maybe this could be solved by forcing the user to be extra careful when moving messages between sources. But the current ability to simply move messages around and just use --all on sup-sync is a killer feature to me. I wouldn't like to break it. > > > Additionally, I think it would be nice if sup were aware of when the > > message appears multiple times on the sources, instead of rewriting > > the source and offset fields. Most times the user doesn't need to be > > aware there are multiple versions of a message, but when checking > > message headers or other small details of messages coming from > > different paths, it would be useful to have both versions available. > > I think I agree. STS (the apocryphal new version of Sup) probably won't > canonicalize by message id like Sup does. However, having some sort of message-id-based state seems to be useful for backing up and restoring state or when moving messages between sources, because it is the only thing that identify messages when they are moved around. The way it is implemented can change, but as an user I like the way sup presents messages with the same message-id as a single entity. Even if stored on different places or having some differences, they are the same message, after all. -- Eduardo