[package]
edition = "2021"
name = "digdigdig3"
version = "0.3.8"
build = false
exclude = [
"**/research/**",
"contributing/**",
"**/AUDIT*.md",
"**/ARCHITECTURE_AUDIT.md",
"**/IMPLEMENTATION*.md",
"**/FIX_SUMMARY.md",
"**/PROBLEM_ANALYSIS.md",
"**/API_TESTING_REPORT.md",
"**/AUTHENTICATION_SETUP.md",
"**/CRYPTO_NO_AUTH.md",
"**/QUICK_START.md",
"**/integration_test_guide.md",
"e2e_smoke_*.txt",
"deep_smoke_*.txt",
"smoke_*.txt",
"*.log",
"e2e_trace*/",
"liq_capture/",
"liq_trace_new/",
"dig3_storage/",
"target/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Unified async Rust API for 47 exchange connectors (REST + WebSocket). The core layer — pure ExchangeHub + connectors. Higher-level builder, persistence, replay, OB tracker live in `digdigdig3-station`."
homepage = "https://github.com/ZENG3LD/digdigdig3"
documentation = "https://docs.rs/digdigdig3"
readme = "README.md"
keywords = [
"exchange",
"trading",
"crypto",
"websocket",
"connector",
]
categories = [
"api-bindings",
"asynchronous",
"web-programming",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/ZENG3LD/digdigdig3"
[features]
default = ["onchain-evm"]
grpc = [
"dep:tonic",
"dep:prost",
]
k256-signing = [
"dep:k256",
"dep:sha3",
]
onchain-cosmos = ["dep:cosmrs"]
onchain-ethereum = ["onchain-evm"]
onchain-evm = [
"dep:k256",
"dep:sha3",
]
onchain-starknet = ["dep:starknet-crypto"]
starknet = ["onchain-starknet"]
websocket = []
[lib]
name = "digdigdig3"
path = "src/lib.rs"
[[example]]
name = "bitstamp_trade_capture"
path = "examples/bitstamp_trade_capture.rs"
[[example]]
name = "bybit_liq_probe"
path = "examples/bybit_liq_probe.rs"
[[example]]
name = "bybit_liq_raw"
path = "examples/bybit_liq_raw.rs"
[[example]]
name = "canonical_demo"
path = "examples/canonical_demo.rs"
[[example]]
name = "e2e_metadata"
path = "examples/e2e_metadata.rs"
[[example]]
name = "e2e_smoke"
path = "examples/e2e_smoke.rs"
[[example]]
name = "exchange_hub_demo"
path = "examples/exchange_hub_demo.rs"
[[example]]
name = "feed_demo"
path = "examples/feed_demo.rs"
[[example]]
name = "full_smoke"
path = "examples/full_smoke.rs"
[[example]]
name = "liq_capture"
path = "examples/liq_capture.rs"
[[example]]
name = "pool_dispatch"
path = "examples/pool_dispatch.rs"
[[test]]
name = "lighter_timeout"
path = "tests/lighter_timeout.rs"
[[test]]
name = "live_regression_baseline"
path = "tests/live_regression_baseline.rs"
[[test]]
name = "live_ws_event_rates"
path = "tests/live_ws_event_rates.rs"
[[test]]
name = "reconnect_survival"
path = "tests/reconnect_survival.rs"
[[test]]
name = "silent_watchdog"
path = "tests/silent_watchdog.rs"
[dependencies.async-trait]
version = "0.1"
[dependencies.base64]
version = "0.22"
[dependencies.bs58]
version = "0.5"
[dependencies.byteorder]
version = "1.5"
[dependencies.chrono]
version = "0.4"
[dependencies.cosmrs]
version = "0.22"
features = ["bip32"]
optional = true
default-features = false
[dependencies.dashmap]
version = "5.5"
[dependencies.flate2]
version = "1.0"
[dependencies.futures-util]
version = "0.3"
[dependencies.hex]
version = "0.4"
[dependencies.hmac]
version = "0.12"
[dependencies.jsonwebtoken]
version = "9.3"
[dependencies.k256]
version = "0.13"
features = [
"ecdsa-core",
"ecdsa",
]
optional = true
[dependencies.lzma-rs]
version = "0.3"
[dependencies.prost]
version = "0.13"
optional = true
[dependencies.rand]
version = "0.8"
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
default-features = false
[dependencies.ring]
version = "0.17"
[dependencies.rust_decimal]
version = "1"
[dependencies.rustls]
version = "0.23"
features = ["ring"]
default-features = false
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.sha2]
version = "0.10"
[dependencies.sha3]
version = "0.10"
optional = true
[dependencies.starknet-crypto]
version = "0.6"
optional = true
[dependencies.thiserror]
version = "1.0"
[dependencies.tokio]
version = "1.0"
features = ["full"]
[dependencies.tokio-stream]
version = "0.1"
features = ["sync"]
[dependencies.tokio-tungstenite]
version = "0.24"
features = ["rustls-tls-webpki-roots"]
[dependencies.toml]
version = "0.8"
[dependencies.tonic]
version = "0.12"
features = [
"tls",
"tls-native-roots",
]
optional = true
[dependencies.totp-rs]
version = "5.6"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3.22"
[dependencies.url]
version = "2.5"
[dependencies.urlencoding]
version = "2.1"
[dependencies.uuid]
version = "1.0"
features = ["v4"]