diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 9955e0752..3ba6a383b 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -89,7 +89,7 @@ jobs: - name: Install Rust toolchain uses: dtolnay/rust-toolchain@stable with: - toolchain: 1.81.0 + toolchain: stable - name: Run ffi tests run: cd mopro-ffi && cargo test --release --all-features setup-halo2-wasm-env: @@ -190,7 +190,7 @@ jobs: - name: Install Rust toolchain uses: actions-rs/toolchain@v1 with: - toolchain: 1.81.0 + toolchain: stable override: true - name: install dependencies run: brew install nasm @@ -265,7 +265,7 @@ jobs: - name: Install Rust toolchain uses: actions-rs/toolchain@v1 with: - toolchain: 1.81.0 + toolchain: stable override: true - name: install requirements uses: awalsh128/cache-apt-pkgs-action@v1 diff --git a/Cargo.lock b/Cargo.lock index c25f3f474..cd2723030 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -707,9 +707,11 @@ dependencies = [ [[package]] name = "bb" -version = "0.1.0" -source = "git+https://github.com/zkmopro/noir-rs#608d6050f9713d4e84d750b6705ea9a287e9465a" +version = "0.82.2" +source = "git+https://github.com/zkmopro/noir-rs#854e254e6680badff00bbfdc9838ba7e224cd128" dependencies = [ + "cc", + "chkstk_stub", "num-bigint", "thiserror 1.0.69", "tracing", @@ -733,9 +735,9 @@ dependencies = [ [[package]] name = "bindgen" -version = "0.70.1" +version = "0.72.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" +checksum = "4f72209734318d0b619a5e0f5129918b848c416e122a3c4ce054e03cb87b726f" dependencies = [ "bitflags 2.9.0", "cexpr", @@ -746,7 +748,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "rustc-hash 1.1.0", + "rustc-hash 2.1.1", "shlex", "syn 2.0.100", ] @@ -1060,6 +1062,15 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" +[[package]] +name = "chkstk_stub" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "047f6ab2f3b9bcaf23b593d1580898e4244d27eadf1a1fae99212ee5735d3d1c" +dependencies = [ + "cc", +] + [[package]] name = "chrono" version = "0.4.40" @@ -1118,9 +1129,9 @@ dependencies = [ [[package]] name = "circom-witnesscalc" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6549fbc305a10b6d143e9b5021b84e107f922de6622c899f9925ca1e7788a912" +checksum = "ba3fb734f91de7e7002678ea3238fddfd4ee7afd33e9ed975176f4a94794a55a" dependencies = [ "anyhow", "ark-bn254", @@ -1140,6 +1151,8 @@ dependencies = [ "serde", "serde_json", "tempfile", + "thiserror 2.0.12", + "winnow 0.7.12", "wtns-file", ] @@ -3025,7 +3038,7 @@ dependencies = [ "mopro-ffi", "reqwest", "serde", - "toml 0.8.22", + "toml 0.9.2", "walkdir", "zip", ] @@ -3139,8 +3152,8 @@ dependencies = [ [[package]] name = "noir" -version = "0.1.0" -source = "git+https://github.com/zkmopro/noir-rs#608d6050f9713d4e84d750b6705ea9a287e9465a" +version = "1.0.0-beta.3-2" +source = "git+https://github.com/zkmopro/noir-rs#854e254e6680badff00bbfdc9838ba7e224cd128" dependencies = [ "acir", "acvm", @@ -4346,21 +4359,22 @@ dependencies = [ [[package]] name = "rust-rapidsnark" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf47a6aedd44c85537d9e1ca6255cda1503720e80ff61613372e8694ec783c5" +checksum = "a4e26a53114925ae6bdbff7abc9a89e35458f1c6601a94211ed2b9fa2b6a6247" dependencies = [ "anyhow", "cc", + "chkstk_stub", "num-bigint", "num-traits", ] [[package]] name = "rust-witness" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161088bd56afe651da63843f3b8b1c53a3cadc5498c08ce6e174647aa51f18f" +checksum = "b59361683f7b6b3b0d343fc77e797ee5a267b8a470b9531ed9911aeed160dea0" dependencies = [ "cc", "fnv", @@ -4751,6 +4765,15 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_spanned" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40734c41988f7306bb04f0ecf60ec0f3f1caa34290e4e8ea471dcd3346483b83" +dependencies = [ + "serde", +] + [[package]] name = "serde_urlencoded" version = "0.7.1" @@ -5341,8 +5364,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" dependencies = [ "serde", - "serde_spanned", - "toml_datetime", + "serde_spanned 0.6.8", + "toml_datetime 0.6.9", "toml_edit 0.19.15", ] @@ -5353,11 +5376,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" dependencies = [ "serde", - "serde_spanned", - "toml_datetime", + "serde_spanned 0.6.8", + "toml_datetime 0.6.9", "toml_edit 0.22.26", ] +[[package]] +name = "toml" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed0aee96c12fa71097902e0bb061a5e1ebd766a6636bb605ba401c45c1650eac" +dependencies = [ + "indexmap 2.9.0", + "serde", + "serde_spanned 1.0.0", + "toml_datetime 0.7.0", + "toml_parser", + "toml_writer", + "winnow 0.7.12", +] + [[package]] name = "toml_datetime" version = "0.6.9" @@ -5367,6 +5405,15 @@ dependencies = [ "serde", ] +[[package]] +name = "toml_datetime" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bade1c3e902f58d73d3f294cd7f20391c1cb2fbcb643b73566bc773971df91e3" +dependencies = [ + "serde", +] + [[package]] name = "toml_edit" version = "0.19.15" @@ -5375,8 +5422,8 @@ checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ "indexmap 2.9.0", "serde", - "serde_spanned", - "toml_datetime", + "serde_spanned 0.6.8", + "toml_datetime 0.6.9", "winnow 0.5.40", ] @@ -5388,10 +5435,19 @@ checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" dependencies = [ "indexmap 2.9.0", "serde", - "serde_spanned", - "toml_datetime", + "serde_spanned 0.6.8", + "toml_datetime 0.6.9", "toml_write", - "winnow 0.7.6", + "winnow 0.7.12", +] + +[[package]] +name = "toml_parser" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97200572db069e74c512a14117b296ba0a80a30123fbbb5aa1f4a348f639ca30" +dependencies = [ + "winnow 0.7.12", ] [[package]] @@ -5400,6 +5456,12 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" +[[package]] +name = "toml_writer" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc842091f2def52017664b53082ecbbeb5c7731092bad69d2c63050401dfd64" + [[package]] name = "tower" version = "0.5.2" @@ -6246,9 +6308,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.7.6" +version = "0.7.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63d3fcd9bba44b03821e7d699eeee959f3126dcc4aa8e4ae18ec617c2a5cea10" +checksum = "f3edebf492c8125044983378ecb5766203ad3b4c2f7a922bd7dd207f6d443e95" dependencies = [ "memchr", ] diff --git a/Cargo.toml b/Cargo.toml index f68e6d2a0..f917de600 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,12 @@ [workspace] -members = ["mopro-ffi", "test-e2e", "cli", "mopro-wasm", "test-e2e/mopro-wasm-lib", "circom-prover"] +members = [ + "mopro-ffi", + "test-e2e", + "cli", + "mopro-wasm", + "test-e2e/mopro-wasm-lib", + "circom-prover", +] resolver = "2" exclude = ["mopro-example-app"] @@ -7,5 +14,6 @@ exclude = ["mopro-example-app"] plonk-fibonacci = { package = "plonk-fibonacci", git = "https://github.com/sifnoc/plonkish-fibonacci-sample.git" } hyperplonk-fibonacci = { package = "hyperplonk-fibonacci", git = "https://github.com/sifnoc/plonkish-fibonacci-sample.git" } gemini-fibonacci = { package = "gemini-fibonacci", git = "https://github.com/sifnoc/plonkish-fibonacci-sample.git" } +rust-witness = "0.1" uniffi = { version = "=0.29.0" } diff --git a/circom-prover/Cargo.toml b/circom-prover/Cargo.toml index b482226e8..34c69b2d0 100644 --- a/circom-prover/Cargo.toml +++ b/circom-prover/Cargo.toml @@ -58,7 +58,7 @@ num-bigint = { version = "0.4.3", default-features = false, features = [ "rand", ] } anyhow = "1.0.95" -rust-witness = { version = "0.1", optional = true } +rust-witness = { workspace = true, optional = true } byteorder = { version = "1.0.0" } uuid = { version = "1.9.1", features = ["v4"] } serde_json = "1.0.94" @@ -91,7 +91,7 @@ rand = { version = "0.8", features = ["std"] } witnesscalc-adapter = { version = "0.1", optional = true } # circom-witnesscalc -circom-witnesscalc = { version = "0.2", optional = true } +circom-witnesscalc = { version = "0.2.1", optional = true } once_cell = { version = "1.21.3", optional = true } # rapidsnark @@ -104,7 +104,7 @@ hex-literal = "0.4.1" [build-dependencies] # rust-witness -rust-witness = { version = "0.1", optional = true } +rust-witness = { workspace = true, optional = true } # witnesscalc-adapter witnesscalc-adapter = { version = "0.1", optional = true } # rapidsnark diff --git a/circom-prover/rust-toolchain.toml b/circom-prover/rust-toolchain.toml index 1de01fa45..b67e7d534 100644 --- a/circom-prover/rust-toolchain.toml +++ b/circom-prover/rust-toolchain.toml @@ -1,2 +1,2 @@ [toolchain] -channel = "1.81.0" +channel = "1.89.0" diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 39cdc2275..a4d0c17ea 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -24,7 +24,7 @@ include_dir = "0.7" dialoguer = "0.10" console = "0.15.8" anyhow = "1.0.86" -toml = "0.8.19" +toml = "0.9.2" zip = "2.2.1" reqwest = { version = "0.12.9", features = ["blocking"] } indicatif = "0.17.9" diff --git a/mopro-ffi/Cargo.toml b/mopro-ffi/Cargo.toml index c230bcff0..7df4fd815 100644 --- a/mopro-ffi/Cargo.toml +++ b/mopro-ffi/Cargo.toml @@ -51,7 +51,7 @@ anyhow = "1.0.86" color-eyre = "0.6.3" # circom deps -rust-witness = { version = "0.1", optional = true } +rust-witness = { workspace = true, optional = true } witnesscalc-adapter = { version = "0.1", optional = true } circom-prover = { path = "../circom-prover", optional = true } @@ -60,7 +60,7 @@ circom-prover = { path = "../circom-prover", optional = true } noir_rs = { package = "noir", git = "https://github.com/zkmopro/noir-rs", features = [ "barretenberg", "android-compat", -], optional = true } +], version = "1.0.0-beta.3-2", optional = true } # ZKP generation# build for iOS @@ -72,7 +72,7 @@ camino = { version = "1.1.9", optional = true } [build-dependencies] uuid = { version = "1.9.1", features = ["v4"] } camino = "1.1.9" -rust-witness = { version = "0.1", optional = true } +rust-witness = { workspace = true, optional = true } witnesscalc-adapter = { version = "0.1", optional = true } [dev-dependencies] diff --git a/test-e2e/Cargo.toml b/test-e2e/Cargo.toml index 929944350..13141c2f4 100644 --- a/test-e2e/Cargo.toml +++ b/test-e2e/Cargo.toml @@ -28,7 +28,7 @@ mopro-ffi = { path = "../mopro-ffi", features = [ mopro-wasm = { path = "../mopro-wasm" } # Circom dependencies -rust-witness = "0.1" +rust-witness = { workspace = true } witnesscalc-adapter = "0.1" # Halo2 dependencies @@ -42,7 +42,7 @@ thiserror = "2.0.12" mopro-ffi = { path = "../mopro-ffi" } # Circom dependencies -rust-witness = "0.1" +rust-witness = { workspace = true } witnesscalc-adapter = "0.1" [dev-dependencies] diff --git a/test-e2e/Config.toml b/test-e2e/Config.toml index 71d8bc90a..21a7c7300 100644 --- a/test-e2e/Config.toml +++ b/test-e2e/Config.toml @@ -1,7 +1,7 @@ build_mode = "release" target_adapters = [ - "halo2", "circom", + "halo2", ] target_platforms = ["android"] ios = [ diff --git a/test-e2e/rust-toolchain.toml b/test-e2e/rust-toolchain.toml index 1de01fa45..b67e7d534 100644 --- a/test-e2e/rust-toolchain.toml +++ b/test-e2e/rust-toolchain.toml @@ -1,2 +1,2 @@ [toolchain] -channel = "1.81.0" +channel = "1.89.0"