semaphore-rs/Cargo.toml

80 lines
2.5 KiB
TOML

[package]
name = "semaphore"
version = "0.1.0"
edition = "2021"
authors = [
"Remco Bloemen <remco@worldcoin.org>",
"Philipp Sippl <philipp@worldcoin.org>"]
homepage = "https://github.com/worldcoin/semaphore-rs"
repository = "https://github.com/worldcoin/semaphore-rs"
description = "Rust support library for Semaphore"
keywords = ["worldcoin", "protocol", "signup"]
categories = ["cryptography"]
readme = "Readme.md"
license-file = "mit-license.md"
[features]
default = []
bench = [ "criterion", "proptest" ]
mimc = [ "zkp-u256" ]
[[bench]]
name = "criterion"
harness = false
path = "criterion.rs"
required-features = [ "bench", "proptest" ]
[dependencies]
ark-bn254 = { version = "0.3.0" }
ark-circom = { git = "https://github.com/gakonst/ark-circom", rev="a93c8b0", features=["circom-2"] }
ark-ec = { version = "0.3.0", default-features = false, features = ["parallel"] }
ark-ff = { version = "0.3.0", default-features = false, features = ["parallel", "asm"] }
ark-groth16 = { git = "https://github.com/arkworks-rs/groth16", rev = "765817f", features = ["parallel"] }
ark-relations = { version = "0.3.0", default-features = false }
ark-std = { version = "0.3.0", default-features = false, features = ["parallel"] }
color-eyre = "0.5"
criterion = { version = "0.3", optional = true, features = [ "async_tokio" ] }
ff = { package="ff_ce", version="0.11"}
hex = "0.4.0"
hex-literal = "0.3"
num-bigint = { version = "0.4", default-features = false, features = ["rand"] }
once_cell = "1.8"
poseidon-rs = "0.0.8"
primitive-types = "0.11.1"
proptest = { version = "1.0", optional = true }
rand = "0.8.4"
rayon = "1.5.1"
serde = "1.0"
sha2 = "0.10.1"
thiserror = "1.0.0"
tiny-keccak = { version = "2.0.2" }
wasmer = { version = "2.0", features = [ "dylib" ] }
zkp-u256 = { version = "0.2", optional = true } # TODO: Remove
# Use the same `ethers-core` version as ark-circom
# TODO: Remove
ethers-core = { git = "https://github.com/gakonst/ethers-rs", default-features = false }
[dev-dependencies]
bincode = "1.3.3"
proptest = "1.0"
rand_chacha = "0.3.1"
serde_json = "1.0.79"
tempfile = "3.0"
tiny-keccak = "2.0.2"
tracing-test = "0.2"
wasmer-engine-dylib = "2.2.1"
wasmer-compiler-cranelift = "2.2.1"
[profile.release]
codegen-units = 1
lto = true
panic = "abort"
opt-level = 3
# Compilation profile for any non-workspace member.
# Dependencies are optimized, even in a dev build. This improves dev performance
# while having neglible impact on incremental build times.
[profile.dev.package."*"]
opt-level = 3