Kenneth Skovhede and GitHub
060d83e0d9
Merge branch 'master' into feature/simplify-webmodule-lookups
2025-09-23 13:14:44 +02:00
Kenneth Skovhede
48a5e8cf0e
Google IAM support
...
This adds support for using a Google Service Account JSON instead of the OAuth-based AuthID.
This fixes #3835
2025-09-22 16:07:23 +02:00
Kenneth Skovhede
2822e95626
Simplify webmodule lookups
...
This PR adds the lookup data to the module output, such that the FE does not need to call a webmodule to get the dictionaries with lookup values.
2025-09-05 10:49:20 +02:00
Kenneth Skovhede
3a294d95fb
Fixed compile warnings
2025-08-07 08:06:24 +02:00
Kenneth Skovhede
fa19725a9a
Fixed creating folder with Google Drive
...
This fixes #6389
2025-07-07 11:46:20 +02:00
Kenneth Skovhede
35058d333e
Update handling of alternate OAuth url
...
This PR removes the `OAuthContextSettings` class, and makes the `--oauth-url` option available on each backend that uses it, so it can be configured as part of the destination.
To assemble everything related to configuring OAuth, the code was moved to the `AuthIdOptionsHelper`, such that the usage can be shared between implementations.
This PR also adds the option to set the default OAuth url from the environment variable `DUPLICATI_OAUTH_SERVICE`.
The server can then be set in the following locations (most important last):
- Environment variable
- Server-wide advanced settings
- Backup job advanced settings (or commandline)
- Destination url
2025-06-11 09:27:40 +02:00
Kenneth Skovhede
9ead8e04b6
Fixed GCS and GoogleDrive
2025-05-23 14:12:36 +02:00
Kenneth Skovhede
212d40346a
Migrated Dropbox as well
2025-05-23 11:28:53 +02:00
Kenneth Skovhede
d3b65f1e92
Remove OAuthHelper
...
This PR removes OAuthHelper.
Initial commit is removal of OAuthHelper in GoogleCommon, GoogleDrive and GCS.
2025-05-23 10:40:55 +02:00
Kenneth Skovhede
6031b4de8b
Update Test method to check for write permissions
...
This PR moves the check from the FTP backend into shared code, so all backends will now check for read/write permissions when using the "Test" button.
For situations where write permissions are not required (like restore or verify) there is a flag on the v2 API that indicates if the connection was established, so the UI can show a message suggesting that it is possible to proceed, if the current UI operation does not require write permissions.
This fixes #2473
2025-05-21 17:19:27 +02:00
Carl Johnsen
8be97bcefd
Whitespace changes
2025-05-16 10:22:51 +02:00
Carl Johnsen
04153d2c12
Removed Microsoft.DotNet.Analyzers.Compatibility from csproj's as it's deprecated.
2025-05-16 09:53:26 +02:00
Kenneth Skovhede and GitHub
a7bdd67534
Merge pull request #6106 from duplicati/feature/remove-timeout-excempt-backend
...
Removed unused timeout excemption
2025-04-01 15:39:43 +02:00
Kenneth Skovhede
0a5f24bc02
Prevent early dispose of response
2025-03-31 11:06:10 +02:00
Kenneth Skovhede
efaaa70548
Removed unused timeout excemption
2025-03-28 16:34:24 +01:00
Kenneth Skovhede
73bb3d811b
Updated Google services
2025-03-21 12:34:06 +01:00
Kenneth Skovhede
7031bc57b6
Adding ConfigureAwait(false) to all async enumerations
2025-02-18 09:18:36 +01:00
Kenneth Skovhede
0f9669b273
Final conversion to async backends
...
This PR is the final change, where all backends are now purely implemented with async interfaces.
The code changes here replace the LIST call with an async version. This affect all backends (and then some) but the changes are mostly mechanical rewrites of the code.
In many places, the backeds were already prepared for async output, in other some glue was needed.
To reduce the scope of this change, some backends simply report a synchronous result as an async list.
2025-02-17 16:45:51 +01:00
Kenneth Skovhede and GitHub
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
Kenneth Skovhede and GitHub
9464caf622
Feature/update license 2025 ( #5851 )
...
* Fixed some minor whitespace issues
* Updated all copyright to 2025
2025-01-07 09:40:39 +01:00
Kenneth Skovhede and GitHub
8f853cfa7f
Google drive and GCS do not work with timeout ( #5812 )
2024-12-26 10:42:58 +01:00
Kenneth Skovhede
61ea36091a
Added DNSNames as async
2024-10-02 09:37:52 +02:00
Kenneth Skovhede
586c08522e
Implemented async method for Test, CreateFolder and Quota in all backends.
...
Still missing the List and DNSHostnames.
The AsyncRequest class is also preventing many backends from fully upgrading.
2024-10-01 09:30:02 +02:00
Kenneth Skovhede
8bdb85e261
Implemented RenameAsync on all backends supporting rename
2024-09-29 23:21:50 +02:00
Kenneth Skovhede
ecf2e8b551
Implemented DeleteAsync on all backends
2024-09-29 23:04:54 +02:00
Kenneth Skovhede
e3e3d1305f
Implemented async version of Get for all backends.
2024-09-29 22:00:57 +02:00
Suguru Hirahara
a6b8f61646
Remove conjugation more
2024-08-13 08:09:04 -04:00
Suguru Hirahara
aebf9f9614
Remove conjugation - specify
2024-08-13 08:07:52 -04:00
Suguru Hirahara
d4057e57c5
Make backend descriptions consistent
2024-08-02 12:05:49 -04:00
Suguru Hirahara
35658300c5
Split sentences
2024-07-31 01:52:59 -04:00
Suguru Hirahara
85543cb96c
Add periods to strings on GoogleServices/Strings.cs
2024-07-29 23:10:17 -04:00
Suguru Hirahara
1a09132254
Sort and group strings on GoogleServices/Strings.cs
...
Remove blank lines as well
2024-07-26 23:51:23 -04:00
Suguru Hirahara
80edc82f04
Sort strings on GoogleServices/Strings.cs
2024-07-26 23:50:59 -04:00
Kenneth Skovhede
3bb06311a8
Added localization on additional strings
2024-07-18 09:56:19 +02:00
Grzegorz Łagocki
9b19bac7da
Add Copyright Property to *.csproj files
2024-07-09 00:37:18 +02:00
Kenneth Skovhede
473c6cbbb8
Merge commit '4f577c65a4d8806f79637c50c21ca3a683c5a07a' into feature/kestrel-avalonia-upgrade
2024-03-04 12:21:53 +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
35cc847df7
Merge branch 'master' into feature/upgrade-to-sdk-style-projects
2024-03-01 14:28:55 +01:00
Thomas Suckow
a3bbf63561
Merge remote-tracking branch 'origin/feature/upgrade-to-sdk-style-projects' into feature/net5-kestrel
...
# Conflicts:
# .appveyor.yml
# .github/workflows/tests.yml
# BuildTools/AutoUpdateBuilder/AutoUpdateBuilder.csproj
# BuildTools/DependencyFinder/DependencyFinder.csproj
# BuildTools/GnupgSigningTool/GnupgSigningTool.csproj
# BuildTools/UpdateVersionStamp/UpdateVersionStamp.csproj
# Duplicati CommandLine Only.sln
# Duplicati.Library.RestAPI/RESTMethods/RequestInfo.cs
# Duplicati.Library.RestAPI/Runner.cs
# Duplicati.sln
# Duplicati/CommandLine/BackendTester/Duplicati.CommandLine.BackendTester.csproj
# Duplicati/CommandLine/BackendTester/app.config
# Duplicati/CommandLine/BackendTool/Duplicati.CommandLine.BackendTool.csproj
# Duplicati/CommandLine/BackendTool/app.config
# Duplicati/CommandLine/ConfigurationImporter/Duplicati.CommandLine.ConfigurationImporter.csproj
# Duplicati/CommandLine/Duplicati.CommandLine.csproj
# Duplicati/CommandLine/RecoveryTool/Duplicati.CommandLine.RecoveryTool.csproj
# Duplicati/CommandLine/app.config
# Duplicati/GUI/Duplicati.GUI.TrayIcon/Assets/icons/normal-warning.png
# Duplicati/GUI/Duplicati.GUI.TrayIcon/Duplicati.GUI.TrayIcon.csproj
# Duplicati/GUI/Duplicati.GUI.TrayIcon/Program.cs
# Duplicati/GUI/Duplicati.GUI.TrayIcon/app.config
# Duplicati/Library/AutoUpdater/Duplicati.Library.AutoUpdater.csproj
# Duplicati/Library/Backend/AlternativeFTP/Duplicati.Library.Backend.AlternativeFTP.csproj
# Duplicati/Library/Backend/AzureBlob/Duplicati.Library.Backend.AzureBlob.csproj
# Duplicati/Library/Backend/Backblaze/Duplicati.Library.Backend.Backblaze.csproj
# Duplicati/Library/Backend/Box/Duplicati.Library.Backend.Box.csproj
# Duplicati/Library/Backend/CloudFiles/Duplicati.Library.Backend.CloudFiles.csproj
# Duplicati/Library/Backend/Dropbox/Duplicati.Library.Backend.Dropbox.csproj
# Duplicati/Library/Backend/FTP/Duplicati.Library.Backend.FTP.csproj
# Duplicati/Library/Backend/File/Duplicati.Library.Backend.File.csproj
# Duplicati/Library/Backend/GoogleServices/Duplicati.Library.Backend.GoogleServices.csproj
# Duplicati/Library/Backend/HubiC/Duplicati.Library.Backend.HubiC.csproj
# Duplicati/Library/Backend/Idrivee2/Duplicati.Library.Backend.Idrivee2.csproj
# Duplicati/Library/Backend/Jottacloud/Duplicati.Library.Backend.Jottacloud.csproj
# Duplicati/Library/Backend/Mega/Duplicati.Library.Backend.Mega.csproj
# Duplicati/Library/Backend/OAuthHelper/Duplicati.Library.OAuthHelper.csproj
# Duplicati/Library/Backend/OneDrive/Duplicati.Library.Backend.OneDrive.csproj
# Duplicati/Library/Backend/OpenStack/Duplicati.Library.Backend.OpenStack.csproj
# Duplicati/Library/Backend/Rclone/Duplicati.Library.Backend.Rclone.csproj
# Duplicati/Library/Backend/S3/Duplicati.Library.Backend.S3.csproj
# Duplicati/Library/Backend/SSHv2/Duplicati.Library.Backend.SSHv2.csproj
# Duplicati/Library/Backend/SharePoint/Duplicati.Library.Backend.SharePoint.csproj
# Duplicati/Library/Backend/Sia/Duplicati.Library.Backend.Sia.csproj
# Duplicati/Library/Backend/Storj/Duplicati.Library.Backend.Storj.csproj
# Duplicati/Library/Backend/TahoeLAFS/Duplicati.Library.Backend.TahoeLAFS.csproj
# Duplicati/Library/Backend/Tardigrade/Duplicati.Library.Backend.Tardigrade.csproj
# Duplicati/Library/Backend/TencentCOS/Duplicati.Library.Backend.TencentCOS.csproj
# Duplicati/Library/Backend/WEBDAV/Duplicati.Library.Backend.WEBDAV.csproj
# Duplicati/Library/Common/Duplicati.Library.Common.csproj
# Duplicati/Library/Compression/Duplicati.Library.Compression.csproj
# Duplicati/Library/DynamicLoader/Duplicati.Library.DynamicLoader.csproj
# Duplicati/Library/Encryption/Duplicati.Library.Encryption.csproj
# Duplicati/Library/Interface/Duplicati.Library.Interface.csproj
# Duplicati/Library/Localization/Duplicati.Library.Localization.csproj
# Duplicati/Library/Logging/Duplicati.Library.Logging.csproj
# Duplicati/Library/Main/Duplicati.Library.Main.csproj
# Duplicati/Library/Modules/Builtin/CheckMonoSSL.cs
# Duplicati/Library/Modules/Builtin/Duplicati.Library.Modules.Builtin.csproj
# Duplicati/Library/Modules/Builtin/SendJabberMessage.cs
# Duplicati/Library/SQLiteHelper/Duplicati.Library.SQLiteHelper.csproj
# Duplicati/Library/Snapshots/Duplicati.Library.Snapshots.csproj
# Duplicati/Library/UsageReporter/Duplicati.Library.UsageReporter.csproj
# Duplicati/Library/Utility/Duplicati.Library.Utility.csproj
# Duplicati/Library/Utility/HashAlgorithmHelper.cs
# Duplicati/Library/Utility/Power/WindowsPowerSupplyState.cs
# Duplicati/License/Duplicati.License.csproj
# Duplicati/Server/Duplicati.Server.Serialization/Duplicati.Server.Serialization.csproj
# Duplicati/Server/Duplicati.Server.csproj
# Duplicati/Server/app.config
# Duplicati/Service/Duplicati.Service.csproj
# Duplicati/Service/app.config
# Duplicati/Tools/Duplicati.Tools.csproj
# Duplicati/UnitTest/Duplicati.UnitTest.csproj
# Duplicati/UnitTest/GeneralBlackBoxTesting.cs
# Duplicati/UnitTest/app.config
# Duplicati/WindowsService/WindowsService.csproj
# Installer/debian/docker/debian/control
# Tools/SQLiteTool/SQLiteTool.csproj
# Tools/ZipFileDebugger/ZipFileDebugger.csproj
# guiTests/guiTest.py
# thirdparty/UnixSupport/UnixSupport.csproj
# thirdparty/alphavss/Homepage.txt
# thirdparty/alphavss/License.txt
# thirdparty/alphavss/licensedata.json
2024-02-29 21:55:17 -08:00
Kenneth Skovhede
40dd3c6816
Updated all license mentions to MIT
2024-02-28 15:45:30 +01:00
Kenneth Skovhede
3bf6b162ca
Upgraded utility projects.
...
Removed redundant packages files.
Removed `mozroots` in prepare of switch to non-mono releases.
2024-02-26 08:24:48 +01:00
Kenneth Skovhede
d7b6dd90be
Updated all projects to use SDK-style projects using upgrade-assist
2024-02-25 16:19:25 +01:00
gpatel-fr
cf17f488d1
update Newtonsoft lib to 13.02
2023-03-24 23:17:11 +01:00
Thomas Suckow
d528703fe7
Merge branch 'master' into experiment/net5-split
...
# Conflicts:
# .github/workflows/tests.yml
# 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/Library/Backend/AzureBlob/AzureBlobWrapper.cs
# Duplicati/Library/Backend/Mega/Duplicati.Library.Backend.Mega.csproj
# Duplicati/Library/Backend/Mega/packages.config
# Duplicati/Library/Backend/OAuthHelper/Duplicati.Library.OAuthHelper.csproj
# Duplicati/Library/Backend/Tardigrade/Duplicati.Library.Backend.Tardigrade.csproj
# Duplicati/Library/Backend/Tardigrade/Properties/AssemblyInfo.cs
# Duplicati/Library/Backend/Tardigrade/packages.config
# Duplicati/Library/Common/Duplicati.Library.Common.csproj
# Duplicati/Library/Common/IO/SystemIOWindows.cs
# Duplicati/Library/Modules/Builtin/Duplicati.Library.Modules.Builtin.csproj
# Duplicati/Library/Modules/Builtin/packages.config
# Duplicati/Library/Utility/Utility.cs
# Duplicati/License/Duplicati.License.csproj
# Duplicati/Server/Duplicati.Server.csproj
# Duplicati/Server/packages.config
# Duplicati/UnitTest/Duplicati.UnitTest.csproj
2022-02-22 19:04:01 -08:00
Kenneth Hsu
de2a651763
Fix bug in PutAsync implementations.
...
Without await, the using statement can dispose the Stream before the
call to PutAsync completes, resulting in an ObjectDisposedException.
This fixes #4556 .
2021-06-12 15:12:13 -07:00
Kenneth Skovhede
b550e61d9b
Re-added compatibility analyzers
2021-04-03 21:49:51 +02:00
Kenneth Skovhede
557415c9ad
Changed implementation to target netstandard2.0.
...
Added builds for .Net 4.8
2021-04-03 14:13:32 +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
Kenneth Skovhede
63d8ab7c11
Changed all non-entry methods to use netstandard2.1
2021-04-01 22:37:26 +02: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