Commit Graph
13865 Commits
Author SHA1 Message Date
Carl Johnsen da0f530ece Source is default local folder for now 2026-05-18 08:36:21 +02:00
Carl Johnsen dc8dda1a89 Added preliminary log sink and parser 2026-05-18 08:30:51 +02:00
Carl Johnsen 68d3ee3252 Meta appeared twice in FileProcessor internal timings report 2026-05-18 08:26:57 +02:00
Carl Johnsen 7c04b2c046 Added default restore config from the default options 2026-05-08 11:27:22 +02:00
Carl Johnsen 1fb700f0ee Added initial setup for performing a backup and restore 2026-05-08 11:16:57 +02:00
Kenneth SkovhedeandGitHub 5418d810b2 Merge pull request #6895 from duplicati/feature/fix-issue6820
Optimize synthetic filelist creation
2026-05-07 09:37:00 +02:00
Kenneth SkovhedeandGitHub ac58ed9d98 Merge pull request #6893 from duplicati/feature/improve-sql-logging
Improve SQL logging
2026-05-07 09:36:44 +02:00
Kenneth SkovhedeandGitHub b3959b0c2d Merge pull request #6896 from duplicati/feature/rename-to-ms-365
Rename strings for M365
2026-05-06 16:39:43 +02:00
Kenneth Skovhede 3fdfb5454f Rename strings for M365
Update strings from "Office 365" to "Microsoft 365"
2026-05-06 16:39:22 +02:00
Kenneth Skovhede 584884de0a Always log the append queries as they are not in the hot-path for backups 2026-05-06 15:20:16 +02:00
Kenneth Skovhede ab487bdde2 Optimize synthetic filelist creation
This PR adds a test that generates a synthentic filelist of a variable size, and then measures the time it takes to recreate the fileset.

As there was a reported slowdown, analysis indicated that the query would grow in the order of O=N^2, where N is the number of paths.

The code is then updated to instead use some temporary on-disk space to lay out the paths and then insert them as a new fileset. This should bring the time down to O=N.

Based on a test with 10k files, the query speed up is ~900x, but will be more on larger filesets.
2026-05-06 15:16:10 +02:00
Kenneth Skovhede 4244e71fee Improve SQL logging
This PR improves SQL logging by capturing many places where the calls would previously just hit the database and not produce any logging output.
2026-05-06 10:52:58 +02:00
Kenneth SkovhedeandGitHub 373f4d2102 Merge pull request #6889 from duplicati/feature/default-aescrypt-v2
AESCrypt default v2
2026-05-04 17:23:34 +02:00
Kenneth SkovhedeandGitHub 2165f56f91 Merge pull request #6890 from duplicati/feature/bump-ngclient-220
Bump ngclient 0.0.220
2026-05-04 17:22:14 +02:00
Kenneth Skovhede 297c837b8a Bump ngclient 0.0.220 2026-05-04 17:21:20 +02:00
Kenneth SkovhedeandGitHub a45762624c Merge pull request #6888 from duplicati/feature/strip-xattrs
Strip xattrs from tar
2026-05-04 16:34:25 +02:00
Kenneth Skovhede 73a3e627c1 AESCrypt default v2
This PR sets the default AESCrypt stream format to v2.

This is done to introduce the ability to read the v3 format before switching to the new format. With a delayed activation, it is more likely that users can easily roll back a version if needed.
2026-05-04 16:19:56 +02:00
Kenneth Skovhede 96d6edd960 Strip xattrs from tar
During building of the RPM packages we use a tar file. This update simply avoid bundling unused ACLs and XATTR values in the tar file.
2026-05-04 15:21:30 +02:00
Kenneth SkovhedeandGitHub 753a52b199 Merge pull request #6887 from duplicati/feature/update-localizations-2605
Updated all localizations
2026-05-04 14:38:14 +02:00
Kenneth Skovhede ea714e529a Updated all localizations 2026-05-04 14:37:50 +02:00
Kenneth SkovhedeandGitHub 0725c2b376 Merge pull request #6801 from duplicati/features/upgrade-aescrypt-v3
Update SharpAESCrypt to v3
2026-05-04 14:32:57 +02:00
Kenneth SkovhedeandGitHub f3b09946c0 Merge pull request #6886 from duplicati/feature/guard-against-secretprovider-init-fail
Fix SecretProvider Init Failure
2026-05-04 14:06:09 +02:00
Kenneth Skovhede 42a15cacb5 Fix SecretProvider Init Failure
This PR adds a try/catch around initializing the default secret provider, to avoid crashes on startup where the setup is not correct for the provider.

