2011/4/9 Jonas Sundström <jonas@xxxxxxxxxxx>: >> If you mean the trash folder on FS, then we can simply move the >> deleted file to the trash folder no point keeping it hidden on its >> current folder. If the file is restored, it can be moved back to its >> previous folder(by storing previous folder as an attribute). > > I assume you're talking about a two-way split, local and server. > I'm talking about a three-way split, where the local imap-fs has a > front (presentation) and a back (caching). The trash only has to > exist in the front-end and not in the caching or on the server. This front-end is simply the responses you get out of the FS API, right? E.g. what files the imap-fs returns when you ask for a list of files in a directory, etc. The back being how it stores stuff. > And frankly speaking, CPU/disk issues at the service provider > is their problem if the software they use has bad performance for > common operations. The point is that the protocol is designed with the assumption that it's cheap to mark messages for deletion, but expensive to carry them through. Otherwise the EXPUNGE command would not exist in the first place. On the other hand, it is quite common to have filters in mail clients move individual message between mailboxes. -Truls