DeltaChat suddently stops downloading messages from GMX

Why does DC not rely on the IMAP/DeltaChat folders as a history, but store the message history in its own database?

The original motivation was probably to simplify the implementation. It was built by @r10s so I don’t know for sure.

Using IMAP folder as a storage could indeed improve multi-device support. However, efficient synchronization of the message state, even detecting which ones were removed from the server, is impossible without extensions such as QRESYNC. These IMAP extensions are not supported by all servers. Delta Chat uses only basic IMAP functions to get the message “feed”, stores incoming messages in the database and can use all the power of SQLite to organize the messages however it wants without dealing with all the IMAP quirks. As a bonus, all your chats are readable completely offline.

Overall, this design proved to be really good for metered connections and email providers with extremely limited inbox quota. Some providers don’t allow storing more than tenths or hundreds megabytes, this is much lower than what you can put on average mobile phone or laptop.

2 Likes