David Abrahams wrote: >> >Especially, what does it mean in the case where the pattern matches >> >"^-", i.e., an NNTP folder. >> >> The original message will be deleted, so for nntp it is putting the >> message in the killfile: >> >> ,---- >> | (luna-define-method elmo-folder-delete-messages ((folder elmo-nntp-folder) >> | numbers) >> | (elmo-folder-kill-messages folder numbers) >> | t) >> `---- >Hmm, I notice that the concept of “killed” messages isn't documented >anywhere. Dispose functionality aside, does WL support a killfile for >all kinds of folders, or just for NNTP? For all kinds of folders (grep "killed" elmo/*el). >> You might refer to the /process/ of deleting messages that invokes >> flagging them with a special flag \Deleted. >Your use of “process” and “invoke” in the sentence above don't make >any sense to me, leaving me a bit confused. In IMAP messages are deleted in two steps: 1. Mark them \Deleted, 2. Remove them from the mailbox (delete-expunge model). >> Messages that are flagged this way are always >> expunged: >> >> - directly on the EXPUNGE command >> >> - indirectly by a CLOSE command on a mailbox opened read/write >I don't see how that can be true... unless read/write refers >*only* to the ability to remove messages from the mailbox, and is >totally independent of the ability to add messages and set flags. No, read/write means... read/write. RFC 3501: ,---- | 6.4.2. CLOSE Command | | Arguments: none | | Responses: no specific responses for this command | | Result: OK - close completed, now in authenticated state | BAD - command unknown or arguments invalid | | The CLOSE command permanently removes all messages that have the | \Deleted flag set from the currently selected mailbox, and returns | to the authenticated state from the selected state. No untagged | EXPUNGE responses are sent. | | No messages are removed, and no error is given, if the mailbox is | selected by an EXAMINE command or is otherwise selected read-only. | | Even if a mailbox is selected, a SELECT, EXAMINE, or LOGOUT | command MAY be issued without previously issuing a CLOSE command. | The SELECT, EXAMINE, and LOGOUT commands implicitly close the | currently selected mailbox without doing an expunge. However, | when many messages are deleted, a CLOSE-LOGOUT or CLOSE-SELECT | sequence is considerably faster than an EXPUNGE-LOGOUT or | EXPUNGE-SELECT because no untagged EXPUNGE responses (which the | client would probably ignore) are sent. | | Example: C: A341 CLOSE | S: A341 OK CLOSE completed `---- This problem is also discussed in RFC4549, 4.2.4. I >have used IMAP clients that will give me a choice of whether to simply >mark messages as \Deleted or actually expunge the messages when I >delete them in the client. I could move new messages into those >folders and set flags without causing an EXPUNGE. It is possible to deselect a mailbox without a CLOSE and its consequences: E.g. select the current mailbox read-only (EXAMIME) and then call CLOSE, SELECT another mailbox, or use the UNSELECT extension (if available). HTH, -- David -- OpenPGP... 0x99ADB83B5A4478E6 Jabber.... dmjena@jabber.org Email..... dmaus@ictsoc.de
Attachment:
pgpEtPTeSpQNG.pgp
Description: PGP signature