Hi Oswald,

>> Thinking again... can I receive those directions?
>>
> so, somewhat belated, here they are:
>
> - 1. UIDVALIDITY change recovery

>      - it happens that messages have no Message-Id (in particular, this
>        is permissible for drafts). the way around that is synthesizing
>        one: fetch all available headers (subject, from, to, cc, bcc,
>        date), concatenate them, and calculate a hash. the paranoid
>        version would hash the whole message.

The paranoid version, nor the "take other headers" option, won't work
most of the time. In the real world, servers change headers, a bit.
Particularly the "Date:" one can be very different, as a string.
Even Message-Id is sometimes changed; not the human readable value
but case (uppercase, lowercase), spaces/tab are changed.

I also encountered really different messages with the same "Message-Id",
sometimes.

So imapsync uses "Message-Id" and "Received" headers by default to identify 
messages.
The best combination, but it's better to say, the less worse combination
for the real world. Not to forget some adaptations with spaces and case.

> - 3. optional: add support for CONDSTORE & QRESYNC
>    - background: mbsync currently fetches the headers of all messages it
>      wants to sync and calculates the delta itself. that costs a lot of
>      bandwidth.

If a cache of uids/message-Id is done then the bandwidth/time consumption
is very very reduced.

> bonus feature: with the Message-Id handling in place, it would be also
> possible to implement smooth migration from other synchronizers.

Yes, it would bring the stateless feature.


-- 
Au revoir,                             09 51 84 42 42
Gilles Lamiral. France, Baulon (35580) 06 20 79 76 06

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
isync-devel mailing list
isync-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/isync-devel

Reply via email to