@sourcefrog sourcefrog released this Nov 11, 2018 · 13 commits to master since this release

Assets 2
  • conserve validate checks the archive much more thoroughly.

  • New source size and tree size commands.

  • Progress percentage is now measured as a fraction of the total tree to be copied, which is a more linear measurement.

  • Removed internal timing of operations, shown in --stats. Now that Conserve is increasingly aggressively multithreaded, these times aren't very meaningful, and the implementation causes some lock contention.

@sourcefrog sourcefrog released this Nov 1, 2018 · 59 commits to master since this release

Assets 2
  • Conserve 0.5 uses a new format, and can't read 0.4 repositories. The new format has a single blockdir per archive for all file contents, rather than one per band. This significantly reduces space usage and backup time.

  • New command validate checks some (but not yet all) internal correctness and consistency properties of an archive.

  • New commands conserve debug block list and conserve debug block referenced.

  • conserve list-source was renamed to conserve source ls.

  • Better progress bars including percentage completion for many operations.

  • backup, restore, and validate show a summary of what they did.

@sourcefrog sourcefrog released this Nov 1, 2018 · 126 commits to master since this release

Assets 2
  • conserve versions has a new --sizes option, to show disk usage by each version.

  • -v option to backup and restore prints filenames as they're processed. --no-progress turns off the progress bar.

@sourcefrog sourcefrog released this Jan 14, 2018 · 175 commits to master since this release

Assets 2
  • Commands such as restore and ls that operate on a version, will by default operate on the last complete version, rather than defaulting to the last version altogether and then potentially complaining it's incomplete. Similarly for the SourceTree::open API when given no BandId argument.

  • Some backup work is parallelized using Rayon, giving a mild speedup for large files. There is potential to much more work here, because backups are generally CPU-bound in Snap compression and BLAKE2 hashing, and Conserve should try to use every available core.

  • Various internal rearrangements including treating stored and live trees as instances of a common trait, to enable future features.

@sourcefrog sourcefrog released this Dec 31, 2017 · 234 commits to master since this release

Assets 2
  • Large files are broken into multiple blocks of 1MB uncompressed content, so that memory use is capped and so that common blocks can potentially be shared.

  • New --exclude GLOB option.

@sourcefrog sourcefrog released this Nov 11, 2017 · 329 commits to master since this release

Assets 2
  • Switch from Brotli2 to Snappy compression: probably a better speed/size tradeoff for mixed data. (Breaks format compatibility.)

@sourcefrog sourcefrog released this Jan 8, 2017 · 375 commits to master since this release

Assets 2
  • Flush (sync) archive files to stable storage after they're written. In the event of the machine crashing or losing power in the middle of a backup, this should reduce the chance that there are index blocks pointing to data blocks not on the filesystem.

    Tests show this has little impact on performance and it's consistent with Conserve's value of safety. (Windows 10 performance turns out to be ruined by the Windows Defender antivirus, but if you exclude the archive directory it is fine, even with this change.)

  • New --ui option to choose plain text or fancy colored output, replacing --no-progress.

  • Color UI shows progress bars cleanly interleaved with log messages.

  • Filenames are now only shown during backup and restore when the -v option is given.

  • conserve versions by default shows whether they're complete or not. conserve versions --short gives the same behavior as previously of just listing the version names.

  • conserve ls and conserve restore will by default refuse to read incomplete versions, to prevent you thinking you restored the whole tree when it may be truncated. You can override this with --incomplete, or select an older version with --backup.

@sourcefrog sourcefrog released this Dec 17, 2016 · 447 commits to master since this release

Assets 4
  • Fixed Cargo package metadata.

@sourcefrog sourcefrog released this Dec 11, 2016 · 453 commits to master since this release

Assets 3

Conserve 0.3.0

Released 2016-12-11

  • Archive format has changed from 0.2 without backward compatibility.
  • New and changed commands:
    • conserve restore makes Conserve a much more useful backup tool!
    • Renamed list-versions to just versions.
  • Symlinks are backed up and restored. (Only on Unix, they're skipped on
    Windows because they seem to be rare and to have complicated semantics.)
  • New text-mode progress bar.
  • Compression is substantially faster, through setting Brotli to level 4.
Apr 19, 2016
BlockDir should silently accept attempt to store an existing block.