Commit Graph
99 Commits
Author SHA1 Message Date
Carl Johnsen 347e299132 Merge branch 'master' into feature/rsync_tool 2025-02-03 09:48:52 +01:00
Carl Johnsen 4b6d73ddbd Included Duplicati.CommandLine to get the console output sink for logging. 2025-01-30 13:22:45 +01:00
Kenneth SkovhedeandGitHub 997891525a Updated license-updater to update csproj files (#5898)
* Updated license-updater to update csproj files

* License updates
2025-01-22 21:04:19 +01:00
Grzegorz Łagocki 9b19bac7da Add Copyright Property to *.csproj files 2024-07-09 00:37:18 +02:00
Kenneth SkovhedeandGitHub 8a39372c73 Merge pull request #5152 from duplicati/feature/update-manifest
Implemented the new manifest format
2024-04-29 10:57:09 +02:00
Kenneth Skovhede 8e25c6e2ab Reduced dynamic scanning with static linking.
Cleaned up some `proj` files.
Added caching to options.
2024-04-26 14:32:41 +02:00
Kenneth Skovhede b6ca526ee7 Implemented the new manifest format
Fixed some issues with the manifest urls.
Changed to records and nullable in some places.
Regenerated the test-keys to use RSA208.
Changed to using built-in JSON for manifest.
This fixes #5145
2024-04-23 13:41:59 +02:00
Kenneth Skovhede 473c6cbbb8 Merge commit '4f577c65a4d8806f79637c50c21ca3a683c5a07a' into feature/kestrel-avalonia-upgrade 2024-03-04 12:21:53 +01:00
Kenneth Skovhede c168849dff Hand-picked changes from #3124 2024-03-01 14:30:28 +01:00
Kenneth Skovhede aa20088c39 Tool based upgrade of all projects with some manual update 2024-03-01 14:29:54 +01:00
Kenneth Skovhede d7b6dd90be Updated all projects to use SDK-style projects using upgrade-assist 2024-02-25 16:19:25 +01:00
Thomas Suckow 69ccc12e7d Reorganize the backends to be referenced via a single csproj
For my sanity
2022-11-18 21:55:46 -08:00
Thomas Suckow 78197453a1 Merge remote-tracking branch master into feature/net5-avalonia
# Conflicts:
#	Duplicati CommandLine Only.sln
#	Duplicati.sln
#	Duplicati/CommandLine/BackendTester/Duplicati.CommandLine.BackendTester.csproj
#	Duplicati/CommandLine/BackendTool/Duplicati.CommandLine.BackendTool.csproj
#	Duplicati/CommandLine/Duplicati.CommandLine.csproj
#	Duplicati/CommandLine/RecoveryTool/Duplicati.CommandLine.RecoveryTool.csproj
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/Duplicati.GUI.TrayIcon.csproj
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/app.config
#	Duplicati/Library/AutoUpdater/UpdaterManager.cs
#	Duplicati/Library/Backend/Jottacloud/Duplicati.Library.Backend.Jottacloud.csproj
#	Duplicati/Library/Main/Duplicati.Library.Main.csproj
#	Duplicati/Library/Utility/Duplicati.Library.Utility.csproj
#	Duplicati/Library/Utility/Utility.cs
#	Duplicati/Server/Duplicati.Server.csproj
#	Duplicati/Server/app.config
#	Duplicati/Service/app.config
#	Duplicati/UnitTest/BackendToolTests.cs
#	Duplicati/UnitTest/Duplicati.UnitTest.csproj
#	guiTests/guiTest.py
2022-11-11 21:40:08 -08:00
Muhammad Abrar 86e9aed31b Some more changes 2022-06-13 12:49:47 +05:00
Thomas Suckow b3826237d5 Update unittest libs 2022-05-01 22:14:39 -07:00
Thomas Suckow 8c518f7d3a .net6 2022-04-12 21:43:50 -07:00
Thomas Suckow bf5b9537d8 Merge remote-tracking branch 'thomas/feature/net5-freebsd' into feature/net5-unsplit
# Conflicts:
#	Duplicati.sln
#	Duplicati/CommandLine/BackendTester/Duplicati.CommandLine.BackendTester.csproj
#	Duplicati/CommandLine/BackendTool/Duplicati.CommandLine.BackendTool.csproj
#	Duplicati/CommandLine/CLI/Commands.cs
#	Duplicati/CommandLine/Duplicati.CommandLine.csproj
#	Duplicati/CommandLine/RecoveryTool/Duplicati.CommandLine.RecoveryTool.csproj
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/Duplicati.GUI.TrayIcon.csproj
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/ImageLoader.cs
#	Duplicati/Library/Backend/SSHv2/Duplicati.Library.Backend.SSHv2.csproj
#	Duplicati/Library/Backend/SSHv2/packages.config
#	Duplicati/Library/Backend/Tardigrade/Duplicati.Library.Backend.Tardigrade.csproj
#	Duplicati/Library/Common/Duplicati.Library.Common.csproj
#	Duplicati/Library/SQLiteHelper/Duplicati.Library.SQLiteHelper.csproj
#	Duplicati/Library/Snapshots/Duplicati.Library.Snapshots.csproj
#	Duplicati/License/Duplicati.License.csproj
#	Duplicati/Server/Duplicati.Server.csproj
#	Duplicati/UnitTest/Duplicati.UnitTest.csproj
#	Duplicati/UnitTest/TestUtils.cs
#	Duplicati/UnixSupport/UnixSupport.csproj
#	Installer/Makefile/Makefile
#	guiTests/guiTest.py
2022-03-03 21:20:34 -08:00
Dean Ferreyra 423921d1c2 Revert "Change Duplicati.UnitTest project to get System.Net.Http from NuGet"
This reverts commit 2f5bb306bd.

This was an experiment that was accidentally committed.
2021-11-08 20:19:22 -08:00
Dean Ferreyra 2f5bb306bd Change Duplicati.UnitTest project to get System.Net.Http from NuGet 2021-11-06 23:20:04 -07:00
Dean Ferreyra 0e8280f6f3 Fix SystemIOWindows handling of relative paths
The handling of relative paths in SystemIOWindows was broken by changes for #4256.

Change SystemIOWindows.PrefixWithUNC to only prefix paths with `\\?\` when they can be prefixed; i.e., only prefix paths that are fully qualified and that don't contain relative path components like `.` or `..`.  This way, relative paths passed to SystemIOWindows methods work correctly again.  Also support network paths specified using forward slashes; e.g., `//example.com/share/foo.txt`.

Simplify SystemIOWindows.GetFullPath since Path.GetFullPath will honor `\\?\` prefixes and can replace forward slashes with backslashes, etc.

Copy and adapt source for Path.IsPathFullyQualified from https://github.com/dotnet/runtime, which is MIT licensed.

Add unit test for Duplicati.CommandLine.BackendTool to validate the fix.

This fixes #4632.
2021-11-06 17:14:18 -07:00
Kenneth Skovhede b550e61d9b Re-added compatibility analyzers 2021-04-03 21:49:51 +02:00
Kenneth Skovhede 8892ff7df3 Cleaned up all .csproj files.
Moved things around to make cleaner build files.
Implementing everything with `netstandard2.1` and then thin wrapper executables using .net5
2021-04-03 13:57:02 +02:00
Thomas Suckow f424c1e999 Don't publish the unit tests 2021-01-08 07:51:13 -08:00
Kenneth Hsu d4b349bb99 Add test for repairing multiple missing blocklist hashes.
This concerns issue #4397.
2020-12-26 21:43:43 -08:00
Kenneth SkovhedeandGitHub a5cea90867 Merge pull request #4293 from warwickmm/fix_export_encoding
Avoid decoding URL parameters when removing passwords
2020-09-23 11:10:02 +02:00
Dean Ferreyra be6ac941ea Add symlink policy tests
This adds a basic symlink policy test that performs backups using each
symlink policy.

If you don't have the required privilege in Windows, you can get an
exception trying to create a symbolic link.  If an exception is thrown
trying to create a symbolic link, the exception is trapped and the
test is marked as "Ignored"; e.g.,
```
1) Ignored : Duplicati.UnitTest.SymLinkTests.SymLinkPolicy
Client could not create a symbolic link.  Error reported: (1314) A required privilege is not held by the client. | Read: [C:\td\backup-data\target] | Write: [C:\td\backup-data\symlink]
```
2020-09-07 22:50:21 -07:00
Kenneth Hsu 5915fdfba9 Add test for exporting backup configuration to JSON.
This tests that we escape '@' with '%40', as the import code in
escape_uri in AppUtils.js cannot handle '@'.

This concerns issue #3619.
2020-08-24 07:41:00 -07:00
Kenneth SkovhedeandGitHub ec1975b5a7 Merge pull request #4269 from warwickmm/target_net_471
Target .NET Framework 4.7.1
2020-08-07 10:50:35 +02:00
Kenneth SkovhedeandGitHub 04dd510be0 Merge pull request #4261 from warwickmm/avoid_deleting_unrelated_files
Avoid deleting unrelated files when removing backup configuration
2020-08-07 10:33:31 +02:00
Kenneth Hsu d99d40717d Merge remote-tracking branch 'upstream/master' into test_invalid_windows_paths
This allows us to simplify the ProblematicPathTests because the test
teardown methods can now handle deleting directories containing
problematic paths.
2020-07-31 16:29:28 -07:00
Dean Ferreyra 73e31a79a1 Change tests to work with long paths in Windows
Even in .NET 4.6.2
`System.IO.Compression.ZipFile.ExtractToDirectory()` cannot handle
long paths.  Replace call to
`System.IO.Compression.ZipFile.ExtractToDirectory()` with an
equivalent that extracts files to a temporary location and uses I/O
functions that support long paths to move them to their final
location.

In CommandLineOperationsTests.cs, use ISystemIO functions to handle
potentially long paths.

Add a fix to RecoveryTool for long paths that was missed by #4258.

This fixes #3863.
2020-07-28 05:51:53 -07: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
Kenneth Hsu 77a4918f36 Add test to check that only relevant backend files are deleted.
This concerns issues #3845, and #4244.
2020-07-21 13:20:42 -07:00
Kenneth Hsu a837144b42 Add class to help remove problematic paths from tests.
This will make it easier to create and clean up tests that involve
problematic paths (e.g., paths that end with a dot or space on Windows).
2020-07-18 18:10:02 -07:00
Max b008aed1f3 migrate to net5 + runnable 2020-06-03 00:00:38 +02:00
Kenneth Hsu 917f749b0a Add RepairHandlerTests to solution.
This was accidentally removed via a bad merge in revision
a64671a0c6.
2020-01-25 18:59:44 -08:00
Kenneth SkovhedeandGitHub a64671a0c6 Merge pull request #4018 from warwickmm/refactor/fileset_removal
Refactor fileset deletion code and add tests
2020-01-23 13:52:43 +01:00
Kenneth Hsu ec7d6dcc9f Merge remote-tracking branch 'upstream/master' into test/recovery_tool 2020-01-21 20:30:02 -08:00
Kenneth Hsu 35ea890f96 Merge remote-tracking branch 'upstream/master' into refactor/fileset_removal 2020-01-21 20:23:49 -08:00
Kenneth Hsu bfbae6fcaf Add test for restoring files using RecoveryTool. 2020-01-18 09:36:03 -08:00
Kenneth Hsu 91db2466ec Add test for repairing with missing dindex files.
This concerns issue #4046.
2020-01-09 20:18:42 -08:00
Kenneth Hsu fdcef72a7c Merge remote-tracking branch 'upstream/master' into refactor/fileset_removal 2020-01-01 13:58:59 -08:00
Kenneth Hsu bde4812bff Add test for restoring permissions with inheritance breaks. 2020-01-01 12:47:01 -08:00
Max 7e2218663e Add Compat Analyzers 2019-12-25 19:08:52 +01:00
Max 28793ef204 packages update 2019-12-25 18:21:24 +01:00
Kenneth Hsu 6d6be94efa Add tests for fileset deletion strategies. 2019-12-11 18:00:13 -08:00
Kenneth Hsu 507beea277 Add tests for stopping after current file. 2019-09-17 12:46:23 -07:00
BlueBlock 95584c2d0f set project type to netcoreapp 2019-09-06 16:55:42 -04:00
Max dd0b6add42 nuget update 2019-09-05 15:43:59 +02:00
BlueBlock 4b1f260ac6 resolve merge conflicts 2019-08-22 23:15:54 -04:00