Move 17 library crates into crates/, CLI binary into bin/fxt, consolidate 10 test crates into testing/, split config crate from deployment config files. Root directory reduced from 38+ to ~17 directories. All Cargo.toml paths and build.rs proto refs updated. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
86 lines
2.2 KiB
TOML
86 lines
2.2 KiB
TOML
[package]
|
|
name = "storage"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
homepage.workspace = true
|
|
documentation.workspace = true
|
|
publish.workspace = true
|
|
keywords.workspace = true
|
|
categories.workspace = true
|
|
description = "Storage layer for Foxhunt HFT Trading System - S3, local file operations, and data archival"
|
|
|
|
[dependencies]
|
|
# Core async and utilities
|
|
tokio = { workspace = true, features = ["rt-multi-thread", "fs", "sync", "time"] }
|
|
tokio-util = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
futures = { workspace = true }
|
|
anyhow = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
uuid = { workspace = true }
|
|
|
|
# Serialization and time
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde_json = { workspace = true }
|
|
chrono = { workspace = true, features = ["serde"] }
|
|
bincode = { workspace = true }
|
|
|
|
# Compression and hashing
|
|
flate2 = "1.0"
|
|
sha2 = "0.10"
|
|
|
|
# Logging
|
|
tracing = { workspace = true }
|
|
|
|
# Collections and utilities
|
|
rustc-hash = { workspace = true }
|
|
indexmap = { workspace = true }
|
|
|
|
# Apache Arrow object_store for S3 operations (superior to AWS SDK)
|
|
object_store = { workspace = true, optional = true }
|
|
bytes = { workspace = true }
|
|
|
|
# Vault integration removed - use config crate instead
|
|
|
|
# File system operations
|
|
fs2 = { workspace = true }
|
|
tempfile = { workspace = true }
|
|
|
|
# Data structures and caching
|
|
dashmap = { workspace = true }
|
|
lru = "0.12"
|
|
parking_lot = "0.12"
|
|
|
|
# Configuration management
|
|
config = { workspace = true }
|
|
# Common types and utilities
|
|
common = { workspace = true }
|
|
# Error handling and retry logic
|
|
backon = "1.5" # Replaced unmaintained backoff crate
|
|
|
|
[dev-dependencies]
|
|
# Testing
|
|
tokio-test = { workspace = true }
|
|
tempfile = { workspace = true }
|
|
serial_test = { workspace = true }
|
|
# wiremock = { workspace = true } # REMOVED - too heavy
|
|
|
|
# Examples dependencies
|
|
clap = { workspace = true }
|
|
tracing-subscriber = { workspace = true }
|
|
|
|
[features]
|
|
default = ["s3"]
|
|
|
|
# S3 storage backend
|
|
s3 = ["object_store"]
|
|
|
|
# Local file operations only (no cloud dependencies)
|
|
local-only = []
|
|
|
|
# Test utilities (exposed for integration tests)
|
|
test-utils = ["s3"] |