diff --git a/Cargo.lock b/Cargo.lock index 3f6d009ab..093ae385c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1480,7 +1480,7 @@ dependencies = [ [[package]] name = "rustic-rs" -version = "0.2.3-dev" +version = "0.3.0" dependencies = [ "aes256ctr_poly1305aes", "ambassador", diff --git a/Cargo.toml b/Cargo.toml index 4459efab6..e0ee441db 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rustic-rs" -version = "0.2.3-dev" +version = "0.3.0" description = """ fast, encrypted, deduplicated backups powered by pure Rust """ diff --git a/README.md b/README.md index b2800f780..e3100263b 100644 --- a/README.md +++ b/README.md @@ -25,20 +25,21 @@ Look at the [FAQ][3] or open an issue! ## Comparison with restic: Improvements: - * Allows using cold storage (e.g. AWS Glacier) repos which are only read in the `restore` command + * Allows using cold storage (e.g. AWS Glacier) repos which are only read in the `restore` command + supports warm-up * Completely lock-free pruning; option `instant-delete` is available * Huge decrease in memory requirement - * pack size can be customized - * Already much faster than restic for most operations (but not yet fully speed optimized) + * Pack size can be customized + * Already faster than restic for most operations (but not yet fully speed optimized) * `backup` command can use `.gitignore` files - * Snapshots save much more information + * `restore` uses existing files; also option `--delete` available + * Snapshots save much more information, available in `snapshots` command * Allows to save some options in the config file via the command `config` * New command `repo-info` * `snapshots latest` command to show only the latest snapshot(s) * `check` command checks and uses cache; option `--trust-cache` is available - * option `prune --fast-repack` for faster repacking - * `cat tree` command accepts a snapshot and path to cat the tree blob - * compression is already supported in released versions ;-) + * Option `prune --fast-repack` for faster repacking + * Syntax `[:PATH]` is available for many commands + * Compression is already supported in released versions ;-) Current limitations: * Backup source and restore destinations only on local file system @@ -46,7 +47,6 @@ Current limitations: ## Open points: * [ ] Add tests and benchmarks - * [ ] Add more backup-sources and restore-destinations * [ ] Add missing commands: copy, dump, find, mount * [ ] Improve error handling * [ ] Parallelize the code even more and optimize for speed where useful diff --git a/changelog/0.3.0.txt b/changelog/0.3.0.txt new file mode 100644 index 000000000..9c2e27706 --- /dev/null +++ b/changelog/0.3.0.txt @@ -0,0 +1,21 @@ +Changes in version 0.3.0: + +Bugs fixed: +- config command could invalidate config file on local backend + +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 diff --git a/screenshots/rustic.png b/screenshots/rustic.png index cd611d0d0..b835a0453 100644 Binary files a/screenshots/rustic.png and b/screenshots/rustic.png differ