kill TODO item about killing INBOX

while it's correct that mbsync doesn't strictly need to support both
Inbox and Path in a single Channel due to being able to Group Channels,
this "simplification" would have some undesirable effects:
- the concept is part of IMAP and provides a certain level of
  "zero-conf" (in particular via NAMESPACE). having to set up two Stores
  and associated Channels for one Account to reproduce this
  functionality would add quite some redundancy to common
  configurations.
- implementing MapInbox and move detection across Channels would add
  significant complexity.

one reason why one would want this change in the first place is to get
rid of the ambiguity of INBOX appearing right under Path. this could be
avoided by either using a different magic prefix that cannot appear in
actual mailbox names, or requiring a prefix for boxes inside path as
well. neither approach seems worth the effort, given that nesting
"INBOX" under Path causes problems for some other IMAP clients anyway.
This commit is contained in:
Oswald Buddenhagen 2019-09-09 20:08:28 +02:00
parent 30e166aa18
commit 1004756659

6
TODO
View File

@ -37,12 +37,6 @@ Patterns.
function being missing so far function being missing so far
- this is needed for move detection, which would work only within one Channel - this is needed for move detection, which would work only within one Channel
kill the concept of an INBOX, it is a relic from single-channel operation.
if somebody needs it, he can have two stores with different Paths. the path
can name a single (in-)box (curr. broken with maildir). an empty box name
actually means empty, so the IMAP mailbox should use INBOX for Path (can't
make that the default, as it would mess up the NAMESPACE).
add regexp-based mailbox path rewriting to the drivers. user would provide add regexp-based mailbox path rewriting to the drivers. user would provide
expressions for both directions. every transformation would be immediately expressions for both directions. every transformation would be immediately
verified with the inverse transform. PathDelimiter and Flatten would become verified with the inverse transform. PathDelimiter and Flatten would become