Commit Graph
308 Commits
Author SHA1 Message Date
Kenneth Skovhede 11a27042bc Merge remote-tracking branch 'origin/master' into feature/alternate-source-provider 2025-02-26 19:25:46 +01:00
Kenneth SkovhedeandGitHub 4822bc4550 Merge pull request #5978 from duplicati/feature/make-backends-async
Final conversion to async backends
2025-02-26 18:02:05 +01:00
Olivier Chaze 395a5cb64f Adding two Infomaiak Cloud locations 2025-02-26 14:47:20 +01:00
Kenneth Skovhede 6238067f32 Updated logic for S3 backend, so the client implementations return the relative (non-prefixed) path 2025-02-24 13:17:08 +01:00
Kenneth Skovhede 4e73be1806 Fixed path conversion on Windows 2025-02-21 16:25:18 +01:00
Kenneth Skovhede 9dfe977d3f Changed logic so the source providers are now logically mounted into the source directory structure.
This fixes the restore issues as all sources will now appear as if they were originally part of the source file system.

The backend implementation has now been simplified so the backends only return names of entries with no path information.  Most backends already do this, but the S3 backends did not, so this was fixed as well.

This also clears up the interfaces, so the backend does not know about the `ISourceProviderEntry`. All mapping is done by the `BackendSourceProvider`, making it simpler to support other backends as sources.
2025-02-21 16:06:55 +01:00
Kenneth Skovhede 1716d09b51 Fixed source providers for S3, CIFS, and SSH.
Made the SMBShareConnection slightly more robust.

Introduced v2 List API to S3 backend, currently it retains v1 as the default.

Changed S3 backends to not recurse, potentially making smaller listings. This option can be disabled if it breaks things.

Added support for relative paths in the SSH backend.
2025-02-21 13:20:52 +01:00
Kenneth Skovhede 36ba547a92 Added the @ prefix to backend paths 2025-02-19 14:20:03 +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 bb5fd80a29 Implemented support for some backends as sources: SSH, CIFS, and S3 2025-02-17 14:01:08 +01:00
Kenneth SkovhedeandGitHub b6981d8668 This fixes errors with the Minio backend not re-throwing exceptions (#5897)
* This fixes errors with the Minio backend not re-throwing exceptions

* Throwing the correct exception ...
2025-01-22 23:29:27 +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
Kenneth SkovhedeandGitHub 58bf21306a Improve S3 logic for permission tests (#5879) 2025-01-16 14:28:20 +01:00
Kenneth SkovhedeandGitHub 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 88ae1d18b1 Fixed output from S3 options to mimic previous version 2024-11-15 14:18:39 +01:00
Kenneth Skovhede 38a255eb00 Fixed startup delay on Windows.
Delay was caused by AWS library performing network queries when reading properties on the configuration object.
On top of this, the properties were read twice.
Unified reading+application of options between iDrive and AWS S3.
2024-11-15 14:04:42 +01:00
Kenneth Skovhede 81c0b2209e Fixed a warning when using S3 2024-11-11 21:20:21 +01:00
Marcelo Ceccon 706e490f79 Upgrading AWS SDK to latest
This also resolves a series of warnings produced by unequalized versions between AWSSDK.Core and AWSSDK.S3 references.

The decision to not upgrade Minio (which is rather dated) is because starting at 4.0.0 several calls were made obsolete including the constructor. A specific feature branch will be opened to integrate the new version and run CI tests.
2024-11-07 17:33:44 +01:00
Kenneth Skovhede a9cd488bf2 Change the s3-client option to an enumeration-type as it has two possible values.
Fixed the parser to handle empty string and null as the same.
2024-11-06 22:07:27 +01:00
Kenneth Skovhede 454b1bb93b Merge remote-tracking branch 'origin/master' into feature/backend-async-get 2024-10-04 09:11:50 +02:00
Kenneth Skovhede 66ec130761 Added endpoints for Seagate Lyve S3 2024-10-03 21:47:14 +02:00
Kenneth Skovhede 9939926a99 Fixed S3 backend throwing the FileMissingException 2024-10-03 14:13:29 +02: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 55de4643c9 Remove conjugation - S3/Strings.cs 2024-08-13 08:07:58 -04:00
Suguru Hirahara aebf9f9614 Remove conjugation - specify 2024-08-13 08:07:52 -04:00
Suguru Hirahara 6f1a913eef Remove conjugation - supply 2024-08-13 08:07:28 -04:00
Suguru Hirahara 630468f785 Replace "property" with "option" 2024-08-06 11:56:17 -04:00
Suguru Hirahara d4057e57c5 Make backend descriptions consistent 2024-08-02 12:05:49 -04:00
Kenneth SkovhedeandGitHub e0c8719d0c Merge pull request #5345 from duplicati/feature/add-sakura-cloud-s3
Added Sakura Cloud to list of S3 providers
2024-08-01 14:17:51 +02:00
a289093eec Update Duplicati/Library/Backend/S3/S3Backend.cs
Co-authored-by: Suguru Hirahara <luixxiul@users.noreply.github.com>
2024-08-01 08:04:28 +02:00
Suguru Hirahara 5848c6bf46 Change 'Use this flag' to 'Use this option' 2024-07-31 01:52:47 -04:00
Suguru Hirahara a35f21a76d Add periods between double quotes 2024-07-29 23:51:10 -04:00
Suguru Hirahara 998d59f787 Add periods to strings on S3/Strings.cs 2024-07-29 23:14:20 -04:00
Kenneth Skovhede 2fe5115dd6 Added Sakura Cloud to list of S3 providers 2024-07-29 16:03:23 +02:00
Suguru Hirahara 43337dca90 Move strings 'Description' and 'DisplayName' up to the top inside the block 2024-07-29 02:23:07 -04:00
Kenneth SkovhedeandGitHub 8fc6e9724a Merge pull request #5328 from luixxiul/Id-to-ID
Fix minor details related to `Id` (`ID`) inside strings
2024-07-29 07:44:41 +02:00
Suguru Hirahara 42a83beeaa Split sentences correctly on Backblaze/Strings.cs, Idrivee2/Strings.cs, and S3/Strings.cs 2024-07-27 07:55:08 -04:00
Suguru Hirahara 67fcd7fbf1 Remove 'The "' from S3/Strings.cs 2024-07-27 07:55:02 -04:00
Suguru Hirahara 17cdd7e912 Sort S3ClientDescriptionLong 2024-07-26 22:26:00 -04:00
Suguru Hirahara 254bcc63a7 Rename DescriptionS3ClientLong to S3ClientDescriptionLong 2024-07-26 22:25:40 -04:00
Suguru Hirahara ae57dee0f0 Remove redundant space characters from *.cs and *.html 2024-07-26 00:10:31 -04:00
Kenneth SkovhedeandGitHub f0107b476a Merge pull request #5270 from duplicati/feature/update-localizations
Update localizations
2024-07-18 10:35:37 +02:00
Kenneth Skovhede 3bb06311a8 Added localization on additional strings 2024-07-18 09:56:19 +02:00
Suguru Hirahara ab7e640435 Fix string DescriptionS3ClientLong 2024-07-14 22:36:20 -04:00