If an explicit provider is set, this will crash as the user explicitly asked for it, but it is not working.

With this change, the implicit secret provider does not cause crashes.
2026-05-04 13:31:16 +02:00
Kenneth SkovhedeandGitHub b86c8ef2f1 Merge pull request #6885 from duplicati/feature/support-do-not-track
Support `DO_NOT_TRACK=1`
2026-05-04 13:20:57 +02:00
Kenneth SkovhedeandGitHub 51a5b002c9 Merge branch 'master' into features/upgrade-aescrypt-v3 2026-05-04 11:56:27 +02:00
Kenneth Skovhede b7592b64fa Reduce AES iterations for tests as they are otherwise slowed down significantly due to low-power CI tools. 2026-05-04 11:53:42 +02:00
Kenneth Skovhede b5ca38fd28 Support DO_NOT_TRACK=1
This adds support for the `DO_NOT_TRACK` environment variable, which is a proposal to make all tools agree on a single opt-out variable, similar to the browser header.
2026-05-04 11:49:14 +02:00
Kenneth SkovhedeandGitHub 9fd6e83536 Merge pull request #6884 from duplicati/feature/quota-disable-on-remote-sync
Add `quote-disable` to synctool
2026-05-04 11:34:15 +02:00
Kenneth SkovhedeandGitHub 64e848f490 Merge branch 'master' into features/upgrade-aescrypt-v3 2026-05-04 10:27:35 +02:00
Kenneth SkovhedeandGitHub 25d9eeb1b7 Merge pull request #6825 from aureliandevel/fix/maintenance-write-path-config-persistence
Fix persisted write-path option restore for maintenance and recompress
2026-05-04 10:26:36 +02:00
Kenneth SkovhedeandGitHub bf1f5a01ce Merge pull request #6873 from duplicati/feature/full-zstd-compression
Added zstd compression
2026-05-04 10:23:52 +02:00
Kenneth SkovhedeandGitHub 85c99c6f09 Merge pull request #6878 from duplicati/feature/detect-default-lock-config
Detect default lock refresh
2026-05-04 10:22:47 +02:00
Kenneth SkovhedeandGitHub cc0a82ec24 Merge pull request #6879 from duplicati/feature/post-backup-script
Added post-backup script
2026-05-04 10:21:35 +02:00
Kenneth Skovhede fc675638c4 Throwing a UserInformationException instead of the generic exception 2026-05-04 10:19:54 +02:00
Kenneth SkovhedeandGitHub 0f497c5104 Merge pull request #6880 from duplicati/feature/log-500-errors
Log 500 errors to live-log
2026-05-04 10:18:51 +02:00
Kenneth SkovhedeandGitHub 69ae446440 Merge pull request #6882 from duplicati/feature/more-defensive-delete
More defensive delete
2026-05-04 10:18:19 +02:00
Kenneth SkovhedeandGitHub 67e63ff393 Merge branch 'master' into feature/more-defensive-delete 2026-05-04 10:18:15 +02:00
Kenneth Skovhede 9717450b30 Add quote-disable to synctool
This PR adds support for using the `quota-disable` option to diable the quota check performed before executing the remote sync operation.

