Commit Graph
14088 Commits
Author SHA1 Message Date
Kenneth SkovhedeandGitHub 87b6f636fc Merge pull request #6955 from duplicati/feature/add-server-side-filters
Add server-side filter eval
2026-06-09 21:00:21 +02:00
Kenneth SkovhedeandGitHub 6deed30db4 Merge pull request #6953 from duplicati/feature/block-path-traversal-in-recovery-tool
Block path traversal in recovery tool
2026-06-09 10:14:06 +02:00
Kenneth SkovhedeandGitHub 04a0619296 Merge pull request #6952 from duplicati/feature/allow-disable-default-secret-provider
Allow disable default secret provider
2026-06-09 10:13:41 +02:00
Kenneth Skovhede 2a71a1e816 Add server-side filter eval
This PR adds a service-side function to perform filter evaluation. This can be used by the FE to get more correct results when using complicated filters.

This fixes #6926
This fixes #4194
This fixes #3180
2026-06-09 10:10:03 +02:00
Kenneth Skovhede 8cb1c9562e Block path traversal in recovery tool
This adds a check that prevents restoring files outside the specified target folder when using the recovery tool.

When choosing to restore to a specific folder, the expectation is that files are not restored outside the folder, which could happen with symlinks or manually crafted entries. This blocks it the same way the regular restore does and also supports `--allow-restore-outside-target-directory` to disable the check.
2026-06-08 19:17:07 +02:00
Kenneth SkovhedeandGitHub a096b3ca24 Merge pull request #6950 from duplicati/feature/case-change-usn
Fixed a case-change issue with USN
2026-06-08 17:33:15 +02:00
Kenneth SkovhedeandGitHub 2127397001 Merge pull request #6951 from duplicati/feature/remove-async-warnings
Rename to fix warnings
2026-06-08 17:32:50 +02:00
Kenneth Skovhede 0e36faab78 Allow disable default secret provider
This PR adds a new option `--disable-default-secret-provider` that will fully disable probing for the default secret provider.

This is to assist in cases where the secret provider is broken or shows unwanted popup dialogs.
2026-06-08 17:32:21 +02:00
Kenneth Skovhede 98ce287522 Rename to fix warnings
Recent C# compilers warn if async methods are not suffixed with `Async`.

This PR fixes a number of such warnings.
2026-06-08 13:16:17 +02:00
Kenneth Skovhede ba55762261 Fixed a case-change issue with USN
This fixes a case where an unmodified file that was renamed, but only had changes to the casing (i.e., `file.txt` to `FILE.txt`) would ignore the new name.

If the file contents or metadata were changed, the filename would be updated, but for pure renames, the new name would not be picked up.

This issue is only present if USN was also applied, and the bug is only present on Windows.
2026-06-08 11:03:37 +02:00
Kenneth SkovhedeandGitHub 34aab9d7d1 Merge pull request #6949 from duplicati/release/canary-2.3.0.104
Version bump to v2.3.0.104-2.3.0.104_canary_2026-06-04
2026-06-05 08:35:51 +02:00
Kenneth Skovhede 996c83818b Version bump to v2.3.0.104-2.3.0.104_canary_2026-06-04
You can download this build from:

Binaries: https://updates.duplicati.com/canary/?version=2.3.0.104

