Commit Graph
110 Commits
Author SHA1 Message Date
verhoek 2f41e02ca9 Merge branch 'master' into refactored 2018-05-18 08:05:19 +02:00
verhoek 30cd41585b Corrected spelling function name. 2018-05-16 20:08:40 +02:00
verhoek 007e4c0829 Cleaned up imports. 2018-05-13 12:48:00 +02:00
Daniel Gehriger 33d64ee442 Reduced number of affected files by PR 2018-04-26 23:12:39 +02:00
Daniel Gehriger 1af7f9e0ca Merge remote-tracking branch 'upstream/master' into feature/usn 2018-04-23 22:28:27 +02:00
Daniel Gehriger a7d60d88d7 Fixed post-processing of modified file list obtain from USN 2018-04-22 23:03:15 +02:00
Daniel Gehriger 8c1322273e Updated comment to retrigger AppVeyor 2018-04-20 23:51:26 +02:00
Daniel Gehriger b97d4e0dbb Correctly filtering list of changed files / folders using exclusion filter 2018-04-20 17:30:08 +02:00
Daniel Gehriger 8af63b1d5d Fixed some of the issues reported by codacy. The others are incorrect warnings. 2018-04-20 09:17:06 +02:00
Daniel Gehriger 2c1a0ddb4e Implemented backup based on changes recorded in NTFS USN journal 2018-04-19 22:59:28 +02:00
Kenneth Skovhede cdd3c7b63c Merge branch 'master' into concurrent_processing 2018-04-12 15:10:03 +02:00
Kenneth Skovhede 4e5f4a12bf Merge branch 'master' into feature/filters-for-sendmail
Integrated changes to support log-lines and to have a common shared module for reporters

# Conflicts:
#	Duplicati/Library/Modules/Builtin/Duplicati.Library.Modules.Builtin.csproj
#	Duplicati/Library/Modules/Builtin/RunScript.cs
#	Duplicati/Library/Modules/Builtin/SendHttpMessage.cs
#	Duplicati/Library/Modules/Builtin/SendJabberMessage.cs
#	Duplicati/Library/Modules/Builtin/SendMail.cs
2018-04-12 11:16:57 +02:00
Kenneth Skovhede 79f7b22e0f Merge branch 'master' into concurrent_processing
Changed a few things on the way, removing the log process

# Conflicts:
#	Duplicati/Library/Main/Controller.cs
#	Duplicati/Library/Main/Database/ExtensionMethods.cs
#	Duplicati/Library/Main/Database/LocalBackupDatabase.cs
#	Duplicati/Library/Main/Duplicati.Library.Main.csproj
#	Duplicati/Library/Main/Operation/BackupHandler.cs
#	Duplicati/Library/Main/Operation/FilelistProcessor.cs
#	Duplicati/Library/Main/Operation/PurgeBrokenFilesHandler.cs
#	Duplicati/Library/Main/Operation/TestFilterHandler.cs
#	Duplicati/Library/Main/Options.cs
#	Duplicati/Library/Main/ResultClasses.cs
#	Duplicati/UnitTest/BasicSetupHelper.cs
2018-04-11 23:02:47 +02:00
Fish 03fe3729cf Cache IsFSCaseSensitive to speed up file counting.
"IsFSCaseSensitive" used to call GetEnvironmentVariable() every time it
was accessed, which unnecessarily slows down the file counting procedure.
Caching the value of this environment variable speeds up things quite a
bit.
2018-04-10 20:46:03 -07:00
Kenneth Skovhede 731ecfc47d Rewrote the report modules to use a shared base class with all the non-sending specific code.
Change the logic for how the log data is included. It is now added as log lines _after_ the normal messages.
Added support for limiting the number of log lines sent.
Added support for setting the log levels on the modules.
Added support for setting a log filter on the modules.
Added support for sending log data as JSON from the http module.
2018-04-10 12:58:06 +02:00
Kenneth Skovhede bceed2ffbe Work on adding filters to send-mail 2018-04-02 11:20:46 +02:00
Tyler Gill 73b6fe2a01 Add extension methods to the general Utility class for emulating the await keyword in non-async code.
Using GetAwaiter().GetResult() is similar to using Task.Result, but rethrows the original exception rather than wrapping it in an (unnecessary) AggregateException.
2018-03-20 13:41:57 -06:00
Daniel Radünz dab0e1102b Fixed issue 2994 2018-01-30 23:49:58 +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
JonMikelV 95a768feaa FormatSizeString now will also format negative values such as produced when reporting on space savings due to compacting. 2018-01-04 23:05:01 -06:00
Kenneth Hsu 056ff3da96 Use built-in method to determine if process is 64-bit. 2018-01-02 19:03:46 -08:00
Kenneth Skovhede 954980b013 Merge branch 'feature/fix_windows_cmd_escape' 2017-12-22 10:05:53 +01:00
Kenneth Skovhede 486ea11fbd Fixed a case where the commandline arguments were not correctly escaped.
This fixes #2907
2017-12-20 22:45:44 +01:00
Kenneth Hsu bbebcdf3c9 Use method to parse string into bool to reduce duplication. 2017-12-17 14:52:29 -08:00
Kenneth Hsu 788a1db877 Add overload for method that parses string into bool.
This is useful for cases where the default value is expensive to
compute.  By specifying the default via a delegate, it is not computed
unless it is needed.
2017-12-17 14:52:29 -08:00
Kenneth Hsu ab489d9a28 Make parameter names in XML documentation match code. 2017-12-09 18:42:30 -08:00
Kenneth Hsu 1c7391399d Remove XML documentation for unmatched parameters. 2017-12-09 18:30:01 -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 Skovhede b42ab42e57 Fixed the updater to use the argument escaping code from utilities.
This fixes #2891
2017-11-22 10:39:02 +01:00
Kenneth Skovhede 6564220df0 Implemented a utility method for escaping commandline arguments 2017-11-21 23:41:02 +01:00
Kenneth SkovhedeandGitHub c115d07f83 Merge pull request #2836 from warwickmm/feature/no_tilde_expansion
Avoid performing tilde expansion
2017-11-18 23:06:54 +01:00
Kenneth Skovhede 6255572c25 Added a timestamp value to the end of dates in the report output for easier parsing. 2017-11-08 22:18:25 +01:00
Kenneth Skovhede 09ca51bdd9 Fixed reporting the time values in the local timezone 2017-10-31 10:55:35 +01: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 Hsu 9c1e55f241 Expose field that represents users's home directory.
We will be removing support for tilde expansion, and this field can be
used instead of ~ internally in the code.
2017-10-21 09:40:18 -07:00
Kenneth Hsu 4b5ecedc31 Allow custom equality comparer when obtaining unique items. 2017-09-28 21:30:29 -07:00
Kenneth Hsu f2699e01dc Add method to get unique items from a collection.
For cases where we want both the unique items as well as the duplicates,
this should be more performant than using LINQ.
2017-09-28 21:30:29 -07:00
Kenneth Skovhede 683b04741d Merge branch 'master' into concurrent_processing
# Conflicts:
#	Duplicati/Library/Main/Operation/BackupHandler.cs

