Commit Graph
48 Commits
Author SHA1 Message Date
Kenneth Skovhede 40dd3c6816 Updated all license mentions to MIT 2024-02-28 15:45:30 +01:00
gpatel-fr cf17f488d1 update Newtonsoft lib to 13.02 2023-03-24 23:17:11 +01:00
Kenneth Hsu e964072690 Target .NET Framework 4.7.1.
This updates all projects to target .NET Framework 4.7.1.  The
TencentCOS and Tardigrade backends depend on .NET Standard 2.0.  When a
.NET Framework prior to 4.7.1 is targeted, the system cannot be sure
that all the dependencies exist, so it copies all dependent assemblies
to the output directory.  This causes many assemblies from the System
namespace to become bundled in the release.

https://stackoverflow.com/a/48875007

We had previously attempted to make individual projects target 4.7.1
(see pull request #4242), but this can cause compatibility issues when
4.6.2 projects depend on 4.7.1. projects.

This will require Mono 5.10.0 or greater (previously, we required 5.0.0
or greater).

https://www.mono-project.com/docs/about-mono/releases/5.10.0/#class-libraries

This fixes issue #4234.
2020-07-26 19:46:01 -07:00
drwtsn32x b1a0353792 make tests case insensitive 2020-01-14 03:57:25 -08:00
Kenneth Hsu 83ac03843d Fix spelling errors in comments.
In doing so, we also normalized some line endings.
2019-12-14 09:52:55 -08:00
Kenneth Hsu afab61a05b Use pattern matching to simplify casts. 2019-10-19 10:15:38 -07:00
Kenneth Skovhede a1d7edbc6e Updated CoCoL to version 1.7.1 to fix a busy CPU issue 2019-09-20 11:40:22 +02:00
BlueBlock f57a9d8a73 nuget updates
aws,azure,fluentftp,mailkit,cocol
2019-09-14 07:36:22 -04:00
BlueBlock 718a5c7fe8 update nuget cocol 2019-09-04 12:00:11 -04:00
BlueBlock 815e30b63b update csproj toolverion and nuget packages 2019-07-31 13:20:03 -04:00
BlueBlock 08a1e9998a initial upgrade to framework 4.6.2
- no code changes except those noted below
- projects upgrade to 4.6.2
- wixinstaller project upgraded automatically by VisualStudio
- wixinstaller updated to require 4.6.2
- Library.Encryption changed to Standard2.0 so accommodate update to SharpAesCrypt
2019-07-26 09:18:16 -04:00
verhoek ab12be6bbd Renamed IsClientLinux to IsClientPosix . 2018-11-03 09:26:04 +01:00
verhoek 72b1f6b6f8 Updated project files. 2018-11-02 22:45:07 +01:00
verhoek 8bb406cd15 Migrated to use the platform class. 2018-11-02 22:17:16 +01:00
Kenneth SkovhedeandGitHub f24bce8e14 Merge pull request #3392 from warwickmm/simplify_method_resolution
Simplify method resolution by removing default parameters
2018-09-28 22:21:29 +02:00
Kenneth Hsu 18aae7a5c4 Simplify method resolution by removing default parameters.
The previous implementations resulted in an overload being hidden by one
without a default parameter, making it unclear which method was being
called.  For example, consider the following signatures:

public MultipartItem(string content, string contenttype = null, string name = null, string filename = null)
public MultipartItem(string contenttype, string name = null, string filename = null)

From https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/named-and-optional-arguments,

> If two candidates are judged to be equally good, preference goes to a
> candidate that does not have optional parameters for which arguments
> were omitted in the call. This is a consequence of a general preference
> in overload resolution for candidates that have fewer parameters.
2018-09-20 19:30:49 -07:00
Kenneth Hsu 1c8bb276b4 Allow tasks to complete on any thread when context is irrelevant.
When the code following the await can be executed on any thread, it's
recommended to use ConfigureAwait(false) to avoid unnecessary context
switching and potential deadlocks.
2018-09-19 16:57:17 -07:00
Kenneth Hsu 54c4f9224d Allow tasks to complete on any thread when context is irrelevant.
When the code following the await can be executed on any thread, it's
recommended to use ConfigureAwait(false) to avoid unnecessary context
switching and potential deadlocks.
2018-06-21 19:28:27 -07:00
verhoek 07ae90f325 Simplified plus made defaults explicit. 2018-06-12 09:41:40 +02:00
verhoek 7bf1768f80 Implemented default tempdir for backend server. 2018-05-22 21:51:29 +02:00
Kenneth Skovhede 842fd96543 Implemented a new logging system that is more transparent and allows a more granular way of picking log messages.
Added ID's to each log message and each exception to allow later introduction of a Knowledgebase service that explains each error in more detail.
2018-03-15 09:12:34 +01:00
Kenneth Skovhede 5e1a260483 Added limits to the number of backlog items the usage reporter will handle.
Older or excessive items are now deleted.
2018-02-11 17:51:55 +01:00
vnau 9b9d9b1297 Fixed compiler warnings. 2017-12-17 01:34:21 +07: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 2609dcc5dc Fixes after library updates 2017-09-23 14:52:53 +02:00
Kenneth Skovhede 5511627975 Updated CoCoL in UsageReporter 2017-09-23 14:46:29 +02:00
Kenneth Skovhede 5cae6ca60e Additional updates to NewtonSoft.Json 2017-09-23 14:46:14 +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 046b522a8d Updated NewtonSoft.Json 2017-05-17 11:08:51 +02:00
Kenneth Skovhede 360a90b2ce Updated SharpCompress to a build from master to include the zip64 fixes 2017-04-04 17:11:01 +02:00
Kenneth Skovhede 52eb8e8478 Disabled MSBuild for much faster builds on MacOS 2016-12-29 23:12:41 +01:00
Kenneth Skovhede 40d5ddc591 Improved extraction of distro name for Linux system.
This also fixes the "No LSB Modules loaded" message
2016-12-08 10:40:06 +01:00
Kenneth Skovhede 9cba45e44f Added startup delay and checks for exit to stop the usagereporter as soon as possible 2016-12-02 12:05:10 +01:00
Kenneth Skovhede 60f3255ddb Rewrote the way the usage-reporter works, to take advantage of new features in CoCoL, making it more robust and compact. 2016-12-01 23:12:19 +01:00
Kenneth Skovhede 6e8f371e36 Improved handling for extracting OS info 2016-10-17 14:38:38 +02:00
Kenneth Skovhede 0c68daff6c Fixed all whitespace to be 4 spaces instead of tabs 2016-09-15 11:39:27 +02:00
Kenneth Skovhede bde606ae60 Updated packages 2016-06-27 15:30:25 +02:00
Kenneth Skovhede 3005594b38 Merge branch 'master' into nuget_setup
# Conflicts:
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/Duplicati.GUI.TrayIcon.csproj
#	Duplicati/Library/Backend/S3/Duplicati.Library.Backend.S3.csproj
#	Duplicati/Library/Backend/S3/S3Wrapper.cs
#	thirdparty/CoCoL/CoCoL.dll
#	thirdparty/SSH.NET/Renci.SshNet.dll
2016-06-27 15:25:52 +02:00
Kenneth Skovhede 4a35f95eef Added a fix to prevent uploading empty files to the usage reporter 2016-04-21 13:11:33 +02:00
Kenneth Skovhede 785c4d325f Reverted changes to solution file so it again forces Windows linefeeds.
This also moved stuff around in some project files.
2016-04-13 00:36:22 +02:00
Kenneth Skovhede 2542824361 Merge branch 'master' into nuget_setup
# Conflicts:
#	thirdparty/SharpAESCrypt/SharpAESCrypt.exe
2016-03-13 22:20:57 +01:00
Kenneth Skovhede 648f41fff2 Added reporting of the system default level for usage reporter 2016-03-13 12:28:00 +01:00
Kenneth Skovhede 41f20301a3 Implemented settings for controlling what data is sent with the usage reporter 2016-03-12 00:29:51 +01:00
Kenneth Skovhede 6dabd7aed3 Changed the usage reporter to use a duplicati.com domain to further signal that the connection is intentional. 2016-03-01 21:57:59 +01:00
Kenneth Skovhede 59cc0005a3 Removed unused references and updated most libraries to come from NuGet sources instead of being provided in the thirdparty library 2016-01-29 10:47:39 +01:00
Kenneth Skovhede b30a1f8ecd Added usage report for the size of backups 2015-12-22 02:22:56 +01:00
Kenneth Skovhede 8b6e71376e Added the correct shutdown handling code 2015-12-22 00:54:57 +01:00
Kenneth Skovhede 147f55e1c6 Added usage reporter to keep track of most-wanted features and to get an overview of how and why Duplicati crashes 2015-12-22 00:35:00 +01:00