Signature file: https://updates.duplicati.com/canary/duplicati-2.3.0.104_canary_2026-06-04.signatures.zip
v2.3.0.104_canary_2026-06-04 v2.3.0.104-2.3.0.104_canary_2026-06-04
2026-06-05 00:04:12 +02:00
Kenneth Skovhede 37f612c1e7 Improved display from build tool 2026-06-04 21:45:09 +02:00
Kenneth SkovhedeandGitHub e783f33ec4 Merge pull request #6948 from duplicati/feature/bump-ngclient-225
Bump ngclient to 225
2026-06-04 20:36:15 +02:00
Kenneth Skovhede 736df8173b Bump ngclient to 225
This updates ngclient to 225, and also adds `--duplicati-webservice-suppress-welcome-page` to automatically disable the welcome page that is shown on new installs.
2026-06-04 20:09:04 +02:00
Kenneth SkovhedeandGitHub 732e4f63b6 Merge pull request #6947 from duplicati/feature/handle-extended-win32-fileattributes
Handle extended Win32 file attributes
2026-06-04 16:07:15 +02:00
Kenneth SkovhedeandGitHub 148558ae0d Merge pull request #6946 from duplicati/feature/s3-lockmode-fix
Get correct S3 lock mode values
2026-06-04 10:40:03 +02:00
Kenneth Skovhede aceafbd52c Fixed option name typo 2026-06-04 10:38:33 +02:00
Kenneth Skovhede ba58064de8 Handle extended Win32 file attributes
This PR extends the handling of excluded file attributes on Windows to include additional values that are present in Windows 10+11, but are not yet part of the .NET file attributes.

Specifically, this handles the `FILE_ATTRIBUTE_RECALL_ON_OPEN` and `FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS` attributes which are used to signal files are not available locally and will be fetched on access.

On Windows, a new option `--exclude-non-local-files` is added which will simply update `--exclude-files-attributes` with `Offline,RecallOnOpen,RecallOnDataAccess` such that setting the option will exclude offline files from the backup, without requiring that the user is aware of the attribute names or effects.

For all platforms, this PR also updates the parsing of the `--exclude-files-attributes` so it is now a flags-type enum and will validate the input as well as show the possible options in help and dropdowns.
2026-06-04 10:14:29 +02:00
Kenneth Skovhede 4ff6e0f5cc Get correct S3 lock mode values
This fixes an issue with reading S3 Lock Mode values, causing the UI to not display any values.

This fixes #6941
2026-06-04 09:01:52 +02:00
Kenneth SkovhedeandGitHub 09be7a4642 Merge pull request #6868 from carljohnsen/feature/full-disk-ntfs
Feature/Full disk NTFS support
2026-06-04 07:54:30 +02:00
Kenneth SkovhedeandGitHub 4cdc0d5233 Merge pull request #6925 from carljohnsen/feature/autotune-tool
Feature/AutoTune tool
2026-06-03 22:54:18 +02:00
Kenneth Skovhede 1e216110e1 Merge commit '1250b1c9641bef873c60df8a02b1194fe4ed36ca' into feature/full-disk-ntfs 2026-06-03 22:01:37 +02:00
Kenneth Skovhede bb654749b8 Merge remote-tracking branch 'origin/master' into feature/full-disk-ntfs 2026-06-03 21:51:15 +02:00
Kenneth SkovhedeandGitHub 1250b1c964 Merge pull request #6945 from duplicati/feature/context-aware-testing
Added read-only testing to backends
2026-06-03 21:35:14 +02:00
Kenneth Skovhede fb005a4bed Introduce namespace 2026-06-03 21:34:25 +02:00
Kenneth Skovhede 26a193aee1 Fixed compile issue 2026-06-03 21:33:46 +02:00
Kenneth SkovhedeandGitHub 8b5a802808 Merge pull request #6943 from duplicati/feature/make-fs-parsing-experimental
Make FS parsing experimental
2026-06-03 21:30:28 +02:00
Kenneth Skovhede 4a81fd280a Prevent build failure 2026-06-03 18:40:10 +02:00
Kenneth Skovhede c8fb0255d3 Fixed Async suffix 2026-06-03 18:36:33 +02:00
Kenneth SkovhedeandGitHub b33f81d8e8 Merge branch 'master' into feature/autotune-tool 2026-06-03 17:43:44 +02:00
Kenneth SkovhedeandGitHub 0adf2d5d68 Merge pull request #6944 from duplicati/feature/fix-locking-on-windows
Fix remote file locking on Windows
2026-06-03 17:42:17 +02:00
Kenneth Skovhede 9a9ea55fed Made the ignore in tests a bit more explicit 2026-06-03 17:40:14 +02:00
Kenneth SkovhedeandGitHub 0d0b90767d Merge pull request #6938 from realtek2017/smb-file-as-folder-issue
Fix SMB source listing misclassifying directories as files
2026-06-03 17:31:55 +02:00
Kenneth Skovhede 4d569c51e4 Added read-only testing to backends
This PR adds a flag to the test method so we can choose to test for read-only access (needed for restore) or read-write (needed for backups).

