[package] name = "web3_proxy" version = "0.17.0" edition = "2021" default-run = "web3_proxy_cli" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [features] default = ["deadlock_detection"] deadlock_detection = ["parking_lot/deadlock_detection"] # TODO: turn tokio-console on with a feature. console-subscriber = { version = "0.1.7" } [dependencies] deferred-rate-limiter = { path = "../deferred-rate-limiter" } entities = { path = "../entities" } migration = { path = "../migration" } redis-rate-limiter = { path = "../redis-rate-limiter" } thread-fast-rng = { path = "../thread-fast-rng" } # TODO: regex has several "perf" features that we might want to use # TODO: make sure this uuid version matches sea-orm. PR to put this in their prelude # TODO: import num_traits from sea-orm so we always have the same version # TODO: import chrono from sea-orm so we always have the same version # TODO: make sure this time version matches siwe. PR to put this in their prelude anyhow = { version = "1.0.69", features = ["backtrace"] } argh = "0.1.10" axum = { version = "0.6.8", features = ["headers", "ws"] } axum-client-ip = "0.4.0" axum-macros = "0.3.4" chrono = "0.4.23" counter = "0.5.7" derive_more = "0.99.17" dotenv = "0.15.0" env_logger = "0.10.0" ethers = { version = "1.0.2", default-features = false, features = ["rustls", "ws"] } fdlimit = "0.2.1" flume = "0.10.14" futures = { version = "0.3.26", features = ["thread-pool"] } gethostname = "0.4.1" glob = "0.3.1" handlebars = "4.3.6" hashbrown = { version = "0.13.2", features = ["serde"] } hdrhistogram = "7.5.2" http = "0.2.9" ipnet = "2.7.1" itertools = "0.10.5" log = "0.4.17" moka = { version = "0.10.0", default-features = false, features = ["future"] } num = "0.4.0" num-traits = "0.2.15" once_cell = { version = "1.17.1" } pagerduty-rs = { version = "0.1.6", default-features = false, features = ["async", "rustls", "sync"] } parking_lot = { version = "0.12.1", features = ["arc_lock"] } prettytable = "*" proctitle = "0.1.1" rdkafka = { version = "0.29.0", optional = true } regex = "1.7.1" reqwest = { version = "0.11.14", default-features = false, features = ["json", "tokio-rustls"] } rmp-serde = "1.1.1" rustc-hash = "1.1.0" sentry = { version = "0.30.0", default-features = false, features = ["backtrace", "contexts", "panic", "anyhow", "reqwest", "rustls", "log", "sentry-log"] } serde = { version = "1.0.152", features = [] } serde_json = { version = "1.0.93", default-features = false, features = ["alloc", "raw_value"] } serde_prometheus = "0.2.1" siwe = "0.5.0" time = "0.3.20" tokio = { version = "1.25.0", features = ["full"] } tokio-stream = { version = "0.1.12", features = ["sync"] } toml = "0.7.2" tower = "0.4.13" tower-http = { version = "0.4.0", features = ["cors", "sensitive-headers"] } ulid = { version = "1.0.0", features = ["serde"] } url = "2.3.1" uuid = "1.3.0" ewma = "0.1.1" ordered-float = "3.4.0"