Well, I said that I wanted a clean way to do a move while completely
forgetting about UID EXPUNGE -- in spite of the fact that I have that
implemented in my own server. So, I apologize for making a fuss about
nothing. I like UID EXPUNGE because it serves both for moves between
server mailboxes and for moves from a server mailbox to an external one.
Of course (he said in a probably futile attempt to deflect some of the
guilt born of his forgetfulness), the real problem ("real" as in something
I cannot be held the least bit accountable for) is that clients do not use
UID EXPUNGE. I just ran a test with most of the clients in my small
collection and not one of them took advantage of it to do a clean move.
I will also take this opportunity to throw in my two cents' worth of
opinion about a MOVE command. I feel it may be a pity that a MOVE was not
incorporated into IMAP4 originally. It is really hard to say though
because, with a MOVE, the protocol would have been a rather different
animal from the one we know. However I think that adding a MOVE at this
point would be a really bad, uh, move. For one thing, I suspect that
making it a requirement would cause a storm while making it optional would
lead to very few people implementing it.
Pete