However, the 'control_dir_v2', 'Windows.old', and the various Environment.SpecialFolders filters did not have trailing slashes, leading to these filters not actually applying when they should.
This change fix the few specific filters that need this specification, and adds a new utiltiy method to produce filters for SpecialFolders in a way that makes sure they end with a trailing slash.
The previous implementation returned false for null or empty or
whitespace values, and true for unparsable values. A default value of
false seems more appropriate for these cases.
The logic is currently that the template is scanned for potential values, and those that are found are reported in the extra tag for the JSON.
A bit clumsy, but allows the user to choose specific fields to include in the reported data.
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
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
"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.
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.
The previous implementation returned true for null, empty or whitespace,
or unparsable values. A default value of false seems more appropriate
for this setting.
Since the ServerSettings constructor initializes the m_values Dictionary
with keys from the CONST class, we can assume that the
SERVER_PORT_CHANGED key exists.