b975d08342
* Set cached storage counters to 0 (#5812) * Set cached storage counters to 0 * u64 to i64 log possible error * Check addition too Debug commit Remove more data from wg storage peer Put actual ticket type in storage Simplify add peer Finish rebase Pass defguard Peer Cache less data for consumption GatewayStorage traits Wg API trait Mock test structures Unit test for peer controller EcashManager trait Init test of Authenticator Remove peer test * Fix windows different API * Use make_bincode_serializer like in other places * Add log_slow_statements to gateway storage * Use correct LevelFilter * Fix clippy * More win fix * Win clippy * Use two error variants more * Use only one Arc<RwLock<T>> instead of many more * Remove commented test * Specific trait import
447 lines
12 KiB
TOML
447 lines
12 KiB
TOML
# Copyright 2020 - Nym Technologies SA <contact@nymtech.net>
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
[profile.release]
|
|
panic = "abort"
|
|
opt-level = "s"
|
|
overflow-checks = true
|
|
|
|
[profile.dev]
|
|
panic = "abort"
|
|
|
|
[profile.test]
|
|
# equivalent of running in `--release` (but since we're in test profile we're keeping overflow checks and all of those by default)
|
|
opt-level = 3
|
|
|
|
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"clients/native",
|
|
"clients/native/websocket-requests",
|
|
"clients/socks5",
|
|
"common/async-file-watcher",
|
|
"common/authenticator-requests",
|
|
"common/bandwidth-controller",
|
|
"common/bin-common",
|
|
"common/client-core",
|
|
"common/client-core/config-types",
|
|
"common/client-core/gateways-storage",
|
|
"common/client-core/surb-storage",
|
|
"common/client-libs/gateway-client",
|
|
"common/client-libs/mixnet-client",
|
|
"common/client-libs/validator-client",
|
|
"common/commands",
|
|
"common/config",
|
|
"common/cosmwasm-smart-contracts/coconut-dkg",
|
|
"common/cosmwasm-smart-contracts/contracts-common",
|
|
"common/cosmwasm-smart-contracts/contracts-common-testing",
|
|
"common/cosmwasm-smart-contracts/easy_addr",
|
|
"common/cosmwasm-smart-contracts/ecash-contract",
|
|
"common/cosmwasm-smart-contracts/group-contract",
|
|
"common/cosmwasm-smart-contracts/mixnet-contract",
|
|
"common/cosmwasm-smart-contracts/multisig-contract", "common/cosmwasm-smart-contracts/nym-performance-contract",
|
|
"common/cosmwasm-smart-contracts/nym-pool-contract",
|
|
"common/cosmwasm-smart-contracts/vesting-contract",
|
|
"common/credential-storage",
|
|
"common/credential-utils",
|
|
"common/credential-verification",
|
|
"common/credentials",
|
|
"common/credentials-interface",
|
|
"common/crypto",
|
|
"common/dkg",
|
|
"common/ecash-time",
|
|
"common/execute",
|
|
"common/exit-policy",
|
|
"common/gateway-requests",
|
|
"common/gateway-stats-storage",
|
|
"common/gateway-storage",
|
|
"common/http-api-client",
|
|
"common/http-api-common",
|
|
"common/inclusion-probability",
|
|
"common/ip-packet-requests",
|
|
"common/ledger",
|
|
"common/mixnode-common",
|
|
"common/network-defaults",
|
|
"common/node-tester-utils",
|
|
"common/nonexhaustive-delayqueue",
|
|
"common/nym-id",
|
|
"common/nym-metrics",
|
|
"common/nym_offline_compact_ecash",
|
|
"common/nymnoise",
|
|
"common/nymnoise/keys",
|
|
"common/nymsphinx",
|
|
"common/nymsphinx/acknowledgements",
|
|
"common/nymsphinx/addressing",
|
|
"common/nymsphinx/anonymous-replies",
|
|
"common/nymsphinx/chunking",
|
|
"common/nymsphinx/cover",
|
|
"common/nymsphinx/forwarding",
|
|
"common/nymsphinx/framing",
|
|
"common/nymsphinx/params",
|
|
"common/nymsphinx/routing",
|
|
"common/nymsphinx/types",
|
|
"common/nyxd-scraper",
|
|
"common/pemstore",
|
|
"common/serde-helpers",
|
|
"common/service-provider-requests-common",
|
|
"common/socks5-client-core",
|
|
"common/socks5/proxy-helpers",
|
|
"common/socks5/requests",
|
|
"common/statistics",
|
|
"common/store-cipher",
|
|
"common/task",
|
|
"common/ticketbooks-merkle",
|
|
"common/topology",
|
|
"common/tun",
|
|
"common/types",
|
|
"common/verloc",
|
|
"common/wasm/client-core",
|
|
"common/wasm/storage",
|
|
"common/wasm/utils",
|
|
"common/wireguard",
|
|
"common/wireguard-types",
|
|
"documentation/autodoc",
|
|
"gateway",
|
|
"nym-api",
|
|
"nym-api/nym-api-requests",
|
|
"nym-browser-extension/storage",
|
|
"nym-credential-proxy/nym-credential-proxy",
|
|
"nym-credential-proxy/nym-credential-proxy-requests",
|
|
"nym-credential-proxy/vpn-api-lib-wasm",
|
|
"nym-network-monitor",
|
|
"nym-node",
|
|
"nym-node-status-api/nym-node-status-agent",
|
|
"nym-node-status-api/nym-node-status-api",
|
|
"nym-node-status-api/nym-node-status-client",
|
|
"nym-node/nym-node-metrics",
|
|
"nym-node/nym-node-requests",
|
|
"nym-outfox",
|
|
"nym-statistics-api",
|
|
"nym-validator-rewarder",
|
|
"nyx-chain-watcher",
|
|
"sdk/ffi/cpp",
|
|
"sdk/ffi/go",
|
|
"sdk/ffi/shared",
|
|
"sdk/rust/nym-sdk",
|
|
"service-providers/authenticator",
|
|
"service-providers/common",
|
|
"service-providers/ip-packet-router",
|
|
"service-providers/network-requester",
|
|
"sqlx-pool-guard",
|
|
"tools/echo-server",
|
|
"tools/internal/contract-state-importer/importer-cli",
|
|
"tools/internal/contract-state-importer/importer-contract",
|
|
"tools/internal/mixnet-connectivity-check",
|
|
# "tools/internal/sdk-version-bump",
|
|
"tools/internal/ssl-inject",
|
|
"tools/internal/testnet-manager",
|
|
"tools/internal/testnet-manager",
|
|
"tools/internal/testnet-manager/dkg-bypass-contract",
|
|
"tools/internal/validator-status-check",
|
|
"tools/nym-cli",
|
|
"tools/nym-id-cli",
|
|
"tools/nym-nr-query",
|
|
"tools/nymvisor",
|
|
"tools/ts-rs-cli",
|
|
"wasm/client",
|
|
# "wasm/full-nym-wasm", # If we uncomment this again, remember to also uncomment the profile settings below
|
|
"wasm/mix-fetch",
|
|
"wasm/node-tester",
|
|
"wasm/zknym-lib",
|
|
]
|
|
|
|
default-members = [
|
|
"clients/native",
|
|
"clients/socks5",
|
|
"nym-api",
|
|
"nym-credential-proxy/nym-credential-proxy",
|
|
"nym-node",
|
|
"nym-node-status-api/nym-node-status-agent",
|
|
"nym-node-status-api/nym-node-status-api",
|
|
"nym-statistics-api",
|
|
"nym-validator-rewarder",
|
|
"nyx-chain-watcher",
|
|
"service-providers/authenticator",
|
|
"service-providers/ip-packet-router",
|
|
"service-providers/network-requester",
|
|
"tools/nymvisor",
|
|
]
|
|
|
|
exclude = ["explorer", "contracts", "nym-wallet", "cpu-cycles"]
|
|
|
|
[workspace.package]
|
|
authors = ["Nym Technologies SA"]
|
|
repository = "https://github.com/nymtech/nym"
|
|
homepage = "https://nymtech.net"
|
|
documentation = "https://nymtech.net"
|
|
edition = "2021"
|
|
license = "Apache-2.0"
|
|
rust-version = "1.80"
|
|
readme = "README.md"
|
|
|
|
[workspace.dependencies]
|
|
addr = "0.15.6"
|
|
aead = "0.5.2"
|
|
aes = "0.8.1"
|
|
aes-gcm = "0.10.1"
|
|
aes-gcm-siv = "0.11.1"
|
|
ammonia = "4"
|
|
anyhow = "1.0.98"
|
|
arc-swap = "1.7.1"
|
|
argon2 = "0.5.0"
|
|
async-trait = "0.1.88"
|
|
axum = "0.7.5"
|
|
axum-client-ip = "0.6.1"
|
|
axum-extra = "0.9.4"
|
|
axum-test = "16.2.0"
|
|
base64 = "0.22.1"
|
|
base85rs = "0.1.3"
|
|
bincode = "1.3.3"
|
|
bip39 = { version = "2.0.0", features = ["zeroize"] }
|
|
bit-vec = "0.7.0" # can we unify those?
|
|
bitvec = "1.0.0"
|
|
blake3 = "1.7.0"
|
|
bloomfilter = "3.0.1"
|
|
bs58 = "0.5.1"
|
|
bytecodec = "0.4.15"
|
|
bytes = "1.10.1"
|
|
cargo_metadata = "0.19.2"
|
|
celes = "2.6.0"
|
|
cfg-if = "1.0.0"
|
|
chacha20 = "0.9.0"
|
|
chacha20poly1305 = "0.10.1"
|
|
chrono = "0.4.41"
|
|
cipher = "0.4.3"
|
|
clap = "4.5.38"
|
|
clap_complete = "4.5"
|
|
clap_complete_fig = "4.5"
|
|
colored = "2.2"
|
|
comfy-table = "7.1.4"
|
|
console = "0.15.11"
|
|
console-subscriber = "0.1.1"
|
|
console_error_panic_hook = "0.1"
|
|
const-str = "0.5.6"
|
|
const_format = "0.2.34"
|
|
criterion = "0.5"
|
|
csv = "1.3.1"
|
|
ctr = "0.9.1"
|
|
cupid = "0.6.1"
|
|
curve25519-dalek = "4.1"
|
|
dashmap = "5.5.3"
|
|
# We want https://github.com/DefGuard/wireguard-rs/pull/64 , but there's no crates.io release being pushed out anymore
|
|
defguard_wireguard_rs = { git = "https://github.com/DefGuard/wireguard-rs.git", rev = "v0.4.7" }
|
|
digest = "0.10.7"
|
|
dirs = "5.0"
|
|
doc-comment = "0.3"
|
|
dotenvy = "0.15.6"
|
|
dyn-clone = "1.0.19"
|
|
ecdsa = "0.16"
|
|
ed25519-dalek = "2.1"
|
|
encoding_rs = "0.8.35"
|
|
env_logger = "0.11.8"
|
|
envy = "0.4"
|
|
etherparse = "0.13.0"
|
|
eyre = "0.6.9"
|
|
fastrand = "2.1.1"
|
|
flate2 = "1.1.1"
|
|
futures = "0.3.31"
|
|
futures-util = "0.3"
|
|
generic-array = "0.14.7"
|
|
getrandom = "0.2.10"
|
|
getset = "0.1.5"
|
|
handlebars = "3.5.5"
|
|
headers = "0.4.0"
|
|
hex = "0.4.3"
|
|
hex-literal = "0.3.3"
|
|
hickory-resolver = "0.25"
|
|
hkdf = "0.12.3"
|
|
hmac = "0.12.1"
|
|
http = "1"
|
|
http-body-util = "0.1"
|
|
httpcodec = "0.2.3"
|
|
human-repr = "1.1.0"
|
|
humantime = "2.2.0"
|
|
humantime-serde = "1.1.1"
|
|
hyper = "1.6.0"
|
|
hyper-util = "0.1"
|
|
indicatif = "0.17.11"
|
|
inquire = "0.6.2"
|
|
ip_network = "0.4.1"
|
|
ipnetwork = "0.20"
|
|
itertools = "0.14.0"
|
|
k256 = "0.13"
|
|
lazy_static = "1.5.0"
|
|
ledger-transport = "0.10.0"
|
|
ledger-transport-hid = "0.10.0"
|
|
log = "0.4"
|
|
maxminddb = "0.23.0"
|
|
mime = "0.3.17"
|
|
moka = { version = "0.12", features = ["future"] }
|
|
nix = "0.27.1"
|
|
notify = "5.1.0"
|
|
okapi = "0.7.0"
|
|
once_cell = "1.21.3"
|
|
opentelemetry = "0.19.0"
|
|
opentelemetry-jaeger = "0.18.0"
|
|
parking_lot = "0.12.3"
|
|
pem = "0.8"
|
|
petgraph = "0.6.5"
|
|
pin-project = "1.1"
|
|
pin-project-lite = "0.2.16"
|
|
publicsuffix = "2.3.0"
|
|
proc_pidinfo = "0.1.3"
|
|
quote = "1"
|
|
rand = "0.8.5"
|
|
rand_chacha = "0.3"
|
|
rand_core = "0.6.3"
|
|
rand_distr = "0.4"
|
|
rand_pcg = "0.3.1"
|
|
rand_seeder = "0.2.3"
|
|
rayon = "1.5.1"
|
|
regex = "1.10.6"
|
|
reqwest = { version = "0.12.15", default-features = false }
|
|
rs_merkle = "1.5.0"
|
|
safer-ffi = "0.1.13"
|
|
schemars = "0.8.22"
|
|
semver = "1.0.26"
|
|
serde = "1.0.219"
|
|
serde_bytes = "0.11.17"
|
|
serde_derive = "1.0"
|
|
serde_json = "1.0.140"
|
|
serde_json_path = "0.7.2"
|
|
serde_repr = "0.1"
|
|
serde_with = "3.9.0"
|
|
serde_yaml = "0.9.25"
|
|
sha2 = "0.10.9"
|
|
si-scale = "0.2.3"
|
|
snow = "0.9.6"
|
|
sphinx-packet = "=0.6.0"
|
|
sqlx = "0.8.6"
|
|
strum = "0.26"
|
|
strum_macros = "0.26"
|
|
subtle-encoding = "0.5"
|
|
syn = "1"
|
|
sysinfo = "0.33.0"
|
|
tap = "1.0.1"
|
|
tar = "0.4.44"
|
|
tempfile = "3.20"
|
|
thiserror = "2.0"
|
|
time = "0.3.41"
|
|
tokio = "1.45"
|
|
tokio-postgres = "0.7"
|
|
tokio-stream = "0.1.17"
|
|
tokio-test = "0.4.4"
|
|
tokio-tun = "0.11.5"
|
|
tokio-tungstenite = { version = "0.20.1" }
|
|
tokio-util = "0.7.15"
|
|
toml = "0.8.22"
|
|
tower = "0.5.2"
|
|
tower-http = "0.5.2"
|
|
tracing = "0.1.41"
|
|
tracing-log = "0.2"
|
|
tracing-opentelemetry = "0.19.0"
|
|
tracing-subscriber = "0.3.19"
|
|
tracing-tree = "0.2.2"
|
|
tracing-indicatif = "0.3.9"
|
|
ts-rs = "10.1.0"
|
|
tungstenite = { version = "0.20.1", default-features = false }
|
|
uniffi = "0.29.2"
|
|
uniffi_build = "0.29.0"
|
|
url = "2.5"
|
|
utoipa = "5.2"
|
|
utoipa-swagger-ui = "8.1"
|
|
utoipauto = "0.2"
|
|
uuid = "*"
|
|
vergen = { version = "=8.3.1", default-features = false }
|
|
walkdir = "2"
|
|
x25519-dalek = "2.0.0"
|
|
zeroize = "1.7.0"
|
|
|
|
prometheus = { version = "0.14.0" }
|
|
|
|
# coconut/DKG related
|
|
# unfortunately until https://github.com/zkcrypto/bls12_381/issues/10 is resolved, we have to rely on the fork
|
|
# as we need to be able to serialize Gt so that we could create the lookup table for baby-step-giant-step algorithm
|
|
# plus to make our live easier we need serde support from https://github.com/zkcrypto/bls12_381/pull/125
|
|
bls12_381 = { git = "https://github.com/jstuczyn/bls12_381", default-features = false, branch = "temp/experimental-serdect-updated" }
|
|
group = { version = "0.13.0", default-features = false }
|
|
ff = { version = "0.13.1", default-features = false }
|
|
subtle = "2.5.0"
|
|
|
|
# cosmwasm-related
|
|
cosmwasm-schema = "=2.2.2"
|
|
cosmwasm-std = "=2.2.2"
|
|
# same version as used by cosmwasm
|
|
cw-utils = "=2.0.0"
|
|
cw-storage-plus = "=2.0.0"
|
|
cw2 = { version = "=2.0.0" }
|
|
cw3 = { version = "=2.0.0" }
|
|
cw4 = { version = "=2.0.0" }
|
|
cw-controllers = { version = "=2.0.0" }
|
|
cw-multi-test = "=2.3.2"
|
|
|
|
# cosmrs-related
|
|
bip32 = { version = "0.5.3", default-features = false }
|
|
|
|
|
|
cosmrs = { version = "0.21.1" }
|
|
tendermint = "0.40.4"
|
|
tendermint-rpc = "0.40.4"
|
|
prost = { version = "0.13", default-features = false }
|
|
|
|
# wasm-related dependencies
|
|
gloo-utils = "0.2.0"
|
|
gloo-net = "0.6.0"
|
|
|
|
indexed_db_futures = "0.6.4"
|
|
js-sys = "0.3.76"
|
|
serde-wasm-bindgen = "0.6.5"
|
|
tsify = "0.4.5"
|
|
wasm-bindgen = "0.2.99"
|
|
wasm-bindgen-futures = "0.4.49"
|
|
wasm-bindgen-test = "0.3.49"
|
|
wasmtimer = "0.4.1"
|
|
web-sys = "0.3.76"
|
|
|
|
|
|
# for local development:
|
|
#[patch.crates-io]
|
|
#sphinx-packet = { path = "../sphinx" }
|
|
|
|
# Profile settings for individual crates
|
|
|
|
# Compile-time verified queries do quite a bit of work at compile time. Incremental
|
|
# actions like cargo check and cargo build can be significantly faster when
|
|
# using an optimized build
|
|
[profile.dev.package.sqlx-macros]
|
|
opt-level = 3
|
|
|
|
[profile.release.package.nym-client-wasm]
|
|
# lto = true
|
|
opt-level = 'z'
|
|
|
|
[profile.release.package.nym-node-tester-wasm]
|
|
# lto = true
|
|
opt-level = 'z'
|
|
|
|
# Commented out since the crate is also commented out from the inclusion in the
|
|
# workspace above. We should uncomment this if we re-include it in the
|
|
# workspace
|
|
#[profile.release.package.nym-wasm-sdk]
|
|
## lto = true
|
|
#opt-level = 'z'
|
|
|
|
[profile.release.package.mix-fetch-wasm]
|
|
# lto = true
|
|
opt-level = 'z'
|
|
|
|
[workspace.lints.clippy]
|
|
unwrap_used = "deny"
|
|
expect_used = "deny"
|
|
todo = "deny"
|
|
dbg_macro = "deny"
|
|
exit = "deny"
|
|
panic = "deny"
|
|
unimplemented = "deny"
|
|
unreachable = "deny"
|