cuprate/Cargo.toml
hinto-janai 50894bef89
helper/ (#45)
* add `/helper/`

* add `num.rs`

* add `sys.rs`

* add `crypto.rs`

* add lints and mod to `lib.rs`

* `sys` -> `time`, add more free functions

straight from https://docs.rs/readable/latest/readable/time/index.html

* num: add `Number/Float` types, `cmp_float()`, `cmp_float_nan()`

* `common/src/tower_utils.rs` -> `helper/src/asynch.rs`

* gate modules with `#[cfg(feature = "...")]`

* add `thread.rs`

* cargo fmt

* thread: test out of 100

* add `atomic.rs`

* atomic: fix `fetch_update()`

* atomic: impl `fetch_*()` for atomic floats

* `#[no_std]` where possible

* asynch: remove `InstaFuture`

https://docs.rs/futures/latest/futures/future/fn.ready.html

* crypto: remove `check_point()`

* thread: return percent computation without static

* thread: add `low_priority_thread()`

https://docs.rs/lpt

* add rayon_spawn_async, remove crypto

* remove current_time_try

---------

Co-authored-by: Boog900 <54e72d8a-345f-4599-bd90-c6b9bc7d0ec5@aleeas.com>
2024-01-21 00:04:09 +00:00

86 lines
3.9 KiB
TOML

[workspace]
resolver = "2"
members = [
"common",
"consensus",
"consensus/rules",
"cryptonight",
# "cuprate",
# "database",
"helper",
"net/levin",
"net/monero-wire",
"p2p/monero-p2p",
"p2p/address-book",
"test-utils"
]
[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" }
borsh = { version = "1.2.1", features = ["derive"] }
bytes = { version = "1.5.0" }
clap = { version = "4.4.7" }
chrono = { version = "0.4.31" }
crypto-bigint = { version = "0.5.3" }
curve25519-dalek = { version = "4.1.1" }
dalek-ff-group = { git = "https://github.com/Cuprate/serai.git", rev = "a59966b" }
dirs = { version = "5.0.1" }
futures = { version = "0.3.29" }
hex = { version = "0.4.3" }
monero-epee-bin-serde = { git = "https://github.com/monero-rs/monero-epee-bin-serde.git", rev = "e4a585a" }
monero-serai = { git = "https://github.com/Cuprate/serai.git", rev = "a59966b" }
multiexp = { git = "https://github.com/Cuprate/serai.git", rev = "a59966b" }
randomx-rs = { version = "1.2.1" }
rand = { version = "0.8.5" }
rayon = { version = "1.8.0" }
serde_bytes = { version = "0.11.12" }
serde_json = { version = "1.0.108" }
serde = { version = "1.0.190", features = ["derive"] }
thiserror = { version = "1.0.50" }
tokio-util = { version = "0.7.10", features = ["codec"]}
tokio = { version = "1.33.0", features = ["full"] }
tower = { version = "0.4.13", features = ["util", "steer"] }
tracing-subscriber = { version = "0.3.17" }
tracing = { version = "0.1.40" }
## workspace.dev-dependencies
proptest = { version = "1" }
proptest-derive = { version = "0.4.0" }
## TODO:
## Potential dependencies.
# arc-swap = { version = "1.6.0" } # Atomically swappable Arc<T> | https://github.com/vorner/arc-swap
# crossbeam = { version = "0.8.2" } # Channels, concurrent primitives | https://github.com/crossbeam-rs/crossbeam
# 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
# paste = { version = "1.0.14" } # Macro `ident` pasting | https://github.com/dtolnay/paste
# 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
# strum = { version = "0.25.0" } # Enum macros/traits | https://github.com/Peternator7/strum
# 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