[workspace]
members = [
  "common/zalloc",

  "crypto/transcript",

  "crypto/ff-group-tests",
  "crypto/dalek-ff-group",
  "crypto/ed448",
  "crypto/ciphersuite",

  "crypto/multiexp",

  "crypto/schnorr",
  "crypto/dleq",
  "crypto/dkg",
  "crypto/frost",

  "coins/ethereum",
  "coins/monero/generators",
  "coins/monero",

  "processor",

  "substrate/tendermint/machine",
  "substrate/tendermint/primitives",
  "substrate/tendermint/client",
  "substrate/tendermint/pallet",

  "substrate/runtime",
  "substrate/node",

  "contracts/extension",
  "contracts/multisig",
]

# Always compile Monero (and a variety of dependencies) with optimizations due
# to the unoptimized performance of Bulletproofs
[profile.dev.package]
subtle = { opt-level = 3 }
curve25519-dalek = { opt-level = 3 }

ff = { opt-level = 3 }
group = { opt-level = 3 }

crypto-bigint = { opt-level = 3 }
dalek-ff-group = { opt-level = 3 }
minimal-ed448 = { opt-level = 3 }

multiexp = { opt-level = 3 }

monero-serai = { opt-level = 3 }

[profile.release]
panic = "unwind"

[patch.crates-io]
# array-bytes 4.1.0 is GPL-3.0.
# array-bytes git, which has no code changes, includes a dual-license under Apache-2.0.
array-bytes = { git = "https://github.com/hack-ink/array-bytes", rev = "994cd29b66bd2ab5c8c15f0b15a1618d4bb2d94c" }