Commit Graph
49 Commits
Author SHA1 Message Date
Kenneth Skovhede 9bb1787947 Changed execution model to not use actions, but just have a module pr. action 2014-03-12 10:20:39 +01:00
Kenneth Skovhede 81ebf21597 Added test-backend command and web modules 2014-03-12 01:41:25 +01:00
Kenneth Skovhede 47bc010b3c Added test-filters command 2013-12-07 15:22:51 +01:00
Kenneth Skovhede 3f49f2506f Added hinting to the compression modules to avoid aggressive compression of index files with very little benefit 2013-11-13 21:19:26 +01:00
Kenneth Skovhede 795ae66ae1 Added error reporting if testing a volume throws an exception 2013-09-04 22:22:26 +02:00
Kenneth Skovhede 73f422b0aa Improved output from delete command 2013-08-26 15:25:37 +02:00
Kenneth Skovhede 25541d9d18 Implemented a new progress reporting system that relies polling for sending progress updates that occur with a high frequency. 2013-08-20 22:16:30 +02:00
Kenneth Skovhede f0d0dfb586 Implemented the test command 2013-06-26 21:59:01 +02:00
Kenneth Skovhede e36fa0c441 Implemented list-changes 2013-06-20 20:17:10 +02:00
Kenneth Skovhede 1ed99b0afc Updated some logic for the repair command 2013-06-16 23:35:46 +02:00
Kenneth Skovhede 1a4410e2c9 Implemented restore-control-files 2013-05-30 23:00:09 +02:00
Kenneth Skovhede b19eaacbd7 Implented ListControlFiles and added file count and file size to the normal list output 2013-05-30 21:54:43 +02:00
Kenneth Skovhede d696670598 Reworked the result reporting to support type safe values 2013-05-25 16:40:15 +02:00
Kenneth Skovhede e100e0a8d8 Merge branch 'master' into sandboxes/Kenneth/ForestHash
Conflicts:
	Duplicati/CommandLine/help.txt
	Duplicati/GUI/Program.cs
	Duplicati/GUI/Wizard pages/RestoreSetup/FinishedRestoreSetup.cs
2013-05-05 17:11:14 +02:00
Kenneth Skovhede 62c75d9af9 Removed all informs code (no more 1.3.x UI) 2013-05-05 17:07:24 +02:00
Kenneth Skovhede 9c5183f794 Merge branch 'master' into sandboxes/Kenneth/ForestHash
Conflicts:
	Duplicati.sln
	Duplicati/CommandLine/BackendTester/Duplicati.CommandLine.BackendTester.csproj
	Duplicati/CommandLine/Decrypter/Duplicati.CommandLine.Decrypter.csproj
	Duplicati/CommandLine/Duplicati.CommandLine.csproj
	Duplicati/GUI/Datamodel/Datamodel.csproj
	Duplicati/GUI/Duplicati.GUI.MacTrayIcon/Duplicati.GUI.MacTrayIcon.csproj
	Duplicati/GUI/Duplicati.GUI.TrayIcon/Duplicati.GUI.TrayIcon.csproj
	Duplicati/GUI/Duplicati.csproj
	Duplicati/Library/Backend/CloudFiles/Duplicati.Library.Backend.CloudFiles.csproj
	Duplicati/Library/Backend/FTP/Duplicati.Library.Backend.FTP.csproj
	Duplicati/Library/Backend/File/Duplicati.Library.Backend.File.csproj
	Duplicati/Library/Backend/GoogleDocs/Duplicati.Library.Backend.GoogleDocs.csproj
	Duplicati/Library/Backend/S3/Duplicati.Library.Backend.S3.csproj
	Duplicati/Library/Backend/SSHv2/Duplicati.Library.Backend.SSHv2.csproj
	Duplicati/Library/Backend/TahoeLAFS/Duplicati.Library.Backend.TahoeLAFS.csproj
	Duplicati/Library/Backend/WEBDAV/Duplicati.Library.Backend.WEBDAV.csproj
	Duplicati/Library/Compression/Duplicati.Library.Compression.csproj
	Duplicati/Library/DynamicLoader/Duplicati.Library.DynamicLoader.csproj
	Duplicati/Library/Encryption/Duplicati.Library.Encryption.csproj
	Duplicati/Library/Interface/Duplicati.Library.Interface.csproj
	Duplicati/Library/Logging/Duplicati.Library.Logging.csproj
	Duplicati/Library/Main/Duplicati.Library.Main.csproj
	Duplicati/Library/Modules/Builtin/Duplicati.Library.Modules.Builtin.csproj
	Duplicati/Library/SharpRSync/Duplicati.Library.SharpRSync.csproj
	Duplicati/Library/Snapshots/Duplicati.Library.Snapshots.csproj
	Duplicati/Library/Utility/Duplicati.Library.Utility.csproj
	Duplicati/License/Duplicati.License.csproj
	Duplicati/Server/Duplicati.Server.Serialization/Duplicati.Server.Serialization.csproj
	Duplicati/Server/Duplicati.Server.csproj
	Duplicati/Winforms/Controls/Duplicati.Winforms.Controls.csproj
	WizardForm/WizardForm.csproj
