[package] name = "nym-sphinx" version = "0.1.0" description = "Top-level crate for sphinx packets as used by the Nym mixnet" edition = { workspace = true } authors = { workspace = true } license = { workspace = true } repository = { workspace = true } [dependencies] tracing = { workspace = true } rand = { workspace = true } rand_distr = { workspace = true } rand_chacha = { workspace = true } thiserror = { workspace = true } nym-sphinx-acknowledgements = { path = "acknowledgements" } nym-sphinx-addressing = { path = "addressing" } nym-sphinx-anonymous-replies = { path = "anonymous-replies" } nym-sphinx-chunking = { path = "chunking" } nym-sphinx-cover = { path = "cover" } nym-sphinx-forwarding = { path = "forwarding" } nym-sphinx-params = { path = "params" } nym-sphinx-routing = { path = "routing" } nym-sphinx-types = { path = "types" } # those dependencies are due to intriducing preparer and receiver. Perpaphs that indicates they should be moved # to separate crate? nym-crypto = { path = "../crypto", version = "0.4.0" } nym-topology = { path = "../topology" } nym-metrics = { path = "../nym-metrics" } [dev-dependencies] nym-mixnet-contract-common = { path = "../cosmwasm-smart-contracts/mixnet-contract" } nym-crypto = { path = "../crypto", version = "0.4.0", features = [ "asymmetric", ] } # do not include this when compiling into wasm as it somehow when combined together with reqwest, it will require # net2 via tokio-util -> tokio -> mio -> net2 [target."cfg(not(target_arch = \"wasm32\"))".dependencies.nym-sphinx-framing] path = "framing" [target."cfg(not(target_arch = \"wasm32\"))".dependencies.tokio] workspace = true features = ["sync"] [features] default = ["sphinx"] sphinx = [ "nym-sphinx-params/sphinx", "nym-sphinx-types/sphinx", ] outfox = [ "nym-sphinx-params/outfox", "nym-sphinx-types/outfox", ]