This is needed if the quota information returned is unreliable.
2026-05-04 10:17:54 +02:00
Kenneth SkovhedeandGitHub 2f83e23f94 Merge pull request #6883 from duplicati/feature/allow-version-in-search-api
Allow versions in search
2026-05-04 10:09:15 +02:00
Kenneth Skovhede 8835389e62 Allow versions in search
This PR extends the search API to allow versions to be added so searching can be limited to specific versions.

Before this PR, only time was supported, but this is picking versions older than the timestamp as well.
2026-05-01 15:05:55 +02:00
Kenneth SkovhedeandCopilot 6e13cdbc53 More defensive delete
This PR adds a small clause the prevents the delete query from failing if there are inconsistencies where deleted blocks can exist and a volume has no blocks.

I was not able to reproduce the issue without manipulating the database, but it was reported happening on the forum.

Co-authored-by: Copilot <copilot@github.com>
2026-05-01 15:02:09 +02:00
Kenneth Skovhede e3db4a967f Log 500 errors to live-log
This PR adds logging for 500 errors to the live logs.

As a precaution, errors that are unknown in nature are not reported to the client as they could expose sensitive information to an unauthenticated caller.

With this PR the errors are logged in the live-log and are visible to authenticated users.
2026-05-01 07:12:44 +02:00
Kenneth Skovhede 39636c6364 Added post-backup script
This PR adds a new `--run-script-post-backup` option that allows running a script after the main backup operation has completed, but before locking, compacting and verification is done.

The use for this is intended for cases where you want to stop or pause some service, run a backup, and then resume the service. Prior to this PR you would need to wait for the entire backup operation to complete, but with the new option you can resume as soon as the source data is no longer needed.
2026-05-01 07:06:12 +02:00
aureliandevelandGitHub 4ecac56250 Merge branch 'duplicati:master' into fix/maintenance-write-path-config-persistence 2026-05-01 11:37:04 +10:00
Kenneth SkovhedeandGitHub c39d67a9ee Merge pull request #6875 from duplicati/feature/preserve-cert-chain
Return full certificate chains
2026-04-30 20:03:52 +02:00
Kenneth SkovhedeandGitHub c64f7c73ce Merge pull request #6876 from duplicati/feature/fix-quote-size-incorrect
Fix incorrect quota size reported
2026-04-30 20:03:27 +02:00
Kenneth Skovhede 7fdefea533 Detect default lock refresh
This PR adds a probing mechanism that checks if the backup is using remote file locking and automatically sets the `--repair-refresh-lock-info` setting based on that finding.

If the backup is using `--remote-file-lock-duration` then the operation will refresh locks by default. otherwise it will not refresh locks.

If the backup sets `repair-refresh-lock-info` then that value is used.

Priority is (most important first):
- input value (from FE)
- backup `repair-refresh-lock-info` setting
- backup `remote-file-lock-duration`
- global settings `repair-refresh-lock-info`
- global settings `remote-file-lock-duration`

If the backup is using remote file locking, then most likely the user will want the repaired database to contain lock information. If remote locking is not used, the repair will now skip fetching lock information.
2026-04-30 19:48:58 +02:00
Kenneth Skovhede ae32caa05d Fix incorrect quota size reported
This PR partially re-introduces the logic attempting to get the free space for a specific path.

The code before this would incorrectly always return the free space of `/` on non-Windows, instead of the actual mounted path's free space.
2026-04-30 16:03:26 +02:00
Kenneth Skovhede 1f5411ec0b Return full certificate chains
Rewrote the certificate selector to use the TlsHandshakeCallbackOptions  as the HttpsConnectionAdapterOptions did not support returning the full chain, but only returned the leaf certificate.

This fixes #6807
2026-04-30 15:29:49 +02:00
Kenneth SkovhedeandGitHub b364d7d16e Merge pull request #6874 from duplicati/dependabot/npm_and_yarn/npm_and_yarn-5f44a83626
Bump postcss from 8.4.47 to 8.5.12 in the npm_and_yarn group across 1 directory
2026-04-30 13:05:22 +02:00