[package]
edition = "2024"
rust-version = "1.85.0"
name = "atelier_data"
version = "0.0.15"
build = false
include = [
"Cargo.toml",
"README.md",
"examples/**/*",
"katex-header.html",
"src/**/*",
"tests/**/*",
]
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Data Artifacts and I/O for the atelier-rs engine"
homepage = "https://iteralabs.xyz/atelier-rs"
documentation = "https://docs.rs/atelier_data/"
readme = "README.md"
keywords = [
"crypto",
"framework",
"machine-learning",
"math",
"trading",
]
categories = [
"data-structures",
"development-tools",
"finance",
"simulation",
]
license = "Apache-2.0"
repository = "https://github.com/iteralabs/atelier-rs"
resolver = "2"
[package.metadata.docs.rs]
rustdoc-args = [
"--html-in-header",
"katex-header.html",
"--cfg",
"docsrs",
]
all-features = true
[features]
default = []
parquet = [
"dep:arrow",
"dep:parquet",
]
torch = ["dep:tch"]
[lib]
name = "atelier_data"
path = "src/lib.rs"
[[bin]]
name = "data_worker"
path = "src/bin/data_worker.rs"
doc = false
[[bin]]
name = "market_worker"
path = "src/bin/market_worker.rs"
doc = false
[[example]]
name = "bybit_markets"
path = "examples/market_sync/bybit/bybit_markets.rs"
[[example]]
name = "coinbase_markets"
path = "examples/market_sync/coinbase/coinbase_markets.rs"
[[example]]
name = "kraken_markets"
path = "examples/market_sync/kraken/kraken_markets.rs"
[[example]]
name = "market_fetch"
path = "examples/market_streams/market_fetch.rs"
[[example]]
name = "market_load"
path = "examples/market_sync/market_load.rs"
[[example]]
name = "multi_sync_workers"
path = "examples/multi_sync/multi_sync_workers.rs"
[[example]]
name = "read_market_worker"
path = "examples/market_worker/read_market_worker.rs"
[[example]]
name = "run_data_worker"
path = "examples/data_worker/run_data_worker.rs"
[[example]]
name = "run_market_worker"
path = "examples/market_worker/run_market_worker.rs"
[[test]]
name = "test_binance_orderbook_responses"
path = "tests/sources/binance/order_books/test_orderbook_responses.rs"
[[test]]
name = "test_binance_trade_responses"
path = "tests/sources/binance/public_trades/test_trade_responses.rs"
[[test]]
name = "test_bybit_funding_rates_responses"
path = "tests/sources/bybit/funding_rates/test_funding_rates_responses.rs"
[[test]]
name = "test_bybit_liquidations_responses"
path = "tests/sources/bybit/liquidations/test_liquidations_responses.rs"
[[test]]
name = "test_bybit_open_interests_responses"
path = "tests/sources/bybit/open_interests/test_open_interests_responses.rs"
[[test]]
name = "test_bybit_orderbook_responses"
path = "tests/sources/bybit/order_books/test_orderbook_responses.rs"
[[test]]
name = "test_bybit_trade_responses"
path = "tests/sources/bybit/public_trades/test_public_trades_responses.rs"
[[test]]
name = "test_coinbase_orderbook_responses"
path = "tests/sources/coinbase/order_books/test_orderbook_responses.rs"
[[test]]
name = "test_coinbase_trade_responses"
path = "tests/sources/coinbase/public_trades/test_trade_responses.rs"
[[test]]
name = "test_connection_manager"
path = "tests/clients/connections/test_connection_manager.rs"
[[test]]
name = "test_data_worker_connections"
path = "tests/workers/test_data_worker_connections.rs"
[[test]]
name = "test_data_worker_markets"
path = "tests/workers/test_data_worker_markets.rs"
[[test]]
name = "test_event_sync"
path = "tests/types/synchronizers/test_event_sync.rs"
[[test]]
name = "test_http_builder"
path = "tests/clients/http/test_builder.rs"
[[test]]
name = "test_kraken_orderbook_responses"
path = "tests/sources/kraken/order_books/test_orderbook_responses.rs"
[[test]]
name = "test_kraken_trade_responses"
path = "tests/sources/kraken/public_trades/test_trade_responses.rs"
[[test]]
name = "test_market_aggregate"
path = "tests/types/snapshots/test_market_aggregate.rs"
[[test]]
name = "test_market_snapshot"
path = "tests/types/snapshots/test_market_snapshot.rs"
[[test]]
name = "test_market_sync"
path = "tests/types/synchronizers/test_market_sync.rs"
[[test]]
name = "test_orderbook_parquet_roundtrip"
path = "tests/types/order_books/test_orderbook_parquet_roundtrip.rs"
[[test]]
name = "test_pipeline"
path = "tests/workers/test_pipeline.rs"
[[test]]
name = "test_sync"
path = "tests/types/order_books/test_sync.rs"
[[test]]
name = "test_temporal_resolutions"
path = "tests/types/temporal/test_resolutions.rs"
[[test]]
name = "test_temporal_validations"
path = "tests/types/temporal/test_validations.rs"
[[test]]
name = "test_trades_parquet_roundtrip"
path = "tests/types/trades/test_trades_parquet_roundtrip.rs"
[[test]]
name = "test_worker_gap_detector"
path = "tests/workers/test_worker_gap_detector.rs"
[[test]]
name = "test_wss_builder"
path = "tests/clients/wss/test_builder.rs"
[[test]]
name = "test_wss_connectivity"
path = "tests/clients/wss/test_connectivity.rs"
[[test]]
name = "test_wss_decoder"
path = "tests/clients/wss/test_decoder.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.arrow]
version = "57.2"
optional = true
[dependencies.async-rate-limiter]
version = "1.0"
features = ["rt-tokio"]
[dependencies.async-trait]
version = "0.1"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4.5"
features = ["derive"]
[dependencies.csv]
version = "1.3"
[dependencies.futures-util]
version = "0.3"
[dependencies.hex]
version = "0.4"
[dependencies.hmac]
version = "0.12"
[dependencies.parquet]
version = "57.2"
optional = true
[dependencies.rand]
version = "0.9.0"
[dependencies.reqwest]
version = "0.12"
features = ["json"]
[dependencies.rust_decimal]
version = "1.34"
features = ["serde"]
[dependencies.serde]
version = "1.0"
features = [
"derive",
"derive",
]
[dependencies.serde_json]
version = "1.0"
[dependencies.sha2]
version = "0.10"
[dependencies.tch]
version = "0.20.0"
optional = true
[dependencies.thiserror]
version = "1.0.64"
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.tokio-tungstenite]
version = "0.21"
features = ["native-tls"]
[dependencies.toml]
version = "0.8"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dependencies.url]
version = "2.0"
[dependencies.uuid]
version = "1.0"
features = ["v4"]
[dev-dependencies.async-rate-limiter]
version = "1.0"
features = ["rt-tokio"]
[dev-dependencies.async-trait]
version = "0.1"
[dev-dependencies.futures-util]
version = "0.3"
[dev-dependencies.reqwest]
version = "0.12"
features = ["json"]
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio]
version = "1"
features = ["full"]
[dev-dependencies.tokio-tungstenite]
version = "0.21"
[dev-dependencies.url]
version = "2.0"
[lints.rust]
trivial_casts = "warn"
trivial_numeric_casts = "warn"
unreachable_code = "deny"
unreachable_patterns = "deny"
unsafe_code = "forbid"
unused_extern_crates = "allow"
unused_variables = "warn"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(nightly)"]