add command line parameters
parameterize memory cache and use bigger cache by default
optional use of aescrypt to make decryption faster by caching the results
tentative attributes support for Linux (use with sudo)
* Fix restore search error in RestoreController.
TypeError: Cannot read Property 'Path' of undefined.
Add a break to for loop, thanks @tx0h (#4997).
* Remove empty '\' entries from restore picker.
The paths are split by dirsep, but directories end with it, which results in an empty part at the end.
The option is turned into an enum with values True, False, ListIndexes
True and False are for compatibility with the existing backups.
ListIndexes is equivalent to True but don't handle block volumes.
This is to make more workable a strategy of full remote testing
after each backup.
Before the change, it could happen that when the postbackup test
was finding problems in the backend, the job would be reported
as having completed successfully, the found problems being displayed
only in the complete log. After the change, an error is logged
that cause the job to be failed.
To repro, the following procedure can be used in a test backup:
change a hash for a block in the block table database and run a backup having set
--full-remote-verification and --full-block-verification to true and
--backup-test-percentage to 100.
* experimental faster db rebuild (#4955)
* try run update db query for every block file only when needed
add repair-force-block-use option
more appropriate naming for some routines
more tracing
more comments
Remove username and password from target options if the backend does not show the input fields.
The username and password options are stored in different variables than the other backend options. Therefore, they are only visible if the backend supports them.
Closes#3082
* Improve errors specificity by:
a. Avoiding unnecesary wrapping in AggregateException - Using Library.Utility.Await instead of Wait / Result
b. Using messages from InnerException during TestConnection
* Fix detection of missing base directory:
Depend on error code while trying to SetWorkingDirectory, rather than very wide try/catch and a hardcoded error string (Different FTP servers return different error strings. E.g. hardcoded here was "Directory not found." while Filezilla returns "Can't open file or directory").
* Fix indentation
Intentionally seperated from the previous commit for easier reviewing (otherwise Github text diff display is confused by the removal of the large try / catch blocks)
* Fix creation of missing base directory:
(previously CreateClient would fail since it would try to SetWorkingDirectory to the not-yet-existing directory)
* Upgrade FluentFTP to v42 in an attempt to resolve TLS session issues:
duplicati/duplicati#4831
Note v40 introduced breaking changes, specifically seperating between sync and async clients.
Using a different approach this time, single async client.
* Bump FluentFTP to latest (42.0.0 --> 46.0.2)