Commit Graph
96 Commits
Author SHA1 Message Date
Kenneth Skovhede 71c4bb4d3d Merge branch 'master' into experiment/quickfix_concurrent
# Conflicts:
#	Duplicati/Library/Main/BackendManager.cs
#	Duplicati/Library/Main/Database/ExtensionMethods.cs
#	Duplicati/Library/Main/Operation/BackupHandler.cs
#	Duplicati/Library/Main/Operation/TestFilterHandler.cs
#	Duplicati/Library/Main/Options.cs

Manually ported the `IsSynlink` changes as well as the DNS refresh code
2018-03-02 09:06:13 +01:00
Kenneth Skovhede bd863016fa Added support for returning multiple DNS names for cache invalidation.
Updated most backends to return the actual DNS names for cache invalidation.
2018-02-26 11:37:10 +01:00
Kenneth Skovhede 9093603be1 Added support for disabling the file scanner during backups.
This fixes #2963
2018-02-11 20:57:38 +01:00
Kenneth Skovhede 2045ee6f9a Fixed the logging to write a new log file on each run 2018-02-06 13:30:32 +01:00
Kenneth Skovhede 5a388e7b83 Merge branch 'master' into experiment/quickfix_concurrent 2018-02-01 09:53:48 +01:00
Kenneth Skovhede e65d38e235 Updated the unittest to not use the deprecated NUnit attributes 2018-02-01 09:48:55 +01:00
Kenneth Skovhede 32e884226a Using log scope to redirect unittest output into the log file 2018-01-31 22:04:38 +01:00
Kenneth Skovhede 58f415d525 Added some additional checks to make sure we do not create volumes that are over the size limit. 2018-01-31 22:03:37 +01:00
Kenneth Skovhede 9ed4a99204 More log-spam avoidance 2018-01-28 21:19:51 +01:00
Kenneth Skovhede c8ff0bafe3 Fix to avoid spamming the console 2018-01-28 20:52:13 +01:00
Kenneth Skovhede 805a411f8f Fixed a few minor issues with the new approach, and rewrote the zip file packaging to allow packing more data into each volume. 2018-01-28 12:29:02 +01:00
Kenneth Skovhede 8c95e8ae24 Merge branch 'master' into concurrent_processing 2018-01-20 15:04:39 +01:00
Kenneth Skovhede 75bf6857c1 Merge branch 'master' into concurrent_processing
# Conflicts:
#	.travis.yml
#	Duplicati/Library/Main/Database/LocalBackupDatabase.cs
#	Duplicati/Library/Main/Operation/BackupHandler.cs
#	Duplicati/Library/Main/ResultClasses.cs
#	Duplicati/Library/Main/Volumes/VolumeWriterBase.cs
#	Duplicati/Library/Utility/TempFile.cs
2018-01-20 15:02:41 +01:00
wjan d8efebfe8a corrects changes in app.config files and other unnecessary file changes 2018-01-18 21:22:54 +01:00
wjan 8500988d7c adds rclone UI and backend improvements 2018-01-10 15:33:28 +01:00
Kenneth SkovhedeandGitHub 9593edae14 Merge pull request #2939 from vnau/master
Compression classes refactoring
2017-12-26 12:27:35 +01:00
vnau 62a7901aca Compression modules refactored to work with streams instead of filenames;
Added unit test to check compression reversibility
2017-12-25 04:12:19 +07:00
Kenneth Hsu 839c8d9f27 Use method to parse string into bool to reduce duplication. 2017-12-17 14:52:29 -08:00
Kenneth Hsu faad6de7ba Add tests for parsing string into bool. 2017-12-17 14:52:29 -08:00
Kenneth SkovhedeandGitHub 36aadc4ad1 Merge pull request #2910 from warwickmm/refactor/remove_redundant_tostring
Remove redundant calls to ToString
2017-11-27 08:50:00 +01:00
Kenneth Hsu 5fb1958ceb Remove redundant calls to ToString. 2017-11-26 15:44:34 -08:00
Kenneth Hsu 8810e0130d Make string comparisons use ordinal (binary) sort rules.
These string comparisons should not be culture-aware.
2017-11-26 11:19:54 -08:00
Kenneth Hsu c9aa6cf5fb Avoid performing tilde expansion.
The expansion being performed was often incorrect, as it's possible for
the tilde character to appear as part of the path where it should not be
expanded to the user's home directory.

