Skip to content

Commit

Permalink
release: rustic-rs v0.7.0 (#1035)
Browse files Browse the repository at this point in the history
Signed-off-by: simonsan <[email protected]>
Co-authored-by: github-actions <[email protected]>
Co-authored-by: simonsan <[email protected]>
Co-authored-by: Alexander Weiss <[email protected]>
  • Loading branch information
4 people authored Feb 3, 2024
1 parent dc99e1f commit f06574b
Show file tree
Hide file tree
Showing 11 changed files with 504 additions and 69 deletions.
106 changes: 106 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,112 @@

All notable changes to this project will be documented in this file.

## [0.7.0] - 2024-02-03

### Packaging

- Enable RPM file build target
([#951](https://github.com/rustic-rs/rustic/issues/951))

### Bug Fixes

- Remove unmaintained `actions-rs` ci actions
- Remove unmaintained `actions-rs/cargo` ci action with cross.
- Remove unmaintained `actions-rs/toolchain` ci action
- Log config file logs after reading config files
([#961](https://github.com/rustic-rs/rustic/issues/961))
- Fix progress for copy command
([#965](https://github.com/rustic-rs/rustic/issues/965))
- Enable abscissa_core testing feature only for dev
([#976](https://github.com/rustic-rs/rustic/issues/976))
- Update github action to download artifacts, as upload/download actions from
nightly workflow were incompatible with each other
- Update rust crate duct to 0.13.7
([#991](https://github.com/rustic-rs/rustic/issues/991))
- Update rust crate libc to 0.2.151
([#992](https://github.com/rustic-rs/rustic/issues/992))
- Diff: Add local: to path syntax
([#1000](https://github.com/rustic-rs/rustic/issues/1000))
- Update rust crate libc to 0.2.152
([#1016](https://github.com/rustic-rs/rustic/issues/1016))
- Error handling when entering passwords
([#963](https://github.com/rustic-rs/rustic/issues/963))
- Use hyphen in cli api for numeric-uid-gid

### Documentation

- Update changelog
- Fix new lines in changelog
- Update changelog

### Features

- Add --quiet option to backup and forget
([#964](https://github.com/rustic-rs/rustic/issues/964))
- Allow building without self-update feature
([#975](https://github.com/rustic-rs/rustic/issues/975))
- Add option --numeric-uid-gid to ls
([#1019](https://github.com/rustic-rs/rustic/issues/1019))
- Add colors to help texts
([#1007](https://github.com/rustic-rs/rustic/issues/1007))
- Add webdav command ([#1024](https://github.com/rustic-rs/rustic/issues/1024))

### Generated

- Updated Completions fixtures

### Miscellaneous Tasks

- Run actions that need secrets.GITHUB_TOKEN only on rustic-rs org
- Update dtolnay/rust-toolchain
- Update taiki-e/install-action
- Update rustsec/audit-check
- Netbsd nightly builds fail due to missing execinfo, so we don't build on it
for now
- Upgrade dprint config
- Activate automerge for github action digest update
- Activate automerge for github action digest update
- Automerge lockfile maintenance
- Try to fix nightly build
- Display structure of downloaded artifact files
- Display structure of downloaded artifact files II
- Release
- Do not run twice on release branches
- Remove release workflow and fix release continuous deployment
- Run on tag push
- Add release candidates to CD
- Remove conditional for checking tags
- Fix path for release files for CD
- Fix path for release files for CD, second approach with full file name
- Fix binstall pkg-url
- Use tag version in directory names for automation to download new versions
- Set `max-parallel` to 1 for build matrix
- Replace max-parallel with an own job

### Refactor

- Adjust to changes in rustic_core for added rustic_backend
([#966](https://github.com/rustic-rs/rustic/issues/966))

### Testing

- Add missing powershell profile to completions test

### Build

- Bump zerocopy from 0.7.25 to 0.7.31
([#967](https://github.com/rustic-rs/rustic/issues/967))
- Bump h2 from 0.3.22 to 0.3.24
([#1009](https://github.com/rustic-rs/rustic/issues/1009))

### Diff

- Improve code (better lifetime handling)

### Ls

- Add alternative option name --numeric-id

## [0.6.0] - 2023-10-23

### Breaking Changes
Expand Down
8 changes: 5 additions & 3 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 5 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[workspace.package]
version = "0.6.1"
version = "0.7.0"
edition = "2021"
license = "Apache-2.0 OR MIT"
repository = "https://github.com/rustic-rs/rustic"
Expand All @@ -13,7 +13,7 @@ rustic - fast, encrypted, deduplicated backups powered by Rust
[package]
name = "rustic-rs"
version = { workspace = true }
authors = ["Alexander Weiss"]
authors = ["the rustic-rs team"]
categories = { workspace = true }
documentation = "https://docs.rs/rustic-rs"
edition = { workspace = true }
Expand Down Expand Up @@ -110,8 +110,8 @@ libc = "0.2.153"

[workspace.dependencies]
abscissa_core = { version = "0.7.0", default-features = false, features = ["application"] }
rustic_backend = { git = "https://github.com/rustic-rs/rustic_core.git", features = ["cli"] }
rustic_core = { git = "https://github.com/rustic-rs/rustic_core.git", features = ["cli"] }
rustic_backend = { version = "0.1", features = ["cli"] }
rustic_core = { version = "0.2", features = ["cli"] }

# logging
log = "0.4"
Expand Down Expand Up @@ -160,7 +160,7 @@ dircmp = "0.2"
# cargo-binstall support
# https://github.com/cargo-bins/cargo-binstall/blob/HEAD/SUPPORT.md
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ repo }-v{ version }-{ target }{ archive-suffix }"
pkg-url = "{ repo }/releases/download/v{ version }/{ bin }-v{ version }-{ target }{ archive-suffix }"
bin-dir = "{ bin }-{ target }/{ bin }{ binary-ext }"
pkg-fmt = "tgz"

Expand Down
48 changes: 19 additions & 29 deletions config/full.toml
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,21 @@ warm-up-wait = "10min" # Default: not set
[repository.options]
post-create-command = "par2create -qq -n1 -r5 %file" # Only local backend; Default: not set
post-delete-command = "sh -c \"rm -f %file*.par2\"" # Only local backend; Default: not set
retry = "default" # Only rest/rclone backend; Allowed values: "false"/"off", "default" or number of retries
retry = "default" # Only rest/rclone/all opendal backends; Allowed values: "false"/"off", "default" or number of retries
timeout = "10min" # Only rest/rclone backend
rclone-command = "rclone serve restic --addr localhost:0" # Only rclone; Default: not set
use-password = "true" # Only rclone
rest-url = "http://localhost:8000" # Only rclone; Default: determine REST URL from rclone output
# Note that opendal backends use several service-dependent options which may be specified here, see
# https://opendal.apache.org/docs/rust/opendal/services/index.html

# Additional repository options for the hot part - depending on backend. These can be only set in the config file.
[repository.options-hot]
# see [repository.options]

# Additional repository options for the cold part - depending on backend. These can be only set in the config file.
[repository.options-cold]
# see [repository.options]

# Snapshot-filter options: These options apply to all commands that use snapshot filters
[snapshot-filter]
Expand Down Expand Up @@ -77,43 +90,20 @@ iglob-file = []
git-ignore = false
no-require-git = false
exclude-if-present = [".nobackup", "CACHEDIR.TAG"] # Default: not set
custom-ignorefile = [".rusticignore", ".backupignore"] # Default: not set
one-file-system = false
exclude-larger-than = "100MB" # Default: not set
json = false
init = false
no-scan = false
quiet = false
skip-identical-parent = false

# Backup options for specific sources - all above options are also available here and replace them for the given source
[[backup.sources]]
source = "/path/to/source1"
label = "label" # Default: not set
tag = ["tag1", "tag2"]
description = "my description" # Default: not set
description-from = "/path/to/description.txt" # Default: not set
delete-never = false
delete-after = "5d" # Default: not set
host = "manually_set_host" # Default: host name
group-by = "host,label,paths" # Can be any combination of host,label,paths,tags
parent = "123abc" # Default: not set
force = false
ignore-ctime = false
ignore-inode = false
stdin-filename = "stdin" # Only for stdin source
as-path = "/my/path" # Default: not set; Note: This only works if source contains of a single path.
with-atime = false
ignore-devid = false
glob = []
iglob = []
glob-file = []
iglob-file = []
git-ignore = false
no-require-git = false
exclude-if-present = [".nobackup", "CACHEDIR.TAG"] # Default: not set
one-file-system = false
exclude-larger-than = "100MB" # Default: not set
json = false
init = false
skip-identical-parent = false
# .. and so on. see [backup]

[[backup.sources]]
source = "/path/to/source2 /second/path" # multiple local paths are allowd within one source
Expand Down Expand Up @@ -176,4 +166,4 @@ path-template = "[{hostname}]/[{label}]/{time}" # The path template to use for s
time-template = "%Y-%m-%d_%H-%M-%S" # only relevant if no snapshot-path is given
symlinks = false
file-access = "read" # Default: "forbidden" for hot/cold repos, else "read"
snapshot-path = "latest:/dir" # Default: not set - this will generate a virtual tree with all snapshots using path-template
snapshot-path = "latest:/dir" # Default: not set - if not set, generate a virtual tree with all snapshots using path-template
14 changes: 14 additions & 0 deletions config/opendal.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# rustic config file to use opendal storage - in this case b2
[repository]
repository = "opendal:b2" # just specify the opendal service here
password = "mypassword"

# all other options are given here.
# Please refer to https://opendal.apache.org/docs/rust/opendal/services/index.html for the options supported by each service
[repository.options]
# Here, we give the required b2 options, see https://opendal.apache.org/docs/rust/opendal/services/struct.B2.html
root = "repo-path" # Set the work directory for backend
key_id = "my_id" # B2 application key keyID
application_key = ".my_key" # B2 application key applicationKey
bucket = "bucket_name" # B2 bucket name
bucket_id = "bucket_id" # B2 bucket_id
10 changes: 10 additions & 0 deletions config/s3.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# rustic config file to use s3 storage
# Note that this internally uses opendal S3 service, see https://opendal.apache.org/docs/rust/opendal/services/struct.S3.html
# where endpoint, bucket and root are extracted from the repository URL.
[repository]
repository = "s3:https://s3.amazonaws.com/bucket/my/repopath"
password = "mypassword"

# Other options can be given here - note that opendal also support reading config from env files or AWS config dirs, see the opendal S3 docu
[repository.options]
region = "us-east-1"
8 changes: 8 additions & 0 deletions config/sftp.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# rustic config file to use sftp storage
# Note:
# - currently sftp only works on unix
# - Using sftp with password is not supported yet, use key authentication, e.g. use
# ssh-copy-id user@host
[repository]
repository = "sftp:user@host:/repo"
password = "mypassword"
Loading

0 comments on commit f06574b

Please sign in to comment.