Commit Graph
13079 Commits
Author SHA1 Message Date
Kenneth Skovhede 01130f4cd5 Implemented option to enable folder-status service (disabled by default). 2026-02-19 17:30:57 +01:00
Kenneth SkovhedeandGitHub 0a702f48ff Merge branch 'master' into feature/folder-status-indicator 2026-01-30 16:22:18 +01:00
Kenneth SkovhedeandGitHub 4b2402d381 Merge pull request #6733 from duplicati/feature/fix-issue-6539
Fix issue with failed delete
2026-01-30 16:19:59 +01:00
Kenneth Skovhede cee97bb01a Treat inconsistency state the same for both deleted and deleting, so a failed delete does not cause a database inconsistency 2026-01-30 15:09:17 +01:00
Kenneth Skovhede 1094f2f4c6 Added more logging around failing test, and potentially fixed it (only fails in CI) 2026-01-30 08:38:13 +01:00
Kenneth SkovhedeandGitHub e61fadf40f Merge pull request #6732 from duplicati/feature/improve-support-for-remote-source
Extended support for remote sources
2026-01-30 08:27:24 +01:00
Kenneth Skovhede 2c1519fd34 Fixed GoogleDrive fetching files in subfolders 2026-01-29 22:34:13 +01:00
Kenneth Skovhede bb78aa57ae More work on Box paths 2026-01-29 22:33:42 +01:00
Kenneth Skovhede 896ec8da3e Fixed path resolution for GraphBackend 2026-01-29 21:46:02 +01:00
Kenneth Skovhede 7cebb96e95 Fixed an issue with mount points not always being recorded as folders 2026-01-29 21:19:15 +01:00
Kenneth Skovhede 340fa76852 Fixed issues with path parsing in Dropbox.
Switched from NewtonSoft to System.Text.Json in Dropbox.
2026-01-29 21:18:55 +01:00
Kenneth Skovhede e9f2b4e4d6 Updated Box to better handle cross-os strings 2026-01-29 21:17:27 +01:00
Kenneth SkovhedeandGitHub 046c175362 Merge pull request #6735 from duplicati/feature/fix-issue-6552
Handle missing blocks on recreate
2026-01-29 20:08:20 +01:00
Kenneth SkovhedeandGitHub 4d36711769 Merge pull request #6726 from duplicati/feature/fix-dry-run-2
Fixed dry-run command
2026-01-29 20:06:17 +01:00
Kenneth SkovhedeandGitHub 55ab419891 Merge pull request #6721 from duplicati/feature/support-gcs-object-locking
Added support for locking files on GCS
2026-01-29 20:05:29 +01:00
Kenneth SkovhedeandGitHub 4c962d851d Merge pull request #6736 from WhiteElephantIsNotARobot/feature/add-restore-path-to-log
Add RestorePath property to restore log
2026-01-29 20:04:02 +01:00
Kenneth SkovhedeandGitHub 47829034c1 Update ResultClasses.cs
Removed #nullable as the file is not properly nullable annotated
2026-01-29 16:08:44 +01:00
Kenneth SkovhedeandGitHub d1b7cb3767 Update ResultInterfaces.cs
Removed #nullable as the file is not properly nullable annotated
2026-01-29 16:08:14 +01:00
Kenneth Skovhede e269912c2b Fixed correct scope for locks with GCS 2026-01-29 15:44:11 +01:00
WhiteElephantIsNotARobotandClaude a1a22efafa Add RestorePath property to restore results
This adds the output folder path to the restore log/results, addressing
issue #6698. When performing a restore, especially long-running ones,
users may forget where files were restored to. This change ensures the
restore path is included in the JSON output.

Changes:
- Added RestorePath property to IRestoreResults interface
- Added RestorePath property to RestoreResults class
- Set RestorePath in RestoreHandler at the start of the restore operation

When no custom restore path is specified (files restored to original
locations), RestorePath will be null. Otherwise, it contains the
absolute path where files were restored.

Co-Authored-By: Claude (mimo-v2-flash) <noreply@anthropic.com>
2026-01-29 14:32:01 +00:00
Kenneth Skovhede 63fb415767 Fixed issue in test where a repair was not counted as a success. 2026-01-28 21:15:21 +01:00
Kenneth SkovhedeandGitHub 29adda9552 Merge pull request #6734 from duplicati/feature/improve-commandline-execute
Minor fixes for better experience when running a command and the data…
2026-01-28 21:05:50 +01:00
Kenneth Skovhede 0048cef9b7 Disable pooling to avoid locked files on Windows 2026-01-28 21:05:17 +01:00
Kenneth Skovhede fa6be206ef Handle missing blocks on recreate
This PR handles a case where the `dindex` files may reference non-existing `dblock` files. In this case the recreate may register missing (and unused) blocks in the `DeletedBlock` table, which will later cause issues if the blocks are attempted used.

