During initialization, don’t ask for STATUS of a mailbox, when the IMAP server has sent it (kind of unsolicited) in the past
(Extracted from #107 (closed).) When I start Evolution it calls:
[imapx:A] I/O: 'A00003 NAMESPACE'
[imapx:A] I/O: '* NAMESPACE (("" "/")) (("Other Users/" "/")) (("Shared Folders/" "/"))
A00003 OK Completed'
[imapx:A] I/O: 'A00009 LIST "" "*" RETURN (CHILDREN SUBSCRIBED STATUS (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ) SPECIAL-USE)'
...
* LIST (\Subscribed \HasNoChildren) "/" "Other Users/A/M/G"
* STATUS "Other Users/A/M/G" (MESSAGES 0 UIDNEXT 1 UIDVALIDITY 1539324791 UNSEEN 0 HIGHESTMODSEQ 322088)
A00009 OK Completed (0.216 secs 306 calls)'
[imapx:A] I/O: 'A00010 LIST "" "Other Users/*" RETURN (CHILDREN SUBSCRIBED STATUS (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ) SPECIAL-USE)'
* LIST (\Subscribed \HasNoChildren) "/" "Other Users/A/M/G"
* STATUS "Other Users/A/M/G" (MESSAGES 0 UIDNEXT 1 UIDVALIDITY 1539324791 UNSEEN 0 HIGHESTMODSEQ 322088)
A00010 OK Completed (0.093 secs 51 calls)'
...
[imapx:A] I/O: 'A00133 STATUS "Other Users/A/M/G" (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ)'
[imapx:A] I/O: '* STATUS "Other Users/A/M/G" (MESSAGES 0 UIDNEXT 1 UIDVALIDITY 1539324791 UNSEEN 0 HIGHESTMODSEQ 322088)
A00133 OK Completed'
So the same status of "Other Users/A/M/G" is returned three times, in replies to:
- A00009 LIST "" "*" RETURN (CHILDREN SUBSCRIBED STATUS (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ) SPECIAL-USE)
- A00010 LIST "" "Other Users/*" RETURN (CHILDREN SUBSCRIBED STATUS (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ) SPECIAL-USE)
- A00133 STATUS "Other Users/A/M/G" (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ)
I would say, without pretending to know what IMAP says, if A000009 returns the status of Other Users/*, then A00010 shall not be issued and if Evolution has obtained the status of "Other Users/A/M/G", then it shall not ask for it in A00133.
Edited by Дилян Палаузов