All, my IMAP client [1] marks messages as deleted, but doesn't expunge. Dovecot (2.2.27-3+deb9u2) expunges them. Is this because the mailbox is part of public namespace?
.... ::1.38247-::1.00143: MALP6 STORE 48,49,50,51,52,53,54,55,56,57,58,59,60,61 +FLAGS (\Deleted) ::1.00143-::1.38247: * 48 FETCH (FLAGS (\Deleted \Seen)) * 49 FETCH (FLAGS (\Deleted \Seen)) * 50 FETCH (FLAGS (\Deleted \Seen)) * 51 FETCH (FLAGS (\Deleted \Seen)) * 52 FETCH (FLAGS (\Deleted \Seen)) * 53 FETCH (FLAGS (\Deleted \Seen)) * 54 FETCH (FLAGS (\Deleted \Seen)) * 55 FETCH (FLAGS (\Deleted \Seen)) * 56 FETCH (FLAGS (\Deleted \Seen)) * 57 FETCH (FLAGS (\Deleted \Seen)) * 58 FETCH (FLAGS (\Deleted \Seen)) * 59 FETCH (FLAGS (\Deleted \Seen)) * 60 FETCH (FLAGS (\Deleted \Seen)) * 61 FETCH (FLAGS (\Deleted \Seen)) MALP6 OK Store completed. ::1.38247-::1.00143: MALP7 SEARCH DELETED .... Oct 2 10:18:03 hyptest dovecot: imap(chris): delete: box=MailingListen/test125, uid=180, msgid=<740a9ba3-d637-3fa0-1b87-ff8d79491bf0@ hyp.postbox.xyz>, size=1509 Oct 2 10:18:03 hyptest dovecot: imap(chris): expunge: box=MailingListen/test125, uid=167, msgid=<740a9ba3-d637-3fa0-1b87-ff8d79491bf0 @hyp.postbox.xyz>, size=1509 namespace { list = yes location = maildir:/var/vmail/public/:LAYOUT=fs:INDEXPVT=%h/.public-indexes prefix = MailingListen/ separator = / subscriptions = no type = public } - Chris [1] https://raw.githubusercontent.com/quentinsf/IMAPdedup/master/imapdedup.py