2013-05-05 13:55:18 +02:00
Kenneth Skovhede 0014b69ccf Removed unused x86 configurations and fixes som build refrences 2013-05-05 13:45:02 +02:00
Kenneth Skovhede 53a6631a85 Mono-fication of projects 2013-03-16 12:07:58 +01:00
Kenneth Skovhede aca4ed95cc More work on the block hash.
Rewrote the backup and restore to work within a transaction as that speeds things up a lot.
Rewrote the backup procedure to generate the file list from the database, instead of on-the-fly as that is more efficient.
Re-arranged the database to use less storage on large sets of unchanged files.
2013-03-08 22:24:54 +01:00
kenneth@hexad.dk e170d781f0 Resynced trunk into ForestHash
git-svn-id: https://duplicati.googlecode.com/svn/sandboxes/Kenneth/ForestHash@1536 59da171f-624f-0410-aa54-27559c288bec
2013-02-27 20:57:58 +00:00
kenneth@hexad.dk be0d503951 Implemented file-extension based rules for disabling compression for already compressed files
git-svn-id: https://duplicati.googlecode.com/svn/trunk@1535 59da171f-624f-0410-aa54-27559c288bec
2013-02-27 20:54:22 +00:00
kenneth@hexad.dk a0521da54d Initial version of the new block-based storage format.
Still needs a work over in terms of error handling, progress reporting, warning output, refactoring etc.
Also misses the volume reuse/reclaim algorithms.
But it passes the unit tests now, with and without a local database.

git-svn-id: https://duplicati.googlecode.com/svn/sandboxes/Kenneth/ForestHash@1526 59da171f-624f-0410-aa54-27559c288bec
2013-02-12 21:43:14 +00:00
kenneth@hexad.dk f8dc5bbafd Added the "Password" type to argument types for simplified handling of password masking.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@1509 59da171f-624f-0410-aa54-27559c288bec
2013-01-22 09:28:43 +00:00
kenneth@hexad.dk da1150e6cc Added support for callbacks.
Added a run-script module.
Need to make a Windows example script

git-svn-id: https://duplicati.googlecode.com/svn/trunk@1426 59da171f-624f-0410-aa54-27559c288bec
2012-08-15 18:33:46 +00:00
kenneth@hexad.dk 65c320c22d Rewrite of the way the compression modules are used.
The number of methods required by the ICompression interface is now reduce and all handling of path conversion and text encoding is now done in the CompressionWrapper class. This should make it easier to implement a new compression module, and reduce the number of errors that occur because of filename/encoding issues.

This commit also contains a fix for reporting a sane error message if the compression module is not found/loaded.

git-svn-id: https://duplicati.googlecode.com/svn/trunk@1417 59da171f-624f-0410-aa54-27559c288bec
2012-08-07 17:42:09 +00:00
kenneth@hexad.dk 7081aaed9a Re-integrated the LZMA branch into trunk.
Update issue #92
Duplicati 2.0 trunk now uses SharpCompress and allows compression using LZMA (and bz2, etc.)
Big thanks to Simon Colmer for working on this!

For now the file format is still zip, but the compression inside is different.
Once SharpCompress supports 7zip write, we can add that easily. Same goes for LZMA2 compression.



