Skip to content

Conserve 0.6.4 2020-07-04

Compare
Choose a tag to compare
@sourcefrog sourcefrog released this 05 Jul 01:02
· 867 commits to main since this release
v0.6.4

v0.6.4 2020-07-04

Features

  • New conserve restore --only SUBTREE option restores only one subtree of the archive. Thanks to Francesco Gadaleta.

Performance improvements

conserve validate is now significantly faster. Conserve remembers which blocks have been validated and what their uncompressed length is, and uses this when checking that file index entries are valid.

Behavior changes

Some rearrangements to the command-line grammar to make it more concise and consistent:

  • conserve debug commands are now briefer: conserve debug index, conserve debug referenced, conserve debug blocks.

  • conserve source ls DIR is now conserve ls --source DIR.

  • conserve source size DIR is now conserve size --source DIR.

  • conserve tree size is now conserve size.

  • Obsolete global option --ui was removed.

  • The short option for conserve versions --short is now -q.

  • The short option for conserve versions --sizes is now -z.

Internal

  • Change to using structopt for option parsing.

  • Change to using thiserror for error enum construction.

  • Added a new Transport trait, abstracting the IO options for the Archive so that Conserve can in future also access archives over SFTP or in cloud storage.

  • Add tests that Conserve can read and write archives written by older compatible versions. (At present, everything from the 0.6 series that changed the format.)

  • New simpler Archive::backup and Archive::restore public APIs.

Archive format changes

Conserve 0.6.4 uses the same 0.6 archive version, with one compatible addition:

  • BANDTAIL files contain an additional index_hunk_count to enable conserve validate to check that no hunks are missing.