# Copyright 2020 - Nym Technologies SA # 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/bandwidth-controller", "common/bin-common", "common/client-core", "common/client-libs/gateway-client", "common/client-libs/mixnet-client", "common/client-libs/validator-client", "common/coconut-interface", "common/commands", "common/config", "common/cosmwasm-smart-contracts/coconut-bandwidth-contract", "common/cosmwasm-smart-contracts/coconut-dkg", "common/cosmwasm-smart-contracts/contracts-common", "common/cosmwasm-smart-contracts/ephemera", "common/cosmwasm-smart-contracts/group-contract", "common/cosmwasm-smart-contracts/mixnet-contract", "common/cosmwasm-smart-contracts/multisig-contract", "common/cosmwasm-smart-contracts/name-service", "common/cosmwasm-smart-contracts/service-provider-directory", "common/cosmwasm-smart-contracts/vesting-contract", "common/credential-storage", "common/credentials", "common/credential-utils", "common/crypto", "common/dkg", "common/execute", "common/exit-policy", "common/http-api-client", "common/inclusion-probability", "common/ip-packet-requests", "common/ledger", "common/mixnode-common", "common/network-defaults", "common/node-tester-utils", "common/nonexhaustive-delayqueue", "common/nymcoconut", "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/socks5-client-core", "common/socks5/proxy-helpers", "common/socks5/requests", "common/statistics", "common/store-cipher", "common/task", "common/topology", "common/tun", "common/types", "common/wasm/client-core", "common/wasm/storage", "common/wasm/utils", "common/wireguard", "common/wireguard-types", "explorer-api", "explorer-api/explorer-api-requests", "explorer-api/explorer-client", "gateway", "gateway/gateway-requests", "integrations/bity", "mixnode", "sdk/lib/socks5-listener", "sdk/rust/nym-sdk", "service-providers/common", "service-providers/ip-packet-router", "service-providers/network-requester", "service-providers/network-statistics", "nym-api", "nym-browser-extension/storage", "nym-api/nym-api-requests", "nym-node", "nym-node/nym-node-requests", "nym-outfox", "tools/internal/ssl-inject", "tools/internal/sdk-version-bump", "tools/nym-cli", "tools/nym-nr-query", "tools/nymvisor", "tools/ts-rs-cli", "wasm/client", # "wasm/full-nym-wasm", "wasm/mix-fetch", "wasm/node-tester", ] default-members = [ "clients/native", "clients/socks5", "gateway", "service-providers/network-requester", "service-providers/network-statistics", "mixnode", "nym-api", "tools/nymvisor", "explorer-api", ] exclude = ["explorer", "contracts", "nym-wallet", "nym-connect/mobile/src-tauri", "nym-connect/desktop", "nym-vpn/ui/src-tauri", "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" [workspace.dependencies] anyhow = "1.0.71" async-trait = "0.1.68" axum = "0.6.20" base64 = "0.21.4" bip39 = { version = "2.0.0", features = ["zeroize"] } clap = "4.4.7" cfg-if = "1.0.0" dashmap = "5.5.3" dotenvy = "0.15.6" futures = "0.3.28" generic-array = "0.14.7" getrandom = "0.2.10" hyper = "0.14.27" k256 = "0.13" lazy_static = "1.4.0" log = "0.4" once_cell = "1.7.2" parking_lot = "0.12.1" rand = "0.8.5" reqwest = "0.11.22" schemars = "0.8.1" serde = "1.0.152" serde_json = "1.0.91" sqlx = "0.6.3" tap = "1.0.1" time = "0.3.30" thiserror = "1.0.48" tokio = "1.33.0" tokio-util = "0.7.10" tokio-tungstenite = "0.20.1" tracing = "0.1.37" tungstenite = { version = "0.20.1", default-features = false } ts-rs = "7.0.0" utoipa = "3.5.0" utoipa-swagger-ui = "3.1.5" url = "2.4" zeroize = "1.6.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 bls12_381 = { git = "https://github.com/jstuczyn/bls12_381", branch ="feature/gt-serialization-0.8.0" } group = "0.13.0" ff = "0.13.0" # cosmwasm-related cosmwasm-derive = "=1.3.0" cosmwasm-schema = "=1.3.0" cosmwasm-std = "=1.3.0" # use 0.5.0 as that's the version used by cosmwasm-std 1.3.0 # (and ideally we don't want to pull the same dependency twice) serde-json-wasm = "=0.5.0" cosmwasm-storage = "=1.3.0" # same version as used by cosmwasm cw-utils = "=1.0.1" cw-storage-plus = "=1.1.0" cw2 = { version = "=1.1.0" } cw3 = { version = "=1.1.0" } cw4 = { version = "=1.1.0" } cw-controllers = { version = "=1.1.0" } # cosmrs-related bip32 = "0.5.1" cosmrs = "=0.15.0" tendermint = "0.34" # same version as used by cosmrs tendermint-rpc = "0.34" # same version as used by cosmrs prost = "0.12" # wasm-related dependencies gloo-utils = "0.1.7" js-sys = "0.3.63" serde-wasm-bindgen = "0.5.0" tsify = "0.4.5" wasm-bindgen = "0.2.86" wasm-bindgen-futures = "0.4.37" wasmtimer = "0.2.0" web-sys = "0.3.63" # Profile settings for individual crates [profile.release.package.nym-socks5-listener] strip = true codegen-units = 1 [profile.release.package.nym-client-wasm] # lto = true opt-level = 'z' [profile.release.package.nym-node-tester-wasm] # lto = true opt-level = 'z' [profile.release.package.nym-wasm-sdk] # lto = true opt-level = 'z' [profile.release.package.mix-fetch-wasm] # lto = true opt-level = 'z'