@gilbertchen gilbertchen released this Nov 3, 2018 · 1 commit to master since this release

Assets 10
  • Fixed a bug in calculating the padding size during chunk encryption: 21b3d9e
  • Print the number of files if available in the snapshot file before downloading the file list: 244b797
  • Don't list snapshots whose tags don't match the given one when the -tag is provided: 0732920
  • Show more statistics in the check command (for the new web-based GUI): 15f15aa
  • In some backends the benchmark command may incorrectly list the chunks directory when looking for previous temporary files: d8e13d8
  • Optimizing restore to avoid reading newly created sparse file: bfb4b44
  • Align snapshot times to the beginning of days when calculating the time differences so that prune operations running on the same day will prune the same set of old snapshots: 22a0b22
  • Make B2 backend work with application keys (based on #475 by @bekriebel): 674d35e
  • Restore UID and GID of symlinks: a7d2a94
  • Fixed a divide by zero bug when the repository has only zero-byte files: 39d71a3
  • Do not update the Windows keyring file if the password remains unchanged: 9d10cc7
  • Continue to check other snapshots when one snapshot has missing chunks: e8b8922
  • Record deleted snapshots in the fossil collection and if any deleted snapshot still exists then nuke the fossil collection: 93cc632
  • Add Git commit numbers to version info: 48cc5ea
  • Removed a redundant call to manager.chunkOperator.Resurrect (which can cause a crash): f304b64
  • Remove extra newline in the PRUNE_NEWSNAPSHOT log message: 8ae7d2a
  • Fix crashes on 32 bit machines caused by misaligned 64 bit integers: fce4234
  • Fix "Failed to fossilize chunk" errors in wasabi backend: #459 (by @jtackaberry)
  • Add a -storage option to the benchmark comman: 89769f3

@gilbertchen gilbertchen released this Jul 24, 2018 · 13 commits to master since this release

Assets 10
  • Fixed a bug causing certain new snapshots to be not counted when deciding which fossils can be deleted (72dfaa8)
  • Added a benchmark command to test disk and transfer performance (#449)
  • Support multi-threaded pruning (#441)
  • Fixed restoration of basic UNIX file permissions (#417)
  • Added macOS APFS snapshot support (#415)
  • Fixed a crashing bug when showing the history of excluded files (0e585e4)
  • Add unreferenced fossils to the fossil collection instead of deleting them immediately (e03cd2a)
  • Added an -enum-only option to the backup command to enumerate the repository only (aadd2aa)
  • Added a -repository option to the init and add command to specify an alternate repository path (72239a3)
  • Implemented the WebDAV backend (#394)
  • Added a -nobackup-file option to the set command to skip directories containing the specified file (#392)
  • Add an environment variable DUPLICACY_DECRYPT_WITH_HMACSHA256 to force compatibility with Vertical Backup (b1c1b47)
  • Skipped chunks should not be counted when calculating downloading percentage during restore (23a2d91)
  • Added a global option -commend to allow Duplicacy processed to be identified by arguments (#391)
  • Follow symlinks that point to UNC paths on Windows (b99f4bf)
  • Added a -vss-timeout option to set VSS creation timeout (be2856e)
  • Reduced memory consumption for prune operation (#329)
  • Added a new Wasabi storage backend largely based on S3 but optimized to reduce storage cost for deleted objects (#322)
  • Print git commit number in version string (48cc5ea)
  • Record deleted snapshots in the fossil collection and if any deleted snapshot still exist nuke the fossil collection (93cc632)
  • Continue to check other snapshots when one snapshot has missing chunks (e8b8922)

@gilbertchen gilbertchen released this Mar 10, 2018 · 87 commits to master since this release

Assets 9
  • Retry on temporary network errors in the Azure backend
  • Added an OpenStack Swift backend based on github.com/ncw/swift
  • Fixed a bug when both tag and the retention policy are specified for the prune command
  • Fixed bugs in restoring extended attributes
  • Unload the extended attributes from last snapshot in order to save memory
  • Limited derivation keys to 64 bytes since snapshot file paths used as keys may be longer
  • Fixed a bug that caused -hash to have no effect
  • Correctly handle spaces in file paths for the B2 backend
  • Improved the Hubic backend to retry on various errors
  • Fixed a bug that caused -hash to have no effect
  • Don't download a fossil directly; turn it back to a chunk and download the chunk instead
  • Add a -storage-name option to the init command to specify the storage name
  • Add the global -profile option to enable profiling via http
  • Allow the -bit-identical option to the add command to copy the config file as it is
  • Disable caching when restoring files in SnapshotManager
  • Removed aes128-cbc from the supported ciphers by HiDrive
  • Refresh expired tokens unconditionally on authorization errors for Hubic and OneDrive
  • Fixed a bug that prevents the file specifying the chunk nesting levels from being loaded and parsed
  • Fix the GCD directory creating bug; only save directories in the id cache
  • Remove existing config and save a local copy when changing the storage password
  • Create the storage folder on gcd storage if it doesn't exist

@gilbertchen gilbertchen released this Nov 22, 2017 · 133 commits to master since this release

Assets 8
  • Optimize the copy command to skip chunks existing on the destination storage
  • Add the -dry-run option to the backup command
  • Include storage name when looking up passwords for non-default storages
  • Fix prune bug when last snapshot is removed for issue
  • Add regex matching to include/exclude filters
  • Add the -tabular option to the check command to show tabular usage and deduplication statistics
  • Improve the backoff algorithm for the Google Drive storage
  • Use b2_download_file_by_name rather than b2_list_file_names to check file existence
  • Retry downloads with corrupted content up to three times
  • Use random salt and make the number of iterations configurable for storage key derivation
  • Add an -ignore-owner option to skip setting uid/gid on restored files
  • Unify the chunk nesting level to 1 for all storages
  • Fix a bug in splitting the existing file that caused all chunks to be redownloaded
  • Add a -bit-identical option to the add command to make a bit-identical copy of the config file
  • Increase the timeout for shadow copy creation on Windows
  • Various changes to improve password management

@gilbertchen gilbertchen released this Sep 11, 2017 · 245 commits to master since this release

Assets 8
  • Fixed OneDrive 503 errors by sending GET requests with a nil body
  • Fixed symbolic link handling on Windows
  • The copy command now skips chunks already on destination
  • Fixed a bug in setting the upload/download rate limit for the copy command
  • Fixed a bug in setting the number of threads for the copy command
  • Update aws/aws-sdk-go to version 1.10.41
  • Don't save passwords/credentials to keyring if they are retrieved from environment/preference
  • Don't ask for ssh password if a ssh key file is available
  • Fixed a bug in retrieving passwords from gnome-keyring
  • In GCD backend each thread should have its own backoff value
  • Fixed a bug in storage passwords in preferences for non-default storages

@gilbertchen gilbertchen released this Aug 18, 2017 · 285 commits to master since this release

Assets 9
  • Updated Azure storage backend to support retrying on temporary errors
  • The restore command now preserves empty directories
  • Fixed a chunk not found error caused by Windows drives with data deduplication on
  • Fixed a bug that caused truncated files not to be restored correctly
  • Added a flat:// storage backend that can take a flat chunks directory on local or networked drives
  • Added a samba:// storage backend that is basically a local drive backend but with caching enabled (for networked drives)

@gilbertchen gilbertchen released this Jul 22, 2017 · 310 commits to master since this release

Assets 9
  • Fixed incorrect progress statistics during backup and restore
  • Increased HTTPS timeouts for overloaded Hubic servers
  • Force in-place restore mode with a non-default preference path
  • Added new S3 storage backends to support minio and other s3-compatible providers
  • Fixed a bug that caused a size -1 error
  • The history command can now skip revisions in which the specified file does exist
  • Fixed a bug in the fixed-size chunking algorithm
  • Improve OneDrive backend by retrying on various errors
  • Full sparse file support

@gilbertchen gilbertchen released this Jul 7, 2017 · 353 commits to master since this release

Assets 9
  • Retry on authentication errors for Google Drive
  • Fixed inaccurate restore statistics that mistakenly take existing files into account
  • Enhance the B2 storage backend to retry on 3xx status codes
  • Fixed a bug that caused backup to fail due to incorrect file size
  • Fixed incorrect progress report during restore
  • Verify ids of snapshot chunks before uploading them
Jun 30, 2017
Bump version to 2.0.4

@gilbertchen gilbertchen released this Jun 21, 2017 · 369 commits to master since this release

Assets 8
  • Fixed a bug in disk or SFTP storage backends that caused a directory creation error when multiple threads are used
  • Fixed a bug that caused the copy operation to crash
  • Added a -pref-dir option to the init command to specify an alternate location for the .duplicacy preference directory (contributed by @ech1965)
  • Rewrote the S3 storage backend using the official Amazon S3 client library