Files
foxhunt/crates/storage/Cargo.toml
jgrusewski 9c3d741a08 refactor: restructure repo — crates/, bin/, testing/ layout
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>
2026-02-25 11:56:00 +01:00

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"]