mirror of
https://github.com/logos-storage/circom-compat.git
synced 2026-05-05 08:53:08 +00:00
Relax dependencies + remove Cargo.lock (#77)
Co-authored-by: Pratyush Mishra <pratyushmishra@berkeley.edu>
This commit is contained in:
parent
bc60de984f
commit
936e9de410
4
.github/workflows/ci.yml
vendored
4
.github/workflows/ci.yml
vendored
@ -16,7 +16,7 @@ jobs:
|
|||||||
uses: actions-rs/toolchain@v1
|
uses: actions-rs/toolchain@v1
|
||||||
with:
|
with:
|
||||||
profile: minimal
|
profile: minimal
|
||||||
toolchain: 1.74.0
|
toolchain: 1.75.0
|
||||||
override: true
|
override: true
|
||||||
|
|
||||||
# Install for Anvil
|
# Install for Anvil
|
||||||
@ -48,7 +48,7 @@ jobs:
|
|||||||
uses: actions-rs/toolchain@v1
|
uses: actions-rs/toolchain@v1
|
||||||
with:
|
with:
|
||||||
profile: minimal
|
profile: minimal
|
||||||
toolchain: 1.74.0
|
toolchain: 1.75.0
|
||||||
override: true
|
override: true
|
||||||
components: rustfmt, clippy
|
components: rustfmt, clippy
|
||||||
- name: cargo fmt
|
- name: cargo fmt
|
||||||
|
|||||||
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
|||||||
/target
|
/target
|
||||||
|
Cargo.lock
|
||||||
|
|||||||
5947
Cargo.lock
generated
5947
Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
55
Cargo.toml
55
Cargo.toml
@ -1,7 +1,7 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "ark-circom"
|
name = "ark-circom"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
edition = "2018"
|
edition = "2021"
|
||||||
description = "Arkworks bindings to Circom's R1CS, for Groth16 Proof and Witness generation in Rust"
|
description = "Arkworks bindings to Circom's R1CS, for Groth16 Proof and Witness generation in Rust"
|
||||||
license = "MIT OR Apache-2.0"
|
license = "MIT OR Apache-2.0"
|
||||||
|
|
||||||
@ -10,43 +10,44 @@ crate-type = ["cdylib", "rlib"]
|
|||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
# WASM operations
|
# WASM operations
|
||||||
wasmer = "4.3.0"
|
wasmer = "4.4.0"
|
||||||
wasmer-wasix = { version = "0.20.0" }
|
wasmer-wasix = { version = "0.28.0" }
|
||||||
fnv = { version = "=1.0.7", default-features = false }
|
fnv = { version = "1.0.7", default-features = false }
|
||||||
num = { version = "=0.4.0" }
|
num = { version = "0.4.3" }
|
||||||
num-traits = { version = "=0.2.15", default-features = false }
|
num-traits = { version = "0.2.16", default-features = false }
|
||||||
num-bigint = { version = "=0.4.3", default-features = false, features = ["rand"] }
|
num-bigint = { version = "0.4.3", default-features = false, features = ["rand"] }
|
||||||
|
|
||||||
# ZKP Generation
|
# ZKP Generation
|
||||||
ark-crypto-primitives = { version = "=0.4.0" }
|
ark-crypto-primitives = { version = "0.4.0" }
|
||||||
ark-ec = { version = "=0.4.2", default-features = false, features = ["parallel"] }
|
ark-ec = { version = "0.4.2", default-features = false, features = ["parallel"] }
|
||||||
ark-ff = { version = "=0.4.2", default-features = false, features = ["parallel", "asm"] }
|
ark-ff = { version = "0.4.2", default-features = false, features = ["parallel", "asm"] }
|
||||||
ark-std = { version = "=0.4.0", default-features = false, features = ["parallel"] }
|
ark-std = { version = "0.4.0", default-features = false, features = ["parallel"] }
|
||||||
ark-bn254 = { version = "=0.4.0" }
|
ark-bn254 = { version = "0.4.0" }
|
||||||
ark-groth16 = { version = "=0.4.0", default-features = false, features = ["parallel"] }
|
ark-groth16 = { version = "0.4.0", default-features = false, features = ["parallel"] }
|
||||||
ark-poly = { version = "=0.4.2", default-features = false, features = ["parallel"] }
|
ark-poly = { version = "0.4.2", default-features = false, features = ["parallel"] }
|
||||||
ark-relations = { version = "=0.4.0", default-features = false }
|
ark-relations = { version = "0.4.0", default-features = false }
|
||||||
ark-serialize = { version = "=0.4.2", default-features = false }
|
ark-serialize = { version = "0.4.2", default-features = false }
|
||||||
|
|
||||||
|
|
||||||
# decoding of data
|
# decoding of data
|
||||||
hex = "=0.4.3"
|
hex = "0.4.3"
|
||||||
byteorder = "=1.4.3"
|
byteorder = "1.4.3"
|
||||||
|
|
||||||
# ethereum compat
|
# ethereum compat
|
||||||
ethers-core = { version = "=2.0.7", default-features = false, optional = true }
|
ethers-core = { version = "2.0.7", default-features = false, optional = true }
|
||||||
|
|
||||||
# error handling
|
# error handling
|
||||||
thiserror = "=1.0.39"
|
thiserror = "1.0.39"
|
||||||
color-eyre = "=0.6.2"
|
color-eyre = "0.6.2"
|
||||||
criterion = "=0.3.6"
|
|
||||||
|
|
||||||
cfg-if = "=1.0.0"
|
cfg-if = "1.0.0"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
hex-literal = "=0.2.2"
|
criterion = "0.5.1"
|
||||||
tokio = { version = "=1.29.1", features = ["macros"] }
|
hex-literal = "0.4.1"
|
||||||
serde_json = "=1.0.94"
|
tokio = { version = "1.29.1", features = ["macros"] }
|
||||||
ethers = "=2.0.7"
|
serde_json = "1.0.94"
|
||||||
|
ethers = "2.0.7"
|
||||||
|
|
||||||
[[bench]]
|
[[bench]]
|
||||||
name = "groth16"
|
name = "groth16"
|
||||||
|
|||||||
@ -54,6 +54,7 @@ assert!(verified);
|
|||||||
## Running the tests
|
## Running the tests
|
||||||
|
|
||||||
Tests require the following installed:
|
Tests require the following installed:
|
||||||
|
|
||||||
1. [`solc`](https://solidity.readthedocs.io/en/latest/installing-solidity.html). We also recommend using [solc-select](https://github.com/crytic/solc-select) for more flexibility.
|
1. [`solc`](https://solidity.readthedocs.io/en/latest/installing-solidity.html). We also recommend using [solc-select](https://github.com/crytic/solc-select) for more flexibility.
|
||||||
2. [`ganache-cli`](https://github.com/trufflesuite/ganache-cli#installation)
|
2. [`ganache-cli`](https://github.com/trufflesuite/ganache-cli#installation)
|
||||||
|
|
||||||
@ -65,13 +66,10 @@ Tests require the following installed:
|
|||||||
- [x] Proof generations and verification using Arkworks
|
- [x] Proof generations and verification using Arkworks
|
||||||
- [ ] CLI for common operations
|
- [ ] CLI for common operations
|
||||||
|
|
||||||
## Known limitations
|
|
||||||
|
|
||||||
Currently, due to an issue in our upstream (https://github.com/wasmerio/wasmer/issues/4072), this crate works as expected only up to Rust version `1.67.0`; in newer Rust versions, `wasmer` is currently unsound.
|
|
||||||
|
|
||||||
## Acknowledgements
|
## Acknowledgements
|
||||||
|
|
||||||
This library would not have been possibly without the great work done in:
|
This library would not have been possibly without the great work done in:
|
||||||
|
|
||||||
- [`zkutil`](https://github.com/poma/zkutil/)
|
- [`zkutil`](https://github.com/poma/zkutil/)
|
||||||
- [`snarkjs`](https://github.com/iden3/snarkjs/)
|
- [`snarkjs`](https://github.com/iden3/snarkjs/)
|
||||||
|
|
||||||
|
|||||||
@ -1,3 +1,3 @@
|
|||||||
[toolchain]
|
[toolchain]
|
||||||
channel = "stable"
|
channel = "stable"
|
||||||
version = "1.74.0"
|
version = "1.75.0"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user