Manually fixed the HashAlgorithmHelper case
2017-09-20 13:56:37 +02:00
Kenneth Skovhede 6d401fbd8d Changed all hash algorithms to use the Cng version.
This fixes #2621
2017-09-20 09:58:43 +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
Kenneth Skovhede c9af99016a Merge branch 'master' into concurrent_processing 2017-09-18 15:28:43 +02:00
Kenneth Skovhede d57c789f4f Merge branch 'master' into concurrent_processing
# Conflicts:
#	Duplicati/Library/Main/Duplicati.Library.Main.csproj
#	Duplicati/Library/Main/Options.cs
2017-09-18 11:56:35 +02:00
Tyler Gill f9618b9587 Add support for specifying backup paths by volume guid.
These volume guids can be found via the 'mountvol' command, and are reported by the built in help.
This also includes some updates to the documentation and logging when using wildcard drives in source paths.
2017-09-14 23:16:07 -07:00
Tyler Gill 4bfaac4ec4 Normalize whitespace 2017-09-13 23:23:15 -07:00
Tyler Gill 768cd93923 Normalize some whitespace 2017-09-13 22:30:12 -07:00
Kenneth Skovhede 19a040970f Implemented call-context aware settings for HTTP options, temp folder settings, buffers sizes and oauth settings.
This makes it more smooth to run multiple operations in parellel, but it should be possible to launch an operation in a separate app-domain
2017-09-04 11:05:16 +02:00
Kenneth Skovhede 66cf98a8b3 Merge branch 'master' into concurrent_processing
# Conflicts:
#	Duplicati/Library/Main/Duplicati.Library.Main.csproj
2017-06-20 15:17:02 +02:00
Kenneth Skovhede f6adccddb0 Added environment variable to allow setting the filesystem case sensitivity 2017-06-14 22:50:15 +02:00
Kenneth Skovhede d18431b385 Merge branch 'master' into concurrent_processing
# Conflicts:
#	Duplicati/Library/Main/Controller.cs
#	Duplicati/Library/Main/Database/ExtensionMethods.cs
#	Duplicati/Library/Main/Database/LocalBackupDatabase.cs
#	Duplicati/Library/Main/Duplicati.Library.Main.csproj
#	Duplicati/Library/Main/Operation/BackupHandler.cs
#	Duplicati/Library/Main/Operation/RecreateDatabaseHandler.cs
#	Duplicati/Library/Main/ResultClasses.cs

First attempt at merging all changes from 2016-10-08 to now :/
2017-05-30 00:35:31 +02:00