On Fri, 2003-06-20 at 19:45, Mark Crispin wrote: > On Fri, 20 Jun 2003, David Woodhouse wrote: > > A common behaviour I desire from a client is to find mailboxen which > > have new mail. Yet the \Unmarked flag doesn't necessarily indicate that > > status. The \Unmarked flag says that no new mail has been delivered > > since the mailbox was last SELECTed. > > Your argument is fallacious. > > You define "have new mail" in a way that is different from what \Marked > and \Unmarked indicate, and conclude that these flags are not useful.
Do we agree that however we define 'new mail', '\Marked' status in most practical circumstances will mean the same to a client as no status at all -- it's '\Unmarked' which is the interesting one since it means that you can skip the folder. Because the behaviour is as follows: No status --> folder _may_ have new mail --> check it. \Marked --> folder probably has new mail --> check it. \Unmarked --> folder doesn't have new mail --> skip it. > The fallacy is the presumption that your definition for "have new mail" is > a global definition that applies in all cases. I defined 'new mail' as that mail which is not \Seen. You define it (at least where we are using it in this context) as mail which is not \Recent. If we can agree on the assertion that fact that \Unmarked is the interesting case and for practical purposes \Marked is equivalent to no marking at all, my definition for 'have new mail' applies in any case where yours does. This is because if I use your definitions, I see false positives -- folders are signalled \Unmarked when I really wanted to look at them. Conversely, if you use my definition, you _won't_ see false positives. Except perhaps in the case where mail is saved as \Seen, which a mail client may want to do for an outgoing mail folder. We can either ignore that under your 2% rule (and on the basis that in the only example case I can think of it's the desired behaviour _anyway_), or perhaps \Unmarked should be taken to mean a folder has _neither_ \Recent nor un-\Seen mail. > > Consider the case where my main client is issuing a LIST periodically > > then asking for STATUS of non-\Unmarked folders. > > I connect with another client, SELECT a folder and FETCH an old message > > from it, for some reason. The folder in question had new mail in it, > > which my main client had not yet observed... but now the folder doesn't > > have \Unmarked status since it's been SELECTed since the new mail was > > delivered. > > There is a solution to that. If your "another client" did not want to > take responsibility for the new mail, it should have used the EXAMINE > command. That's why EXAMINE is there! The client didn't know that all I was doing was fetching one message. In all probability, the client is pine. What tends to happen is someone sends me an attachment or mail which I want to save on some machine other than my main workstation... I log into a remote machine and run pine there, and make it save said mail or attachment. Would pine use EXAMINE in that case? It'd need to use EXAMINE by default, but then SELECT the same mailbox if it later decides it actually does need read-write access. What if I _did_ actually look at one of the many new mails which caught my eye while I had the folder open? Perhaps a new mail in the same thread -- a followup to the mail I was trying to save. In that case, pine would _have_ to SELECT the mailbox in question -- should we still prevent the other clients from considering the folder interesting, by signalling it \Unmarked? > Your complaint, in other words, is that you used a broken client which > canceled the \Recent status of your new messages and rendered the mailbox > \Unmarked, and that therefore \Recent and \Unmarked are not useful. I'd > claim that if you fix your broken client, you won't have the problem. I used pine. > > I'd much rather see \Unmarked clearly defined as 'This folder contains > > no messages without \Seen flag', and \Marked similarly defined as 'This > > folder contains messages without \Seen flag.' > > That just duplicates the UNSEEN value from STATUS, and defeats the entire > purpose. It duplicates the UNSEEN value from STATUS in precisely the same manner as your suggested interpretation duplicates the RECENT value from STATUS, surely? I thought that the idea behind the \Unmarked flag was that we provide the client with an optimisation -- a way to know that it doesn't _need_ to issue STATUS for certain mailboxen. > > That would seem more in > > line with what's really desired by real-world clients. > > What do you mean by "real world client"? Does your client have as many > seats as Pine? I'm not sure. Clients which could use \Unmarked status to optimise away STATUS calls for mailboxen include all clients which keep some kind of tree representation of mailboxen, with a number of unseen messages by each one, perhaps highlighting those where that number is nonzero. That's Evolution, Kmail, Outlook for a start, is it not? AIUI they're all interested in \Seen not \Recent. -- dwmw2
