v7.0.22158.0-Beta
ITHitBuild
released this
25 May 15:20
·
18 commits
to master
since this release
- On Windows platform sync-token is now initialized on Engine start if the root folder implements ISynchronizationCollection interface. The Engine calls GetChangesAsync() on first start.
- On Windows platform items were set into conflict state during initial synchronization on WebDAV Drive sample start. Item creation during incoming sync may interfere with same item creation by other threads, such as folder listing. Now if item already exists, the item is not set into a conflict state. The conflict state is determined using eTag during outgoing synchronization.
- On Windows platform IServerCollectionNotifications.ProcessChangesAsync() and IServerNotifications.DeleteAsync() methods deleted not in-sync items (new, moved and updated items). Now if such items are set to conflict state in case of the ProcessChangesAsync() call.
- On Windows platform if item is blocked during deletion by a concurrent thread, the incoming sync did not display conflict icon. Now this bug is fixed.
- On Windows platform, in case item already exists, the incoming sync did not display conflict icon. Now this bug is fixed.
- On Windows platform setting conflict state during move may cause exceptions in IServerCollectionNotifications.ProcessChangesAsync() call if source did not exit. Now this bug is fixed.
- EngineWindows.UninstallCleanupAsync() method is replaced with a path to data storage to be deleted on uninstall, The data storage path is provided in EngineWindows.DataPath property.
- Remote storage monitor in WebDAV Drive sample on Windows did not dispose WebSockets if server is disconnected. Now WebSockets are properly disposedovided sync toke.
- CancellationToken parameter now added to IServerCollectionNotifications.ProcessChangesAsync() and ISynchronizationCollection.GetChangesAsync() methods.
- Logging refactored. IEngine interface does not inherit ILogger any more. ILogger is now available via IEngine.Logger property.