[package] name = "mithril-client" version = "0.10.1" description = "Mithril client library" authors = { workspace = true } edition = { workspace = true } homepage = { workspace = true } license = { workspace = true } repository = { workspace = true } categories = ["cryptography"] include = ["**/*.rs", "Cargo.toml", "README.md", ".gitignore"] [lib] crate-type = ["lib", "cdylib", "staticlib"] [[test]] name = "snapshot_list_get_show_download_verify" path = "tests/snapshot_list_get_show_download_verify.rs" required-features = ["fs"] [[test]] name = "cardano_transaction_proof" path = "tests/cardano_transaction_proof.rs" required-features = ["unstable"] [dependencies] anyhow = "1.0.92" async-recursion = "1.1.1" async-trait = "0.1.83" chrono = { version = "0.4.38", features = ["serde"] } flate2 = { version = "1.0.34", optional = true } flume = { version = "0.11.1", optional = true } futures = "0.3.31" reqwest = { version = "0.12.9", default-features = false, features = [ "charset", "http2", "macos-system-configuration", "json", "stream", ] } semver = "1.0.23" serde = { version = "1.0.214", features = ["derive"] } serde_json = "1.0.132" slog = "2.7.0" strum = { version = "0.26.3", features = ["derive"] } tar = { version = "0.4.43", optional = true } thiserror = "1.0.67" tokio = { version = "1.41.0", features = ["sync"] } uuid = { version = "1.11.0", features = ["v4"] } zstd = { version = "0.13.2", optional = true } [target.'cfg(not(target_family = "wasm"))'.dependencies] mithril-common = { path = "../mithril-common", version = "=0.4", default-features = false, features = [ "fs", ] } [target.'cfg(target_family = "wasm")'.dependencies] getrandom = { version = "0.2.15", features = ["js"] } mithril-common = { path = "../mithril-common", version = "=0.4", default-features = false } reqwest = { version = "0.12.9", default-features = false, features = [ "charset", "http2", "macos-system-configuration", "json", "stream", ] } [dev-dependencies] httpmock = "0.7.0" indicatif = { version = "0.17.8", features = ["tokio"] } mithril-common = { path = "../mithril-common", version = "=0.4", default-features = false, features = [ "random", "test_tools", ] } mockall = "0.13.0" slog-async = "2.8.0" slog-term = "2.9.1" tokio = { version = "1.41.0", features = ["macros", "rt"] } warp = "0.3.7" [features] # Include native-tls in reqwest by default default = ["native-tls", "rug-backend"] # Full feature set full = ["fs"] # Enable file system releated functionnality, right now that mean ony snapshot download fs = ["flate2", "flume", "tar", "tokio/rt", "zstd"] portable = [] # deprecated, will be removed soon unstable = [] # These features are for support of dependent crates only. # They do not change the operation of the main crate. native-tls = ["reqwest/native-tls"] native-tls-alpn = ["reqwest/native-tls-alpn"] native-tls-vendored = ["reqwest/native-tls-vendored"] rustls-tls = ["reqwest/rustls-tls"] rustls-tls-manual-roots = ["reqwest/rustls-tls-manual-roots"] rustls-tls-webpki-roots = ["reqwest/rustls-tls-webpki-roots"] rustls-tls-native-roots = ["reqwest/rustls-tls-native-roots"] # Enables `rug-backend` features for `mithril-common` dependency rug-backend = ["mithril-common/rug-backend"] # Enables `num-integer-backend` features for `mithril-common` dependency # by default it's `rug-backend` num-integer-backend = ["mithril-common/num-integer-backend"] [package.metadata.docs.rs] all-features = true # enable unstable features in the documentation rustdoc-args = ["--cfg", "docsrs"]