git-svn-id: https://duplicati.googlecode.com/svn/trunk@1397 59da171f-624f-0410-aa54-27559c288bec
2012-08-01 19:50:40 +00:00
kenneth@hexad.dk 203778b911 Added metadata recording, for later use in the new UI.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@1274 59da171f-624f-0410-aa54-27559c288bec
2012-05-14 18:48:21 +00:00
kenneth@hexad.dk 7e5dd2d581 Update command line help to use a friendlier format.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@1258 59da171f-624f-0410-aa54-27559c288bec
2012-05-08 18:32:31 +00:00
kenneth@hexad.dk 72ff1b1bc3 Added option to log operations and expected backend state for debugging purposes.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@1098 59da171f-624f-0410-aa54-27559c288bec
2012-01-15 22:15:22 +00:00
kenneth@hexad.dk a571f239fb Fixed some build issues after the merge.
Also fixed the build problems with MonoDevelop (non-signed assemblies)

git-svn-id: https://duplicati.googlecode.com/svn/branches/v2.0@1009 59da171f-624f-0410-aa54-27559c288bec
2011-11-18 23:47:27 +00:00
kenneth.skovhede@gmail.com b108e96e8e Temporary checkin for the 2.0 stuff
git-svn-id: https://duplicati.googlecode.com/svn/branches/v2.0@1005 59da171f-624f-0410-aa54-27559c288bec
2011-11-18 18:03:18 +00:00
kenneth@hexad.dk 63580c169b Merged trunk into 2.0 branch
git-svn-id: https://duplicati.googlecode.com/svn/branches/v2.0@1000 59da171f-624f-0410-aa54-27559c288bec
2011-11-17 22:44:36 +00:00
kenneth.skovhede@gmail.com fb7e36636b Update issue #490
Status: Fixed
The UI will now validate the servername to avoid problems with incorrect hostnames.

git-svn-id: https://duplicati.googlecode.com/svn/trunk@956 59da171f-624f-0410-aa54-27559c288bec
2011-10-30 08:49:15 +00:00
kenneth.skovhede@gmail.com 091994c0cb Merged trunk changes into 2.0 branch
git-svn-id: https://duplicati.googlecode.com/svn/branches/v2.0@906 59da171f-624f-0410-aa54-27559c288bec
2011-09-23 06:24:58 +00:00
kenneth.skovhede@gmail.com c85deda4c4 Updated project files to VS2010 instead of the rather outdated VS2008, this should make things easier for new people joining in.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@874 59da171f-624f-0410-aa54-27559c288bec
2011-09-09 17:10:35 +00:00
kenneth.skovhede@gmail.com aa63769bce Update issue #150
Status: Fixed

There is now a check to see if there are any duplicati-* files on the remote backend.
This is not done for the file-based backend, because that backend does not have a Test button.

git-svn-id: https://duplicati.googlecode.com/svn/trunk@828 59da171f-624f-0410-aa54-27559c288bec
2011-07-04 17:25:11 +00:00
kenneth.skovhede@gmail.com 9a0e31e5b8 Preliminary work on the standalone server component
git-svn-id: https://duplicati.googlecode.com/svn/branches/v2.0@785 59da171f-624f-0410-aa54-27559c288bec
2011-06-06 18:48:52 +00:00
kenneth.skovhede@gmail.com b0a359fd27 Updated license text
git-svn-id: https://duplicati.googlecode.com/svn/trunk@770 59da171f-624f-0410-aa54-27559c288bec
2011-05-09 19:52:28 +00:00
kenneth.skovhede@gmail.com 1f11cf67f9 Fixed some progress reporting
git-svn-id: https://duplicati.googlecode.com/svn/trunk@720 59da171f-624f-0410-aa54-27559c288bec
2011-03-12 10:03:54 +00:00
kenneth.skovhede@gmail.com c753e7c622 Changed the default filesize to be -1 to differentiate files with length = 0 from those with no reported length.
Now also stores the filename+size of signature/content files to ensure that the parsed filenames match the expected ones.
The filesize and filenames are used to verify that the remote file is complete, without downloading it.

git-svn-id: https://duplicati.googlecode.com/svn/trunk@716 59da171f-624f-0410-aa54-27559c288bec
2011-03-11 18:42:20 +00:00
morten@momi.dk b6dc8981aa Update solution to .NET 4.0 and added new SSH backend based on SSH.NET.
git-svn-id: https://duplicati.googlecode.com/svn/branches/v2.0@709 59da171f-624f-0410-aa54-27559c288bec
2011-03-07 20:15:29 +00:00
kenneth.skovhede@gmail.com 6cbe503d28 The logic for missing folders on the backends have changed.
Previously some backends autocreated a missing folder, and some threw an exception.

