MBOX-Line: From tss at iki.fi  Fri Feb  8 12:56:34 2013
To: imap-protocol@u.washington.edu
From: Timo Sirainen <tss@iki.fi>
Date: Fri Jun  8 12:34:50 2018
Subject: [Imap-protocol] Clarification on RFC 6851
In-Reply-To: <1360356362.25348.140661188777389.5DDC322F@webmail.messagingengine.com>
References: <51129513.5080905@aol.com> <1360342514.3230.53.camel@hurina>
	<1360356362.25348.140661188777389.5DDC322F@webmail.messagingengine.com>
Message-ID: <85789225-4185-487E-B971-4783437732EB@iki.fi>

On 8.2.2013, at 22.46, Bron Gondwana <brong@fastmail.fm> wrote:

>> I was waiting for someone else to give a more exact answer, maybe
>> referring to the RFC text, but here's my take on it. I think the only
>> two reasonable server implementations are:
>> 
>> a) Return OK if you moved all of the messages, NO if you didn't move
>> anything. (This is similar to how COPY works.)
>> 
>> b) Return OK if you moved all messages that currently exist, i.e. you
>> skipped over messages recently expunged by another session. Return NO if
>> you didn't move anything. (I'm not a fan of this implementation.)
> 
> Woah. WTF?
> 
> UID MOVE 1:* Dest
> 
> I think B is the only way that makes sense here. OK for "I moved every existing message matching the selector" and NO for any partial move where a matching message is left in the source mailbox.
> 
> If every matching message is not in the source mailbox, then IMHO you're done. If some got expunged before then user intent is that they don't exist any more, so it's "OK" for them to not be in Dest.

Well, that's not the same as how COPY works, so that would require yet another check for it. I'd have preferred the MOVE spec to require COPY-like behavior..

Also somewhat interesting case is what happens if you try to MOVE messages and none of them exist? OK reply without COPYUID tag? NO reply as a special case for this?..


