History log of /dovecot/src/doveadm/dsync/dsync-mail.h
Revision Date Author Comments Expand
69a71891361b2b27ff68ed84b29278486628464a 27-Sep-2017 Aki Tuomi <aki.tuomi@dovecot.fi>

dsync: Add hashed_headers setting This makes it possible to configure them

ee8294dbc7bb549557f6ba1264d66b55fbef69b6 10-Oct-2016 Aki Tuomi <aki.tuomi@dovecot.fi>

doveadm-sync: Add end-date support

ae949831f1f668b5501b4b125e7f7b1767fb109b 11-Aug-2016 Timo Sirainen <timo.sirainen@dovecot.fi>

doveadm sync/backup: Added -S <max size> parameter to skip too large mails.

afd6d387ea65843b59fb6051fb567719d2a5279c 08-Aug-2016 Aki Tuomi <aki.tuomi@dovecot.fi>

dsync: Add support for features Add empty_header_workaround as first feature

1dc963aff48292e0d2557527b64fce985b715551 01-Feb-2016 Timo Sirainen <timo.sirainen@dovecot.fi>

lib-mail, dsync: Moved dsync_mail_hash_more() to lib-mail/message-header-hash.*

f0d1de444d0a5849b42e0c1d680a566fcace8aac 28-Jan-2016 Timo Sirainen <timo.sirainen@dovecot.fi>

dsync: Improved header hash v2 algorithm to remove repeated '?' chars. This is to help with Yahoo that replaces UTF-8 chars in headers with a single '?' (instead of '?' per each 8bit byte).

45af47783693b3ba2768c5ad34eeff68132382d0 26-Jan-2016 Timo Sirainen <timo.sirainen@dovecot.fi>

dsync: When comparing headers' hashes to match messages, try to normalize the input. This is especially useful because some IMAP servers return different data depending on whether we're fetching only specific header fields, all headers or entire body. For now we're assuming that any non-ASCII is going to be replaced with '?', which helps at least with Zimbra and Yahoo. The header hashing algorithm is now versionable, so it can be modified more easily in future. This change should make imapc_features=zimbra-workarounds setting obsolete.

3561c7bb472a78af74d755219cc0fc71c85ff5c2 19-Jan-2015 Timo Sirainen <tss@iki.fi>

dsync: Added -t <timestamp> parameter to save only mails newer than <timestamp> If one side has old mails that don't exist on the other side, they are ignored (not synced and not deleted).

d519a0449d0e536a32db93305516fdbd7db6773d 29-Sep-2014 Timo Sirainen <tss@iki.fi>

dsync: Added DSYNC_BRAIN_FLAG_NO_MAIL_PREFETCH to avoid opening mails unnecessarily.

8bc87e22fecd20797112b86778a961b08dc1f5c8 30-Apr-2014 Timo Sirainen <tss@iki.fi>

dsync: saved-date doesn't need to be looked up until mail body is being read. This should improve the performance when the saved-date isn't already cached or otherwise quickly accessible. This change also makes dsync slightly incompatible with earlier versions. When using dsync with an earlier version the saved-dates aren't synced. It would be too much trouble to try to preserve full backwards compatibility, especially because saved-date doesn't matter so much and isn't even visible to IMAP clients.

f97c983e7a742e1d54ec60e502093abbb3ad2907 16-Nov-2013 Timo Sirainen <tss@iki.fi>

dsync: Give hints to lib-storage about what fields we're going to fetch.

d8bdf558c7ba173fc47a194633d9bd97af1b9c74 20-Mar-2013 Timo Sirainen <tss@iki.fi>

dsync: Don't crash when requested mail doesn't have a GUID.

d9b9687bf8cae9cfb070b1b7aadefa683220269f 16-Feb-2013 Timo Sirainen <tss@iki.fi>

dsync: Various importer fixes. Handle unexpectedly wrong mailbox state better.

252f5c6a63878e7a8a7ffb5847eecbad7f8737e8 31-Jan-2013 Timo Sirainen <tss@iki.fi>

dsync: Fixed syncing message keywords. "add" and "final" can't be mixed together always without causing keywords to be added back unintentionally.

f5d3d7a0e1e517c6dff9bb1750334c8d9e4dce99 28-Jan-2013 Timo Sirainen <tss@iki.fi>

dsync: When syncing locally, mailbox_copy() the mail to attempt a fast copy.

6abf66a3731d52889517bd644595c540e3a9b3ec 04-Jan-2013 Timo Sirainen <tss@iki.fi>

dsync: Use private modseqs to support syncing private flags in shared mailboxes.

7bd5b1c64cc987715bdaf8cc4907c3c37d5d7b29 22-May-2012 Timo Sirainen <tss@iki.fi>

Initial version of dsync rewrite. * doveadm backup not implemented at all yet * syncing mailbox renames is somewhat broken (at least renaming \noselect mailboxes) * saving/restoring "state" is implemented by dsync brain, but not by doveadm. this should be easy to do, just need to figure out how the replication code wants it.

/dovecot/src/doveadm/doveadm-settings.c Makefile.am doveadm-dsync.c dsync-brain-mailbox-tree-sync.c dsync-brain-mailbox-tree.c dsync-brain-mailbox.c dsync-brain-mails.c dsync-brain-msgs-new.c dsync-brain-msgs.c dsync-brain-private.h dsync-brain.c dsync-brain.h dsync-data.c dsync-data.h dsync-deserializer.c dsync-deserializer.h dsync-mail.c dsync-mail.h dsync-mailbox-export.c dsync-mailbox-export.h dsync-mailbox-import.c dsync-mailbox-import.h dsync-mailbox-state-export.h dsync-mailbox-state.c dsync-mailbox-state.h dsync-mailbox-tree-fill.c dsync-mailbox-tree-private.h dsync-mailbox-tree-sync.c dsync-mailbox-tree.c dsync-mailbox-tree.h dsync-mailbox.h dsync-proxy-client.c dsync-proxy-server-cmd.c dsync-proxy-server.c dsync-proxy-server.h dsync-proxy.c dsync-proxy.h dsync-serializer.c dsync-serializer.h dsync-slave-io.c dsync-slave-pipe.c dsync-slave-private.h dsync-slave.c dsync-slave.h dsync-transaction-log-scan.c dsync-transaction-log-scan.h dsync-worker-local.c dsync-worker-private.h dsync-worker.c dsync-worker.h test-dsync-brain-msgs.c test-dsync-brain.c test-dsync-common.c test-dsync-common.h test-dsync-proxy-server-cmd.c test-dsync-proxy.c test-dsync-worker.c test-dsync-worker.h