mirror of
https://github.com/floor-licker/polyfill-rs.git
synced 2026-08-18 23:18:08 +00:00
Initial commit (clean, no build artifacts)
This commit is contained in:
+94
@@ -0,0 +1,94 @@
|
||||
[package]
|
||||
name = "polyfill-rs"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
authors = ["Julius Tranquilli <julius@example.com>"]
|
||||
description = "Production-ready Rust client for Polymarket with HFT optimizations"
|
||||
license = "MIT OR Apache-2.0"
|
||||
repository = "https://github.com/juliustranquilli/polyfill-rs"
|
||||
readme = "README.md"
|
||||
keywords = ["polymarket", "trading", "hft", "crypto", "prediction-markets"]
|
||||
categories = ["api-bindings", "network-programming", "finance"]
|
||||
|
||||
[dependencies]
|
||||
# Async runtime and futures
|
||||
tokio = { version = "1.41", features = ["full"] }
|
||||
futures = "0.3"
|
||||
futures-util = "0.3"
|
||||
|
||||
# HTTP client
|
||||
reqwest = { version = "0.12", features = ["json", "stream", "gzip"] }
|
||||
|
||||
# Serialization
|
||||
serde = { version = "1.0", features = ["derive"] }
|
||||
serde_json = "1.0"
|
||||
|
||||
# Ethereum and crypto
|
||||
alloy-primitives = "0.8"
|
||||
alloy-sol-types = { version = "0.8", features = ["eip712-serde", "json"] }
|
||||
alloy-signer = { version = "0.7", features = ["eip712"] }
|
||||
alloy-signer-local = { version = "0.7", features = ["eip712"] }
|
||||
|
||||
# Numeric types
|
||||
rust_decimal = { version = "1.36", features = ["serde-with-str"] }
|
||||
rust_decimal_macros = "1.36"
|
||||
|
||||
# Error handling
|
||||
anyhow = "1.0"
|
||||
thiserror = "1.0"
|
||||
|
||||
# Crypto and encoding
|
||||
base64 = "0.22"
|
||||
hmac = "0.12"
|
||||
sha2 = "0.10"
|
||||
|
||||
# Logging
|
||||
tracing = "0.1"
|
||||
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
||||
|
||||
# Time handling
|
||||
chrono = { version = "0.4", features = ["serde"] }
|
||||
|
||||
# Utilities
|
||||
uuid = { version = "1.0", features = ["v4", "serde"] }
|
||||
url = "2.5"
|
||||
bytes = "1.0"
|
||||
rand = "0.8"
|
||||
|
||||
# Optional WebSocket support for streaming
|
||||
tokio-tungstenite = { version = "0.21", optional = true, features = ["native-tls"] }
|
||||
|
||||
[dev-dependencies]
|
||||
criterion = { version = "0.5", features = ["html_reports"] }
|
||||
tokio-test = "0.4"
|
||||
mockito = "1.0"
|
||||
proptest = "1.0"
|
||||
env_logger = "0.10"
|
||||
|
||||
[features]
|
||||
default = ["stream"]
|
||||
stream = ["tokio-tungstenite"]
|
||||
|
||||
[[bench]]
|
||||
name = "book_updates"
|
||||
harness = false
|
||||
|
||||
[[bench]]
|
||||
name = "fill_processing"
|
||||
harness = false
|
||||
|
||||
[profile.release]
|
||||
# Optimizations for HFT performance
|
||||
opt-level = 3
|
||||
lto = true
|
||||
codegen-units = 1
|
||||
panic = "abort"
|
||||
|
||||
[profile.dev]
|
||||
# Faster compilation for development
|
||||
opt-level = 1
|
||||
|
||||
[profile.test]
|
||||
# Optimizations for test performance
|
||||
opt-level = 2
|
||||
debug = true
|
||||
Reference in New Issue
Block a user