The new standard is that all backends throw the FolderMissingException on all access (except delete).
This means that the Test() and List() methods are now the same for all stock backends.
Third-party applications that use the backends should implement custom logic to auto-create the folders,
when the FolderMissingException is encountered.

Duplicati auto-creates missing folders, but this can be toggled through the new flag --disable-autocreate-folders.
In case the auto-create fails to detect a missing folder, there is now a "create-folder" action in the commandline version.

Update issue #102
Status: Fixed
The IBackend_v2 interface has the CreateFolder and Test methods.
The CreateFolder is exposed to the commandline interface with the action create-folder.

git-svn-id: https://duplicati.googlecode.com/svn/trunk@558 59da171f-624f-0410-aa54-27559c288bec
2010-10-23 11:40:43 +00:00
kenneth.skovhede@gmail.com df085e4271 Update issue #221
Status: Fixed
Added the first generic module, a password request module.
The motivation for this is to allow the creation of custom passphrase modules.
A simple model would be to add a GUI input dialog. 
A more sophisticated version may read a passphrase to an encrypted file which contains the real passphrase or similar.

git-svn-id: https://duplicati.googlecode.com/svn/trunk@519 59da171f-624f-0410-aa54-27559c288bec
2010-09-17 16:20:16 +00:00
kenneth.skovhede@gmail.com 76cac1ab86 Fixed a potential problem where the folder names where stored
in the local format (eg. using backslash). This could
create trouble if the backup was made on windows and restored
on linux.

Update issue #229
Status: Fixed

I have updated the code to store the correct time for the
files, as well as the folders. The folder timestamp
adds a slight overhead to the volumes, as Zip
archives have no folder entries, so the timestamps
for folders are kept in a separate file.

The time stored in the existing archives is the date the backup 
was made, not the last modified time, so it is not possible to 
restore the modification date for existing archives.
When restoring new archives, the correct date is set
for both files and folders.
When restoring older archives, the backup date is used
for files, and nothing is done for folders.

I also changed the internal storage to use UTC time format
for all timestamps to avoid problems with backup/restores on
machines with different timezones.

git-svn-id: https://duplicati.googlecode.com/svn/trunk@484 59da171f-624f-0410-aa54-27559c288bec
2010-08-31 19:50:52 +00:00
kenneth.skovhede@gmail.com 92829fa393 Fixed issue #242.
Corrected a lot of avalible -> available and recieve -> receive spelling errors.

git-svn-id: https://duplicati.googlecode.com/svn/trunk@462 59da171f-624f-0410-aa54-27559c288bec
2010-08-12 18:37:15 +00:00
kenneth.skovhede@gmail.com 1153d097fc Fixed various version information
git-svn-id: https://duplicati.googlecode.com/svn/trunk@460 59da171f-624f-0410-aa54-27559c288bec
2010-08-11 07:23:34 +00:00
kenneth.skovhede@gmail.com 3982a1e6a4 Fixed issue with x86 build.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@439 59da171f-624f-0410-aa54-27559c288bec
2010-07-05 07:32:41 +00:00
kenneth.skovhede@gmail.com d46706337c Updated copyright headers.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@428 59da171f-624f-0410-aa54-27559c288bec
2010-06-19 21:17:33 +00:00
kenneth.skovhede@gmail.com a40f6acf37 A fairly large refactoring of the code.
This was based on the idea that the interfaces should remain static.
I hope this change is enough to ensure stable interfaces until release 1.2.

Overview of changes:
Moved all interfaces into the same dll.
Encryption and compression is now plugable modules, just as the backends.
Encryption/compression can now register an UI.
Encryption now uses AESCrypt as a default.
GPG does not default to using the --armor option.
Added support for generic modules, but none are written yet.
Added support for plugable settings pages in the "Options" dialog.

Fixed issue #148.
Duplicati now uses AESCrypt as the default encryption format.

Fixed issue #199.
GPG now supports custom commandline options.

Fixed issue #207.
Encryption modules are now plugable.

Fixed issue #118.
S3 credentials are now stored.

Fixed issue #151.
Backends can now register system wide options.


git-svn-id: https://duplicati.googlecode.com/svn/trunk@427 59da171f-624f-0410-aa54-27559c288bec
2010-06-19 21:08:21 +00:00