MBOX-Line: From petite_abeille at mac.com  Tue Mar 20 14:33:37 2012
To: imap-protocol@u.washington.edu
From: PA <petite_abeille@mac.com>
Date: Fri Jun  8 12:34:48 2018
Subject: [Imap-protocol] [ann] lua imap server
In-Reply-To: <17068.1332235633.171765@puncture>
References: <CBFD9662-269A-4573-8EF1-E07E7BE4671C@mac.com>
	<20120319204645.GA2859@launde.brong.net>
	<E9A1A407-E02D-4FE8-82EC-B5DDC8F0EDE2@mac.com>
	<17068.1332195426.345309@puncture> <17068.1332235633.171765@puncture>
Message-ID: <C6227176-73D4-455D-91D1-601384A7591E@mac.com>


On Mar 20, 2012, at 10:27 AM, Dave Cridland wrote:

> No, NOOP is a command that does nothing; an EXISTS response is not automatically generated - it can be generated during any command (or, for extra bonus points, not during any command), but only when there are new messages.

Sure. Does it hurt though? If one send an EXISTS response even though the message count hasn't changed? 

> Polymer (and probably other clients) doesn't care, but technically they could behave oddly in this case.

Fair enough.

> Incidentally, there are two commands that do nothing in IMAP, and both are typically used for checking for new mail. NOOP returns instantly, whereas IDLE returns only after the client sends DONE.

IDLE is an extension, no? 

> They're allowed to do whatever you want to make this happen behind the scenes in your server, of course, they just don't affect the state of the mailbox from the client's point of view.
> 
> But a client *could* check the mailbox by repeatedly polling with a SEARCH command, too.

I thought EXPUNGE responses are not welcome during a FETCH, STORE, or SEARCH, no? So a SEARCH would not cut it to trigger a status update, wouldn't it?

In any case, for my humble purpose the set of messages is frozen upon a SELECT and is only ever updated upon a NOOP request. 

"NOOP, not CHECK, SHOULD be used for new message polling"
-- 6.4.1.  CHECK Command

Thanks for the feedback though as I have to confess that sometime both the letter and the spirit of the protocol escapes me. Talking it through helps :)



