Releases: rustic-rs/rustic
rustic 0.4.0
rustic 0.4.0 is released!
The biggest change in this release is the change from async Rust back to sync Rust. This allowed some code simplifications and will allow easier implementation of some future features.
Also, efficient parallelization can be more easily done using threads and the well-known parallelization crates.
Changes in version 0.4.0:
Bugs fixed:
- Fixed a bug in the CI which sometimes made building beta executables fail.
New features:
- Snapshots now allow to use a label, to add a description and save the program version used.
- diff: diff can now compare snapshots with local dirs.
- backup: Added option --as-path.
- backup: Allow to use and save relative paths.
- backup: Added option --ignore-devid.
- backup: Now uses more parallelization.
- prune: Repacking is now parallel.
- New commands repair index/snapshots.
- Better support for using latest as snapshot.
- UI/progress bars: Added support for env variable RUSTIC_PROGRESS_INTERVALL.
- Simplified the code in some places.
Changes under the hood:
- rustic no longer uses async Rust.
- Replaced prettytables by comfytable. (Thanks @JMarkin)
rustic 0.3.2
rustic 0.3.2 is released!
Special thanks go to @istudyatuni for adding the completions
feature and @thht for testing!
Changes in version 0.3.2:
Breaking changes:
- Logging is completely reworked. New option
--log-level
replaces--verbose
and--quiet
Bugs fixed:
- Fixed broken error handling in REST/rclone backend some error kinds.
- Don't prompt for password in
init
command if it is given.
New features:
- New option
--log-file
allows logging to a file - New command
completions
to generate shell completions check
: Added--read-data
optioncheck
: Improved error handling and error messages- rest/rclone backend: Abort immediately at permanent errors.
restore
: better debug output to see what restore exactly will do- rclone backend no longer needs a temp dir. This meas rustic now doesn't need a temp dir at all.
- Nicer display of snapshot groups
- Added blackbox test using bats
rustic 0.3.1
rustic 0.3.1 is ready!
Note: Changing the binary name to rustic is a breaking change with respect to the self-update command.
This means rustic 0.3.0 can NOT be updated using self-update. Please download the binaries manually instead.
Changes in version 0.3.1:
Bugs fixed:
- change escaping of filename to get identical result as restic
- fix performance regression because of filename escaping
- chunker: Fixed chunker such that chunks of MINSIZE are possible.
- prune: Fix option --max-repack; now also works when resizing packs.
New features:
- Changed name of binary from rustic-rs to rustic
- Added config file support (see examples in examples/ dir)
- Added options --password and --password-command (and equivalents as env variables and config file options)
- snapshots: Summarize fully identical snapshots in snapshots command; added option --all.
- snapshots: Grouping by hosts and paths is now the default.
- snapshots: Added --json option
- backup: Allow backing up multiple source paths
- backup: Allow backup from stdin
- backup/parent detection now uses ctime and mtime; new options --ignore-mtime and --ignore-inode
- backup: Added option --exclude-larger-than
- forget: Always remove snapshots when ID is given
- prune: Only resize small packs when target packsize will be reached.
- prune: Added option --no-resize
- chunker: Increase buffer size to speed up chunking
- Added aarch64-apple-darwin as supported platform
- CI: Added rust audit
rustic 0.3.0
rustic 0.3.0 has landed!
This release introduces a change in the tree format which may interpret filenames of snapshots generated by pre-0.3.0 versions differently in edge-cases and thus changes the snapshots.
This change was needed to support restics tree format as well as create tree which are compatible with restic.
For more details, see #34 and #116 .
Changes is 0.3.0:
Bugs fixed:
New features:
- backup: Added escaping of filenames to be compatible with restic
- backup: Don't use temporary files, but save incomplete pack files in-memory
- Allow to limit pack sizes
- rest/rclone backend: Retry operations if they failing
- restore: Use existing files to speed up restore (also makes restore resumable)
- restore: Added --delete option to delete existing files not in snapshot
- restore/prune: Added warm-up possibilites for hot/cold repo
- prune: Remove unneeded packs from cache
- prune: Added repacking of packs which are too small or too large
- self-update: New command to update rustic
- Added syntax SNAPSHOT[:PATH] for many command to access sub-trees within snapshots
- Added support for environmental variables
- Improved help texts
- CI: Added beta builds
- CI: Added dependabot to get automatic PRs for dependency updates
rustic 0.2.3
0.2.3 is a bug-fix release that fixes a severe bug in the prune command
Note: In 0.2.3, there is a bug in the config command which might invalidate your config file, see #112
Changes in version 0.2.3
- prune: Fixed a critical bug which corrupted the repo when repacking compressed data
- prune: Fixed --repack-cacheable-only when used with --repack-uncompressed
- prune: Added progress bar for repacking
- restore: Improved progress bar
rustic 0.2.2
Warning: This release contains a bug in prune which is able to corrupt a repository, see #88.
Use rustic 0.2.3 instead!
Changes in version 0.2.2
- added possibility to specify a hot repo (added --repo-hot option)
- added rclone backend and made reading/writing remote repos with higher latency working
- new command config; added possibility to customize compression level
- added possibility to customize pack sizes. Also changed the standard settings for pack size.
- fixed errornous caching of data pack files
- check: new option --trust-cache
- improved speed of packer
- prune: new options --instant-delete, --repack-uncompressed, --fast-repack
- prune: option --repack-cacheable-only now expects true/false and default to true for hot/cold repos
- snapshots: allow to specify "latest" which only displays the latest snapshot(s)
- restore: fixed order of setting permission; improved error handling and debug output
rustic 0.2.1
Changes in version 0.2.1
- add support for local cache (adds --no-cache and --cache-dir options)
- added --prune option to forget
- restore: display and ignore most errors during restore
- restore: handle much more cases
- fix chunker for empty files
- REST backend: fix url path
- Local backend: fix treatment of additional files
- added fully support special files
- Allow specifying global options with subommands
rustic 0.2.0
Changes in version 0.2.0:
- new commands: init, forget, prune, repoinfo, tag, key
- allow parallel lock-free repo access including prune
- added REST backend
- add compression support
- add support for other unix OSes, e.g. macOS
- most operations are now parallelized (using async rust)
- added more statistical information to snapshots
- now uses the same JSON format for trees/nodes as restic
- CI/CD-pipeline and automatic builds for supported platforms
- better progress bars
- various small fixes
rustic 0.2.0-rc1
Version 0.2.0-rc1
This is the first release candidate for 0.2.0.
Changes in version 0.2.0:
- new commands: init, forget, prune, repoinfo, tag, key
- allow parallel lock-free repo access including prune
- added REST backend
- add compression support
- most operations are now parallelized (using async rust)
- added more statistical information to snapshots
- now uses the same JSON format for trees/nodes as restic
- better progress bars
- various small fixes