Releases: ITHit/UserFileSystemSamples
Releases · ITHit/UserFileSystemSamples
v4.0.10891.0-Beta
- Full synchronization added to Virtual Drive and WebDAV Drive samples.
- The file/folder is now left in the not In-Sync state after the move operation. Rolling back changes made in v4.0.10312.0 Beta.
- The file did not auto-unlock after IClientNotifications.UpdteAsync() call. Now is auto-unlocked.
- Sample Lock/Unlock context menu was displayed on all Cloud Filter API-based drives, such as OneDrive. Now this bug is fixed.
- IEngine.FilterAsync() was not called inside IClientNotifications.UpdateAsync() method for Locking and unlocking. Now FilterAsync() is called for locking and unlocking.
- OperationType.Unlock added.
- Detetion code in Virtual File System and WebDAV Drive samples moved from DeleteCompletionAsync() to DeleteAsync().
- Logging refactored.
- Adding start/stop console commands for engine, remote storage monitor and full sync service in all samples.
- FileLoadException "the process can not access the file because it is being used by another process." may be thrown during hydration and dehydration if the file is blocked. Now the info message is logged by the Engine instead of throwing an exception.
v4.0.10509.0-Beta
- WebDAV Drive sample now receives "created", "updated", "deleted", "moved", "locked", "unlocked" change notifications from the server via Web sockets.
- IEngine.FilterAsync() method now has an OperationType parameter. The FilterAsync() implementation is refactored in Virtual Drive and WebDAV Drive samples.
- IOperationContext optional parameter added to the IEngine.FilterAsync(), ILock.LockAsync(), ILock.UnlockAsync() and ILock.GetLockModeAsync() methods.
- AutoCAD temp files filter prototype added to Virtual Drive and WebDAV Drive sample. Filtering code moved to Windows Common project.
- MS Office / AutoCAD sample docs monitor did not dispose of. Now the monitor is properly disposed of.
- Locking refactored in WebDAV Drive sample.
- Detetion code in VirtualDrive sample moved from DeleteCompletionAsync() to DeleteAsync().
- Icons in Lock/Unlock context menu provided in Virtual Drive sample.
- Deleting ETag or custom columns for folder caused the deletion of all columns, ETags and locks data for underlying folders. Now the ETag or custom columns are properly deleted for the specified folder only.
- Virtual Drive and Virtual File System samples hydrate the file when a file is added to the remote storage. Now, this bug is fixed.
v4.0.10312.0-Beta
- Lock/Unlock context menu provided in Virtual Drive sample.
- The file is left in the not in-sync state after the rename/move operation and is being hydrated. The IFile.WriteAsync() is called after rename/move operation. Now the file is marked as in-sync after the move and is not being hydrated after the move.
- The folder was left in the not in-sync state after the rename/move operation. Now the folder is marked as in-sync after the rename/move if it was in-sync before rename/move.
- All samples now use .NET 5.
- Logging refactored in samples. Now process name is being added to the log.
- WebDAV Drive sample is now using WebDAV Client Library for .NET 5 Beta.
- macOS source codes were missing from the source codes version of the archive supplied with the source codes license. Now macOS souce codes are supplied.
- Folder move operation to the user file system does not create items in the folder. Now, this bug is fixed.
- WebDAV Drive sample throws STG_E_ACCESSDENIED exception on files locked by other users. The ExternalDataManager.ShowCustomColumnsAsync() method throws an exception if the method is called on a file with a read-only attribute. This bug is now fixed.
- IFile.WriteAsync(), IFolder.WriteAsync(), ILogger.LogError() and ILogger.LogMessage() methods now provides optional IOperationContext parameter. EngineErrorEventArgs and EngineMessageEventArgs now provide OperationContext property.
- The ProcessInfo class was added.
- The IOperationContext.ItemId property added.
- The IMoveCompletionContext now inherits IOperationContext.
- IClientNotifications.GetLockModeAsync() method added.
v4.0.10295.0-Beta
v4.0.10295.0-Beta
v3.3.9602.0
- An error is displayed in Windows Explorer when a hydrated file is being deleted in Virtual File System sample. The hydrated file is being moved to the recycle bin during the delete operation. The move method implementation is now refactored to avoid moving hydrated files to the recycle bin in Virtual file System sample.
- The PlaceholderItem.RevertPlaceholder() method is provided to revert the placeholder back to the file/folder.
v3.3.9488.0
- Thumbnails did not work if Virtual Drive sample deployed as a package. Surrogate COM handler is broken in latest Windows updates. Thumbnails handler now refactored to run as a COM exe server.
v3.2.8936.0
- Some applications, such as Notpad++, remove the Offline attribute when saving a document, converting a placeholder to a regular file. In Virtual Drive sample the Attributes filter is added to the MsOfficeDocsMonitor class to monitor Changed event and convert the file back to the placeholder.
- If exception occurred during sample start-up the exception did not log. Now all exceptions that occurred during app start-up are logged.
v3.2.8901.0
- msix packaging is now supported. The packaging project is added to the Virtual Dive sample.
- The thumbnails provider in the Virtual Drive sample now runs as a surrogate COM and can be installed/removed without admin privileges as part of the packaged installation. The thumbnails handler can now be debugged running the project directly from Visual Studio.
- Virtual File System sample refactored. The file/folder ID is now used to link user file system file with remote storage. Mapping.MapPath() function is removed from the sample project.
- targetParentItemId parameter, representing a new parent folder ID, added to IFileSystemItem.MoveToAsync() method.
- Item ID is now returned by the IFolder.CreateFileAsync() and IFolder.CreateFolderAsync() methods.
- Placeholder creation performance improved.
- Selecting "Always keep on this devise" on a folder that was never enumerated does not load file content. Now, this bug is fixed.
Virtual File System for macOS sample refactored.
v3.1.7115.0-Beta
- Item ID support provided. The IEngine.GetFileSystemItemAsync() method now has an itemId parameter. IFileSystemItemMetadata.ItemId property added. PlaceholderItem.GetItemId() method added. The IFolder.CreateFileAsync() and IFolder.CreateFolderAsync() methods now return item ID.
- PlaceholderItem.SetItemInfo() method renamed to PlaceholderItem.SetMetadata().
- The CustomDataManager calss in sample code renamed to ExternalDataManager to avoid confusion with IFileSystemItemMetadata.CustomData/PlaceholderItem.GetCustomData().
v3.0.7021.0-Beta
- Thumbnails implementation is provided in the Virtual Drive sample. The Virtual Drive can now read thumbnails from the remote storage and display them in Windows Explorer in thumbnail mode.
- FileSystemItemMetadata.CustomData property getter returned incorrect data. Now, this bug is fixed.