# 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.77" name = "arti-client" version = "0.25.0" authors = [ "The Tor Project, Inc.", "Nick Mathewson ", ] build = false autobins = false autoexamples = false autotests = false autobenches = false description = "Library for connecting to the Tor network as an anonymous client" homepage = "https://gitlab.torproject.org/tpo/core/arti/-/wikis/home" readme = "README.md" keywords = [ "tor", "arti", "privacy", "anonymity", "networking", ] categories = [ "network-programming", "cryptography", ] license = "MIT OR Apache-2.0" repository = "https://gitlab.torproject.org/tpo/core/arti.git/" [package.metadata.docs.rs] all-features = true [lib] name = "arti_client" path = "src/lib.rs" [[example]] name = "advanced_isolation" path = "examples/advanced_isolation.rs" [[example]] name = "hook-tcp" path = "examples/hook-tcp.rs" [[example]] name = "lazy-init" path = "examples/lazy-init.rs" [[example]] name = "one_hop_circuit" path = "examples/one_hop_circuit.rs" [[example]] name = "readme" path = "examples/readme.rs" [[example]] name = "readme-with-report" path = "examples/readme-with-report.rs" [[example]] name = "snowflake" path = "examples/snowflake.rs" [dependencies.anyhow] version = "1.0.23" optional = true [dependencies.async-trait] version = "0.1.54" [dependencies.cfg-if] version = "1.0.0" [dependencies.derive-deftly] version = "0.14" [dependencies.derive_builder] version = "0.11.2" package = "derive_builder_fork_arti" [dependencies.derive_more] version = "1.0.0" features = ["full"] [dependencies.directories] version = "5" [dependencies.dyn-clone] version = "1.0.11" optional = true [dependencies.educe] version = "0.4.6" [dependencies.fs-mistrust] version = "0.8.2" features = ["serde"] [dependencies.futures] version = "0.3.14" [dependencies.hostname-validator] version = "1.1.1" [dependencies.humantime] version = "2" [dependencies.humantime-serde] version = "1.1.1" [dependencies.libc] version = "0.2" [dependencies.once_cell] version = "1.9" [dependencies.postage] version = "0.5.0" features = ["futures-traits"] default-features = false [dependencies.rand] version = "0.8" [dependencies.safelog] version = "0.4.2" [dependencies.serde] version = "1.0.103" features = ["derive"] [dependencies.thiserror] version = "2" [dependencies.tor-async-utils] version = "0.25.0" [dependencies.tor-basic-utils] version = "0.25.0" [dependencies.tor-chanmgr] version = "0.25.0" [dependencies.tor-circmgr] version = "0.25.0" [dependencies.tor-config] version = "0.25.0" [dependencies.tor-config-path] version = "0.25.0" [dependencies.tor-dirmgr] version = "0.25.0" features = ["mmap"] default-features = false [dependencies.tor-error] version = "0.25.0" features = ["tracing"] [dependencies.tor-geoip] version = "0.25.0" optional = true [dependencies.tor-guardmgr] version = "0.25.0" [dependencies.tor-hsclient] version = "0.25.0" optional = true [dependencies.tor-hscrypto] version = "0.25.0" optional = true [dependencies.tor-hsservice] version = "0.25.0" optional = true [dependencies.tor-keymgr] version = "0.25.0" default-features = false [dependencies.tor-linkspec] version = "0.25.0" [dependencies.tor-llcrypto] version = "0.25.0" [dependencies.tor-memquota] version = "0.25.0" default-features = false [dependencies.tor-netdir] version = "0.25.0" [dependencies.tor-netdoc] version = "0.25.0" [dependencies.tor-persist] version = "0.25.0" [dependencies.tor-proto] version = "0.25.0" [dependencies.tor-ptmgr] version = "0.25.0" optional = true [dependencies.tor-rpcbase] version = "0.25.0" optional = true [dependencies.tor-rtcompat] version = "0.25.0" [dependencies.tracing] version = "0.1.36" [dependencies.visibility] version = "0.1.0" optional = true [dependencies.void] version = "1" [dev-dependencies.anyhow] version = "1.0.23" [dev-dependencies.rand] version = "0.8" [dev-dependencies.strum] version = "0.26.3" features = ["derive"] [dev-dependencies.tempfile] version = "3.3" [dev-dependencies.tokio-crate] version = "1.7" features = [ "rt", "rt-multi-thread", "io-util", "net", "time", "macros", ] package = "tokio" [dev-dependencies.toml] version = "0.8.8" [dev-dependencies.tor-relay-selection] version = "0.25.0" [dev-dependencies.tor-rtcompat] version = "0.25.0" features = [ "tokio", "native-tls", ] [dev-dependencies.tracing-subscriber] version = "0.3.0" [features] __is_experimental = [] __is_nonadditive = [] accel-openssl = [ "tor-llcrypto/with-openssl", "__is_nonadditive", ] accel-sha1-asm = [ "tor-llcrypto/with-sha1-asm", "__is_nonadditive", ] async-std = ["tor-rtcompat/async-std"] bridge-client = [ "tor-guardmgr/bridge-client", "tor-dirmgr/bridge-client", ] compression = ["tor-dirmgr/compression"] ctor-keystore = [ "tor-keymgr/ctor-keystore", "__is_experimental", ] default = [ "tokio", "native-tls", "compression", ] dirfilter = [ "tor-dirmgr/dirfilter", "__is_experimental", ] ephemeral-keystore = [ "tor-keymgr/ephemeral-keystore", "__is_experimental", ] error_detail = ["__is_experimental"] experimental = [ "dirfilter", "ephemeral-keystore", "ctor-keystore", "experimental-api", "error_detail", "geoip", "hs-pow-full", "rpc", "testing", "tor-proto/experimental", "tor-netdoc/experimental", "tor-dirmgr/experimental", "tor-circmgr/experimental", "tor-config/experimental", "tor-guardmgr/experimental", "tor-hsservice/experimental", "tor-keymgr/experimental", "restricted-discovery", ] experimental-api = ["__is_experimental"] full = [ "anyhow", "keymgr", "memquota", "onion-service-client", "onion-service-service", "vanguards", "tokio", "async-std", "native-tls", "compression", "bridge-client", "pt-client", "tor-rtcompat/full", "tor-proto/full", "tor-netdoc/full", "tor-dirmgr/full", "fs-mistrust/full", "safelog/full", "tor-async-utils/full", "tor-basic-utils/full", "tor-chanmgr/full", "tor-circmgr/full", "tor-config/full", "tor-error/full", "tor-guardmgr/full", "tor-hsclient?/full", "tor-hscrypto?/full", "tor-llcrypto/full", "tor-netdir/full", "tor-persist/full", "tor-ptmgr?/full", "tor-rpcbase?/full", "tor-keymgr/full", "tor-linkspec/full", "tor-geoip?/full", "tor-hsservice?/full", "tor-memquota/full", "tor-config-path/full", ] geoip = [ "tor-circmgr/geoip", "tor-dirmgr/geoip", "tor-geoip", "__is_experimental", ] hs-pow-full = [ "tor-hsclient?/hs-pow-full", "tor-hsservice?/hs-pow-full", "__is_experimental", ] keymgr = [ "tor-keymgr/keymgr", "tor-hsclient/keymgr", ] memquota = ["tor-memquota/memquota"] native-tls = ["tor-rtcompat/native-tls"] onion-service-client = [ "tor-hsclient", "tor-hscrypto", ] onion-service-service = [ "tor-hsservice", "tor-hscrypto", "tor-persist/state-dir", "keymgr", ] pt-client = [ "bridge-client", "tor-chanmgr/pt-client", "tor-guardmgr/pt-client", "tor-ptmgr", ] restricted-discovery = [ "onion-service-service", "tor-hsservice/restricted-discovery", "__is_experimental", ] rpc = [ "dyn-clone", "tor-rpcbase", "__is_experimental", ] rustls = [ "tor-rtcompat/rustls", "__is_nonadditive", ] static = [ "static-sqlite", "tor-rtcompat/static", "__is_nonadditive", ] static-native-tls = [ "tor-rtcompat/static", "native-tls", "__is_nonadditive", ] static-sqlite = [ "tor-dirmgr/static", "__is_nonadditive", ] testing = [ "__is_experimental", "visibility", ] tokio = [ "tor-rtcompat/tokio", "tor-proto/tokio", ] vanguards = [ "tor-guardmgr/vanguards", "tor-circmgr/vanguards", ]