content: [package]
  name = "crescent"
  version = "1.0.0"
  edition = "2021"
  default-run = "crescent"
  
  [dependencies]
  ark-crypto-primitives = { version = "=0.4.0" }
  ark-ec = { version = "0.4.2", default-features = false, features = [
      "parallel",
  ] }
  ark-ff = { version = "0.4.1", default-features = false, features = [
      "parallel",
      "asm",
  ] }
  ark-std = { version = "0.4.0", default-features = false, features = [
      "parallel",
  ] }
  ark-bn254 = { version = "0.4.0" }
  
  ark-poly = { version = "0.4.1", default-features = false, features = [
      "parallel",
  ] }
  ark-relations = { version = "0.4.0", default-features = false }
  ark-serialize = { version = "0.4.1", default-features = false }
  
  merlin = { version = "3.0", default-features = false }
  hex = "0.4.3"
  
  # json parsing
  serde_json = {version = "1.0", features = ["preserve_order"]}
  serde = { version = "1.0", features = ["derive"] }
  
  # wasmer
  num-bigint = { version = "=0.4.3", default-features = false, features = [
      "rand",
  ] }
  num-traits = "0.2.14"
  
  # wasm
  wasm-bindgen = { version = "0.2", optional = true }
  console_error_panic_hook = "0.1"
  
  rand = "~0.8.5"
  sha2 = "0.10.8"
  rayon = "1.7"
  structopt = "0.3"
  lazy_static = "1.5"
  base64-url = "3.0"
  jwt-simple = "0.12.10"
  chrono = "0.4"
  
  # Local dependencies
  ark-circom = { path = "../forks/circom-compat", optional = true }
  ark-groth16 = { path = "../forks/groth16", default-features = false, features = [
      "parallel",
  ] }
  ark-poly-commit = { path = "../forks/ark-poly-commit", default-features = false, features = [
      "parallel",
  ] }
  
  # Device binding
  ecdsa-pop = {path="../ecdsa-pop"}
  p256 = { version = "0.13.2", features = ["ecdsa", "pem"]}
  
  # Enable wasm build for getrandom
  [target.'cfg(target_arch = "wasm32")'.dependencies]
  getrandom_03 = { package = "getrandom", version = "0.3", features = ["wasm_js"] }
  getrandom_02 = { package = "getrandom", version = "0.2", features = ["js"] }
  
  [dev-dependencies]
  criterion = { version = "0.5", features = ["html_reports"] }
  serial_test = "*"
  ark-bls12-381 = "0.4.0"
  
  
  
  [build-dependencies]
  cargo-patch = "0.3"
  
  [features]
  print-trace = ["ark-std/print-trace"]
  default = ["ark-circom"]  # Native builds are the default
  wasm = ["wasm-bindgen"]  # Wasm feature explicitly excludes ark-circom
  
  [[bench]]
  name = "proof_benchmark"
  harness = false
  
  [[bench]]
  name = "range_bench"
  harness = false
  
  [[bench]]
  name = "ecc_bench"
  harness = false
  
  [lib]
  crate-type = ["cdylib", "rlib"]
  
  [profile.dev.package."*"]
  #opt-level = 3               # optimize dependencies, even in dev builds
  debug-assertions = false    # We need this to work around a bug in Wasmer
  