# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO # # When uploading crates to the registry Cargo will automatically # "normalize" Cargo.toml files for maximal compatibility # with all versions of Cargo and also rewrite `path` dependencies # to registry (e.g., crates.io) dependencies. # # If you are reading this file be aware that the original Cargo.toml # will likely look very different (and much more reasonable). # See Cargo.toml.orig for the original contents. [package] edition = "2021" rust-version = "1.71.1" name = "stratisd" version = "3.7.3" authors = ["Stratis Developers "] build = "build.rs" exclude = [ "/.clippy.toml", "/.fmf", "/.githooks", "/.github", "/.gitignore", "/.packit.yaml", "/_typos.toml", "/Makefile", "/Makefile_dependencies", "/README_tests.md", "/docs", "/dracut", "/plans", "/stratisd.conf", "/systemd", "/tests", "/tests-fmf", "/udev", ] autobins = false autoexamples = false autotests = false autobenches = false description = "Stratis daemon" readme = "README.md" keywords = [ "Linux", "filesystem", "storage", ] categories = ["filesystem"] license = "MPL-2.0" repository = "https://github.com/stratis-storage/stratisd/" [package.metadata.vendor-filter] all-features = true platforms = ["*-unknown-linux-gnu"] tier = "2" [[package.metadata.vendor-filter.exclude-crate-paths]] exclude = "ci" name = "num_cpus" [[package.metadata.vendor-filter.exclude-crate-paths]] exclude = "ci" name = "libm" [[package.metadata.vendor-filter.exclude-crate-paths]] exclude = "vendor" name = "libdbus-sys" [lib] name = "stratisd" path = "src/lib.rs" [[bin]] name = "stratis-base32-decode" path = "src/bin/udev-lib/stratis-base32-decode.rs" required-features = ["udev_scripts"] [[bin]] name = "stratis-min" path = "src/bin/stratis-min/stratis-min.rs" required-features = [ "engine", "min", ] [[bin]] name = "stratis-str-cmp" path = "src/bin/udev-lib/stratis-str-cmp.rs" required-features = ["udev_scripts"] [[bin]] name = "stratis-utils" path = "src/bin/stratis-utils.rs" required-features = ["engine"] [[bin]] name = "stratisd" path = "src/bin/stratisd.rs" required-features = ["engine"] [[bin]] name = "stratisd-min" path = "src/bin/stratis-min/stratisd-min.rs" required-features = [ "engine", "min", ] [[bin]] name = "stratisd-tools" path = "src/bin/stratisd-tools.rs" required-features = [ "engine", "extras", "min", ] [dependencies.async-trait] version = "0.1.51" optional = true [dependencies.byteorder] version = "1.2.3" optional = true [dependencies.chrono] version = "0.4.20" features = [ "clock", "std", ] optional = true default-features = false [dependencies.clap] version = "4.1.0" optional = true [dependencies.crc] version = "3.0.0" optional = true [dependencies.data-encoding] version = "2.3.0" optional = true [dependencies.dbus] version = "0.9.0" optional = true [dependencies.dbus-tree] version = "0.9.2" optional = true [dependencies.devicemapper] version = "0.34.4" optional = true [dependencies.either] version = "1.6.1" optional = true [dependencies.env_logger] version = "0.11.0" optional = true [dependencies.futures] version = "0.3.31" optional = true [dependencies.iocuddle] version = "0.1.0" optional = true [dependencies.itertools] version = "0.13.0" optional = true [dependencies.libblkid-rs] version = "0.3.2" optional = true [dependencies.libc] version = "0.2.155" optional = true [dependencies.libcryptsetup-rs] version = "0.11.0" features = ["mutex"] optional = true [dependencies.libcryptsetup-rs-sys] version = "0.4.0" optional = true [dependencies.libmount] version = "0.1.9" optional = true [dependencies.libudev] version = "0.3.0" optional = true [dependencies.log] version = "0.4.19" optional = true [dependencies.nix] version = "0.29.0" features = [ "fs", "ioctl", "mount", "poll", "process", "sched", "signal", "socket", ] optional = true [dependencies.once_cell] version = "1.19.0" optional = true [dependencies.pretty-hex] version = "0.4.1" optional = true [dependencies.rand] version = "0.8.0" optional = true [dependencies.regex] version = "1.5.5" optional = true [dependencies.retry] version = "2.0.0" optional = true default-features = false [dependencies.semver] version = "1.0.0" optional = true [dependencies.serde] version = "1.0.185" optional = true [dependencies.serde_derive] version = "1.0.185" optional = true [dependencies.serde_json] version = "1.0.50" optional = true [dependencies.sha2] version = "0.10.1" optional = true [dependencies.stratisd_proc_macros] version = "0.2.0" optional = true [dependencies.tempfile] version = "3.4.0" optional = true [dependencies.termios] version = "0.3.3" optional = true [dependencies.tokio] version = "1.24.2" features = [ "sync", "macros", "rt", "rt-multi-thread", "signal", "net", "time", ] optional = true [dependencies.uuid] version = "1.0.0" features = [ "serde", "v4", ] optional = true [dev-dependencies.assert_cmd] version = "2.0.8" [dev-dependencies.assert_matches] version = "1.5.0" [dev-dependencies.loopdev-3] version = "0.5.1" [dev-dependencies.predicates] version = "3.0.0" [dev-dependencies.proptest] version = "1.0.0" [build-dependencies.bindgen] version = "0.69.0" features = ["runtime"] optional = true default-features = false [build-dependencies.pkg-config] version = "0.3.18" [features] dbus_enabled = [ "dbus", "dbus-tree", ] default = [ "dbus_enabled", "engine", ] engine = [ "async-trait", "byteorder", "chrono", "clap", "crc", "data-encoding", "devicemapper", "either", "env_logger", "futures", "iocuddle", "itertools", "libblkid-rs", "libc", "libcryptsetup-rs", "libcryptsetup-rs-sys", "libmount", "libudev", "log", "nix", "once_cell", "rand", "regex", "retry", "semver", "serde", "serde_derive", "serde_json", "sha2", "stratisd_proc_macros", "tempfile", "tokio", "uuid", ] extras = ["pretty-hex"] min = ["termios"] systemd_compat = ["bindgen"] udev_scripts = ["data-encoding"] [lints.clippy.all] level = "deny" priority = 0 [lints.clippy.cargo] level = "deny" priority = 1 [lints.clippy.cast_lossless] level = "deny" priority = 4 [lints.clippy.cast_possible_truncation] level = "deny" priority = 4 [lints.clippy.cast_precision_loss] level = "deny" priority = 4 [lints.clippy.cast_ptr_alignment] level = "deny" priority = 4 [lints.clippy.checked_conversions] level = "deny" priority = 4 [lints.clippy.copy_iterator] level = "deny" priority = 4 [lints.clippy.empty_enum] level = "deny" priority = 4 [lints.clippy.enum_glob_use] level = "deny" priority = 4 [lints.clippy.expl_impl_clone_on_copy] level = "deny" priority = 4 [lints.clippy.explicit_deref_methods] level = "deny" priority = 4 [lints.clippy.explicit_into_iter_loop] level = "deny" priority = 4 [lints.clippy.fn_params_excessive_bools] level = "deny" priority = 4 [lints.clippy.from_over_into] level = "allow" priority = 3 [lints.clippy.implicit_hasher] level = "deny" priority = 4 [lints.clippy.inefficient_to_string] level = "deny" priority = 4 [lints.clippy.inline_always] level = "deny" priority = 4 [lints.clippy.invalid_upcast_comparisons] level = "deny" priority = 4 [lints.clippy.large_digit_groups] level = "deny" priority = 4 [lints.clippy.large_stack_arrays] level = "deny" priority = 4 [lints.clippy.large_types_passed_by_value] level = "deny" priority = 4 [lints.clippy.linkedlist] level = "deny" priority = 4 [lints.clippy.macro_use_imports] level = "deny" priority = 4 [lints.clippy.manual_ok_or] level = "deny" priority = 4 [lints.clippy.match_bool] level = "deny" priority = 4 [lints.clippy.match_on_vec_items] level = "deny" priority = 4 [lints.clippy.match_wild_err_arm] level = "deny" priority = 4 [lints.clippy.maybe_infinite_iter] level = "deny" priority = 4 [lints.clippy.multiple-crate-versions] level = "allow" priority = 2 [lints.clippy.mut_mut] level = "deny" priority = 4 [lints.clippy.needless_continue] level = "deny" priority = 4 [lints.clippy.option_option] level = "deny" priority = 4 [lints.clippy.range_minus_one] level = "deny" priority = 4 [lints.clippy.range_plus_one] level = "deny" priority = 4 [lints.clippy.ref_option_ref] level = "deny" priority = 4 [lints.clippy.same_functions_in_if_condition] level = "deny" priority = 4 [lints.clippy.string_add_assign] level = "deny" priority = 4 [lints.clippy.struct_excessive_bools] level = "deny" priority = 4 [lints.clippy.trait_duplication_in_bounds] level = "deny" priority = 4 [lints.clippy.trivially_copy_pass_by_ref] level = "deny" priority = 4 [lints.clippy.type_repetition_in_bounds] level = "deny" priority = 4 [lints.clippy.unicode_not_nfc] level = "deny" priority = 4 [lints.clippy.unnested_or_patterns] level = "deny" priority = 4 [lints.clippy.unreadable_literal] level = "deny" priority = 4 [lints.clippy.unsafe_derive_deserialize] level = "deny" priority = 4 [lints.clippy.unused_self] level = "deny" priority = 4 [lints.clippy.upper_case_acronyms] level = "allow" priority = 3 [lints.clippy.used_underscore_binding] level = "deny" priority = 4 [lints.clippy.verbose_bit_mask] level = "deny" priority = 4 [lints.clippy.wildcard_imports] level = "deny" priority = 4 [lints.rust.future_incompatible] level = "deny" priority = 1 [lints.rust.nonstandard_style] level = "deny" priority = 4 [lints.rust.rust_2018_idioms] level = "deny" priority = 3 [lints.rust.unused] level = "deny" priority = 2 [lints.rust.warnings] level = "deny" priority = 0