[package] name = "cuprate-helper" version = "0.1.0" edition = "2021" description = "Helper functions used around Cuprate." license = "MIT" authors = ["hinto-janai ", "Boog900"] repository = "https://github.com/Cuprate/cuprate/tree/main/consensus" [features] # All features on by default. default = ["std", "atomic", "asynch", "cast", "fs", "num", "map", "time", "thread", "constants"] std = [] atomic = ["dep:crossbeam"] asynch = ["dep:futures", "dep:rayon"] cast = [] constants = [] fs = ["dep:dirs"] num = [] map = ["cast", "dep:monero-serai"] time = ["dep:chrono", "std"] thread = ["std", "dep:target_os_lib"] [dependencies] crossbeam = { workspace = true, optional = true } chrono = { workspace = true, optional = true, features = ["std", "clock"] } dirs = { workspace = true, optional = true } futures = { workspace = true, optional = true, features = ["std"] } monero-serai = { workspace = true, optional = true } rayon = { workspace = true, optional = true } # This is kinda a stupid work around. # [thread] needs to activate one of these libs (windows|libc) # although it depends on what target we're building for. [target.'cfg(windows)'.dependencies] target_os_lib = { package = "windows", version = ">=0.51", features = ["Win32_System_Threading", "Win32_Foundation"], optional = true } [target.'cfg(unix)'.dependencies] target_os_lib = { package = "libc", version = "0.2.151", optional = true } [dev-dependencies] tokio = { workspace = true, features = ["full"] } [lints] workspace = true