[package]
edition = "2021"
name = "titan-rust-client"
version = "0.1.10"
authors = ["ohaddahan@gmail.com"]
build = false
exclude = [
".github/*",
".env*",
"examples/*.sh",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust client for Titan Exchange WebSocket API"
homepage = "https://github.com/ohaddahan/titan-rust-client"
documentation = "https://docs.rs/titan-rust-client"
readme = "README.md"
license = "MIT"
repository = "https://github.com/ohaddahan/titan-rust-client.git"
[package.metadata.docs.rs]
default-features = false
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
cli = [
"clap",
"dotenvy",
"tokio-stream",
"tracing-subscriber",
"bs58",
"solana",
]
default = ["solana"]
solana = [
"solana-sdk",
"solana-client",
"solana-address-lookup-table-interface",
]
[lib]
name = "titan_rust_client"
path = "src/lib.rs"
[[bin]]
name = "titan-cli"
path = "src/bin/titan_cli.rs"
[[bin]]
name = "titan-rust-client"
path = "src/main.rs"
[[test]]
name = "api"
path = "tests/api.rs"
[[test]]
name = "connection"
path = "tests/connection.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "simple_ws"
path = "tests/simple_ws.rs"
[dependencies.anyhow]
version = "1"
[dependencies.bs58]
version = "0.5"
optional = true
[dependencies.bytes]
version = "1"
[dependencies.clap]
version = "4"
features = [
"derive",
"env",
]
optional = true
[dependencies.dotenvy]
version = "0.15"
optional = true
[dependencies.futures-util]
version = "0.3"
[dependencies.rmp-serde]
version = "1.3"
[dependencies.rustls]
version = "0.23"
features = [
"ring",
"std",
"tls12",
]
default-features = false
[dependencies.rustls-native-certs]
version = "0.8"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.solana-address-lookup-table-interface]
version = "2.2.2"
optional = true
[dependencies.solana-client]
version = "2.3"
optional = true
[dependencies.solana-sdk]
version = "2.3"
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.titan-api-codec]
version = "1.2.1"
features = [
"messagepack",
"zstd",
"brotli",
"gzip",
]
[dependencies.titan-api-types]
version = "2.0.0"
features = [
"serde",
"pubkey-str",
"solana-instruction-convert-v2",
"solana-pubkey-convert-v2",
"solana-alt-account-convert-v2",
]
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.tokio-rustls]
version = "0.26"
[dependencies.tokio-stream]
version = "0.1"
optional = true
[dependencies.tokio-tungstenite]
version = "0.26"
features = ["rustls-tls-native-roots"]
[dependencies.tokio-util]
version = "0.7"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
optional = true
[dev-dependencies.cargo-husky]
version = "1"
features = [
"precommit-hook",
"run-cargo-test",
"run-cargo-clippy",
"run-cargo-fmt",
"run-for-all",
]
default-features = false
[dev-dependencies.dotenvy]
version = "0.15"
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]