Hello! I have tested activesyncd + SyncEvolution + Google. Here some random remarks.
must retry eas_sync_handler_get_items() ======================================= eas_sync_handler_get_items() with an empty sync key returns with a new sync key, but without any items, even if the server has some. The "more available" flag is not set. After repeating the call with the new sync key, I do get the existing items listed. Exchange returns them immediately, without having to ask again. I have a retry as workaround in SyncEvolution now. Is it expected that a client handles that? changes not propagated immediately ================================== When running the SyncEvolution change tracking test, it fails because a second simulated client isn't told about the changes made by the other client. This can be avoided by adding a 5 second delay between making a change via one client and checking with the next. I suppose that is acceptable because eventually (? - haven't actually tested retrying) the second client will see the changes. There's no guarantee that it has to be instantaneous. It would be nicer to not have to wait because a small value might be too small (with 5 seconds it still fails occasionally) and a large one will slow down testing. incorrect 401 errors ==================== While running the tests, I got prompted by activesyncd (via ssh-askpass) to enter my credential again, although they had already been used and entered correctly. I've seen the same "problem" with Google CalDAV: after making a certain number of requests, the server will suddenly reject valid credentials. Retrying later with the same credentials then works. I believe that this is some kind of rate limitation. Interactively asking the user will pause the access to the server. But it breaks automated testing. I don't know what the "right" solution is. Perhaps using a different authentication mechanism? In SyncEvolution's CalDAV backend I have some logic which tracks whether the current credentials were accepted by the server before. If yes, then it retries for a while before failing with an invalid credentials error (that's all that it can do because there is no interactive password request mechanism while a sync runs). -- Best Regards, Patrick Ohly The content of this message is my personal opinion only and although I am an employee of Intel, the statements I make here in no way represent Intel's position on the issue, nor am I authorized to speak on behalf of Intel on this matter. _______________________________________________ SyncEvolution mailing list SyncEvolution@syncevolution.org http://lists.syncevolution.org/listinfo/syncevolution