Properly supporting tilde expansion is complicated and requires
additional study.  Instead of supporting it only partially, we have
decided to simplify things and just drop tilde expansion for now.  See
the discussion in issue #2619, as well as issues #2325 and #2555.
2017-10-21 10:08:33 -07:00
Kenneth Skovhede f0cfde1cb2 Added delays to unittest as it is now too fast with the improved hashing library 2017-10-10 13:52:57 +02:00
Kenneth Hsu 9edec2b53e Add comments to clarify tests. 2017-09-29 21:10:21 -07:00
Kenneth Hsu ff7d57a9f4 Add test for obtaining unique items from empty collection. 2017-09-29 21:09:29 -07:00
Kenneth Hsu cb4972f900 Add test for obtaining unique items with custom comparer. 2017-09-28 21:30:29 -07:00
Kenneth Hsu 705bbe198f Modify test to use string data.
This will allow us to more easily test the case where a custom equality
comparer is provided.
2017-09-28 21:30:29 -07:00
Kenneth Hsu c658458e01 Add unit test for method to get unique items. 2017-09-28 21:30:29 -07:00
Kenneth SkovhedeandGitHub 33314ce7c9 Merge pull request #2763 from tygill/fix/list-ienumerable
Change IBackend.List() to return IEnumerable instead of List
2017-09-28 11:06:41 +02:00
Kenneth Skovhede 9c0c5fbb97 Merge branch 'master' into concurrent_processing 2017-09-26 14:26:09 +02:00
Kenneth Skovhede 51084ada57 Merge branch 'feature/use-faster-hashing' 2017-09-26 14:24:20 +02:00
Kenneth Skovhede 640ec634b7 Increased delays in unittest due to faster hashing performance 2017-09-26 09:41:27 +02:00
Tyler Gill 38883285ee Change IBackend.List() to return IEnumerable instead of List
By changing to IEnumerable, it is possible to iterate only a portion of the list, which is useful when not all entries are needed (e.g., when testing a connection).
All existing backends have been updated, and any which were able to be changed to yield return results in a straightforward way now do.
Many backends had a try/catch in the List() method. Due to the fact that yield returns can't be placed within a try/catch block, these have been refactored to either scope the try/catch to the parts that (should) be the only places throwing exceptions, so that exceptions are still caught and handled.
Note that lazy evaluation may cause some changes in behavior - exceptions that were previously thrown at the point of invokation of List() may now be thrown while it is being enumerated.
I believe this will not be problematic though, as the only well-known exception seems to be FolderMissingException, which should be thrown by Test(), but TestList() attempts to enumerate the list to force this exception.
Any places that require the legacy behavior can get it by simply converting the lazy enumerable to a List()
2017-09-25 23:17:45 -06:00
Kenneth Skovhede 0a54fd87d3 Merge branch 'master' into concurrent_processing
# Conflicts:
#	Duplicati/Library/Main/packages.config
#	Duplicati/Library/UsageReporter/Duplicati.Library.UsageReporter.csproj
#	Duplicati/Library/UsageReporter/packages.config
2017-09-23 22:04:35 +02:00
Kenneth Skovhede 22e05577e2 Revert "Updated nunit"
This reverts commit e999f1d77d.
2017-09-23 14:57:05 +02:00
Kenneth Skovhede 2609dcc5dc Fixes after library updates 2017-09-23 14:52:53 +02:00
Kenneth Skovhede e999f1d77d Updated nunit 2017-09-23 14:48:02 +02:00
Kenneth Skovhede 0dd56f1650 Merge branch 'master' into concurrent_processing
# Conflicts:
#	Duplicati/Library/Main/Options.cs
2017-09-19 12:51:40 +02:00
Tyler Gill 83a1dcfb64 Replace all instances of InvariantCultureIgnoreCase with OrdinalIgnoreCase in string comparisons.
InvariantCulture is useful when comparing / sorting human language strings in a culturely correct way. It handles things like accented letters in a way that makes sense to humans (e.g., 'a' should be sorted next to 'á', rather than after 'z').
Ordinal looks just at the raw code points of the characters. As such, it is recommended for use in cases when comparing system strings (file paths, command line parameters, config settings, etc.). Since it doesn't need to use the culture specific sorting rules, this method can often be faster.

For more information, see https://stackoverflow.com/questions/492799/difference-between-invariantculture-and-ordinal-string-comparison (and other related questions)
2017-09-18 23:55:08 -06:00
Dan Stahr 15c5c16bdd Reduce the amount of logging in unit tests.
Heavy logging makes the tests I/O bound and causes other, more relevant test files to be evicted.
2017-08-12 20:41:59 +01:00
Kenneth Skovhede 6855824285 Rewrote the commandline to support plug-able output 2017-04-04 16:57:30 +02:00
Kenneth Skovhede 7349d73e80 Fixed returning non-zero status codes when verification fails 2017-03-07 23:09:04 +01:00
Kenneth Skovhede 680ee82189 Updated SharpCompress to the latest version 2017-02-27 22:21:01 +01:00
Kenneth Skovhede 5f9539b9ea Fixed creating the temporary folder for the unittest data before using it 2017-01-12 08:41:34 +01:00
Kenneth Skovhede 37ee4d4cf8 Fixed an issue with broken logging in the unittest 2017-01-11 22:41:45 +01:00
Kenneth Skovhede e692be5c92 Reworked the way log messages are handled, to include call-context setup.
This enables modules to report messages to the message-sink, and thus to the commandline through the normal interface.
This simplifies handling multiple logging systems, and supports reporting logging from multiple concurrent controller instances.

This fixes #2225
This fixes #1575
2017-01-09 23:27:56 +01:00
Kenneth Skovhede 9c0b463765 Added minor delays to purge unittest to avoid errors that happen when timestamps are back-to-back 2017-01-06 23:00:30 +01:00
Kenneth Skovhede 1b4cb3b5df Merge branch 'feature/implement_remote_file_recovery' 2017-01-05 22:16:25 +01:00
Kenneth Skovhede 1108d51d7f Implemented a new new list-broken-files and purge-broken-files command for the commandline to assist with handling remote file loss. 2017-01-05 16:46:01 +01:00