Commit Graph
31 Commits
Author SHA1 Message Date
Kenneth Skovhede c0f40e19ca Updated copyright year to 2026 across the project 2026-04-16 15:21:24 +02:00
Kenneth Skovhede d2e041eef8 Fixed pCloud rename 2026-01-27 20:55:30 +01:00
Kenneth Skovhede 05f2702c82 Added support for renaming files on backends that support it.
This PR updates existing backends to implement the `IRenameEnabledBackend` interface, allowing for more efficient file renaming operations. The implementation varies by backend, with some using native rename operations and others falling back to copy-and-delete patterns.
2026-01-27 13:08:20 +01:00
Kenneth Skovhede 1ea74a3c63 Updated to .NET10 2025-11-14 15:05:39 +01:00
Kenneth SkovhedeandGitHub c613083352 Merge pull request #6592 from duplicati/feature/dynamic-toggle-of-streaming
Add dynamic streaming toggle
2025-11-04 10:51:14 +01:00
Kenneth Skovhede 5e32ee6ef9 Expose pCloud options
This PR fixes an issue with pCloud where the timeout options were not shown as supported even though they are parsed.
2025-11-03 19:01:08 +01:00
Kenneth Skovhede 012aeed7de Add dynamic streaming toggle
This PR adds a dynamic property so a backend can signal if it supports streaming, based on the settings.

This is currently used for the File backend, so that toggling `--use-move-for-put` will disable streaming on the backend instead of relying on the `--disable-streaming-transfers` flag.
2025-11-03 12:48:37 +01:00
Kenneth Skovhede 3a294d95fb Fixed compile warnings 2025-08-07 08:06:24 +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 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 04153d2c12 Removed Microsoft.DotNet.Analyzers.Compatibility from csproj's as it's deprecated. 2025-05-16 09:53:26 +02:00
Kenneth Skovhede 02eac71e41 Also show a folder in the suggested format 2025-05-01 10:21:30 +02:00
Kenneth Skovhede 181b79c0b8 Fixed pCloud OAuth url from commandline 2025-05-01 10:18:58 +02:00
Kenneth Skovhede 46f5efd178 Merge branch 'master' into feature/support-glacier-style-non-readable-files 2025-04-23 22:37:31 +02:00
Kenneth Skovhede bf1ef0e794 Fixed nullability warnings 2025-03-24 10:31:52 +01:00
Kenneth Skovhede 631c80d6a8 Cleaned up some option names 2025-03-24 10:17:26 +01:00
Kenneth Skovhede 9cecee04b9 Updated pCloud 2025-03-21 17:01:37 +01:00
Kenneth Skovhede dd07dabee1 Merge commit 'b1f705f71a39e4ea79c7dae56bfd0fb345af5110' into feature/support-glacier-style-non-readable-files 2025-03-18 20:44:05 +01:00
Kenneth Skovhede 11a27042bc Merge remote-tracking branch 'origin/master' into feature/alternate-source-provider 2025-02-26 19:25:46 +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 Skovhede 71b3152f71 Implemented support for not testing archived files 2025-01-29 11:36: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
Kenneth SkovhedeandGitHub 045c6b9147 Feature/adjust pcloud exception (#5883)
* Fixed pCloud exception type

Changed pCloud exception to `FileMissingException` (was `FileNotFoundException`)

* Fixed a label in tests
2025-01-16 22:21:16 +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
Marcelo C. ce73e0f1f6 Implementation of fixes suggested on code review
Post changes tests:

- Folder creation and discovery checked.
- Backup and restore operations checked.
- Tests with backend tests performed.
2024-12-04 09:29:14 -03:00
Marcelo C. 356d0c1bfd Implement nested folder support and improve file operations on pCloud Backend
- Add support for subfolders
- Implement robust file selection using fileID for Download/Delete operations instead of concatenation of path + filename
- Improved validation for folder existence during backend connectivity tests supporting subfolders.
2024-12-03 12:16:17 -03:00
Marcelo C. 2eab4611de Fix for the streaming error on BackendTester interaction
This issue does not affect the pCloud backend per se and its functioning as expected.

The issue is related to a symptom the BackendTester revealed as discussed here:

https://github.com/duplicati/duplicati/pull/5709

It turns out the backends should assume the caller has set the input stream at the correct position and take it from there.

Therefore the fix is simply to remove the .Position = 0; which was well intended as a way to make sure the stream was at the beginning, but  thats not the pattern to follow when integrating backends.

A future blog post/tutorial on new backend integrations will mention these premises.
2024-11-27 19:34:18 +01:00
Marcelo C. 068ae42aa1 Implementation of changes requested in review 2024-11-25 11:01:59 +01:00
Marcelo Ceccon 4beafc0cc7 Added pCloud Integration
Added pCloud backend with custom interface for editing destination.
2024-11-18 13:07:01 +01:00