[workspace] resolver = "2" members = [ "consensus", "consensus/rules", "cryptonight", "helper", "net/epee-encoding", "net/fixed-bytes", "net/levin", "net/monero-wire", "p2p/cuprate-p2p", "p2p/dandelion", "p2p/monero-p2p", "p2p/async-buffer", "p2p/address-book", "storage/cuprate-blockchain", "storage/cuprate-txpool", "storage/database", "pruning", "test-utils", "types", "rpc/json-rpc", "rpc/types", "rpc/interface", ] [profile.release] lto = true # Build with LTO strip = "none" # Keep panic stack traces codegen-units = 1 # Optimize for binary speed over compile times opt-level = 3 [profile.dev] lto = false strip = "none" # Not much slower compile times than opt-level 0, but much faster code. opt-level = 1 [profile.dev.package."*"] # Compile dependencies with max optimization. # This is obviously slower on a cold build, # but you only build these once. opt-level = 3 [workspace.dependencies] async-trait = { version = "0.1.74", default-features = false } bitflags = { version = "2.4.2", default-features = false } borsh = { version = "1.2.1", default-features = false } bytemuck = { version = "1.14.3", default-features = false } bytes = { version = "1.5.0", default-features = false } cfg-if = { version = "1.0.0", default-features = false } clap = { version = "4.4.7", default-features = false } chrono = { version = "0.4.31", default-features = false } crypto-bigint = { version = "0.5.5", default-features = false } crossbeam = { version = "0.8.4", default-features = false } curve25519-dalek = { version = "4.1.1", default-features = false } dalek-ff-group = { git = "https://github.com/Cuprate/serai.git", rev = "d27d934", default-features = false } dashmap = { version = "5.5.3", default-features = false } dirs = { version = "5.0.1", default-features = false } futures = { version = "0.3.29", default-features = false } hex = { version = "0.4.3", default-features = false } hex-literal = { version = "0.4", default-features = false } indexmap = { version = "2.2.5", default-features = false } monero-serai = { git = "https://github.com/Cuprate/serai.git", rev = "d27d934", default-features = false } multiexp = { git = "https://github.com/Cuprate/serai.git", rev = "d27d934", default-features = false } paste = { version = "1.0.14", default-features = false } pin-project = { version = "1.1.3", default-features = false } randomx-rs = { git = "https://github.com/Cuprate/randomx-rs.git", rev = "0028464", default-features = false } rand = { version = "0.8.5", default-features = false } rand_distr = { version = "0.4.3", default-features = false } rayon = { version = "1.9.0", default-features = false } serde_bytes = { version = "0.11.12", default-features = false } serde_json = { version = "1.0.108", default-features = false } serde = { version = "1.0.190", default-features = false } strum = { version = "0.26.2", default-features = false } thiserror = { version = "1.0.50", default-features = false } thread_local = { version = "1.1.7", default-features = false } tokio-util = { version = "0.7.10", default-features = false } tokio-stream = { version = "0.1.14", default-features = false } tokio = { version = "1.33.0", default-features = false } tower = { version = "0.4.13", default-features = false } tracing-subscriber = { version = "0.3.17", default-features = false } tracing = { version = "0.1.40", default-features = false } ## workspace.dev-dependencies tempfile = { version = "3" } pretty_assertions = { version = "1.4.0" } proptest = { version = "1" } proptest-derive = { version = "0.4.0" } ## TODO: ## Potential dependencies. # arc-swap = { version = "1.6.0" } # Atomically swappable Arc | https://github.com/vorner/arc-swap # itoa = { version = "1.0.9" } # Fast integer to string formatting | https://github.com/dtolnay/itoa # notify = { version = "6.1.1" } # Filesystem watching | https://github.com/notify-rs/notify # once_cell = { version = "1.18.0" } # Lazy/one-time initialization | https://github.com/matklad/once_cell # open = { version = "5.0.0" } # Open PATH/URL, probably for binaries | https://github.com/byron/open-rs # regex = { version = "1.10.2" } # Regular expressions | https://github.com/rust-lang/regex # ryu = { version = "1.0.15" } # Fast float to string formatting | https://github.com/dtolnay/ryu # Maybe one day. # disk = { version = "*" } # (De)serialization to/from disk with various file formats | https://github.com/hinto-janai/disk # readable = { version = "*" } # Stack-based string formatting utilities | https://github.com/hinto-janai/readable # json-rpc = { git = "https://github.com/hinto-janai/json-rpc" } # JSON-RPC 2.0 types