Skip to content

Overwriting is underrated

Compare
Choose a tag to compare
@taratatach taratatach released this 10 Apr 10:18
f3f6902

Improvements for all users:

  • In some situations, when moving a file or folder and overwriting an existing
    document, the local file system can fire a move event without firing a
    deletion event for the document that's being overwritten. We were very
    conservative in the way to we treat changes that could erase content so we
    would generate a conflict for those moves.
    Now that we have file versioning on the Cozy, we feel comfortable accepting
    those changes and will thus delete the overwritten document but will keep its
    existing references (e.g. photos album, bills…) and add them to the document
    being moved.
  • We've found out that the synchronization process could be started more than
    once. Although this should have no effect (i.e. one start replacing the
    previous one) we've made sure we only start the process once. This should
    avoid wasting some resources in an extraneous start.
  • Following some feedback on the app updater window which could give the feeling
    that the update was not going to complete, we've made a small redesign of this
    window, replacing the indeterminate progress bar with a spinner and adding
    emphasizing the text asking you to be patient until the download is complete.

Improvements for Windows and macOS users:

  • To avoid synchronizing temporary documents generated by some software when
    saving a new version of a document, we maintain a list of file name patterns
    that should not be synchronized. We had some patterns for the Microsoft Office
    suite files but we did not account for temporary files generated for all the
    file types those can open like Open Documents.
    We've widened the pattern used to match those files those that all temporary
    files created by the MS Office software should be matched and thus not be
    synchronized.

Improvements for Linux and Windows users:

  • During the initial scan of your local synchronization folder, we emit deletion
    events when we detect a know document is not present anymore (i.e. we assume
    you've deleted it while the client was not running). The order in which we
    emit those events is important because it will be the order in which those
    actions will be synchronized and if we try to synchronize the deletion of a
    directory before the deletion of its content, the folder will end up in your
    Cozy trash bin instead of being completely removed.
    This is not a big issue but to avoid any confusion as to why we'd put those
    files and directories in your trash, we've modified our algorithm to emit
    events for children of deleted directories before the event for the directory
    itself.

Improvements for Windows users:

  • We found that in some situations, the order in which local file system events
    are received by our local changes watcher was not as expected, resulting in
    some movements not being detected as such. We would then delete the source
    documents and recreate them at the destination, losing in the process some
    important metadata like sharings.
    Our Windows movement detector is now more resilient to the order of events and
    should detect all movements as such.
  • We've got reports from users experiencing app crashes. In at least some of
    those cases, the anti-virus seems to be involved.
    We've implemented some mitigations as found in the Electron documentation and
    hope to see those issues resolved.

See also known issues.

Happy syncing!