The fix is to remove missing blocks before the cleanup so there is no entry that references the missing volumes.

This fixes issue #6552
2026-01-28 21:03:03 +01:00
Kenneth Skovhede 015176a2f8 Fix not crashing when requesting lock-info on a destination that does not support it. 2026-01-28 18:07:18 +01:00
Carl-Johannes JohnsenandGitHub 6b02116bed Merge pull request #6708 from carljohnsen/feature/automatic-321
Feature/Automatic 3-2-1 backup
2026-01-28 17:21:33 +01:00
Kenneth SkovhedeandGitHub 3e0aedd8b6 Merge branch 'master' into feature/fix-issue-6539 2026-01-28 15:44:28 +01:00
Kenneth Skovhede 0f61698238 Minor fixes for better experience when running a command and the database is in an incorrect version 2026-01-28 15:37:41 +01:00
Kenneth SkovhedeandGitHub 1616341df7 Merge branch 'master' into feature/fix-dry-run-2 2026-01-28 15:20:35 +01:00
Kenneth SkovhedeandGitHub 1a19b6aa9b Merge pull request #6728 from duplicati/feature/issue-6538
Fixed issue with missing log
2026-01-28 15:20:04 +01:00
Kenneth SkovhedeandGitHub e79d30731c Merge pull request #6724 from duplicati/feature/add-soft-delete
Added a soft-delete feature
2026-01-28 15:19:49 +01:00
Kenneth Skovhede 90a56ff33e Fix issue with failed delete
If the delete call fails, the file will be marked as "deleted" in the database even though it may not actually be deleted.

Once the delete grace time expires, Duplicati will refuse to run backups as a "new" file is found in the destination folder.

This PR changes the logic to track if the file was actually deleted, and will not mark the file deleted until the delete call reports success.

This fixes #6539
2026-01-28 15:03:23 +01:00
Kenneth SkovhedeandGitHub 6299837860 Merge branch 'master' into feature/fix-dry-run-2 2026-01-28 14:43:33 +01:00
Kenneth SkovhedeandGitHub 39400dc83a Merge pull request #6729 from duplicati/feature/fix-issue-6366
Improved query for purge broken files
2026-01-28 14:41:37 +01:00
Kenneth Skovhede ca112446e5 Disable pooling as that breaks tests on Windows 2026-01-28 14:40:45 +01:00
Kenneth Skovhede 8a08b35546 Extended support for remote sources
This PR adds support for using Box, Dropbox, GoogleDrive, SharepointV2, MicrosoftGroups, and OneDrive as remote sources.

For GoogleDrive, this requires full permissions and not just the regular OAuth access token.

Also extended S3 and SMB to actually look up a file if requested, which makes it possible to rely on the backup exclusion files, even when using remote sources. (SSH/SFTP does not currently support this).
2026-01-28 14:37:51 +01:00
Carl Johnsen b871c29a85 Fixed Windows paths in JSON strings 2026-01-28 12:09:10 +01:00
Kenneth SkovhedeandGitHub 2cb0ddceb3 Merge pull request #6730 from duplicati/feature/fix-missing-event-on-data-update
Fixed a missing event on settings update
2026-01-28 11:49:02 +01:00
Kenneth Skovhede e3a89dad82 Disabled long test 2026-01-28 11:48:11 +01:00
Kenneth SkovhedeandGitHub 1805f2ef15 Merge branch 'master' into feature/issue-6538 2026-01-28 11:12:11 +01:00
Kenneth SkovhedeandGitHub f3d73a41a1 Merge pull request #6720 from duplicati/feature/fix-filen-mfa-login
Fixed login with MFA on Filen.io
2026-01-28 11:05:06 +01:00
Carl Johnsen fc5f065934 Configured the handlebars templating to use invariant culture 2026-01-28 11:03:08 +01:00
Carl Johnsen 41408a1c12 Post merge fixes 2026-01-28 10:36:29 +01:00
Carl Johnsen 8d6122ee41 Merge branch 'master' into feature/automatic-321 2026-01-28 10:30:19 +01:00
Carl Johnsen 741526c417 Forward the backup options as src options for the remote synchronization module 2026-01-28 10:22:39 +01:00
Carl Johnsen 6d2187fe41 Moved strings to a resource file and called localization methods on them before returning. 2026-01-28 10:14:35 +01:00
Carl Johnsen 8fa514f940 Made the default keys of the rsync json be parsed in kebab-case, and added a test for the sync-on-warnings flag 2026-01-28 09:54:32 +01:00
Carl Johnsen 505fa4dd35 Updated the tests to match the new parser completely. 2026-01-28 09:12:27 +01:00
Carl Johnsen dc6383d9d4 Coverted from explicit json parsing to record based parsing 2026-01-28 09:11:08 +01:00
Carl Johnsen e7f46b5ef3 Renamed schedule to interval in tests 2026-01-28 05:38:59 +01:00