Fix incorrect check in Selective Sync that prevented folder changes to propagate to the server, when the parent folder was unselected
Added Keep Local, Keep Server conflict resolution actionsModified ConflictsView.xaml to always display a combobox with the actionsFixed PollAgent bug that caused false conflict reportsModification of settings now causes a sync operation to force PollAgent to use modified poll settings
Added Clear Conflict action to resolver
Fixed bug that didn't record skipped uploads, resulting in repeated upload attempts of read-only filesModified File Properties dialog to look more like Window Properties
Fixes to hashingFixes to selective sync
Modified Selectives.IsSelected(ObjectInfo) to include the user's account, to properly check if selective synchronization is enabled.ObjectInfo includes the account info of the target file, not the user's account and fails for shared files
Added code for shared folder mirationChanged minimum polling interval to 1Added null checks to Selectives
Added option to disable selective SynchronizationWhen selective sync is disabled only owned files are synchronized. Shared files are not synchronized.Folders (not their contents) are synchronized even when selective sync is disabled
Selective Sync now shows both server AND local folders
New class to check if there is an active & connected NIC, it will disregard virtual, nicks tunnels and loop backs, it can also accept a minimum IF speed (Max IF speed reported by the windows API for the selected NIC)
Signed-off-by: George Pantazis <gpant@noc.grnet.gr>
Adding a new account now forces a logout to clear any stale Pithos cookies
Minor fix in Selective sync to ignore 403 errors the first time new share listings are requested
File index overflow fix
Added selective sync check after resuming sync
Modifications to enable Sync Pausing for all operationsAdded cancellation of the current operation
Fix for missing directories
Fix for FileState.Create constraint violation in StatusAgent.csUploader.cs modified to check if it is possible to upload a new shared file before actually uploadingCloudFilesClient.CanUpload added that checks whether a file can be uploaded in the parent folder of a target object...
TODO: Check that we can upload new files in shares
Selective Sync fixesFileState persistence fix that correctly stores forbidden filesPermission check fix
Fixed handling for Content_Type "application/folder" in SelectiveSync and other locations
New SQLite version
v 0.7.20424
Now immediatelly downloading new selected folders
Added orphan state removal
Fixed incorrect account key in PollAgent.csFixed incorrect check for Uri and Path relations in CollectionExtensions.cs
Changed listbox in ConflictsView.xaml to datagridFixed context menu
Notification changesFixed the way folders appear in Selective SynchAdded form with conflicts
Extracted upload/download functionality from NetworkAgent to Uploader.cs and Downloader.cs
Taskbar menu fixesEmpty file fixes
Fixes for v.0.7.20401
Added option to disable certificate checking
Merge branch 'master' of https://code.grnet.gr/git/pithos-ms-client
Conflicts: trunk/Pithos.Client.WPF/Properties/AssemblyInfo.cs trunk/Pithos.Network/RestClient.cs
Replaced v 1.0.66 of SQLite with v. 1.0.79 specific for .NET 4.0
Installer:Added 3 new images for the installer.
Pithos:Updated Images (Splash, About)Updated Application icon
Fixed Typo in object preferences Synch -> SyncFixed Type in Status Window Uploading {0} to Upload -> Uploading {0}Changed Version to 20317...
Fixed wrong file offset check
Large file offset fix
Added fixes for v.0.7.20311
Changes to logoRenamed "Pithos" logo to "Pithos+" Fixes to login URL
Various changes
Added embedded browser form LoginView.xaml to overcome IE redirect bugs
Moved Pithos data and logs from the GRNET folder under AppData to a GRNET\PITHOS folder
NetSparkle/NetSparkleAppCast.cs fix to retrieve x64 or x86 msiAdded status view windowAdded notifications to DeleteAgent.cs
Fixed problems with missing empty directories due to incorrect LocalFileComparer.cs checkFixes #2197
Fixes to NetSparkleFixes to IfModifiedSince calculationAdded console window
Account page changes
Added UpdateForceCheck parameter
Added configurable settings for batch idle timeout
Added file event batching
Replaced hashing algorithm with inplace version
Logging improvements
Modified loggers to use their enclosing classActivated lossy logging of the last 30 messages before an errorFixes #1799
Fixed loop limit bug in Task.TryRemove for the ObservableConcurrentCollection.Fixes #2131
Modified FileSystemWatcherAdapter.cs to raise create events for all child objects under a new folderFixes #2120
Replaced BlockingCollection in Agents/Agent.cs with AsyncProducerConsumerCollection, to reduce locking and avoid exceptionswhen an agent stops (e.g. when a FileAgent stops because an account is removed).Cleanup of several related files
Fixes #1785
Fix #2121, manual changes to the API Key were not passed to the appropriate PithosMonitor objectGeneral cleanup
Modified Selective Sync behavior to mark the files in the unselected paths as Unversioned, instead of removing them.Resolves #2112
Simplified snapshot comparisons usind dictionaries
Modified differencer to compare UUIDs instead of URLs
Added modifications for move detection. Resolves #1999, #1891
Replaced auto reauthorization with a message that asks the user to renew the api key.Modified the account page of Preferences to display warnings for expired accounts
Removed old code that used MD5 for small filesCloses 2096
Further simplified state initialization
Replaced lists with arrays in State to make the state class read-only
SyncFiles method modified to detect conflicts as per #2096
Modified Differencer to set the PreviousHash value for Common objectsExtracted Current,Previous fields to nested State class to make Post exception safe and use a more functional style
Added manual token refresh button to account page. Closes #2095Modified check for interrupted files to raise notification only if there are actual interrupted files. Closes #2081
Fixes to create the proper filepaths from URLs
Fixed to polling and differencing
Modified SnapshotDifferencer to detect NoModificationInfo entries.NoModificationInfo entries are replaced by matching entries from the previous snapshot.
Synch seems OK. Identified problem with poll differencer
File and polling filtering work properly
Converted message arrays to Uri arrays
Added code to facilitate retrieval of server folders
GetFileAgent moved to FileAgent.cs
Renamed PauseEvent to ProceedEvent
Extracted polling functionality to a separate PollAgent.csThe PollAgent pauses polling while network operations are in progressModified deleted file processing to ignore files in the Trash folder.
Modifications to raise move events for moved child objects from the FileAgent
Added header to all files. Closes #2064
Moved the pithos.db location to the same location as the user settings. This will make cleanup of all user settings easier during uninstallation
Changed AsyncManualResetEvent.Set behaviour to occur asynchronously. In the previous version calling Set resulted in the poll method executing in the main thread
Replaced _differencers Dictionary with ConcurrentDictionary
Simplified proxy management code
Extracted cloud delete functionality to a separate DeleteAgent
Added AsyncManualResetEvent to control manual synchronization
Replace manual reset event with asynch reset event for pausing the up/download agent
Simplified SnapshotDifferencer.cs
Added SnapshotDifferencer.cs to calculate the difference between the current and previous listings of the server filesChanged hashing to use an ActionBlock with parallelism options.Added parallelism property in Preferences
Added differencer and tests
Preliminary fix for #1999, incorrect deletionsThe first attempt is to detect deletions AFTER the first poll by comparing a cached listing to the new listing. Missing files are deletes. Can be expanded to simplify the rest of the processing code as it can also yield new files and modified files (same path, higher versions or different lengths or hashes)
Added _lastSeen dictionary to use as log of files, in an attempt to prevent deletion of files that are still being uploaded, or have finished uploading after a poll but before processing of deleted files start
Added check for queued or active objects when checking for files to delete
Merge branch 'master' of \\\pk2010\Pithos\
Conflicts: trunk/Pithos.Client.WPF/Shell/BalloonIconConverter.cs
Changing the delete agent to handle renames as well didn't help. Renames or moves will fail if the file being renamed hasn't been uploaded yet (e.g. the first time a file is created in Windows Explorer).
Added a further delay in deleting missing files instead, in NetworkAgent.cs.
First attempt to allow shared file modifications
Changed notifications according to #1970, #1973Now showing balloon tip only for the first actual change after a pollAll other changes simply update the iconsResolves #1970, #1973
Changed notifications according to #1970, #1973Throw appropriate exception when Pithos.Client.WPF/PithosAccount.cs fails to retrieve credentials (Pointless maybe ?)Returning empty hash for missing files
Dead code cleanups and removal of unwanted dll references
Modifications to allow synchronization of shared files:- Ensure shared files are stored in the proper local directory- Ensure only writable files are uploaded- Filter file events for the shared folder and the accounts and containers in it- Change PutWithHashMap to account for a modified server content (proper json instead of hashes per line)
Reactivated shared object code
Added separate notification classNow raising notifications when polling starts, when conflicts are detected, when changes are detected
Added a DeletedIconOverlay.csAdded synch status in the file propertiesModified the splash screen to use the out-of-the-box splash functionality of WPFIn NetworkAgent.cs, moved the delay call at the end of each poll. Waiting at the start of each poll is inappropriate when the polling frequency is large