Commit Graph
11 Commits
Author SHA1 Message Date
Kenneth Skovhede 39ea5a2a46 Fixed using assembly name 2025-08-08 13:15:19 +02:00
Kenneth Skovhede 1aa496923e Fixed version checks 2025-08-08 12:49:18 +02:00
Kenneth Skovhede 6502017c57 Merge remote-tracking branch 'origin/master' into feature/vanara-vss-backup 2025-07-03 17:09:30 +02:00
Kenneth Skovhede 98deb8c576 Update support for VSS
This updates VSS to default use Vanara in favor of AlphaVSS which is no longer maintained.

The build for Vanara requires targeting `net8.0-windows7.0`, which will cause significant build overhead and complexity for cross platform builds.
To counter this, the setup is to have a single project, `Duplicati.Library.WindowsModules`, that is targeting `net8.0-windows7.0`.
The output from this project is then hoisted into the TrayIcon project for Windows builds so the files are available when debugging on Windows.
A top-level dummy executable project is added to ensure the project always builds.
The built modules are then loaded with reflection when requested.

With the use of Vanara there is now also support for using BackupRead to read files without making a VSS snapshot.
With BackupRead, it is possible to read locked files, but it still requires the SeBackupPrivilege as VSS does as well.

Unfortunately, the `vssapi.dll` file is not shipped for Arm64 on Windows, so even with Vanara this will not work, and only WMIC is supported on Arm64.
A workaround is to run Duplicati with x64 emulation if more advanced VSS features are needed (HyperV and MSSQL support).

This PR also updates options and filters out unsupported options for each operating system, so options that are not supported by the current OS are not reported and will give warnings if they are used, as opposed to just being ignored.

The release builder project has been updated to exclude the unused project, and purge unwanted outputs.
2025-07-01 16:32:19 +02:00
Carl Johnsen 09d79512bc Handled package / assembly version mismatch due to revision numbers 2025-06-23 13:31:05 +02:00
Carl Johnsen 46499033b8 Exchanged one of the known packages in the ReleaseBuilder to expect Microsoft.Data.Sqlite instead of the old SQLite package. 2025-06-23 10:28:25 +02:00
Carl Johnsen a3d2ffbcd0 Removed whitespace 2025-06-23 10:27:35 +02:00
Kenneth Skovhede cbaccecd9d Removed unused file 2025-04-14 18:02:26 +02:00
Kenneth Skovhede b1c8250a27 Force restore prior to analysis to ensure results are correct 2025-04-01 13:25:03 +02:00
Kenneth Skovhede 0000fcc1ff Improved error messages by bundling multiple errors into one message. 2025-04-01 12:55:48 +02:00
Kenneth Skovhede b3ba14cfb5 Improved validation by checking the nuget package versions against the actual binary versions in the output folder.
Added check for executables to avoid shipping with missing executables.
2025-04-01 11:36:27 +02:00