-
-
Notifications
You must be signed in to change notification settings - Fork 117
Description
These two options are "legacy options" that exist to support "shared mailbox" usage similar to "show_emails" (#7631).
We currently have no plan on how we want to remove these options. We need a migration plan for two cases: mvbox_move=1, only_fetch_mvbox=0 and only_fetch_mvbox=1.
In case of mvbox_move=1 and only_fetch_mvbox=0 we can probably add a device message warning about the upcoming change and then turn off the option. If by this time we already solve #7631 somehow, then the user can solve the problem of cluttered inbox by adding a second relay and migrating there.
For only_fetch_mvbox=1 it is a bit more complicated as it is used to support the "alias" usecase, see here: https://support.delta.chat/t/it-may-be-unobvious-that-the-deltachat-folder-use-case-is-going-away/4495
If we want to support this for servers where user has access to configuring an alias and adding a sieve filter that moves messages with Delivered-To set to this alias to a separate folder, we can make a per-transport option "folder" and just run the inbox loop on this folder.
I am looking at the current implementation of only_fetch_mvbox and it seems to be very hacky: we still maintain connection to the inbox, but then should_ignore_folder returns false for the inbox and it is ignored.
Rough plan:
- Add device message for users with
mvbox_move=1andonly_fetch_mvbox=0that the option is deprecated. Not as a migration, just somewhere after opening the database or in housekeeping or so. - Maybe one release later: turn
mvbox_move=0off and remove all the code that allows running multiple IMAP connections. Instead run a single IMAP loop, either on the Inbox or on "DeltaChat" folder ifonly_fetch_mvbox=1is on. At this point users still cannot add second relay ifonly_fetch_mvbox=1is on. - Turn
only_fetch_mvboxinto a "folder" option in the advanced settings of the relay. Maybe make it unchangable in the UI so users cannot configure new relays in such a way, but code-wise it is probably not a big deal to support.