rustic/Cargo.toml
simonsan ec6165a25e
fix(deps): update rustic_core and other dependencies and fix merge precedence (#1282)
Due to changes in the way how merging of values were applied to
configuration values in `BackendOptions` this should is considered a
fix. Now values from the configuration file don't overwrite values from
environment variables, any more. As it was intended and stated in the
documentation.

Please make sure, your workflow is still working as intended, especially
that the configuration values and environment variables are applied as
you wanted it and as we documented it in the Configuration
documentation.

Precedence also applies when inheriting options from other profiles
using `use-profiles` or when using multiple profiles, e.g. `rustic -P
one -P two`. If the same repository option is defined in `one` and `two`
the value of `one` is taken. Before the fix, the value of `two` was
taken. But the fix only applies to the repository options. For other
options, `one` always had precedence.

Fixes #1226

---------

Signed-off-by: simonsan <14062932+simonsan@users.noreply.github.com>
Co-authored-by: Alexander Weiss <alex@weissfam.de>
2024-10-02 13:43:11 +00:00

177 lines
4.8 KiB
TOML

[package]
name = "rustic-rs"
version = "0.9.0"
authors = ["the rustic-rs team"]
categories = ["command-line-utilities"]
documentation = "https://docs.rs/rustic-rs"
edition = "2021"
homepage = "https://rustic.cli.rs/"
include = ["src/**/*", "LICENSE-*", "README.md", "config/**/*"]
keywords = ["backup", "restic", "deduplication", "encryption", "cli"]
license = "Apache-2.0 OR MIT"
readme = "README.md"
repository = "https://github.com/rustic-rs/rustic"
resolver = "2"
rust-version = "1.76.0"
description = """
rustic - fast, encrypted, deduplicated backups powered by Rust
"""
[features]
default = ["tui", "webdav"]
mimalloc = ["dep:mimalloc"]
jemallocator = ["dep:jemallocator-global"]
self-update = ["dep:self_update", "dep:semver"]
tui = ["dep:ratatui", "dep:crossterm", "dep:tui-textarea"]
webdav = ["dep:dav-server", "dep:warp", "dep:tokio", "rustic_core/webdav"]
[[bin]]
name = "rustic"
path = "src/bin/rustic.rs"
test = true
bench = true
doc = true
harness = true
edition = "2021"
# required-features = []
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--document-private-items", "--generate-link-to-definition"]
[dependencies]
abscissa_core = { version = "0.7.0", default-features = false, features = ["application"] }
rustic_backend = { version = "0.4.0", features = ["cli"] }
rustic_core = { version = "0.5.0", features = ["cli"] }
# allocators
jemallocator-global = { version = "0.3.2", optional = true }
mimalloc = { version = "0.1.43", default-features = false, optional = true }
# webdav
dav-server = { version = "0.7.0", default-features = false, features = ["warp-compat"], optional = true }
tokio = { version = "1", optional = true }
warp = { version = "0.3.7", optional = true }
# tui
crossterm = { version = "0.28", optional = true }
ratatui = { version = "0.28.1", optional = true }
tui-textarea = { version = "0.6.1", optional = true }
# logging
log = "0.4"
# errors
anyhow = "1"
displaydoc = "0.2.5"
thiserror = "1"
# serialization
serde = { version = "1", features = ["serde_derive"] }
serde_json = "1"
serde_with = { version = "3.10", features = ["base64"] }
# other dependencies
aho-corasick = "1.1.3"
chrono = { version = "0.4", default-features = false, features = ["clock", "serde"] }
comfy-table = "7.1.1"
rhai = { version = "1.19", features = ["sync", "serde", "no_optimize", "no_module", "no_custom_syntax", "only_i64"] }
scopeguard = "1.2"
semver = { version = "1", optional = true }
simplelog = "0.12"
# commands
bytesize = "1"
cached = "0.53.1"
clap = { version = "4", features = ["derive", "env", "wrap_help"] }
clap_complete = "4"
conflate = "0.2"
convert_case = "0.6.0"
dialoguer = "0.11.0"
directories = "5"
gethostname = "0.5"
globset = "0.4.15"
human-panic = "2.0.1"
humantime = "2"
indicatif = "0.17"
itertools = "0.13"
once_cell = "1.20"
open = "5.1.2"
self_update = { version = "0.41", default-features = false, optional = true, features = ["rustls", "archive-tar", "compression-flate2"] }
toml = "0.8"
[dev-dependencies]
abscissa_core = { version = "0.7.0", default-features = false, features = ["testing"] }
assert_cmd = "2.0.16"
dircmp = "0.2"
predicates = "3.1.2"
pretty_assertions = "1.4"
quickcheck = "1"
quickcheck_macros = "1"
rstest = "0.23"
rustic_testing = "0.2.2"
tempfile = "3.13"
toml = "0.8"
[target.'cfg(not(windows))'.dependencies]
libc = "0.2.159"
# cargo-binstall support
# https://github.com/cargo-bins/cargo-binstall/blob/HEAD/SUPPORT.md
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ bin }-v{ version }-{ target }{ archive-suffix }"
bin-dir = "{ bin }{ binary-ext }"
pkg-fmt = "tgz"
[package.metadata.binstall.signing]
algorithm = "minisign"
pubkey = "RWSWSCEJEEacVeCy0va71hlrVtiW8YzMzOyJeso0Bfy/ZXq5OryWi/8T"
# see: https://nnethercote.github.io/perf-book/build-configuration.html
[profile.dev]
opt-level = 0
debug = true
rpath = false
lto = false
debug-assertions = true
codegen-units = 4
# compile dependencies with optimizations in dev mode
# see: https://doc.rust-lang.org/stable/cargo/reference/profiles.html#overrides
[profile.dev.package."*"]
opt-level = 3
debug = true
[profile.release]
opt-level = 3
debug = false # true for profiling
rpath = false
lto = "fat"
debug-assertions = false
codegen-units = 1
strip = true
panic = "abort"
[profile.test]
opt-level = 1
debug = true
rpath = false
lto = false
debug-assertions = true
codegen-units = 4
[profile.bench]
opt-level = 3
debug = true # true for profiling
rpath = false
lto = true
debug-assertions = false
codegen-units = 1
# Allows quick RPM file generation, if "cargo-generate-rpm" is installed:
# cargo build --release; cargo generate-rpm
# will result in a file like target/generate-rpm/rustic-rs-0.6.1-1.x86_64.rpm
[package.metadata.generate-rpm]
assets = [
{ source = "target/release/rustic", dest = "/usr/bin/rustic", mode = "0755", config = false, doc = false, user = "root", group = "root" },
]