Additionally, this PR fixes a logic bug in that the BackendSourceProvider would not actually test the connection, but just check the placeholder element returned (which is always returned). With this PR the backend's ListAsync command is tested fully.

Also renamed the methods on ISourceProvider to have the `...Async` prefix.

This replaces #6939
2026-06-03 17:27:34 +02:00
Kenneth Skovhede 56d5bd51e4 Switched from bit manipulation for directory flags to using the HasFlag method for easier readability. 2026-06-03 14:38:49 +02:00
Kenneth Skovhede 211c58cbbc Added support for supressing warnings during tests 2026-06-03 14:34:42 +02:00
Kenneth Skovhede bc968cbaf0 Fix remote file locking on Windows
This fixes a locked database issue on Windows.

The issue was caused by the backup process having an open database, and then not passing that connection to the lock handler.
The lock handler would then attempt to open a new connection to the same database, which would fail.

This PR fixes the issue by passing an instance of the database to the lock handler.
Also addressed a logic issue where the dbpath was checked, even if an existing database connection was found.
Also fixed the lock results not setting the EndTime property, causing the reported lelapsed time to be off.
2026-06-03 12:45:57 +02:00
Kenneth SkovhedeandGitHub ec38a2fe54 Merge pull request #6934 from duplicati/feature/improve-msi-service
Improve MSI installer package for Service
2026-06-03 10:38:53 +02:00
Kenneth Skovhede eeb323b51d Make FS parsing experimental
This PR flips the logic so filesystem parsing is not enabled by default. This means that any disk source will be treated as an opaque stream of blocks.

Brave users can still try out the filesystem parsing, but we need more time to ensure the logic works across variations on filesystems.
2026-06-03 10:37:58 +02:00
Kenneth Skovhede d6304165e0 Undo change to launch.json 2026-06-02 15:30:40 +02:00
Kenneth Skovhede 9c51e96acc More defensive timeout for cold/busy/old machines to complete the configuration. 2026-06-02 15:21:57 +02:00
Kenneth Skovhede 5e5596a7cc Avoid re-gen certs on upgrade 2026-06-02 15:13:16 +02:00
Kenneth Skovhede 0627cd5fd3 More polsih on edge configuration cases and uninstall cleanup 2026-06-02 14:42:42 +02:00
Kenneth Skovhede 29413ef15d Handle edge cases when changing configuration either on existing install or on a product upgrade. 2026-06-02 13:12:29 +02:00
Kenneth Skovhede 4d86641e42 Improved registry key cleanup, and fixed an issue with removing certs on uninstall 2026-06-01 21:16:23 +02:00
Kenneth Skovhede b264e52a7a Fixed running server in-process from the WindowsService. This fixes the MSI not cleanly restarting a running service. 2026-06-01 16:45:00 +02:00
Kenneth SkovhedeandGitHub 691a882f53 Merge pull request #6936 from duplicati/feature/simplify-console-handling
Simplify console handling
2026-06-01 15:05:51 +02:00
Kenneth SkovhedeandGitHub a7c7f2fa2c Merge pull request #6935 from duplicati/feature/cleanup-registration-state
Cleanup after registering
2026-06-01 15:05:26 +02:00
Kenneth Skovhede 36716949d0 Switched to using ServiceManager instead of custom scripting 2026-06-01 11:20:20 +02:00