From 8c555d2343bfb9401d5111d3ec53181e4bd2fb99 Mon Sep 17 00:00:00 2001 From: han0110 Date: Thu, 19 Feb 2026 15:51:10 +0000 Subject: [PATCH] tmp: use `zisk-sdk` of `pre-develop-0.16.0` --- .github/workflows/test-zkvm-zisk.yml | 1 + Cargo.lock | 4490 +++++++++++------ Cargo.toml | 31 +- crates/dockerized/server/src/api.rs | 24 +- crates/test-utils/src/host.rs | 3 +- crates/zkvm/zisk/Cargo.toml | 38 +- crates/zkvm/zisk/platform/src/lib.rs | 9 +- crates/zkvm/zisk/src/zkvm.rs | 17 +- crates/zkvm/zisk/src/zkvm/error.rs | 66 +- crates/zkvm/zisk/src/zkvm/sdk.rs | 416 +- .../{cluster_client.rs => sdk/cluster.rs} | 46 +- crates/zkvm/zisk/src/zkvm/sdk/cluster/api.rs | 381 ++ crates/zkvm/zisk/src/zkvm/sdk/cluster/test.rs | 31 + .../sdk/cluster/zisk_distributed_api.proto | 112 + crates/zkvm/zisk/src/zkvm/sdk/local.rs | 100 + crates/zkvm/zisk/src/zkvm/server.rs | 461 -- docker/zisk/Dockerfile.base | 5 - docker/zisk/Dockerfile.server | 3 + scripts/sdk_installers/install_zisk_sdk.sh | 98 +- tests/zisk/basic_go/go.mod | 3 + tests/zisk/basic_go/go.sum | 4 +- 21 files changed, 4051 insertions(+), 2288 deletions(-) rename crates/zkvm/zisk/src/zkvm/{cluster_client.rs => sdk/cluster.rs} (81%) create mode 100644 crates/zkvm/zisk/src/zkvm/sdk/cluster/api.rs create mode 100644 crates/zkvm/zisk/src/zkvm/sdk/cluster/test.rs create mode 100644 crates/zkvm/zisk/src/zkvm/sdk/cluster/zisk_distributed_api.proto create mode 100644 crates/zkvm/zisk/src/zkvm/sdk/local.rs delete mode 100644 crates/zkvm/zisk/src/zkvm/server.rs diff --git a/.github/workflows/test-zkvm-zisk.yml b/.github/workflows/test-zkvm-zisk.yml index 0fc551f..7dea64a 100644 --- a/.github/workflows/test-zkvm-zisk.yml +++ b/.github/workflows/test-zkvm-zisk.yml @@ -19,4 +19,5 @@ jobs: cuda: true cuda_archs: '120' cluster: true + test_threads: 1 skip_prove_test: true diff --git a/Cargo.lock b/Cargo.lock index 8f1c5b9..59e231d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -77,7 +77,7 @@ version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" dependencies = [ - "cpp_demangle", + "cpp_demangle 0.4.5", "fallible-iterator", "gimli 0.29.0", "memmap2", @@ -92,7 +92,7 @@ version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" dependencies = [ - "cpp_demangle", + "cpp_demangle 0.4.5", "fallible-iterator", "gimli 0.31.1", "memmap2", @@ -108,7 +108,7 @@ version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b" dependencies = [ - "cpp_demangle", + "cpp_demangle 0.4.5", "fallible-iterator", "gimli 0.32.3", "memmap2", @@ -120,9 +120,9 @@ dependencies = [ [[package]] name = "adler2" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" [[package]] name = "aead" @@ -153,7 +153,7 @@ checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", "const-random", - "getrandom 0.3.3", + "getrandom 0.3.4", "once_cell", "version_check", "zerocopy", @@ -161,9 +161,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" dependencies = [ "memchr", ] @@ -184,7 +184,7 @@ source = "git+https://github.com/facebookexperimental/allocative?rev=85b773d85d5 dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -195,33 +195,36 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy-consensus" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad451f9a70c341d951bca4e811d74dbe1e193897acd17e9dbac1353698cc430b" +checksum = "b0c0dc44157867da82c469c13186015b86abef209bf0e41625e4b68bac61d728" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", "alloy-trie", + "alloy-tx-macros", "auto_impl", + "borsh", "c-kzg", - "derive_more 2.0.1", + "derive_more 2.1.1", "either", "k256", "once_cell", "rand 0.8.5", "secp256k1", "serde", + "serde_json", "serde_with", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "alloy-consensus-any" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "142daffb15d5be1a2b20d2cd540edbcef03037b55d4ff69dc06beb4d06286dba" +checksum = "ba4cdb42df3871cd6b346d6a938ec2ba69a9a0f49d1f82714bc5c48349268434" dependencies = [ "alloy-consensus", "alloy-eips", @@ -241,57 +244,75 @@ dependencies = [ "alloy-rlp", "crc", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "alloy-eip2930" -version = "0.2.1" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b82752a889170df67bbb36d42ca63c531eb16274f0d7299ae2a680facba17bd" +checksum = "9441120fa82df73e8959ae0e4ab8ade03de2aaae61be313fbf5746277847ce25" dependencies = [ "alloy-primitives", "alloy-rlp", + "borsh", "serde", ] [[package]] name = "alloy-eip7702" -version = "0.6.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" +checksum = "2919c5a56a1007492da313e7a3b6d45ef5edc5d33416fdec63c0d7a2702a0d20" dependencies = [ "alloy-primitives", "alloy-rlp", + "borsh", + "serde", + "thiserror 2.0.18", +] + +[[package]] +name = "alloy-eip7928" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3231de68d5d6e75332b7489cfcc7f4dfabeba94d990a10e4b923af0e6623540" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "borsh", "serde", - "thiserror 2.0.12", ] [[package]] name = "alloy-eips" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3056872f6da48046913e76edb5ddced272861f6032f09461aea1a2497be5ae5d" +checksum = "b9f7ef09f21bd1e9cb8a686f168cb4a206646804567f0889eadb8dcc4c9288c8" dependencies = [ "alloy-eip2124", "alloy-eip2930", "alloy-eip7702", + "alloy-eip7928", "alloy-primitives", "alloy-rlp", "alloy-serde", "auto_impl", + "borsh", "c-kzg", - "derive_more 2.0.1", + "derive_more 2.1.1", "either", "serde", + "serde_with", "sha2", + "thiserror 2.0.18", ] [[package]] name = "alloy-json-abi" -version = "1.1.0" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0068ae277f5ee3153a95eaea8ff10e188ed8ccde9b7f9926305415a2c0ab2442" +checksum = "1e414aa37b335ad2acb78a95814c59d137d53139b412f87aed1e10e2d862cd49" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -301,23 +322,24 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc08b31ebf9273839bd9a01f9333cbb7a3abb4e820c312ade349dd18bdc79581" +checksum = "ff42cd777eea61f370c0b10f2648a1c81e0b783066cd7269228aa993afd487f7" dependencies = [ "alloy-primitives", "alloy-sol-types", + "http 1.4.0", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", ] [[package]] name = "alloy-network" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed117b08f0cc190312bf0c38c34cf4f0dabfb4ea8f330071c587cd7160a88cb2" +checksum = "8cbca04f9b410fdc51aaaf88433cbac761213905a65fe832058bcf6690585762" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -332,18 +354,18 @@ dependencies = [ "alloy-sol-types", "async-trait", "auto_impl", - "derive_more 2.0.1", + "derive_more 2.1.1", "futures-utils-wasm", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "alloy-network-primitives" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7162ff7be8649c0c391f4e248d1273e85c62076703a1f3ec7daf76b283d886d" +checksum = "42d6d15e069a8b11f56bef2eccbad2a873c6dd4d4c81d04dda29710f5ea52f04" dependencies = [ "alloy-consensus", "alloy-eips", @@ -354,36 +376,36 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "1.1.0" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a12fe11d0b8118e551c29e1a67ccb6d01cc07ef08086df30f07487146de6fa1" +checksum = "66b1483f8c2562bf35f0270b697d5b5fe8170464e935bd855a4c5eaf6f89b354" dependencies = [ "alloy-rlp", "bytes", "cfg-if", "const-hex", - "derive_more 2.0.1", - "foldhash", - "hashbrown 0.15.3", - "indexmap 2.10.0", + "derive_more 2.1.1", + "foldhash 0.2.0", + "hashbrown 0.16.1", + "indexmap 2.13.0", "itoa", "k256", "keccak-asm", "paste", "proptest", "rand 0.9.2", + "rapidhash", "ruint", "rustc-hash 2.1.1", "serde", "sha3", - "tiny-keccak", ] [[package]] name = "alloy-rlp" -version = "0.3.11" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6c1d995bff8d011f7cd6c81820d51825e6e06d6db73914c1630ecf544d83d6" +checksum = "e93e50f64a77ad9c5470bf2ad0ca02f228da70c792a8f06634801e202579f35e" dependencies = [ "alloy-rlp-derive", "arrayvec", @@ -392,20 +414,20 @@ dependencies = [ [[package]] name = "alloy-rlp-derive" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64b728d511962dda67c1bc7ea7c03736ec275ed2cf4c35d9585298ac9ccf3b73" +checksum = "ce8849c74c9ca0f5a03da1c865e3eb6f768df816e67dd3721a398a8a7e398011" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "alloy-rpc-types-any" -version = "1.0.19" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed1e99233cff99aff94fe29cea9e9dd6014c85eeea7890ea4f0e4eada9957ceb" +checksum = "dd720b63f82b457610f2eaaf1f32edf44efffe03ae25d537632e7d23e7929e1a" dependencies = [ "alloy-consensus-any", "alloy-rpc-types-eth", @@ -414,9 +436,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcaf7dff0fdd756a714d58014f4f8354a1706ebf9fa2cf73431e0aeec3c9431e" +checksum = "9b2dc411f13092f237d2bf6918caf80977fc2f51485f9b90cb2a2f956912c8c9" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -429,14 +451,15 @@ dependencies = [ "itertools 0.14.0", "serde", "serde_json", - "thiserror 2.0.12", + "serde_with", + "thiserror 2.0.18", ] [[package]] name = "alloy-serde" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "730e8f2edf2fc224cabd1c25d090e1655fa6137b2e409f92e5eec735903f1507" +checksum = "e2ce1e0dbf7720eee747700e300c99aac01b1a95bb93f493a01e78ee28bb1a37" dependencies = [ "alloy-primitives", "serde", @@ -445,9 +468,9 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b0d2428445ec13edc711909e023d7779618504c4800be055a5b940025dbafe3" +checksum = "2425c6f314522c78e8198979c8cbf6769362be4da381d4152ea8eefce383535d" dependencies = [ "alloy-primitives", "async-trait", @@ -455,32 +478,33 @@ dependencies = [ "either", "elliptic-curve", "k256", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "alloy-signer-aws" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6be3d371299b62eac5aa459fa58e8d1c761aabdc637573ae258ab744457fcc88" +checksum = "e38b411077d7b17e464de7dfa599f5b94161cdffc25c2f28a90a3a345b6d6490" dependencies = [ "alloy-consensus", "alloy-network", "alloy-primitives", "alloy-signer", "async-trait", + "aws-config", "aws-sdk-kms", "k256", "spki", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", ] [[package]] name = "alloy-signer-local" -version = "1.0.9" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14fe6fedb7fe6e0dfae47fe020684f1d8e063274ef14bca387ddb7a6efa8ec1" +checksum = "c3ecb71ee53d8d9c3fa7bac17542c8116ebc7a9726c91b1bf333ec3d04f5a789" dependencies = [ "alloy-consensus", "alloy-network", @@ -489,46 +513,46 @@ dependencies = [ "async-trait", "k256", "rand 0.8.5", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "alloy-sol-macro" -version = "1.3.0" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aedac07a10d4c2027817a43cc1f038313fc53c7ac866f7363239971fd01f9f18" +checksum = "2c4b64c8146291f750c3f391dff2dd40cf896f7e2b253417a31e342aa7265baa" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "alloy-sol-macro-expander" -version = "1.3.0" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24f9a598f010f048d8b8226492b6401104f5a5c1273c2869b72af29b48bb4ba9" +checksum = "d9df903674682f9bae8d43fdea535ab48df2d6a8cb5104ca29c58ada22ef67b3" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck 0.5.0", - "indexmap 2.10.0", + "indexmap 2.13.0", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "sha3", + "syn 2.0.116", "syn-solidity", - "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "1.3.0" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f494adf9d60e49aa6ce26dfd42c7417aa6d4343cf2ae621f20e4d92a5ad07d85" +checksum = "737b8a959f527a86e07c44656db237024a32ae9b97d449f788262a547e8aa136" dependencies = [ "const-hex", "dunce", @@ -536,49 +560,61 @@ dependencies = [ "macro-string", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "1.3.1" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe8c27b3cf6b2bb8361904732f955bc7c05e00be5f469cec7e2280b6167f3ff0" +checksum = "b28e6e86c6d2db52654b65a5a76b4f57eae5a32a7f0aa2222d1dbdb74e2cb8e0" dependencies = [ "serde", - "winnow 0.7.10", + "winnow 0.7.14", ] [[package]] name = "alloy-sol-types" -version = "1.1.0" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5460a975434ae594fe2b91586253c1beb404353b78f0a55bf124abcd79557b15" +checksum = "fdf7effe4ab0a4f52c865959f790036e61a7983f68b13b75d7fbcedf20b753ce" dependencies = [ "alloy-json-abi", "alloy-primitives", "alloy-sol-macro", - "const-hex", "serde", ] [[package]] name = "alloy-trie" -version = "0.8.1" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "983d99aa81f586cef9dae38443245e585840fcf0fc58b09aee0b1f27aed1d500" +checksum = "4d7fd448ab0a017de542de1dcca7a58e7019fe0e7a34ed3f9543ebddf6aceffa" dependencies = [ "alloy-primitives", "alloy-rlp", "arrayvec", - "derive_more 2.0.1", + "derive_more 2.1.1", "nybbles", "serde", "smallvec", + "thiserror 2.0.18", "tracing", ] +[[package]] +name = "alloy-tx-macros" +version = "1.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fa0c53e8c1e1ef4d01066b01c737fb62fc9397ab52c6e7bb5669f97d281b9bc" +dependencies = [ + "darling 0.21.3", + "proc-macro2", + "quote", + "syn 2.0.116", +] + [[package]] name = "android_system_properties" version = "0.1.5" @@ -599,9 +635,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.18" +version = "0.6.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" +checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" dependencies = [ "anstyle", "anstyle-parse", @@ -614,57 +650,69 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.10" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" +checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" [[package]] name = "anstyle-parse" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" +checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.2" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] name = "anstyle-wincon" -version = "3.0.7" +version = "3.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" dependencies = [ "anstyle", - "once_cell", - "windows-sys 0.59.0", + "once_cell_polyfill", + "windows-sys 0.61.2", ] [[package]] name = "anyhow" -version = "1.0.98" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" +checksum = "5f0e0fee31ef5ed1ba1316088939cea399010ed7731dba877ed44aeb407a75ea" dependencies = [ "backtrace", ] [[package]] name = "arbitrary" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" +checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" dependencies = [ "derive_arbitrary", ] +[[package]] +name = "ark-bls12-381" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3df4dcc01ff89867cd86b0da835f23c3f02738353aaee7dde7495af71363b8d5" +dependencies = [ + "ark-ec", + "ark-ff 0.5.0", + "ark-serialize 0.5.0", + "ark-std 0.5.0", +] + [[package]] name = "ark-bn254" version = "0.5.0" @@ -707,7 +755,7 @@ checksum = "e7e89fe77d1f0f4fe5b96dfc940923d88d17b6a773808124f21e764dfb063c6a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -722,7 +770,7 @@ dependencies = [ "ark-std 0.5.0", "educe 0.6.0", "fnv", - "hashbrown 0.15.3", + "hashbrown 0.15.5", "itertools 0.13.0", "num-bigint 0.4.6", "num-integer", @@ -816,7 +864,7 @@ version = "0.5.0" source = "git+https://github.com/a16z/arkworks-algebra?branch=dev%2Ftwist-shout#76bb3a4518928f1ff7f15875f940d614bb9845e6" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -853,7 +901,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -894,7 +942,7 @@ dependencies = [ "ark-std 0.5.0", "educe 0.6.0", "fnv", - "hashbrown 0.15.3", + "hashbrown 0.15.5", ] [[package]] @@ -908,7 +956,7 @@ dependencies = [ "ark-std 0.5.0", "educe 0.6.0", "fnv", - "hashbrown 0.15.3", + "hashbrown 0.15.5", ] [[package]] @@ -940,6 +988,17 @@ dependencies = [ "tracing-subscriber 0.2.25", ] +[[package]] +name = "ark-secp256k1" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8bd211c48debd3037b48873a7aa22c3aba034e83388aa4124795c9f220b88c7" +dependencies = [ + "ark-ec", + "ark-ff 0.5.0", + "ark-std 0.5.0", +] + [[package]] name = "ark-secp256k1" version = "0.5.0" @@ -950,6 +1009,17 @@ dependencies = [ "ark-std 0.5.0", ] +[[package]] +name = "ark-secp256r1" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cf8be5820de567729bfa73a410ddd07cec8ad102d9a4bf61fd6b2e60db264e8" +dependencies = [ + "ark-ec", + "ark-ff 0.5.0", + "ark-std 0.5.0", +] + [[package]] name = "ark-serialize" version = "0.3.0" @@ -992,7 +1062,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -1002,7 +1072,7 @@ source = "git+https://github.com/a16z/arkworks-algebra?branch=dev%2Ftwist-shout# dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -1096,7 +1166,63 @@ version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef1e3e699d84ab1b0911a1010c5c106aa34ae89aeac103be5ce0c3859db1e891" dependencies = [ - "term 1.2.0", + "term 1.2.1", +] + +[[package]] +name = "asm-runner" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "anyhow", + "libc", + "mem-common", + "mem-planner-cpp", + "named-sem", + "rayon", + "thiserror 2.0.18", + "tracing", + "zisk-common", + "zisk-core", +] + +[[package]] +name = "asn1-rs" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56624a96882bb8c26d61312ae18cb45868e5a9992ea73c58e45c3101e56a1e60" +dependencies = [ + "asn1-rs-derive", + "asn1-rs-impl", + "displaydoc", + "nom", + "num-traits", + "rusticata-macros", + "thiserror 2.0.18", + "time", +] + +[[package]] +name = "asn1-rs-derive" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3109e49b1e4909e9db6515a30c633684d68cdeaa252f215214cb4fa1a5bfee2c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.116", + "synstructure", +] + +[[package]] +name = "asn1-rs-impl" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.116", ] [[package]] @@ -1129,18 +1255,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "async-trait" -version = "0.1.88" +version = "0.1.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -1186,20 +1312,20 @@ checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "autocfg" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "aws-config" -version = "1.8.5" +version = "1.8.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c478f5b10ce55c9a33f87ca3404ca92768b144fc1bfdede7c0121214a8283a25" +checksum = "8a8fc176d53d6fe85017f230405e3255cedb4a02221cb55ed6d76dccbbb099b2" dependencies = [ "aws-credential-types", "aws-runtime", @@ -1216,7 +1342,7 @@ dependencies = [ "bytes", "fastrand", "hex", - "http 1.3.1", + "http 1.4.0", "ring 0.17.14", "time", "tokio", @@ -1227,9 +1353,9 @@ dependencies = [ [[package]] name = "aws-credential-types" -version = "1.2.6" +version = "1.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d025db5d9f52cbc413b167136afb3d8aeea708c0d8884783cf6253be5e22f6f2" +checksum = "6d203b0bf2626dcba8665f5cd0871d7c2c0930223d6b6be9097592fea21242d0" dependencies = [ "aws-smithy-async", "aws-smithy-runtime-api", @@ -1239,9 +1365,9 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.13.3" +version = "1.15.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c953fe1ba023e6b7730c0d4b031d06f267f23a46167dcbd40316644b10a17ba" +checksum = "7b7b6141e96a8c160799cc2d5adecd5cbbe5054cb8c7c4af53da0f83bb7ad256" dependencies = [ "aws-lc-sys", "zeroize", @@ -1249,11 +1375,10 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.30.0" +version = "0.37.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbfd150b5dbdb988bcc8fb1fe787eb6b7ee6180ca24da683b61ea5405f3d43ff" +checksum = "b092fe214090261288111db7a2b2c2118e5a7f30dc2569f1732c4069a6840549" dependencies = [ - "bindgen 0.69.5", "cc", "cmake", "dunce", @@ -1262,9 +1387,9 @@ dependencies = [ [[package]] name = "aws-runtime" -version = "1.5.10" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c034a1bc1d70e16e7f4e4caf7e9f7693e4c9c24cd91cf17c2a0b21abaebc7c8b" +checksum = "ede2ddc593e6c8acc6ce3358c28d6677a6dc49b65ba4b37a2befe14a11297e75" dependencies = [ "aws-credential-types", "aws-sigv4", @@ -1275,26 +1400,28 @@ dependencies = [ "aws-smithy-types", "aws-types", "bytes", + "bytes-utils", "fastrand", - "http 0.2.12", - "http-body 0.4.6", + "http 1.4.0", + "http-body 1.0.1", "percent-encoding", "pin-project-lite", "tracing", - "uuid 1.17.0", + "uuid 1.21.0", ] [[package]] name = "aws-sdk-kms" -version = "1.85.0" +version = "1.102.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "861b59d319d5a504cc3dd4d27542f4f7bc19fa4de27203a923882fc31e994c8a" +checksum = "22b682ef733ec24c300b11cec2df9bfea7ee4bf48ab2030c832e27db92b69c68" dependencies = [ "aws-credential-types", "aws-runtime", "aws-smithy-async", "aws-smithy-http", "aws-smithy-json", + "aws-smithy-observability", "aws-smithy-runtime", "aws-smithy-runtime-api", "aws-smithy-types", @@ -1302,21 +1429,23 @@ dependencies = [ "bytes", "fastrand", "http 0.2.12", + "http 1.4.0", "regex-lite", "tracing", ] [[package]] name = "aws-sdk-sso" -version = "1.82.0" +version = "1.95.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b069e4973dc25875bbd54e4c6658bdb4086a846ee9ed50f328d4d4c33ebf9857" +checksum = "00c5ff27c6ba2cbd95e6e26e2e736676fdf6bcf96495b187733f521cfe4ce448" dependencies = [ "aws-credential-types", "aws-runtime", "aws-smithy-async", "aws-smithy-http", "aws-smithy-json", + "aws-smithy-observability", "aws-smithy-runtime", "aws-smithy-runtime-api", "aws-smithy-types", @@ -1324,21 +1453,23 @@ dependencies = [ "bytes", "fastrand", "http 0.2.12", + "http 1.4.0", "regex-lite", "tracing", ] [[package]] name = "aws-sdk-ssooidc" -version = "1.83.0" +version = "1.97.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b49e8fe57ff100a2f717abfa65bdd94e39702fa5ab3f60cddc6ac7784010c68" +checksum = "4d186f1e5a3694a188e5a0640b3115ccc6e084d104e16fd6ba968dca072ffef8" dependencies = [ "aws-credential-types", "aws-runtime", "aws-smithy-async", "aws-smithy-http", "aws-smithy-json", + "aws-smithy-observability", "aws-smithy-runtime", "aws-smithy-runtime-api", "aws-smithy-types", @@ -1346,21 +1477,23 @@ dependencies = [ "bytes", "fastrand", "http 0.2.12", + "http 1.4.0", "regex-lite", "tracing", ] [[package]] name = "aws-sdk-sts" -version = "1.84.0" +version = "1.99.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91abcdbfb48c38a0419eb75e0eac772a4783a96750392680e4f3c25a8a0535b9" +checksum = "9acba7c62f3d4e2408fa998a3a8caacd8b9a5b5549cf36e2372fbdae329d5449" dependencies = [ "aws-credential-types", "aws-runtime", "aws-smithy-async", "aws-smithy-http", "aws-smithy-json", + "aws-smithy-observability", "aws-smithy-query", "aws-smithy-runtime", "aws-smithy-runtime-api", @@ -1369,15 +1502,16 @@ dependencies = [ "aws-types", "fastrand", "http 0.2.12", + "http 1.4.0", "regex-lite", "tracing", ] [[package]] name = "aws-sigv4" -version = "1.3.4" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "084c34162187d39e3740cb635acd73c4e3a551a36146ad6fe8883c929c9f876c" +checksum = "37411f8e0f4bea0c3ca0958ce7f18f6439db24d555dbd809787262cd00926aa9" dependencies = [ "aws-credential-types", "aws-smithy-http", @@ -1388,7 +1522,7 @@ dependencies = [ "hex", "hmac", "http 0.2.12", - "http 1.3.1", + "http 1.4.0", "percent-encoding", "sha2", "time", @@ -1397,9 +1531,9 @@ dependencies = [ [[package]] name = "aws-smithy-async" -version = "1.2.5" +version = "1.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e190749ea56f8c42bf15dd76c65e14f8f765233e6df9b0506d9d934ebef867c" +checksum = "5cc50d0f63e714784b84223abd7abbc8577de8c35d699e0edd19f0a88a08ae13" dependencies = [ "futures-util", "pin-project-lite", @@ -1408,18 +1542,19 @@ dependencies = [ [[package]] name = "aws-smithy-http" -version = "0.62.3" +version = "0.63.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c4dacf2d38996cf729f55e7a762b30918229917eca115de45dfa8dfb97796c9" +checksum = "d619373d490ad70966994801bc126846afaa0d1ee920697a031f0cf63f2568e7" dependencies = [ "aws-smithy-runtime-api", "aws-smithy-types", "bytes", "bytes-utils", "futures-core", - "http 0.2.12", - "http 1.3.1", - "http-body 0.4.6", + "futures-util", + "http 1.4.0", + "http-body 1.0.1", + "http-body-util", "percent-encoding", "pin-project-lite", "pin-utils", @@ -1428,56 +1563,57 @@ dependencies = [ [[package]] name = "aws-smithy-http-client" -version = "1.0.6" +version = "1.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f108f1ca850f3feef3009bdcc977be201bca9a91058864d9de0684e64514bee0" +checksum = "00ccbb08c10f6bcf912f398188e42ee2eab5f1767ce215a02a73bc5df1bbdd95" dependencies = [ "aws-smithy-async", "aws-smithy-runtime-api", "aws-smithy-types", "h2 0.3.27", - "h2 0.4.10", + "h2 0.4.13", "http 0.2.12", - "http 1.3.1", + "http 1.4.0", "http-body 0.4.6", "hyper 0.14.32", - "hyper 1.6.0", + "hyper 1.8.1", "hyper-rustls 0.24.2", - "hyper-rustls 0.27.5", + "hyper-rustls 0.27.7", "hyper-util", "pin-project-lite", "rustls 0.21.12", - "rustls 0.23.27", - "rustls-native-certs 0.8.1", + "rustls 0.23.36", + "rustls-native-certs 0.8.3", "rustls-pki-types", "tokio", - "tower 0.5.2", + "tokio-rustls 0.26.4", + "tower 0.5.3", "tracing", ] [[package]] name = "aws-smithy-json" -version = "0.61.5" +version = "0.62.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaa31b350998e703e9826b2104dd6f63be0508666e1aba88137af060e8944047" +checksum = "27b3a779093e18cad88bbae08dc4261e1d95018c4c5b9356a52bcae7c0b6e9bb" dependencies = [ "aws-smithy-types", ] [[package]] name = "aws-smithy-observability" -version = "0.1.3" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9364d5989ac4dd918e5cc4c4bdcc61c9be17dcd2586ea7f69e348fc7c6cab393" +checksum = "4d3f39d5bb871aaf461d59144557f16d5927a5248a983a40654d9cf3b9ba183b" dependencies = [ "aws-smithy-runtime-api", ] [[package]] name = "aws-smithy-query" -version = "0.60.7" +version = "0.60.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2fbd61ceb3fe8a1cb7352e42689cec5335833cd9f94103a61e98f9bb61c64bb" +checksum = "05f76a580e3d8f8961e5d48763214025a2af65c2fa4cd1fb7f270a0e107a71b0" dependencies = [ "aws-smithy-types", "urlencoding", @@ -1485,9 +1621,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime" -version = "1.8.6" +version = "1.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e107ce0783019dbff59b3a244aa0c114e4a8c9d93498af9162608cd5474e796" +checksum = "22ccf7f6eba8b2dcf8ce9b74806c6c185659c311665c4bf8d6e71ebd454db6bf" dependencies = [ "aws-smithy-async", "aws-smithy-http", @@ -1498,9 +1634,10 @@ dependencies = [ "bytes", "fastrand", "http 0.2.12", - "http 1.3.1", + "http 1.4.0", "http-body 0.4.6", "http-body 1.0.1", + "http-body-util", "pin-project-lite", "pin-utils", "tokio", @@ -1509,15 +1646,15 @@ dependencies = [ [[package]] name = "aws-smithy-runtime-api" -version = "1.9.0" +version = "1.11.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07f5e0fc8a6b3f2303f331b94504bbf754d85488f402d6f1dd7a6080f99afe56" +checksum = "b4af6e5def28be846479bbeac55aa4603d6f7986fc5da4601ba324dd5d377516" dependencies = [ "aws-smithy-async", "aws-smithy-types", "bytes", "http 0.2.12", - "http 1.3.1", + "http 1.4.0", "pin-project-lite", "tokio", "tracing", @@ -1526,16 +1663,16 @@ dependencies = [ [[package]] name = "aws-smithy-types" -version = "1.3.2" +version = "1.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d498595448e43de7f4296b7b7a18a8a02c61ec9349128c80a368f7c3b4ab11a8" +checksum = "8ca2734c16913a45343b37313605d84e7d8b34a4611598ce1d25b35860a2bed3" dependencies = [ "base64-simd", "bytes", "bytes-utils", "futures-core", "http 0.2.12", - "http 1.3.1", + "http 1.4.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -1552,18 +1689,18 @@ dependencies = [ [[package]] name = "aws-smithy-xml" -version = "0.60.10" +version = "0.60.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db87b96cb1b16c024980f133968d52882ca0daaee3a086c6decc500f6c99728" +checksum = "b53543b4b86ed43f051644f704a98c7291b3618b67adf057ee77a366fa52fcaa" dependencies = [ "xmlparser", ] [[package]] name = "aws-types" -version = "1.3.8" +version = "1.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b069d19bf01e46298eaedd7c6f283fe565a59263e53eebec945f3e6398f42390" +checksum = "0470cc047657c6e286346bdf10a8719d26efd6a91626992e0e64481e44323e96" dependencies = [ "aws-credential-types", "aws-smithy-async", @@ -1611,10 +1748,10 @@ dependencies = [ "axum-core 0.4.5", "bytes", "futures-util", - "http 1.3.1", + "http 1.4.0", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", + "hyper 1.8.1", "hyper-util", "itoa", "matchit 0.7.3", @@ -1629,7 +1766,7 @@ dependencies = [ "serde_urlencoded", "sync_wrapper 1.0.2", "tokio", - "tower 0.5.2", + "tower 0.5.3", "tower-layer", "tower-service", "tracing", @@ -1637,18 +1774,18 @@ dependencies = [ [[package]] name = "axum" -version = "0.8.5" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98e529aee37b5c8206bb4bf4c44797127566d72f76952c970bd3d1e85de8f4e2" +checksum = "8b52af3cb4058c895d37317bb27508dccc8e5f2d39454016b297bf4a400597b8" dependencies = [ - "axum-core 0.5.4", + "axum-core 0.5.6", "bytes", "form_urlencoded", "futures-util", - "http 1.3.1", + "http 1.4.0", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", + "hyper 1.8.1", "hyper-util", "itoa", "matchit 0.8.4", @@ -1662,7 +1799,7 @@ dependencies = [ "serde_urlencoded", "sync_wrapper 1.0.2", "tokio", - "tower 0.5.2", + "tower 0.5.3", "tower-layer", "tower-service", "tracing", @@ -1694,7 +1831,7 @@ dependencies = [ "async-trait", "bytes", "futures-util", - "http 1.3.1", + "http 1.4.0", "http-body 1.0.1", "http-body-util", "mime", @@ -1708,13 +1845,13 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.5.4" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ac7a6beb1182c7e30253ee75c3e918080bfb83f5a3023bcdf7209d85fd147e6" +checksum = "08c78f31d7b1291f7ee735c1c6780ccde7785daae9a9206026862dab7d8792d1" dependencies = [ "bytes", "futures-core", - "http 1.3.1", + "http 1.4.0", "http-body 1.0.1", "http-body-util", "mime", @@ -1732,7 +1869,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1" dependencies = [ "futures-core", - "getrandom 0.2.16", + "getrandom 0.2.17", "instant", "pin-project-lite", "rand 0.8.5", @@ -1741,18 +1878,18 @@ dependencies = [ [[package]] name = "backtrace" -version = "0.3.75" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002" +checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6" dependencies = [ - "addr2line 0.24.2", + "addr2line 0.25.1", "cfg-if", "libc", "miniz_oxide", - "object 0.36.7", + "object 0.37.3", "rustc-demangle", "serde", - "windows-targets 0.52.6", + "windows-link 0.2.1", ] [[package]] @@ -1800,9 +1937,9 @@ dependencies = [ [[package]] name = "base64ct" -version = "1.7.3" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3" +checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06" [[package]] name = "bech32" @@ -1868,21 +2005,18 @@ version = "0.69.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "cexpr", "clang-sys", "itertools 0.12.1", "lazy_static", "lazycell", - "log", - "prettyplease 0.2.32", "proc-macro2", "quote", "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.101", - "which", + "syn 2.0.116", ] [[package]] @@ -1891,18 +2025,18 @@ version = "0.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "cexpr", "clang-sys", "itertools 0.13.0", "log", - "prettyplease 0.2.32", + "prettyplease 0.2.37", "proc-macro2", "quote", "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -1937,9 +2071,9 @@ checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" [[package]] name = "bitcode" -version = "0.6.6" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf300f4aa6e66f3bdff11f1236a88c622fe47ea814524792240b4d554d9858ee" +checksum = "0a6ed1b54d8dc333e7be604d00fa9262f4635485ffea923647b6521a5fff045d" dependencies = [ "arrayvec", "bitcode_derive", @@ -1950,26 +2084,26 @@ dependencies = [ [[package]] name = "bitcode_derive" -version = "0.6.5" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42b6b4cb608b8282dc3b53d0f4c9ab404655d562674c682db7e6c0458cc83c23" +checksum = "238b90427dfad9da4a9abd60f3ec1cdee6b80454bde49ed37f1781dd8e9dc7f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "bitcoin-io" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b47c4ab7a93edb0c7198c5535ed9b52b63095f4e9b45279c6736cec4b856baf" +checksum = "2dee39a0ee5b4095224a0cfc6bf4cc1baf0f9624b96b367e53b66d974e51d953" [[package]] name = "bitcoin_hashes" -version = "0.14.0" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb18c03d0db0247e147a21a6faafd5a7eb851c743db062de72018b6b7e8e4d16" +checksum = "26ec84b80c482df901772e931a9a681e26a1b9ee2302edeff23cb30328745c8b" dependencies = [ "bitcoin-io", "hex-conservative", @@ -1983,9 +2117,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" +checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" [[package]] name = "bitvec" @@ -2021,13 +2155,13 @@ dependencies = [ [[package]] name = "blake2b_simd" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99" +checksum = "b79834656f71332577234b50bfc009996f7449e0c056884e6a02492ded0ca2f3" dependencies = [ "arrayref", "arrayvec", - "constant_time_eq 0.3.1", + "constant_time_eq 0.4.2", ] [[package]] @@ -2040,15 +2174,16 @@ dependencies = [ [[package]] name = "blake3" -version = "1.8.2" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +checksum = "2468ef7d57b3fb7e16b576e8377cdbde2320c60e1491e961d11da40fc4f02a2d" dependencies = [ "arrayref", "arrayvec", "cc", "cfg-if", - "constant_time_eq 0.3.1", + "constant_time_eq 0.4.2", + "cpufeatures", ] [[package]] @@ -2066,6 +2201,15 @@ dependencies = [ "generic-array 0.14.7", ] +[[package]] +name = "block2" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdeb9d870516001442e364c5220d3574d2da8dc765554b4a617230d33fa58ef5" +dependencies = [ + "objc2", +] + [[package]] name = "bls12_381" version = "0.7.1" @@ -2081,9 +2225,9 @@ dependencies = [ [[package]] name = "blst" -version = "0.3.15" +version = "0.3.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fd49896f12ac9b6dcd7a5998466b9b58263a695a3dd1ecc1aaca2e12a90b080" +checksum = "dcdb4c7013139a150f9fc55d123186dbfaba0d912817466282c73ac49e71fb45" dependencies = [ "cc", "glob", @@ -2109,9 +2253,9 @@ dependencies = [ [[package]] name = "bon" -version = "3.6.3" +version = "3.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced38439e7a86a4761f7f7d5ded5ff009135939ecb464a24452eaa4c1696af7d" +checksum = "2d13a61f2963b88eef9c1be03df65d42f6996dfeac1054870d950fcf66686f83" dependencies = [ "bon-macros", "rustversion", @@ -2119,24 +2263,24 @@ dependencies = [ [[package]] name = "bon-macros" -version = "3.6.3" +version = "3.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce61d2d3844c6b8d31b2353d9f66cf5e632b3e9549583fe3cac2f4f6136725e" +checksum = "d314cc62af2b6b0c65780555abb4d02a03dd3b799cd42419044f0c38d99738c0" dependencies = [ - "darling", + "darling 0.23.0", "ident_case", - "prettyplease 0.2.32", + "prettyplease 0.2.37", "proc-macro2", "quote", "rustversion", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "borsh" -version = "1.5.7" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad8646f98db542e39fc66e68a20b2144f6a732636df7c2354e74645faaa433ce" +checksum = "d1da5ab77c1437701eeff7c88d968729e7766172279eab0676857b3d63af7a6f" dependencies = [ "borsh-derive", "cfg_aliases", @@ -2144,15 +2288,15 @@ dependencies = [ [[package]] name = "borsh-derive" -version = "1.5.7" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdd1d3c0c2f5833f22386f252fe8ed005c7f59fdcddeef025c01b4c3b9fd9ac3" +checksum = "0686c856aa6aac0c4498f936d7d6a02df690f614c03e4d906d1018062b5c5e2c" dependencies = [ "once_cell", - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -2177,9 +2321,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.17.0" +version = "3.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" +checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510" [[package]] name = "byte-slice-cast" @@ -2207,7 +2351,7 @@ checksum = "89385e82b5d1821d2219e0b095efa2cc1f246cbf99080f3be46a1a85c0d392d9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -2227,7 +2371,7 @@ checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -2238,9 +2382,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.10.1" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" +checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33" dependencies = [ "serde", ] @@ -2257,9 +2401,9 @@ dependencies = [ [[package]] name = "bytesize" -version = "2.0.1" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3c8f83209414aacf0eeae3cf730b18d6981697fba62f200fcfb92b9f082acba" +checksum = "6bd91ee7b2422bcb158d90ef4d14f75ef67f340943fc4149891dcce8f8b972a3" [[package]] name = "bzip2" @@ -2283,9 +2427,9 @@ dependencies = [ [[package]] name = "c-kzg" -version = "2.1.1" +version = "2.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7318cfa722931cb5fe0838b98d3ce5621e75f6a6408abc21721d80de9223f2e4" +checksum = "e00bf4b112b07b505472dbefd19e37e53307e2bfed5a79e0cc161d58ccd0e687" dependencies = [ "blst", "cc", @@ -2298,11 +2442,11 @@ dependencies = [ [[package]] name = "camino" -version = "1.1.9" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" +checksum = "e629a66d692cb9ff1a1c664e41771b3dcaf961985a9774c0eb0bd1b51cf60a48" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -2314,6 +2458,16 @@ dependencies = [ "serde", ] +[[package]] +name = "cargo-platform" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87a0c0e6148f11f01f32650a2ea02d532b2ad4e81d8bd41e6e565b5adc5e6082" +dependencies = [ + "serde", + "serde_core", +] + [[package]] name = "cargo_metadata" version = "0.18.1" @@ -2321,8 +2475,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" dependencies = [ "camino", - "cargo-platform", - "semver 1.0.26", + "cargo-platform 0.1.9", + "semver 1.0.27", "serde", "serde_json", "thiserror 1.0.69", @@ -2335,11 +2489,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba" dependencies = [ "camino", - "cargo-platform", - "semver 1.0.26", + "cargo-platform 0.1.9", + "semver 1.0.27", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", +] + +[[package]] +name = "cargo_metadata" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef987d17b0a113becdd19d3d0022d04d7ef41f9efe4f3fb63ac44ba61df3ade9" +dependencies = [ + "camino", + "cargo-platform 0.3.2", + "semver 1.0.27", + "serde", + "serde_json", + "thiserror 2.0.18", ] [[package]] @@ -2350,22 +2518,22 @@ checksum = "3fce8dd7fcfcbf3a0a87d8f515194b49d6135acab73e18bd380d1d93bb1a15eb" dependencies = [ "clap", "heck 0.4.1", - "indexmap 2.10.0", + "indexmap 2.13.0", "log", "proc-macro2", "quote", "serde", "serde_json", - "syn 2.0.101", + "syn 2.0.116", "tempfile", "toml 0.8.23", ] [[package]] name = "cc" -version = "1.2.55" +version = "1.2.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47b26a0954ae34af09b50f0de26458fa95369a0d478d8236d3f93082b219bd29" +checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2" dependencies = [ "find-msvc-tools", "jobserver", @@ -2373,6 +2541,12 @@ dependencies = [ "shlex", ] +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + [[package]] name = "cexpr" version = "0.6.0" @@ -2470,6 +2644,11 @@ dependencies = [ "zeroize", ] +[[package]] +name = "circuit" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" + [[package]] name = "circuit_common" version = "0.1.0" @@ -2488,14 +2667,14 @@ checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" dependencies = [ "glob", "libc", - "libloading 0.8.7", + "libloading 0.8.9", ] [[package]] name = "clap" -version = "4.5.42" +version = "4.5.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed87a9d530bb41a67537289bafcac159cb3ee28460e0a4571123d2a778a6a882" +checksum = "c5caf74d17c3aec5495110c34cc3f78644bfa89af6c8993ed4de2790e49b6499" dependencies = [ "clap_builder", "clap_derive", @@ -2503,9 +2682,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.42" +version = "4.5.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64f4f3f3c77c94aff3c7e9aac9a2ca1974a5adf392a8bb751e827d6d127ab966" +checksum = "370daa45065b80218950227371916a1633217ae42b2715b2287b606dcd618e24" dependencies = [ "anstream", "anstyle", @@ -2515,36 +2694,39 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.41" +version = "4.5.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef4f52386a59ca4c860f7393bcf8abd8dfd91ecccc0f774635ff68e92eeef491" +checksum = "a92793da1a46a5f2a02a6f4c46c6496b28c43638adea8306fcb0caa1634f24e5" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "clap_lex" -version = "0.7.4" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" +checksum = "3a822ea5bc7590f9d40f1ba12c0dc3c2760f3482c6984db1573ad11031420831" [[package]] name = "cmake" -version = "0.1.54" +version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7caa3f9de89ddbe2c607f4101924c5abec803763ae9534e4f4d7d8f84aa81f0" +checksum = "75443c44cd6b379beb8c5b45d85d0773baf31cce901fe7bb252f4eff3008ef7d" dependencies = [ "cc", ] [[package]] name = "cobs" -version = "0.2.3" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15" +checksum = "0fa961b519f0b462e3a3b4a34b64d119eeaca1d59af726fe450bbba07a9fc0a1" +dependencies = [ + "thiserror 2.0.18", +] [[package]] name = "coins-bip32" @@ -2600,9 +2782,9 @@ dependencies = [ [[package]] name = "colorchoice" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" [[package]] name = "colored" @@ -2613,6 +2795,16 @@ dependencies = [ "windows-sys 0.61.2", ] +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + [[package]] name = "common" version = "0.2.0" @@ -2620,7 +2812,7 @@ source = "git+https://github.com/a16z/jolt.git?rev=6dcd401#6dcd401375efbf1a0e700 dependencies = [ "allocative", "ark-serialize 0.5.0", - "derive_more 2.0.1", + "derive_more 2.1.1", "serde", "serde_json", "strum 0.26.3", @@ -2638,7 +2830,7 @@ dependencies = [ "encode_unicode", "libc", "once_cell", - "unicode-width 0.2.0", + "unicode-width 0.2.2", "windows-sys 0.59.0", ] @@ -2650,15 +2842,14 @@ checksum = "0b396d1f76d455557e1218ec8066ae14bba60b4b36ecd55577ba979f5db7ecaa" [[package]] name = "const-hex" -version = "1.14.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c" +checksum = "3bb320cac8a0750d7f25280aa97b09c26edfe161164238ecbbb31092b079e735" dependencies = [ "cfg-if", "cpufeatures", - "hex", "proptest", - "serde", + "serde_core", ] [[package]] @@ -2682,16 +2873,16 @@ version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", "once_cell", "tiny-keccak", ] [[package]] name = "const_format" -version = "0.2.34" +version = "0.2.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "126f97965c8ad46d6d9163268ff28432e8f6a1196a55578867832e3049df63dd" +checksum = "7faa7469a93a566e9ccc1c73fe783b4a65c274c5ace346038dca9c39fe0030ad" dependencies = [ "const_format_proc_macros", ] @@ -2724,9 +2915,9 @@ checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" [[package]] name = "constant_time_eq" -version = "0.3.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" +checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b" [[package]] name = "conv" @@ -2746,6 +2937,15 @@ dependencies = [ "unicode-segmentation", ] +[[package]] +name = "convert_case" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "633458d4ef8c78b72454de2d54fd6ab2e60f9e02be22f3c6104cdc8a4e0fceb9" +dependencies = [ + "unicode-segmentation", +] + [[package]] name = "core-foundation" version = "0.9.4" @@ -2758,9 +2958,9 @@ dependencies = [ [[package]] name = "core-foundation" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" dependencies = [ "core-foundation-sys", "libc", @@ -2811,9 +3011,18 @@ checksum = "533d38ecd2709b7608fb8e18e4504deb99e9a72879e6aa66373a76d8dc4259ea" [[package]] name = "cpp_demangle" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96e58d342ad113c2b878f16d5d034c03be492ae460cdbc02b7f0f2284d310c7d" +checksum = "f2bb79cb74d735044c972aae58ed0aaa9a837e85b01106a54c39e42e97f62253" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "cpp_demangle" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0667304c32ea56cb4cd6d2d7c0cfe9a2f8041229db8c033af7f8d69492429def" dependencies = [ "cfg-if", ] @@ -2839,9 +3048,9 @@ dependencies = [ [[package]] name = "crc" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9710d3b3739c2e349eb44fe848ad0b7c8cb1e42bd87ee49371df2f7acaf3e675" +checksum = "5eb8a2a1cd12ab0d987a5d5e825195d372001a4094a0376319d5a0ad71c1ba0d" dependencies = [ "crc-catalog", ] @@ -2854,9 +3063,9 @@ checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" [[package]] name = "crc32fast" -version = "1.4.2" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" dependencies = [ "cfg-if", ] @@ -2925,9 +3134,9 @@ checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] name = "crunchy" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" +checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" [[package]] name = "crypto" @@ -2953,9 +3162,9 @@ dependencies = [ [[package]] name = "crypto-common" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" dependencies = [ "generic-array 0.14.7", "rand_core 0.6.4", @@ -2983,27 +3192,27 @@ dependencies = [ "serde_json", "smallvec", "super-seq-macro", - "syn 2.0.101", + "syn 2.0.116", "type-map", ] [[package]] name = "csv" -version = "1.3.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf" +checksum = "52cd9d68cf7efc6ddfaaee42e7288d3a99d613d4b50f76ce9827ae0c6e14f938" dependencies = [ "csv-core", "itoa", "ryu", - "serde", + "serde_core", ] [[package]] name = "csv-core" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d02f3b0da4c6504f86e9cd789d8dbafab48c2321be74e9987593de5a894d93d" +checksum = "704a3c26996a80471189265814dbc2c257598b96b8a7feae2d31ace646bb9782" dependencies = [ "memchr", ] @@ -3025,7 +3234,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3055,12 +3264,13 @@ dependencies = [ [[package]] name = "ctrlc" -version = "3.4.7" +version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46f93780a459b7d656ef7f071fe699c4d3d2cb201c4b24d085b6ddc505276e73" +checksum = "73736a89c4aff73035ba2ed2e565061954da00d4970fc9ac25dcc85a2a20d790" dependencies = [ + "dispatch2", "nix 0.30.1", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -3105,18 +3315,17 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "curves" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ "fields", "num-bigint 0.4.6", "num-traits", - "rand 0.9.2", ] [[package]] @@ -3131,8 +3340,28 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.11", + "darling_macro 0.20.11", +] + +[[package]] +name = "darling" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" +dependencies = [ + "darling_core 0.21.3", + "darling_macro 0.21.3", +] + +[[package]] +name = "darling" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" +dependencies = [ + "darling_core 0.23.0", + "darling_macro 0.23.0", ] [[package]] @@ -3146,7 +3375,35 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.101", + "syn 2.0.116", +] + +[[package]] +name = "darling_core" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "serde", + "strsim", + "syn 2.0.116", +] + +[[package]] +name = "darling_core" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" +dependencies = [ + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.116", ] [[package]] @@ -3155,9 +3412,31 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core", + "darling_core 0.20.11", "quote", - "syn 2.0.101", + "syn 2.0.116", +] + +[[package]] +name = "darling_macro" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" +dependencies = [ + "darling_core 0.21.3", + "quote", + "syn 2.0.116", +] + +[[package]] +name = "darling_macro" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" +dependencies = [ + "darling_core 0.23.0", + "quote", + "syn 2.0.116", ] [[package]] @@ -3253,11 +3532,20 @@ dependencies = [ "rustversion", ] +[[package]] +name = "data-bus" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "zisk-common", + "zisk-core", +] + [[package]] name = "data-encoding" -version = "2.9.0" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" +checksum = "d7a1e2f27636f116493b8b860f5546edb47c8d8f8ea73e1d2a20be88e28d1fea" [[package]] name = "debugid" @@ -3265,7 +3553,7 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d" dependencies = [ - "uuid 1.17.0", + "uuid 1.21.0", ] [[package]] @@ -3286,7 +3574,7 @@ checksum = "e0f8817865cacf3b93b943ca06b0fc5fd8e99eabfdb7ea5d296efcbc4afc4f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3301,13 +3589,27 @@ dependencies = [ ] [[package]] -name = "deranged" -version = "0.4.0" +name = "der-parser" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e" +checksum = "07da5016415d5a3c4dd39b11ed26f915f52fc4e0dc197d87908bc916e51bc1a6" +dependencies = [ + "asn1-rs", + "displaydoc", + "nom", + "num-bigint 0.4.6", + "num-traits", + "rusticata-macros", +] + +[[package]] +name = "deranged" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc3dc5ad92c2e2d1c193bbbbdf2ea477cb81331de4f3103f267ca18368b988c4" dependencies = [ "powerfmt", - "serde", + "serde_core", ] [[package]] @@ -3329,7 +3631,7 @@ checksum = "d150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3340,7 +3642,7 @@ checksum = "2cdc8d50f426189eef89dac62fabfa0abb27d5cc008f25bf4156a0203325becc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3351,18 +3653,18 @@ checksum = "ef941ded77d15ca19b40374869ac6000af1c9f2a4c0f3d4c70926287e6364a8f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "derive_arbitrary" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" +checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3380,10 +3682,10 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3393,7 +3695,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3404,7 +3706,7 @@ checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3418,11 +3720,11 @@ dependencies = [ [[package]] name = "derive_more" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" dependencies = [ - "derive_more-impl 2.0.1", + "derive_more-impl 2.1.1", ] [[package]] @@ -3433,19 +3735,21 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", "unicode-xid", ] [[package]] name = "derive_more-impl" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" dependencies = [ + "convert_case 0.10.0", "proc-macro2", "quote", - "syn 2.0.101", + "rustc_version 0.4.1", + "syn 2.0.116", "unicode-xid", ] @@ -3542,6 +3846,18 @@ dependencies = [ "winapi", ] +[[package]] +name = "dispatch2" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89a09f22a6c6069a18470eb92d2298acf25463f14256d24778e1230d789a2aec" +dependencies = [ + "bitflags 2.11.0", + "block2", + "libc", + "objc2", +] + [[package]] name = "displaydoc" version = "0.2.5" @@ -3550,7 +3866,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3579,7 +3895,7 @@ checksum = "c16f2dd35390487818e07efb4459ee0a5c2c65761081ee632d531442a980c97b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3600,7 +3916,7 @@ dependencies = [ "rand_core 0.6.4", "rayon", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", ] @@ -3619,16 +3935,16 @@ dependencies = [ "digest 0.10.7", "futures", "rand 0.8.5", - "reqwest 0.12.15", + "reqwest 0.12.28", "thiserror 1.0.69", "tokio", ] [[package]] name = "dtor" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e58a0764cddb55ab28955347b45be00ade43d4d6f3ba4bf3dc354e4ec9432934" +checksum = "404d02eeb088a82cfd873006cb713fe411306c7d182c344905e101fb1167d301" dependencies = [ "dtor-proc-macro", ] @@ -3645,19 +3961,25 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" +[[package]] +name = "dyn-clone" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" + [[package]] name = "dynasm" version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f7d4c414c94bc830797115b8e5f434d58e7e80cb42ba88508c14bc6ea270625" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "byteorder", "lazy_static", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3720,7 +4042,7 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3732,7 +4054,7 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3798,9 +4120,9 @@ checksum = "edd0f118536f44f5ccd48bcb8b111bdc3de888b58c74639dfb034a357d0f206d" [[package]] name = "ena" -version = "0.14.3" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5" +checksum = "eabffdaee24bd1bf95c5ef7cec31260444317e72ea56c4c91750e8b7ee58d5f1" dependencies = [ "log", ] @@ -3853,7 +4175,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3874,27 +4196,27 @@ checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "enum-ordinalize" -version = "4.3.0" +version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea0dcfa4e54eeb516fe454635a95753ddd39acda650ce703031c6973e315dd5" +checksum = "4a1091a7bb1f8f2c4b28f1fe2cef4980ca2d410a3d727d67ecc3178c9b0800f0" dependencies = [ "enum-ordinalize-derive", ] [[package]] name = "enum-ordinalize-derive" -version = "4.3.1" +version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" +checksum = "8ca9601fb2d62598ee17836250842873a413586e5d7ed88b356e38ddbb0ec631" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3906,7 +4228,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -3920,9 +4242,9 @@ dependencies = [ [[package]] name = "env_filter" -version = "0.1.3" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0" +checksum = "7a1c3cc8e57274ec99de65301228b537f1e4eedc1b8e0f9411c6caac8ae7308f" dependencies = [ "log", "regex", @@ -3930,9 +4252,9 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c863f0904021b108aa8b2f55046443e6b1ebde8fd4a15c399893aae4fa069f" +checksum = "b2daee4ea451f429a58296525ddf28b45a3b64f1acf6587e2067437bb11e218d" dependencies = [ "anstream", "anstyle", @@ -3949,11 +4271,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "erased-serde" -version = "0.4.6" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e004d887f51fcb9fef17317a2f3525c887d8aa3f4f50fed920816a688284a5b7" +checksum = "89e8918065695684b2b0702da20382d5ae6065cf3327bc2d6436bd49a71ce9f3" dependencies = [ "serde", + "serde_core", "typeid", ] @@ -3971,7 +4294,7 @@ dependencies = [ "serde", "serde_json", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -3997,7 +4320,7 @@ dependencies = [ "anyhow", "cargo_metadata 0.19.2", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -4021,7 +4344,7 @@ dependencies = [ "ere-zkvm-interface", "serde", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -4036,10 +4359,10 @@ dependencies = [ "paste", "serde", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", "tokio", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -4071,7 +4394,7 @@ dependencies = [ "jolt-sdk", "serde", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -4089,7 +4412,7 @@ dependencies = [ "miden-prover", "miden-verifier", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -4108,7 +4431,7 @@ dependencies = [ "nexus-vm-prover", "postcard", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", ] @@ -4129,7 +4452,7 @@ dependencies = [ "openvm-stark-sdk", "openvm-transpiler", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", "toml 0.8.23", ] @@ -4143,13 +4466,13 @@ dependencies = [ "ere-compile-utils", "ere-test-utils", "ere-zkvm-interface", - "indexmap 2.10.0", + "indexmap 2.13.0", "p3-field 0.1.0 (git+https://github.com/brevis-network/Plonky3.git?rev=411a80d)", "pico-vm", "serde", "sha2", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -4251,7 +4574,7 @@ dependencies = [ "risc0-zkp", "risc0-zkvm", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", ] @@ -4273,15 +4596,15 @@ dependencies = [ "ere-ziren", "ere-zisk", "ere-zkvm-interface", - "prost 0.13.5", - "prost-build 0.13.5", + "prost 0.14.3", + "prost-build 0.14.3", "serde", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", "tokio", "tower-http", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "twirp", "twirp-build", ] @@ -4303,7 +4626,7 @@ dependencies = [ "sp1-recursion-executor", "sp1-sdk", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", ] @@ -4331,7 +4654,7 @@ dependencies = [ "ere-test-utils", "ere-zkvm-interface", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", "zkm-sdk", ] @@ -4341,25 +4664,35 @@ name = "ere-zisk" version = "0.3.0" dependencies = [ "anyhow", - "blake3", + "bincode 2.0.1", "bytemuck", "ere-build-utils", "ere-compile-utils", "ere-test-utils", "ere-zkvm-interface", + "fields", "futures-util", - "http 1.3.1", + "http 1.4.0", + "mpi", "parking_lot", + "proofman", + "proofman-common", + "proofman-util", "proofman-verifier", + "prost 0.14.3", + "rom-setup", "serde", - "strum 0.27.2", "tempfile", - "thiserror 2.0.12", - "tonic 0.14.3", + "thiserror 2.0.18", + "tonic 0.14.4", + "tonic-build 0.14.4", + "tonic-prost", + "tonic-prost-build", "tracing", - "uuid 1.17.0", - "wait-timeout", - "zisk-distributed-grpc-api", + "uuid 1.21.0", + "zisk-core", + "zisk-sdk", + "ziskemu", ] [[package]] @@ -4370,24 +4703,24 @@ dependencies = [ "auto_impl", "bincode 2.0.1", "clap", - "indexmap 2.10.0", + "indexmap 2.13.0", "serde", "serde_json", "serde_yaml", "strum 0.27.2", - "thiserror 2.0.12", + "thiserror 2.0.18", "tokio", "toml 0.8.23", ] [[package]] name = "errno" -version = "0.3.11" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -4519,14 +4852,14 @@ dependencies = [ "ethers-core", "ethers-etherscan", "eyre", - "prettyplease 0.2.32", + "prettyplease 0.2.37", "proc-macro2", "quote", "regex", "reqwest 0.11.27", "serde", "serde_json", - "syn 2.0.101", + "syn 2.0.116", "toml 0.8.23", "walkdir", ] @@ -4544,7 +4877,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -4562,7 +4895,7 @@ dependencies = [ "ethabi", "generic-array 0.14.7", "k256", - "num_enum 0.7.4", + "num_enum 0.7.5", "once_cell", "open-fastrlp", "rand 0.8.5", @@ -4570,7 +4903,7 @@ dependencies = [ "serde", "serde_json", "strum 0.26.3", - "syn 2.0.101", + "syn 2.0.116", "tempfile", "thiserror 1.0.69", "tiny-keccak", @@ -4586,7 +4919,7 @@ dependencies = [ "chrono", "ethers-core", "reqwest 0.11.27", - "semver 1.0.26", + "semver 1.0.27", "serde", "serde_json", "thiserror 1.0.69", @@ -4695,7 +5028,7 @@ dependencies = [ "path-slash", "rayon", "regex", - "semver 1.0.26", + "semver 1.0.27", "serde", "serde_json", "solang-parser", @@ -4732,6 +5065,47 @@ dependencies = [ "verifier_common", ] +[[package]] +name = "executor" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "anyhow", + "asm-runner", + "crossbeam", + "data-bus", + "fields", + "itertools 0.14.0", + "mem-common", + "mem-planner-cpp", + "named-sem", + "pil-std-lib", + "precomp-arith-eq", + "precomp-arith-eq-384", + "precomp-big-int", + "precomp-dma", + "precomp-keccakf", + "precomp-poseidon2", + "precomp-sha256f", + "precompiles-common", + "proofman", + "proofman-common", + "proofman-util", + "rayon", + "sm-arith", + "sm-binary", + "sm-frequent-ops", + "sm-main", + "sm-mem", + "sm-rom", + "tracing", + "witness", + "zisk-common", + "zisk-core", + "zisk-pil", + "ziskemu", +] + [[package]] name = "eyre" version = "0.6.12" @@ -4748,6 +5122,18 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" +[[package]] +name = "fastbloom" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e7f34442dbe69c60fe8eaf58a8cafff81a1f278816d8ab4db255b3bef4ac3c4" +dependencies = [ + "getrandom 0.3.4", + "libm", + "rand 0.9.2", + "siphasher", +] + [[package]] name = "fastrand" version = "2.3.0" @@ -4847,9 +5233,10 @@ dependencies = [ [[package]] name = "fields" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ + "cfg-if", "num-bigint 0.4.6", "paste", "serde", @@ -4911,9 +5298,9 @@ checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" [[package]] name = "flate2" -version = "1.1.1" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" +checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" dependencies = [ "crc32fast", "miniz_oxide", @@ -4943,6 +5330,12 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + [[package]] name = "foreign-types" version = "0.3.2" @@ -4970,7 +5363,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -4987,18 +5380,18 @@ checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" [[package]] name = "form_urlencoded" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" dependencies = [ "percent-encoding", ] [[package]] name = "fs-err" -version = "3.1.3" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ad492b2cf1d89d568a43508ab24f98501fe03f2f31c01e1d0fe7366a71745d2" +checksum = "73fde052dbfc920003cfd2c8e2c6e6d4cc7c1091538c3a24226cec0665ab08c0" dependencies = [ "autocfg", ] @@ -5027,9 +5420,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +checksum = "8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d" dependencies = [ "futures-channel", "futures-core", @@ -5042,9 +5435,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d" dependencies = [ "futures-core", "futures-sink", @@ -5052,15 +5445,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" +checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" [[package]] name = "futures-executor" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d" dependencies = [ "futures-core", "futures-task", @@ -5069,9 +5462,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" +checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718" [[package]] name = "futures-locks" @@ -5085,26 +5478,26 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" +checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "futures-sink" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" +checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893" [[package]] name = "futures-task" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" +checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393" [[package]] name = "futures-timer" @@ -5118,9 +5511,9 @@ dependencies = [ [[package]] name = "futures-util" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" dependencies = [ "futures-channel", "futures-core", @@ -5130,7 +5523,6 @@ dependencies = [ "futures-task", "memchr", "pin-project-lite", - "pin-utils", "slab", ] @@ -5157,11 +5549,11 @@ checksum = "1d758ba1b47b00caf47f24925c0074ecb20d6dfcffe7f6d53395c0465674841a" [[package]] name = "gdbstub" -version = "0.7.7" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b686b198dfaa4109ebd0443d2841bc521e4b4b2915f1d84b3bb50332a8cdc1ae" +checksum = "6bf845b08f7c2ef3b5ad19f80779d43ae20d278652b91bb80adda65baf2d8ed6" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "cfg-if", "log", "managed", @@ -5196,16 +5588,17 @@ dependencies = [ [[package]] name = "generator" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "605183a538e3e2a9c1038635cc5c2d194e2ee8fd0d1b66b8349fad7dbacce5a2" +checksum = "52f04ae4152da20c76fe800fa48659201d5cf627c5149ca0b707b69d7eef6cf9" dependencies = [ "cc", "cfg-if", "libc", "log", "rustversion", - "windows 0.61.1", + "windows-link 0.2.1", + "windows-result 0.4.1", ] [[package]] @@ -5231,41 +5624,54 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "wasm-bindgen", ] [[package]] name = "getrandom" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" dependencies = [ "cfg-if", "js-sys", "libc", "r-efi", - "wasi 0.14.2+wasi-0.2.4", + "wasip2", "wasm-bindgen", ] [[package]] -name = "getset" -version = "0.1.5" +name = "getrandom" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3586f256131df87204eb733da72e3d3eb4f343c639f4b7be279ac7c48baeafe" +checksum = "139ef39800118c7683f2fd3c98c1b23c09ae076556b435f8e9064ae108aaeeec" +dependencies = [ + "cfg-if", + "libc", + "r-efi", + "wasip2", + "wasip3", +] + +[[package]] +name = "getset" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cf0fc11e47561d47397154977bc219f4cf809b2974facc3ccb3b89e2436f912" dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -5285,7 +5691,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" dependencies = [ "fallible-iterator", - "indexmap 2.10.0", + "indexmap 2.13.0", "stable_deref_trait", ] @@ -5301,11 +5707,11 @@ dependencies = [ [[package]] name = "git2" -version = "0.19.0" +version = "0.20.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b903b73e45dc0c6c596f2d37eccece7c1c8bb6e4407b001096387c63d0d93724" +checksum = "7b88256088d75a56f8ecfa070513a775dd9107f6530ef14919dac831af9cfe2b" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "libc", "libgit2-sys", "log", @@ -5314,15 +5720,15 @@ dependencies = [ [[package]] name = "glam" -version = "0.30.3" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b46b9ca4690308844c644e7c634d68792467260e051c8543e0c7871662b3ba7" +checksum = "34627c5158214743a374170fed714833fdf4e4b0cbcc1ea98417866a4c5d4441" [[package]] name = "glob" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" +checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" [[package]] name = "gloo-timers" @@ -5373,7 +5779,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.10.0", + "indexmap 2.13.0", "slab", "tokio", "tokio-util", @@ -5382,17 +5788,17 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.10" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9421a676d1b147b16b82c9225157dc629087ef8ec4d5e2960f9437a90dac0a5" +checksum = "2f44da3a8150a6703ed5d34e164b875fd14c2cdab9af1252a9a1020bde2bdc54" dependencies = [ "atomic-waker", "bytes", "fnv", "futures-core", "futures-sink", - "http 1.3.1", - "indexmap 2.10.0", + "http 1.4.0", + "indexmap 2.13.0", "slab", "tokio", "tokio-util", @@ -5570,14 +5976,26 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.3" +version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" +checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" dependencies = [ "allocator-api2", "equivalent", - "foldhash", + "foldhash 0.1.5", +] + +[[package]] +name = "hashbrown" +version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash 0.2.0", "serde", + "serde_core", ] [[package]] @@ -5595,7 +6013,7 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7382cf6263419f2d8df38c55d7da83da5c18aef87fc7a7fc1fb1e344edfe14c1" dependencies = [ - "hashbrown 0.15.3", + "hashbrown 0.15.5", ] [[package]] @@ -5651,9 +6069,9 @@ dependencies = [ [[package]] name = "hex-conservative" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd" +checksum = "fda06d18ac606267c40c04e41b9947729bf8b9efe74bd4e82b61a5f26a510b9f" dependencies = [ "arrayvec", ] @@ -5729,11 +6147,11 @@ dependencies = [ [[package]] name = "home" -version = "0.5.11" +version = "0.5.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" +checksum = "cc627f471c528ff0c4a49e1d5e60450c8f6461dd6d10ba9dcd3a61d3dff7728d" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -5749,12 +6167,11 @@ dependencies = [ [[package]] name = "http" -version = "1.3.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" +checksum = "e3ba2a386d7f85a81f119ad7498ebe444d2e22c2af0b86b069416ace48b3311a" dependencies = [ "bytes", - "fnv", "itoa", ] @@ -5776,7 +6193,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.3.1", + "http 1.4.0", ] [[package]] @@ -5787,7 +6204,7 @@ checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" dependencies = [ "bytes", "futures-core", - "http 1.3.1", + "http 1.4.0", "http-body 1.0.1", "pin-project-lite", ] @@ -5830,7 +6247,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2 0.5.9", + "socket2 0.5.10", "tokio", "tower-service", "tracing", @@ -5839,20 +6256,22 @@ dependencies = [ [[package]] name = "hyper" -version = "1.6.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" +checksum = "2ab2d4f250c3d7b1c9fcdff1cece94ea4e2dfbec68614f7b87cb205f24ca9d11" dependencies = [ + "atomic-waker", "bytes", "futures-channel", - "futures-util", - "h2 0.4.10", - "http 1.3.1", + "futures-core", + "h2 0.4.13", + "http 1.4.0", "http-body 1.0.1", "httparse", "httpdate", "itoa", "pin-project-lite", + "pin-utils", "smallvec", "tokio", "want", @@ -5869,28 +6288,26 @@ dependencies = [ "hyper 0.14.32", "log", "rustls 0.21.12", - "rustls-native-certs 0.6.3", "tokio", "tokio-rustls 0.24.1", ] [[package]] name = "hyper-rustls" -version = "0.27.5" +version = "0.27.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" +checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" dependencies = [ - "futures-util", - "http 1.3.1", - "hyper 1.6.0", + "http 1.4.0", + "hyper 1.8.1", "hyper-util", - "rustls 0.23.27", - "rustls-native-certs 0.8.1", + "rustls 0.23.36", + "rustls-native-certs 0.8.3", "rustls-pki-types", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.4", "tower-service", - "webpki-roots 0.26.11", + "webpki-roots 1.0.6", ] [[package]] @@ -5911,7 +6328,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" dependencies = [ - "hyper 1.6.0", + "hyper 1.8.1", "hyper-util", "pin-project-lite", "tokio", @@ -5926,7 +6343,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", "http-body-util", - "hyper 1.6.0", + "hyper 1.8.1", "hyper-util", "native-tls", "tokio", @@ -5936,29 +6353,34 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.11" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497bbc33a26fdd4af9ed9c70d63f61cf56a938375fbb32df34db9b1cd6d643f2" +checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0" dependencies = [ + "base64 0.22.1", "bytes", "futures-channel", "futures-util", - "http 1.3.1", + "http 1.4.0", "http-body 1.0.1", - "hyper 1.6.0", + "hyper 1.8.1", + "ipnet", "libc", + "percent-encoding", "pin-project-lite", - "socket2 0.5.9", + "socket2 0.6.2", + "system-configuration 0.7.0", "tokio", "tower-service", "tracing", + "windows-registry", ] [[package]] name = "iana-time-zone" -version = "0.1.63" +version = "0.1.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" +checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -5966,7 +6388,7 @@ dependencies = [ "js-sys", "log", "wasm-bindgen", - "windows-core 0.61.0", + "windows-core 0.62.2", ] [[package]] @@ -5980,9 +6402,9 @@ dependencies = [ [[package]] name = "icu_collections" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" +checksum = "4c6b649701667bbe825c3b7e6388cb521c23d88644678e83c0c4d0a621a34b43" dependencies = [ "displaydoc", "potential_utf", @@ -5993,9 +6415,9 @@ dependencies = [ [[package]] name = "icu_locale_core" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" +checksum = "edba7861004dd3714265b4db54a3c390e880ab658fec5f7db895fae2046b5bb6" dependencies = [ "displaydoc", "litemap", @@ -6006,11 +6428,10 @@ dependencies = [ [[package]] name = "icu_normalizer" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" +checksum = "5f6c8828b67bf8908d82127b2054ea1b4427ff0230ee9141c54251934ab1b599" dependencies = [ - "displaydoc", "icu_collections", "icu_normalizer_data", "icu_properties", @@ -6021,42 +6442,38 @@ dependencies = [ [[package]] name = "icu_normalizer_data" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" +checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a" [[package]] name = "icu_properties" -version = "2.0.0" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2549ca8c7241c82f59c80ba2a6f415d931c5b58d24fb8412caa1a1f02c49139a" +checksum = "020bfc02fe870ec3a66d93e677ccca0562506e5872c650f893269e08615d74ec" dependencies = [ - "displaydoc", "icu_collections", "icu_locale_core", "icu_properties_data", "icu_provider", - "potential_utf", "zerotrie", "zerovec", ] [[package]] name = "icu_properties_data" -version = "2.0.0" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8197e866e47b68f8f7d95249e172903bec06004b18b2937f1095d40a0c57de04" +checksum = "616c294cf8d725c6afcd8f55abc17c56464ef6211f9ed59cccffe534129c77af" [[package]] name = "icu_provider" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" +checksum = "85962cf0ce02e1e0a629cc34e7ca3e373ce20dda4c4d7294bbd0bf1fdb59e614" dependencies = [ "displaydoc", "icu_locale_core", - "stable_deref_trait", - "tinystr", "writeable", "yoke", "zerofrom", @@ -6064,6 +6481,12 @@ dependencies = [ "zerovec", ] +[[package]] +name = "id-arena" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d3067d79b975e8844ca9eb072e16b31c3c1c36928edf9c6789548c524d0d954" + [[package]] name = "ident_case" version = "1.0.1" @@ -6072,9 +6495,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "1.0.3" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" dependencies = [ "idna_adapter", "smallvec", @@ -6126,7 +6549,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -6137,9 +6560,9 @@ checksum = "4ee796ad498c8d9a1d68e477df8f754ed784ef875de1414ebdaf169f70a6a784" [[package]] name = "indenter" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" +checksum = "964de6e86d545b246d84badc0fef527924ace5134f30641c203ef52ba83f58d5" [[package]] name = "indexmap" @@ -6154,14 +6577,15 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.10.0" +version = "2.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661" +checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" dependencies = [ "equivalent", - "hashbrown 0.15.3", + "hashbrown 0.16.1", "rayon", "serde", + "serde_core", ] [[package]] @@ -6173,15 +6597,15 @@ dependencies = [ "console", "number_prefix", "portable-atomic", - "unicode-width 0.2.0", + "unicode-width 0.2.2", "web-time", ] [[package]] name = "inferno" -version = "0.12.3" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e96d2465363ed2d81857759fc864cf6bb7997f79327aec028d65bd7989393685" +checksum = "d35223c50fdd26419a4ccea2c73be68bd2b29a3d7d6123ffe101c17f4c20a52a" dependencies = [ "ahash", "clap", @@ -6189,7 +6613,7 @@ dependencies = [ "crossbeam-utils", "dashmap", "env_logger", - "indexmap 2.10.0", + "indexmap 2.13.0", "itoa", "log", "num-format", @@ -6219,9 +6643,9 @@ dependencies = [ [[package]] name = "inventory" -version = "0.3.20" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab08d7cd2c5897f2c949e5383ea7c7db03fb19130ffcfbf7eda795137ae3cb83" +checksum = "bc61209c082fbeb19919bee74b176221b27223e27b65d781eb91af24eb1fb46e" dependencies = [ "rustversion", ] @@ -6232,7 +6656,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" dependencies = [ - "socket2 0.5.9", + "socket2 0.5.10", "widestring", "windows-sys 0.48.0", "winreg", @@ -6244,6 +6668,16 @@ version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" +[[package]] +name = "iri-string" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c91338f0783edbd6195decb37bae672fd3b165faffb89bf7b9e6942f8b1a731a" +dependencies = [ + "memchr", + "serde", +] + [[package]] name = "is_ci" version = "1.2.0" @@ -6252,9 +6686,9 @@ checksum = "7655c9839580ee829dfacba1d1278c2b7883e50a277ff7541299489d6bdfdc45" [[package]] name = "is_terminal_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" [[package]] name = "itertools" @@ -6303,41 +6737,63 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.15" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" [[package]] name = "jiff" -version = "0.2.13" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f02000660d30638906021176af16b17498bd0d12813dbfe7b276d8bc7f3c0806" +checksum = "c867c356cc096b33f4981825ab281ecba3db0acefe60329f044c1789d94c6543" dependencies = [ "jiff-static", "log", "portable-atomic", "portable-atomic-util", - "serde", + "serde_core", ] [[package]] name = "jiff-static" -version = "0.2.13" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3c30758ddd7188629c6713fc45d1188af4f44c90582311d0c8d8c9907f60c48" +checksum = "f7946b4325269738f270bb55b3c19ab5c5040525f83fd625259422a9d25d9be5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] -name = "jobserver" -version = "0.1.33" +name = "jni" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" dependencies = [ - "getrandom 0.3.3", + "cesu8", + "cfg-if", + "combine", + "jni-sys", + "log", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", +] + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + +[[package]] +name = "jobserver" +version = "0.1.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" +dependencies = [ + "getrandom 0.3.4", "libc", ] @@ -6362,7 +6818,7 @@ dependencies = [ "chrono", "clap", "common", - "derive_more 2.0.1", + "derive_more 2.1.1", "dirs 5.0.1", "dory-pcs", "eyre", @@ -6385,7 +6841,7 @@ dependencies = [ "rand_core 0.6.4", "rand_distr", "rayon", - "reqwest 0.12.15", + "reqwest 0.12.28", "serde", "sha3", "strum 0.26.3", @@ -6396,7 +6852,7 @@ dependencies = [ "tracer", "tracing", "tracing-chrome", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -6416,7 +6872,7 @@ source = "git+https://github.com/a16z/jolt.git?rev=6dcd401#6dcd401375efbf1a0e700 dependencies = [ "ark-ec", "ark-ff 0.5.0", - "ark-secp256k1", + "ark-secp256k1 0.5.0 (git+https://github.com/a16z/arkworks-algebra?branch=dev%2Ftwist-shout)", "ark-serialize 0.5.0", "ctor 0.2.9", "num-bigint 0.4.6", @@ -6459,8 +6915,8 @@ name = "jolt-platform" version = "0.1.0" source = "git+https://github.com/a16z/jolt.git?rev=6dcd401#6dcd401375efbf1a0e70079088745bacd55d4e88" dependencies = [ - "getrandom 0.2.16", - "getrandom 0.3.3", + "getrandom 0.2.17", + "getrandom 0.3.4", "rand 0.8.5", ] @@ -6493,9 +6949,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.77" +version = "0.3.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "8c942ebf8e95485ca0d52d97da7c5a2c387d0e7f0ba4c35e93bfcaee045955b3" dependencies = [ "once_cell", "wasm-bindgen", @@ -6508,7 +6964,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6971da4d9c3aa03c3d8f3ff0f4155b534aad021292003895a469716b2a230378" dependencies = [ "base64 0.21.7", - "pem", + "pem 1.1.1", "ring 0.16.20", "serde", "serde_json", @@ -6546,18 +7002,18 @@ dependencies = [ [[package]] name = "keccak" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +checksum = "cb26cec98cce3a3d96cbb7bced3c4b16e3d13f27ec56dbd62cbc8f39cfb9d653" dependencies = [ "cpufeatures", ] [[package]] name = "keccak-asm" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "505d1856a39b200489082f90d897c3f07c455563880bc5952e38eabf731c83b6" +checksum = "b646a74e746cd25045aa0fd42f4f7f78aa6d119380182c7e63a5593c4ab8df6f" dependencies = [ "digest 0.10.7", "sha3-asm", @@ -6600,7 +7056,7 @@ dependencies = [ "regex-syntax", "sha3", "string_cache", - "term 1.2.0", + "term 1.2.1", "unicode-xid", "walkdir", ] @@ -6625,9 +7081,9 @@ dependencies = [ [[package]] name = "lazy-regex" -version = "3.4.1" +version = "3.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60c7310b93682b36b98fa7ea4de998d3463ccbebd94d935d6b48ba5b6ffa7126" +checksum = "6bae91019476d3ec7147de9aa291cadb6d870abf2f3015d2da73a90325ac1496" dependencies = [ "lazy-regex-proc_macros", "once_cell", @@ -6636,14 +7092,14 @@ dependencies = [ [[package]] name = "lazy-regex-proc_macros" -version = "3.4.1" +version = "3.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ba01db5ef81e17eb10a5e0f2109d1b3a3e29bac3070fdbd7d156bf7dbd206a1" +checksum = "4de9c1e1439d8b7b3061b2d209809f447ca33241733d9a3c01eabf2dc8d94358" dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -6661,10 +7117,21 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" +[[package]] +name = "leb128fmt" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" + [[package]] name = "lib-c" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/zisk.git?tag=v0.15.0#b3ca745b80423c8123dc24f19039865a5bc8b074" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" + +[[package]] +name = "lib-float" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" [[package]] name = "lib-rv32-asm" @@ -6682,15 +7149,15 @@ source = "git+https://github.com/shamatar/lib-rv32.git#869f82795f82314f17014a04f [[package]] name = "libc" -version = "0.2.175" +version = "0.2.182" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" +checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112" [[package]] name = "libffi" -version = "3.2.0" +version = "5.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce826c243048e3d5cec441799724de52e2d42f820468431fc3fceee2341871e2" +checksum = "0498fe5655f857803e156523e644dcdcdc3b3c7edda42ea2afdae2e09b2db87b" dependencies = [ "libc", "libffi-sys", @@ -6698,18 +7165,18 @@ dependencies = [ [[package]] name = "libffi-sys" -version = "2.3.0" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f36115160c57e8529781b4183c2bb51fdc1f6d6d1ed345591d84be7703befb3c" +checksum = "71d4f1d4ce15091955144350b75db16a96d4a63728500122706fb4d29a26afbb" dependencies = [ "cc", ] [[package]] name = "libgit2-sys" -version = "0.17.0+1.8.1" +version = "0.18.3+1.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10472326a8a6477c3c20a64547b0059e4b0d086869eee31e6d7da728a8eb7224" +checksum = "c9b3acc4b91781bb0b3386669d325163746af5f6e4f73e6d2d630e09a35f3487" dependencies = [ "cc", "libc", @@ -6729,28 +7196,28 @@ dependencies = [ [[package]] name = "libloading" -version = "0.8.7" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a793df0d7afeac54f95b471d3af7f0d4fb975699f972341a4b76988d49cdf0c" +checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ "cfg-if", - "windows-targets 0.53.3", + "windows-link 0.2.1", ] [[package]] name = "liblzma" -version = "0.4.3" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "272b875472a046e39ff7408374a5a050b112d2142211a0f54a295c0bd1c3c757" +checksum = "b6033b77c21d1f56deeae8014eb9fbe7bdf1765185a6c508b5ca82eeaed7f899" dependencies = [ "liblzma-sys", ] [[package]] name = "liblzma-sys" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01b9596486f6d60c3bbe644c0e1be1aa6ccc472ad630fe8927b456973d7cb736" +checksum = "9f2db66f3268487b5033077f266da6777d057949b8f93c8ad82e441df25e6186" dependencies = [ "cc", "libc", @@ -6759,25 +7226,25 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libredox" -version = "0.1.3" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" +checksum = "3d0b95e02c851351f877147b7deea7b1afb1df71b63aa5f8270716e0c5720616" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "libc", ] [[package]] name = "libz-sys" -version = "1.1.22" +version = "1.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b70e7a7df205e92a1a4cd9aaae7898dac0aa555503cc0a649494d0d60e7651d" +checksum = "15d118bbf3771060e7311cc7bb0545b01d08a8b4a7de949198dec1fa0ca1c0f7" dependencies = [ "cc", "libc", @@ -6805,15 +7272,15 @@ checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "linux-raw-sys" -version = "0.9.4" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" [[package]] name = "litemap" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" +checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77" [[package]] name = "lock_api" @@ -6832,9 +7299,9 @@ checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" [[package]] name = "log" -version = "0.4.27" +version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" [[package]] name = "loom" @@ -6846,7 +7313,7 @@ dependencies = [ "generator", "scoped-tls", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -6855,7 +7322,7 @@ version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" dependencies = [ - "hashbrown 0.15.3", + "hashbrown 0.15.5", ] [[package]] @@ -6893,7 +7360,7 @@ checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -7010,11 +7477,44 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "mem-common" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "clap", + "fields", + "num-bigint 0.4.6", + "num-traits", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "static_assertions", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "mem-planner-cpp" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "mem-common", + "proofman-common", + "proofman-util", + "tracing", + "zisk-common", + "zisk-pil", +] + [[package]] name = "memchr" -version = "2.7.4" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" [[package]] name = "memfd" @@ -7022,7 +7522,7 @@ version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad38eb12aea514a0466ea40a80fd8cc83637065948eb4a426e4aa46261175227" dependencies = [ - "rustix 1.0.7", + "rustix 1.1.3", ] [[package]] @@ -7068,7 +7568,7 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ecfd3296f8c56b7c1f6fbac3c71cefa9d78ce009850c45000015f206dc7fa21" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "block", "core-graphics-types", "foreign-types 0.5.0", @@ -7093,7 +7593,7 @@ version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62a6a1f7141f1d9bc7a886b87536bbfc97752e08b369e1e0453a9acfab5f5da4" dependencies = [ - "indexmap 2.10.0", + "indexmap 2.13.0", "itoa", "lockfree-object-pool", "metrics", @@ -7101,7 +7601,7 @@ dependencies = [ "once_cell", "tracing", "tracing-core", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -7114,7 +7614,7 @@ dependencies = [ "crossbeam-epoch", "crossbeam-utils", "hashbrown 0.14.5", - "indexmap 2.10.0", + "indexmap 2.13.0", "metrics", "num_cpus", "ordered-float", @@ -7130,7 +7630,7 @@ source = "git+https://github.com/0xPolygonMiden/miden-vm.git?tag=v0.20.4#2e66bd2 dependencies = [ "miden-core", "miden-utils-indexing", - "thiserror 2.0.12", + "thiserror 2.0.18", "winter-air", "winter-prover", ] @@ -7145,7 +7645,7 @@ dependencies = [ "miden-core", "miden-mast-package", "smallvec", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -7164,9 +7664,9 @@ dependencies = [ "proptest", "regex", "rustc_version 0.4.1", - "semver 1.0.26", + "semver 1.0.27", "smallvec", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -7174,7 +7674,7 @@ name = "miden-core" version = "0.20.4" source = "git+https://github.com/0xPolygonMiden/miden-vm.git?tag=v0.20.4#2e66bd28d4b0f6cc785c712323a77cfe8fd7678e" dependencies = [ - "derive_more 2.0.1", + "derive_more 2.1.1", "itertools 0.14.0", "miden-crypto", "miden-debug-types", @@ -7183,7 +7683,7 @@ dependencies = [ "miden-utils-indexing", "num-derive", "num-traits", - "thiserror 2.0.12", + "thiserror 2.0.18", "winter-math", "winter-utils", ] @@ -7201,14 +7701,14 @@ dependencies = [ "miden-processor", "miden-utils-sync", "sha2", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "miden-crypto" -version = "0.19.2" +version = "0.19.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc7981c1d907bb9864e24f2bd6304c4fca03a41fc4606c09edd6a7f5a8fc80fc" +checksum = "6e28b6e110f339c2edc2760a8cb94863f0a055ee658a49bc90c8560eff2feef4" dependencies = [ "blake3", "cc", @@ -7224,12 +7724,12 @@ dependencies = [ "num-complex", "rand 0.9.2", "rand_chacha 0.9.0", - "rand_core 0.9.3", + "rand_core 0.9.5", "rand_hc", "sha2", "sha3", "subtle", - "thiserror 2.0.12", + "thiserror 2.0.18", "winter-crypto", "winter-math", "winter-utils", @@ -7238,12 +7738,12 @@ dependencies = [ [[package]] name = "miden-crypto-derive" -version = "0.19.2" +version = "0.19.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83479e7af490784c6f2d2e02cec5210fd6e5bc6ce3d4427734e36a773bca72d2" +checksum = "f40e95b9c7c99ed6bbf073d9e02721d812dedd2c195019c0a0e0a3dbb9cbf034" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -7259,8 +7759,8 @@ dependencies = [ "miden-utils-sync", "paste", "serde", - "serde_spanned 1.0.0", - "thiserror 2.0.12", + "serde_spanned 1.0.4", + "thiserror 2.0.18", ] [[package]] @@ -7277,10 +7777,10 @@ name = "miden-mast-package" version = "0.20.4" source = "git+https://github.com/0xPolygonMiden/miden-vm.git?tag=v0.20.4#2e66bd28d4b0f6cc785c712323a77cfe8fd7678e" dependencies = [ - "derive_more 2.0.1", + "derive_more 2.1.1", "miden-assembly-syntax", "miden-core", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -7306,10 +7806,10 @@ dependencies = [ "supports-color", "supports-hyperlinks", "supports-unicode", - "syn 2.0.101", + "syn 2.0.116", "terminal_size", "textwrap", - "thiserror 2.0.12", + "thiserror 2.0.18", "trybuild", "unicode-width 0.1.14", ] @@ -7322,7 +7822,7 @@ checksum = "86a905f3ea65634dd4d1041a4f0fd0a3e77aa4118341d265af1a94339182222f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -7338,7 +7838,7 @@ dependencies = [ "miden-utils-indexing", "paste", "rayon", - "thiserror 2.0.12", + "thiserror 2.0.18", "tokio", "tracing", "winter-prover", @@ -7384,7 +7884,7 @@ name = "miden-utils-indexing" version = "0.20.4" source = "git+https://github.com/0xPolygonMiden/miden-vm.git?tag=v0.20.4#2e66bd28d4b0f6cc785c712323a77cfe8fd7678e" dependencies = [ - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -7404,20 +7904,20 @@ source = "git+https://github.com/0xPolygonMiden/miden-vm.git?tag=v0.20.4#2e66bd2 dependencies = [ "miden-air", "miden-core", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", "winter-verifier", ] [[package]] name = "midenc-hir-type" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7798671ffbf6596de00619a9abaec67dc26965b891328c9d65c4cb6007597d50" +checksum = "9d4cfab04baffdda3fb9eafa5f873604059b89a1699aa95e4f1057397a69f0b5" dependencies = [ "miden-formatting", "smallvec", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -7434,29 +7934,30 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.8" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" dependencies = [ "adler2", + "simd-adler32", ] [[package]] name = "mio" -version = "1.0.3" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" +checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc" dependencies = [ "libc", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.52.0", + "wasi", + "windows-sys 0.61.2", ] [[package]] name = "mpi" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677762a4bde2c81158fc566a69b97d11b0c3358694e64f4f922ac5189be311cc" +checksum = "41457b69d35846af2fec1877a4f3b866a72b6ab2c9500218f115e65e10993b21" dependencies = [ "build-probe-mpi", "conv", @@ -7464,7 +7965,7 @@ dependencies = [ "mpi-sys", "once_cell", "smallvec", - "thiserror 1.0.69", + "thiserror 2.0.18", ] [[package]] @@ -7478,6 +7979,16 @@ dependencies = [ "cc", ] +[[package]] +name = "msvc-demangler" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbeff6bd154a309b2ada5639b2661ca6ae4599b34e8487dc276d2cd637da2d76" +dependencies = [ + "bitflags 2.11.0", + "itoa", +] + [[package]] name = "mti" version = "1.1.1" @@ -7517,7 +8028,18 @@ checksum = "4568f25ccbd45ab5d5603dc34318c1ec56b117531781260002151b8530a9f931" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", +] + +[[package]] +name = "named-sem" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0875efe1a57a20d0cee7034499aa9d764b3c7525563fa3c3f16a2ccf01ddfa04" +dependencies = [ + "libc", + "thiserror 2.0.18", + "windows 0.61.3", ] [[package]] @@ -7526,22 +8048,22 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", ] [[package]] name = "native-tls" -version = "0.2.14" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" +checksum = "9d5d26952a508f321b4d3d2e80e78fc2603eaefcdf0c30783867f19586518bdc" dependencies = [ "libc", "log", "openssl", - "openssl-probe", + "openssl-probe 0.2.1", "openssl-sys", "schannel", - "security-framework 2.11.1", + "security-framework 3.6.0", "security-framework-sys", "tempfile", ] @@ -7575,7 +8097,7 @@ source = "git+https://github.com/nexus-xyz/nexus-zkvm.git?tag=v0.3.6#f2ad12652c3 dependencies = [ "rrs-lib 0.1.0 (git+https://github.com/GregAC/rrs/)", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", "variant_count", ] @@ -7594,12 +8116,12 @@ version = "0.1.0" source = "git+https://github.com/nexus-xyz/nexus-zkvm.git?tag=v0.3.6#f2ad12652c39dc516a116447a53f8557f64a7f7d" dependencies = [ "nexus-common", - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", "serde", "serde_json", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -7635,10 +8157,10 @@ name = "nexus-rt-macros" version = "0.1.0" source = "git+https://github.com/nexus-xyz/nexus-zkvm.git?tag=v0.3.6#f2ad12652c39dc516a116447a53f8557f64a7f7d" dependencies = [ - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -7654,7 +8176,7 @@ dependencies = [ "postcard", "serde", "thiserror 1.0.69", - "uuid 1.17.0", + "uuid 1.21.0", ] [[package]] @@ -7663,7 +8185,7 @@ version = "0.3.6" source = "git+https://github.com/nexus-xyz/nexus-zkvm.git?tag=v0.3.6#f2ad12652c39dc516a116447a53f8557f64a7f7d" dependencies = [ "nexus-profiler", - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", "syn 1.0.109", @@ -7687,10 +8209,10 @@ dependencies = [ "serde", "serde_arrays 0.2.0", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", "tiny-keccak", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "tracing-test", "variant_count", ] @@ -7718,7 +8240,7 @@ name = "nexus-vm-prover-macros" version = "0.3.6" source = "git+https://github.com/nexus-xyz/nexus-zkvm.git?tag=v0.3.6#f2ad12652c39dc516a116447a53f8557f64a7f7d" dependencies = [ - "convert_case", + "convert_case 0.7.1", "proc-macro2", "quote", "syn 1.0.109", @@ -7750,7 +8272,7 @@ version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "cfg-if", "cfg_aliases", "libc", @@ -7785,9 +8307,9 @@ source = "git+https://github.com/matter-labs/zksync-airbender?tag=v0.5.2#b93c285 [[package]] name = "ntapi" -version = "0.4.1" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +checksum = "c3b335231dfd352ffb0f8017f3b6027a4917f7df785ea2143d8af2adc66980ae" dependencies = [ "winapi", ] @@ -7840,11 +8362,10 @@ dependencies = [ [[package]] name = "num-bigint-dig" -version = "0.8.4" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151" +checksum = "e661dda6640fad38e827a6d4a310ff4763082116fe217f279885c97f511bb0b7" dependencies = [ - "byteorder", "lazy_static", "libm", "num-integer", @@ -7866,9 +8387,9 @@ dependencies = [ [[package]] name = "num-conv" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" +checksum = "cf97ec579c3c42f953ef76dbf8d55ac91fb219dde70e49aa4a6b7d74e9919050" [[package]] name = "num-derive" @@ -7878,7 +8399,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -7995,11 +8516,11 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a973b4e44ce6cad84ce69d797acf9a044532e4184c4f267913d1b546a0727b7a" +checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c" dependencies = [ - "num_enum_derive 0.7.4", + "num_enum_derive 0.7.5", "rustversion", ] @@ -8017,14 +8538,14 @@ dependencies = [ [[package]] name = "num_enum_derive" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d" +checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" dependencies = [ - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8065,13 +8586,14 @@ dependencies = [ [[package]] name = "nybbles" -version = "0.3.4" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8983bb634df7248924ee0c4c3a749609b5abcb082c28fffe3254b3eb3602b307" +checksum = "0d49ff0c0d00d4a502b39df9af3a525e1efeb14b9dabb5bb83335284c1309210" dependencies = [ "alloy-rlp", - "const-hex", + "cfg-if", "proptest", + "ruint", "serde", "smallvec", ] @@ -8085,15 +8607,30 @@ dependencies = [ "malloc_buf", ] +[[package]] +name = "objc2" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7c2599ce0ec54857b29ce62166b0ed9b4f6f1a70ccc9a71165b6154caca8c05" +dependencies = [ + "objc2-encode", +] + [[package]] name = "objc2-core-foundation" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", ] +[[package]] +name = "objc2-encode" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33" + [[package]] name = "objc2-io-kit" version = "0.3.2" @@ -8123,8 +8660,8 @@ checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ "crc32fast", "flate2", - "hashbrown 0.15.3", - "indexmap 2.10.0", + "hashbrown 0.15.5", + "indexmap 2.13.0", "memchr", "ruzstd 0.7.3", ] @@ -8137,7 +8674,16 @@ checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe" dependencies = [ "flate2", "memchr", - "ruzstd 0.8.1", + "ruzstd 0.8.2", +] + +[[package]] +name = "oid-registry" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12f40cff3dde1b6087cc5d5f5d4d65712f34016a03ed60e9c08dcc392736b5b7" +dependencies = [ + "asn1-rs", ] [[package]] @@ -8149,6 +8695,12 @@ dependencies = [ "portable-atomic", ] +[[package]] +name = "once_cell_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" + [[package]] name = "opaque-debug" version = "0.3.1" @@ -8182,11 +8734,11 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.74" +version = "0.10.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24ad14dd45412269e1a30f52ad8f0664f0f4f4a89ee8fe28c3b3527021ebb654" +checksum = "08838db121398ad17ab8531ce9de97b244589089e290a384c900cb9ff7434328" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "cfg-if", "foreign-types 0.3.2", "libc", @@ -8203,7 +8755,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8213,10 +8765,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] -name = "openssl-sys" -version = "0.9.110" +name = "openssl-probe" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a9f0075ba3c21b09f8e8b2026584b1d18d49388648f2fbbf3c97ea8deced8e2" +checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" + +[[package]] +name = "openssl-sys" +version = "0.9.111" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82cab2d520aa75e3c58898289429321eb788c3106963d0dc886ec7a5f4adc321" dependencies = [ "cc", "libc", @@ -8244,8 +8802,8 @@ version = "1.4.3" source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.3#e8feb93717200e6f334b4f368dd2d0a143f69436" dependencies = [ "bytemuck", - "getrandom 0.2.16", - "getrandom 0.3.3", + "getrandom 0.2.17", + "getrandom 0.3.4", "num-bigint 0.4.6", "openvm-custom-insn", "openvm-platform", @@ -8293,7 +8851,7 @@ source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.3#e8feb93717200e dependencies = [ "openvm-macros-common", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8321,7 +8879,7 @@ dependencies = [ "num-prime", "openvm-macros-common", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8417,7 +8975,7 @@ dependencies = [ "getset", "itertools 0.14.0", "libc", - "libloading 0.8.7", + "libloading 0.8.9", "memmap2", "openvm-circuit-derive", "openvm-circuit-primitives", @@ -8450,7 +9008,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8478,7 +9036,7 @@ source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.3#e8feb93717200e dependencies = [ "itertools 0.14.0", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8558,7 +9116,7 @@ source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.3#e8feb93717200e dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8620,7 +9178,7 @@ source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.3#e8feb93717200e dependencies = [ "openvm-macros-common", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8660,7 +9218,7 @@ version = "1.4.3" source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.3#e8feb93717200e6f334b4f368dd2d0a143f69436" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8718,7 +9276,7 @@ name = "openvm-macros-common" version = "1.4.3" source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.3#e8feb93717200e6f334b4f368dd2d0a143f69436" dependencies = [ - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -8801,7 +9359,7 @@ version = "1.4.3" source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.3#e8feb93717200e6f334b4f368dd2d0a143f69436" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -9179,7 +9737,7 @@ dependencies = [ "toml 0.8.23", "tracing", "tracing-forest", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "zkhash 0.2.0 (git+https://github.com/HorizenLabs/poseidon2.git?rev=bb476b9)", ] @@ -9220,9 +9778,9 @@ checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" [[package]] name = "owo-colors" -version = "4.2.2" +version = "4.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48dd4f4a2c8405440fd0462561f0e5806bd0f77e86f51c761481bdd4018b545e" +checksum = "9c6901729fa79e91a0913333229e9ca5dc725089d1c363b2f4b4760709dc4a52" [[package]] name = "p256" @@ -10532,9 +11090,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.7.4" +version = "3.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9fde3d0718baf5bc92f577d652001da0f8d54cd03a7974e118d04fc888dc23d" +checksum = "799781ae679d79a948e13d4824a40970bfa500058d245760dd857301059810fa" dependencies = [ "arrayvec", "bitvec", @@ -10548,14 +11106,14 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.7.4" +version = "3.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581c837bb6b9541ce7faa9377c20616e4fb7650f6b0f68bc93c827ee504fb7b3" +checksum = "34b4653168b563151153c9e4c08ebed57fb8262bebfa79711552fa983c623e7a" dependencies = [ - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -10630,6 +11188,12 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" +[[package]] +name = "path-clean" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17359afc20d7ab31fdb42bb844c8b3bb1dabd7dcf7e68428492da7f16966fcef" + [[package]] name = "path-slash" version = "0.2.1" @@ -10673,6 +11237,16 @@ dependencies = [ "base64 0.13.1", ] +[[package]] +name = "pem" +version = "3.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d30c53c26bc5b31a98cd02d20f25a7c8567146caf63ed593a9d87b2775291be" +dependencies = [ + "base64 0.22.1", + "serde_core", +] + [[package]] name = "pem-rfc7468" version = "0.7.0" @@ -10684,18 +11258,17 @@ dependencies = [ [[package]] name = "percent-encoding" -version = "2.3.1" +version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "pest" -version = "2.8.0" +version = "2.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6" +checksum = "e0848c601009d37dfa3430c4666e147e49cdcf1b92ecd3e63657d8a5f19da662" dependencies = [ "memchr", - "thiserror 2.0.12", "ucd-trie", ] @@ -10706,7 +11279,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset 0.4.2", - "indexmap 2.10.0", + "indexmap 2.13.0", ] [[package]] @@ -10716,7 +11289,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" dependencies = [ "fixedbitset 0.5.7", - "indexmap 2.10.0", + "indexmap 2.13.0", ] [[package]] @@ -10726,8 +11299,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455" dependencies = [ "fixedbitset 0.5.7", - "hashbrown 0.15.3", - "indexmap 2.10.0", + "hashbrown 0.15.5", + "indexmap 2.13.0", ] [[package]] @@ -10770,7 +11343,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -10810,7 +11383,7 @@ dependencies = [ "bincode 1.3.3", "cfg-if", "env_logger", - "getrandom 0.2.16", + "getrandom 0.2.17", "hex", "lazy_static", "libm", @@ -10847,7 +11420,7 @@ dependencies = [ "curve25519-dalek", "dashmap", "dashu", - "derive_more 2.0.1", + "derive_more 2.1.1", "elf", "elliptic-curve", "eyre", @@ -10907,7 +11480,7 @@ dependencies = [ "tiny-keccak", "tracing", "tracing-forest", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "typenum", "vec_map", "zkhash 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -10915,8 +11488,8 @@ dependencies = [ [[package]] name = "pil-std-lib" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ "colored", "fields", @@ -10926,6 +11499,9 @@ dependencies = [ "proofman-hints", "proofman-util", "rayon", + "rustc-hash 2.1.1", + "serde", + "serde_json", "tracing", "witness", ] @@ -10947,7 +11523,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -11002,15 +11578,15 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.11.0" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" +checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" [[package]] name = "portable-atomic-util" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" +checksum = "7a9db96d7fa8782dd8c15ce32ffe8680bbd1e978a43bf51a34d39483540495f5" dependencies = [ "portable-atomic", ] @@ -11028,24 +11604,23 @@ dependencies = [ [[package]] name = "postcard" -version = "1.1.1" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "170a2601f67cc9dba8edd8c4870b15f71a6a2dc196daec8c83f72b59dff628a8" +checksum = "6764c3b5dd454e283a30e6dfe78e9b31096d9e32036b5d1eaac7a6119ccb9a24" dependencies = [ "cobs", "crc", "embedded-io 0.4.0", "embedded-io 0.6.1", "heapless 0.7.17", - "paste", "serde", ] [[package]] name = "potential_utf" -version = "0.1.2" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585" +checksum = "b73949432f5e2a09657003c25bca5e19a0e9c84f8058ca374f49e0ebe605af77" dependencies = [ "zerovec", ] @@ -11089,6 +11664,233 @@ dependencies = [ "zerocopy", ] +[[package]] +name = "precomp-arith-eq" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "ark-bn254", + "ark-ff 0.5.0", + "ark-secp256k1 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ark-secp256r1", + "ark-std 0.5.0", + "fields", + "lazy_static", + "lib-c", + "mem-common", + "num-bigint 0.4.6", + "num-traits", + "path-clean", + "pil-std-lib", + "precompiles-common", + "precompiles-helpers", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "regex", + "rustfmt-wrapper", + "serde", + "serde_json", + "sm-mem", + "tracing", + "typenum", + "witness", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "precomp-arith-eq-384" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "ark-bls12-381", + "ark-bn254", + "ark-ff 0.5.0", + "ark-secp256k1 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ark-std 0.5.0", + "fields", + "lazy_static", + "lib-c", + "mem-common", + "num-bigint 0.4.6", + "num-traits", + "path-clean", + "pil-std-lib", + "precomp-arith-eq", + "precompiles-common", + "precompiles-helpers", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "regex", + "rustfmt-wrapper", + "serde", + "serde_json", + "tracing", + "typenum", + "witness", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "precomp-big-int" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "generic-array 0.14.7", + "lib-c", + "mem-common", + "pil-std-lib", + "precompiles-common", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "sm-mem", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "precomp-dma" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "generic-array 0.14.7", + "lib-c", + "mem-common", + "pil-std-lib", + "precompiles-common", + "precompiles-helpers", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "sm-mem", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "precomp-keccakf" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "circuit", + "fields", + "path-clean", + "pil-std-lib", + "precompiles-common", + "precompiles-helpers", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "tiny-keccak", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "precomp-poseidon2" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "mem-common", + "pil-std-lib", + "precompiles-common", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "sha2", + "sm-mem", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "precomp-sha256f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "mem-common", + "pil-std-lib", + "precompiles-common", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "sm-mem", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "precompiles-common" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "mem-common", + "sm-mem", + "zisk-common", + "zisk-core", +] + +[[package]] +name = "precompiles-helpers" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "ark-bls12-381", + "ark-bn254", + "ark-ff 0.5.0", + "ark-secp256k1 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ark-secp256r1", + "ark-std 0.5.0", + "cfg-if", + "circuit", + "lib-c", + "num-bigint 0.4.6", + "num-traits", +] + +[[package]] +name = "precompiles-hints" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "anyhow", + "lib-c", + "precompiles-helpers", + "rayon", + "rustls 0.23.36", + "tracing", + "zisk-common", + "ziskos-hints", +] + [[package]] name = "precomputed-hash" version = "0.1.1" @@ -11107,12 +11909,12 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.32" +version = "0.2.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "664ec5419c51e34154eec046ebcba56312d5a2fc3b09a06da188e1ad21afadf6" +checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -11150,11 +11952,11 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" +checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" dependencies = [ - "toml_edit 0.22.27", + "toml_edit 0.23.10+spec-1.0.0", ] [[package]] @@ -11176,23 +11978,24 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "proc-macro2" -version = "1.0.95" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" dependencies = [ "unicode-ident", ] [[package]] name = "proofman" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ + "bincode 1.3.3", "blake3", "borsh", "bytemuck", @@ -11202,7 +12005,7 @@ dependencies = [ "csv", "curves", "fields", - "libloading 0.8.7", + "libloading 0.8.9", "mpi", "num-bigint 0.4.6", "num-traits", @@ -11225,19 +12028,20 @@ dependencies = [ [[package]] name = "proofman-common" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ + "bincode 1.3.3", "borsh", + "bytemuck", "colored", "crossbeam-channel", "crossbeam-queue", "csv", "env", "fields", - "indexmap 2.10.0", "lazy_static", - "libloading 0.8.7", + "libloading 0.8.9", "mpi", "num_cpus", "proofman-macros", @@ -11248,18 +12052,19 @@ dependencies = [ "serde_json", "sysinfo 0.35.2", "tabled", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "yansi 1.0.1", ] [[package]] name = "proofman-hints" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ "fields", + "itoa", "proofman-common", "proofman-starks-lib-c", "proofman-util", @@ -11268,19 +12073,18 @@ dependencies = [ [[package]] name = "proofman-macros" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ "proc-macro2", "quote", - "rayon", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "proofman-starks-lib-c" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ "crossbeam-channel", "tracing", @@ -11288,35 +12092,37 @@ dependencies = [ [[package]] name = "proofman-util" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ + "bincode 1.3.3", + "bytemuck", "colored", - "fields", + "serde", "sysinfo 0.35.2", - "tracing", ] [[package]] name = "proofman-verifier" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ "bytemuck", "fields", + "proofman-util", "rayon", "tracing", ] [[package]] name = "proptest" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bee689443a2bd0a16ab0348b52ee43e3b2d1b1f931c8aa5c9f8de4c86fbe8c40" +checksum = "37566cb3fdacef14c0737f9546df7cfeadbfbc9fef10991038bf5015d0c80532" dependencies = [ "bit-set 0.8.0", "bit-vec 0.8.0", - "bitflags 2.9.0", + "bitflags 2.11.0", "num-traits", "rand 0.9.2", "rand_chacha 0.9.0", @@ -11402,11 +12208,11 @@ dependencies = [ "multimap 0.10.1", "once_cell", "petgraph 0.6.5", - "prettyplease 0.2.32", + "prettyplease 0.2.37", "prost 0.12.6", "prost-types 0.12.6", "regex", - "syn 2.0.101", + "syn 2.0.116", "tempfile", ] @@ -11422,11 +12228,11 @@ dependencies = [ "multimap 0.10.1", "once_cell", "petgraph 0.7.1", - "prettyplease 0.2.32", + "prettyplease 0.2.37", "prost 0.13.5", "prost-types 0.13.5", "regex", - "syn 2.0.101", + "syn 2.0.116", "tempfile", ] @@ -11441,13 +12247,13 @@ dependencies = [ "log", "multimap 0.10.1", "petgraph 0.8.3", - "prettyplease 0.2.32", + "prettyplease 0.2.37", "prost 0.14.3", "prost-types 0.14.3", "pulldown-cmark", "pulldown-cmark-to-cmark", "regex", - "syn 2.0.101", + "syn 2.0.116", "tempfile", ] @@ -11474,7 +12280,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -11487,7 +12293,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -11500,7 +12306,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -11560,7 +12366,7 @@ dependencies = [ "seq-macro", "serde", "serde_json", - "syn 2.0.101", + "syn 2.0.116", "trace_holder", "transcript", "unroll", @@ -11584,7 +12390,7 @@ checksum = "7347867d0a7e1208d93b46767be83e2b8f978c3dad35f775ac8d8847551d6fe1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -11607,7 +12413,7 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e8bbe1a966bd2f362681a44f6edce3c2310ac21e4d5067a6e7ec396297a6ea0" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "memchr", "unicase", ] @@ -11623,15 +12429,15 @@ dependencies = [ [[package]] name = "quanta" -version = "0.12.5" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bd1fe6824cea6538803de3ff1bc0cf3949024db3d43c9643024bfb33a807c0e" +checksum = "f3ab5a9d756f0d97bdc89019bd2e4ea098cf9cde50ee7564dde6b81ccc8f06c7" dependencies = [ "crossbeam-utils", "libc", "once_cell", "raw-cpuid", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "web-sys", "winapi", ] @@ -11644,18 +12450,18 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quick-xml" -version = "0.37.5" +version = "0.38.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb" +checksum = "b66c2058c55a409d601666cffe35f04333cf1013010882cec174a7467cd4e21c" dependencies = [ "memchr", ] [[package]] name = "quinn" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "626214629cda6781b6dc1d316ba307189c85ba657213ce642d9c77670f8202c8" +checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20" dependencies = [ "bytes", "cfg_aliases", @@ -11663,9 +12469,9 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash 2.1.1", - "rustls 0.23.27", - "socket2 0.5.9", - "thiserror 2.0.12", + "rustls 0.23.36", + "socket2 0.6.2", + "thiserror 2.0.18", "tokio", "tracing", "web-time", @@ -11673,20 +12479,22 @@ dependencies = [ [[package]] name = "quinn-proto" -version = "0.11.12" +version = "0.11.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49df843a9161c85bb8aae55f101bc0bac8bcafd637a620d9122fd7e0b2f7422e" +checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31" dependencies = [ "bytes", - "getrandom 0.3.3", + "fastbloom", + "getrandom 0.3.4", "lru-slab", "rand 0.9.2", "ring 0.17.14", "rustc-hash 2.1.1", - "rustls 0.23.27", + "rustls 0.23.36", "rustls-pki-types", + "rustls-platform-verifier", "slab", - "thiserror 2.0.12", + "thiserror 2.0.18", "tinyvec", "tracing", "web-time", @@ -11694,32 +12502,32 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.12" +version = "0.5.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee4e529991f949c5e25755532370b8af5d114acae52326361d68d47af64aa842" +checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd" dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2 0.5.9", + "socket2 0.6.2", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] name = "quote" -version = "1.0.40" +version = "1.0.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4" dependencies = [ "proc-macro2", ] [[package]] name = "r-efi" -version = "5.2.0" +version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" [[package]] name = "radium" @@ -11765,7 +12573,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" dependencies = [ "rand_chacha 0.9.0", - "rand_core 0.9.3", + "rand_core 0.9.5", "serde", ] @@ -11786,7 +12594,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" dependencies = [ "ppv-lite86", - "rand_core 0.9.3", + "rand_core 0.9.5", ] [[package]] @@ -11795,16 +12603,16 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", ] [[package]] name = "rand_core" -version = "0.9.3" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" +checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" dependencies = [ - "getrandom 0.3.3", + "getrandom 0.3.4", "serde", ] @@ -11842,7 +12650,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "513962919efc330f829edb2535844d1b912b0fbe2ca165d613e4e8788bb05a5a" dependencies = [ - "rand_core 0.9.3", + "rand_core 0.9.5", ] [[package]] @@ -11859,20 +12667,29 @@ dependencies = [ [[package]] name = "rangemap" -version = "1.6.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93e7e49bb0bf967717f7bd674458b3d6b0c5f48ec7e3038166026a69fc22223" +checksum = "973443cf09a9c8656b574a866ab68dfa19f0867d0340648c7d2f6a71b8a8ea68" dependencies = [ "serde", ] [[package]] -name = "raw-cpuid" -version = "11.5.0" +name = "rapidhash" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6df7ab838ed27997ba19a4664507e6f82b41fe6e20be42929332156e5e85146" +checksum = "111325c42c4bafae99e777cd77b40dea9a2b30c69e9d8c74b6eccd7fba4337de" dependencies = [ - "bitflags 2.9.0", + "rustversion", +] + +[[package]] +name = "raw-cpuid" +version = "11.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "498cd0dc59d73224351ee52a95fee0f1a617a2eae0e7d9d720cc622c73a54186" +dependencies = [ + "bitflags 2.11.0", ] [[package]] @@ -11911,12 +12728,26 @@ dependencies = [ ] [[package]] -name = "redox_syscall" -version = "0.5.12" +name = "rcgen" +version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "928fca9cf2aa042393a8325b9ead81d2f0df4cb12e1e24cef072922ccd99c5af" +checksum = "10b99e0098aa4082912d4c649628623db6aba77335e4f4569ff5083a6448b32e" dependencies = [ - "bitflags 2.9.0", + "pem 3.0.6", + "ring 0.17.14", + "rustls-pki-types", + "time", + "x509-parser", + "yasna", +] + +[[package]] +name = "redox_syscall" +version = "0.5.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" +dependencies = [ + "bitflags 2.11.0", ] [[package]] @@ -11925,7 +12756,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", "libredox", "thiserror 1.0.69", ] @@ -11936,9 +12767,9 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", "libredox", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -11966,10 +12797,30 @@ dependencies = [ ] [[package]] -name = "regex" -version = "1.12.2" +name = "ref-cast" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4" +checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.116", +] + +[[package]] +name = "regex" +version = "1.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" dependencies = [ "aho-corasick", "memchr", @@ -11979,9 +12830,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.13" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" dependencies = [ "aho-corasick", "memchr", @@ -11990,15 +12841,15 @@ dependencies = [ [[package]] name = "regex-lite" -version = "0.1.7" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "943f41321c63ef1c92fd763bfe054d2668f7f225a5c29f0105903dc2fc04ba30" +checksum = "cab834c73d247e67f4fae452806d17d3c7501756d98c8808d7c9c7aa7d18f973" [[package]] name = "regex-syntax" -version = "0.8.5" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" +checksum = "a96887878f22d7bad8a3b6dc5b7440e0ada9a245242924394987b21cf2210a4c" [[package]] name = "rend" @@ -12064,9 +12915,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.15" +version = "0.12.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d19c46a6fdd48bc4dab94b6103fccc55d34c67cc0ad04653aad4ea2a07cd7bbb" +checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" dependencies = [ "base64 0.22.1", "bytes", @@ -12074,44 +12925,40 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2 0.4.10", - "http 1.3.1", + "h2 0.4.13", + "http 1.4.0", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", - "hyper-rustls 0.27.5", + "hyper 1.8.1", + "hyper-rustls 0.27.7", "hyper-tls", "hyper-util", - "ipnet", "js-sys", "log", "mime", "native-tls", - "once_cell", "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.27", - "rustls-pemfile 2.2.0", + "rustls 0.23.36", "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", "sync_wrapper 1.0.2", - "system-configuration 0.6.1", "tokio", "tokio-native-tls", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.4", "tokio-util", - "tower 0.5.2", + "tower 0.5.3", + "tower-http", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "wasm-streams", "web-sys", - "webpki-roots 0.26.11", - "windows-registry", + "webpki-roots 1.0.6", ] [[package]] @@ -12122,8 +12969,8 @@ checksum = "562ceb5a604d3f7c885a792d42c199fd8af239d0a51b2fa6a78aafa092452b04" dependencies = [ "anyhow", "async-trait", - "http 1.3.1", - "reqwest 0.12.15", + "http 1.4.0", + "reqwest 0.12.28", "serde", "thiserror 1.0.69", "tower-service", @@ -12131,9 +12978,9 @@ dependencies = [ [[package]] name = "resolv-conf" -version = "0.7.4" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95325155c684b1c89f7765e30bc1c42e4a6da51ca513615660cb8a62ef9a88e3" +checksum = "1e061d1b48cb8d38042de4ae0a7a6401009d6143dc80d2e2d6f31f0bdd6470c7" [[package]] name = "rfc6979" @@ -12156,19 +13003,19 @@ dependencies = [ [[package]] name = "rhai" -version = "1.23.4" +version = "1.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "527390cc333a8d2cd8237890e15c36518c26f8b54c903d86fc59f42f08d25594" +checksum = "1f9ef5dabe4c0b43d8f1187dc6beb67b53fe607fff7e30c5eb7f71b814b8c2c1" dependencies = [ "ahash", - "bitflags 2.9.0", - "instant", + "bitflags 2.11.0", "num-traits", "once_cell", "rhai_codegen", "smallvec", "smartstring", "thin-vec", + "web-time", ] [[package]] @@ -12179,7 +13026,7 @@ checksum = "d4322a2a4e8cf30771dd9f27f7f37ca9ac8fe812dddd811096a98483080dabe6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -12205,7 +13052,7 @@ checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" dependencies = [ "cc", "cfg-if", - "getrandom 0.2.16", + "getrandom 0.2.17", "libc", "untrusted 0.9.0", "windows-sys 0.52.0", @@ -12234,14 +13081,14 @@ dependencies = [ [[package]] name = "risc0-binfmt" -version = "3.0.3" +version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dca096030bb4c52f99b12abcfe3531ea93b17b95a12a5aeb06fbf8ee588a275" +checksum = "1883f0c5d19b865f395209a137dcb29e56dc49951424967b8d0114c129f46e77" dependencies = [ "anyhow", "borsh", "bytemuck", - "derive_more 2.0.1", + "derive_more 2.1.1", "elf", "lazy_static", "postcard", @@ -12249,16 +13096,16 @@ dependencies = [ "risc0-zkp", "risc0-zkvm-platform", "ruint", - "semver 1.0.26", + "semver 1.0.27", "serde", "tracing", ] [[package]] name = "risc0-build" -version = "3.0.4" +version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e744682b661f2a022fddffddfe242608f8b194e839d9e83ddbb3378974942241" +checksum = "f89937fa1c424b188cc4cabf65335736eca9c1e3df79c127f48636f55682f3a4" dependencies = [ "anyhow", "cargo_metadata 0.19.2", @@ -12271,7 +13118,7 @@ dependencies = [ "risc0-zkp", "risc0-zkvm-platform", "rzup", - "semver 1.0.26", + "semver 1.0.27", "serde", "serde_json", "stability", @@ -12294,9 +13141,9 @@ dependencies = [ [[package]] name = "risc0-circuit-keccak" -version = "4.0.3" +version = "4.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e1d23ef3648bb85b0bd37bc9f9f7d13f1a4388e5e779e18f7eea82b969e5dbc" +checksum = "5f543c60287fece797a5da4209384ab1bfebd9644fcfe591e11b1aa85f1a02f8" dependencies = [ "anyhow", "bytemuck", @@ -12316,12 +13163,12 @@ dependencies = [ [[package]] name = "risc0-circuit-keccak-sys" -version = "4.0.1" +version = "4.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30a8f21cc053fe9892acebbe0ebe2610a5d79ad638cd17f2e5122cf0b3e7cd1a" +checksum = "f8eae53a7bf1c09828dfd46ed5c942cefbf4bef3c4400f6758001569a834c462" dependencies = [ "cc", - "derive_more 2.0.1", + "derive_more 2.1.1", "glob", "risc0-build-kernel", "risc0-core", @@ -12330,9 +13177,9 @@ dependencies = [ [[package]] name = "risc0-circuit-recursion" -version = "4.0.3" +version = "4.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "028cd26e1b1f7bdd964d2f1eac8f812d1872b6b8fd24f10804f07d916b90000e" +checksum = "2347e909c6b2a65584b5898f3802eec5b8c1b4b45329edfdd8587b6a04dd3357" dependencies = [ "anyhow", "bytemuck", @@ -12355,9 +13202,9 @@ dependencies = [ [[package]] name = "risc0-circuit-recursion-sys" -version = "4.0.1" +version = "4.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5f137bcd382520efcd982e4ee131da43f448b12ade979fe9d1fa92d4337dec0" +checksum = "132be7ccca4b39ec957cc37d5083ca2aee171407922352002c9812452a890b39" dependencies = [ "glob", "risc0-build-kernel", @@ -12367,16 +13214,16 @@ dependencies = [ [[package]] name = "risc0-circuit-rv32im" -version = "4.0.3" +version = "4.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ecd73a71ddce62eab8a28552ee182dc2ea08cdce2a3474a616a80bf2d6e9be" +checksum = "61676419814a818fdb5e10066b13c5488b3f54aa9668794bd06c99bc91bff1f2" dependencies = [ "anyhow", "bit-vec 0.8.0", "bytemuck", "byteorder", "cfg-if", - "derive_more 2.0.1", + "derive_more 2.1.1", "enum-map", "gdbstub", "gdbstub_arch", @@ -12401,12 +13248,12 @@ dependencies = [ [[package]] name = "risc0-circuit-rv32im-sys" -version = "4.0.1" +version = "4.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb25f3935e53e89ca020224ad0c09de96cab89a215054c0cee290405074a5166" +checksum = "69d677ec41e475534e18e58889ef0626dcdabf5e918804ef847da0c0bbf300b3" dependencies = [ "cc", - "derive_more 2.0.1", + "derive_more 2.1.1", "glob", "risc0-build-kernel", "risc0-core", @@ -12415,21 +13262,21 @@ dependencies = [ [[package]] name = "risc0-core" -version = "3.0.0" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80f2723fedace48c6c5a505bd8f97ac4e1712bc4cb769083e10536d862b66987" +checksum = "b5b956a976b8ce4713694dcc6c370b522a42ccef4ba45da5b6e57dbf26cdb7b1" dependencies = [ "bytemuck", "nvtx", "puffin", - "rand_core 0.9.3", + "rand_core 0.9.5", ] [[package]] name = "risc0-groth16" -version = "3.0.3" +version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73ff13f9b427254c5264e01aaa32e33f355525299b6829449295905778f3b1e8" +checksum = "dc57e76bb87193d154ac5ee6ee352fbd7edabddab36f02a81f40a048e5ca14f9" dependencies = [ "anyhow", "ark-bn254", @@ -12464,9 +13311,9 @@ dependencies = [ [[package]] name = "risc0-zkos-v1compat" -version = "2.2.1" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "faf1f35f2ef61d8d86fdd06288c11d2f3bbf08f1af66b24ca0a1976ecbf324a1" +checksum = "8bd70cb45b5d37d025f25663b87c6b9dc9df7f413ee2068531a57f50b0eb95db" dependencies = [ "include_bytes_aligned", "no_std_strings", @@ -12475,9 +13322,9 @@ dependencies = [ [[package]] name = "risc0-zkp" -version = "3.0.3" +version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "beb493b3f007f04a11106a001c66bca77338d0fc375766189fd7ca3a1e8c3700" +checksum = "1f40d362a6c146ec6dc69208f539b92fd86e47b0dbc2083801423034a38155a2" dependencies = [ "anyhow", "blake2", @@ -12493,7 +13340,7 @@ dependencies = [ "parking_lot", "paste", "rand 0.9.2", - "rand_core 0.9.3", + "rand_core 0.9.5", "rayon", "risc0-core", "risc0-sys", @@ -12506,9 +13353,9 @@ dependencies = [ [[package]] name = "risc0-zkvm" -version = "3.0.4" +version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c39d9943fe71decea1e8b6a99480cefa33799ab08b5abfccd7e2a18fb07121c1" +checksum = "22b7eafb5d85be59cbd9da83f662cf47d834f1b836e14f675d1530b12c666867" dependencies = [ "addr2line 0.24.2", "anyhow", @@ -12516,7 +13363,7 @@ dependencies = [ "borsh", "bytemuck", "bytes", - "derive_more 2.0.1", + "derive_more 2.1.1", "elf", "enum-map", "gdbstub", @@ -12544,7 +13391,7 @@ dependencies = [ "rrs-lib 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-demangle", "rzup", - "semver 1.0.26", + "semver 1.0.27", "serde", "sha2", "stability", @@ -12555,18 +13402,18 @@ dependencies = [ [[package]] name = "risc0-zkvm-platform" -version = "2.2.1" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfaa10feba15828c788837ddde84b994393936d8f5715228627cfe8625122a40" +checksum = "4db893788c416287e2e1a87e6b8f5302511a04a45329e699d6a32a16874fd24f" dependencies = [ "bytemuck", "cfg-if", "critical-section", "embedded-alloc", - "getrandom 0.2.16", - "getrandom 0.3.3", + "getrandom 0.2.17", + "getrandom 0.3.4", "libm", - "num_enum 0.7.4", + "num_enum 0.7.5", "paste", "stability", ] @@ -12602,6 +13449,11 @@ dependencies = [ "serde", ] +[[package]] +name = "riscv" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" + [[package]] name = "riscv_common" version = "0.1.0" @@ -12612,12 +13464,12 @@ dependencies = [ [[package]] name = "rkyv" -version = "0.8.12" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35a640b26f007713818e9a9b65d34da1cf58538207b052916a83d80e43f3ffa4" +checksum = "1a30e631b7f4a03dee9056b8ef6982e8ba371dd5bedb74d3ec86df4499132c70" dependencies = [ "bytecheck", - "hashbrown 0.15.3", + "hashbrown 0.16.1", "munge", "ptr_meta", "rancor", @@ -12628,13 +13480,13 @@ dependencies = [ [[package]] name = "rkyv_derive" -version = "0.8.12" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd83f5f173ff41e00337d97f6572e416d022ef8a19f371817259ae960324c482" +checksum = "8100bb34c0a1d0f907143db3149e6b4eea3c33b9ee8b189720168e818303986f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -12661,16 +13513,34 @@ dependencies = [ [[package]] name = "rlsf" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "222fb240c3286247ecdee6fa5341e7cdad0ffdf8e7e401d9937f2d58482a20bf" +checksum = "1646a59a9734b8b7a0ac51689388a60fe1625d4b956348e9de07591a1478457a" dependencies = [ "cfg-if", "const-default", "libc", + "rustversion", "svgbobdoc", ] +[[package]] +name = "rom-setup" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "anyhow", + "blake3", + "colored", + "fields", + "proofman-common", + "sm-rom", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + [[package]] name = "rrs-lib" version = "0.1.0" @@ -12715,9 +13585,9 @@ dependencies = [ [[package]] name = "rsa" -version = "0.9.8" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78928ac1ed176a5ca1d17e578a1825f3d81ca54cf41053a592584b020cfd691b" +checksum = "b8573f03f5883dcaebdfcf4725caa1ecb9c15b2ef50c43a07b816e06799bb12d" dependencies = [ "const-oid", "digest 0.10.7", @@ -12735,13 +13605,14 @@ dependencies = [ [[package]] name = "ruint" -version = "1.16.0" +version = "1.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecb38f82477f20c5c3d62ef52d7c4e536e38ea9b73fb570a20c5cae0e14bcf6" +checksum = "c141e807189ad38a07276942c6623032d3753c8859c146104ac2e4d68865945a" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", "ark-ff 0.4.2", + "ark-ff 0.5.0", "borsh", "bytes", "fastrlp 0.3.1", @@ -12756,7 +13627,7 @@ dependencies = [ "rand 0.9.2", "rlp", "ruint-macro", - "serde", + "serde_core", "valuable", "zeroize", ] @@ -12769,9 +13640,9 @@ checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" [[package]] name = "rustc-demangle" -version = "0.1.24" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" +checksum = "b50b8869d9fc858ce7266cce0194bd74df58b9d0e3f6df3a9fc8eb470d95c09d" [[package]] name = "rustc-hash" @@ -12815,7 +13686,29 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.26", + "semver 1.0.27", +] + +[[package]] +name = "rustfmt-wrapper" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1adc9dfed5cc999077978cc7163b9282c5751c8d39827c4ea8c8c220ca5a440" +dependencies = [ + "serde", + "tempfile", + "thiserror 1.0.69", + "toml 0.8.23", + "toolchain_find", +] + +[[package]] +name = "rusticata-macros" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" +dependencies = [ + "nom", ] [[package]] @@ -12824,7 +13717,7 @@ version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "errno", "libc", "linux-raw-sys 0.4.15", @@ -12833,15 +13726,15 @@ dependencies = [ [[package]] name = "rustix" -version = "1.0.7" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" +checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "errno", "libc", - "linux-raw-sys 0.9.4", - "windows-sys 0.59.0", + "linux-raw-sys 0.11.0", + "windows-sys 0.61.2", ] [[package]] @@ -12870,16 +13763,16 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.27" +version = "0.23.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "730944ca083c1c233a75c09f199e973ca499344a2b7ba9e755c457e86fb4a321" +checksum = "c665f33d38cea657d9614f766881e4d510e0eda4239891eea56b4cadcf01801b" dependencies = [ "aws-lc-rs", "log", "once_cell", "ring 0.17.14", "rustls-pki-types", - "rustls-webpki 0.103.3", + "rustls-webpki 0.103.9", "subtle", "zeroize", ] @@ -12890,7 +13783,7 @@ version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" dependencies = [ - "openssl-probe", + "openssl-probe 0.1.6", "rustls-pemfile 1.0.4", "schannel", "security-framework 2.11.1", @@ -12898,14 +13791,14 @@ dependencies = [ [[package]] name = "rustls-native-certs" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3" +checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" dependencies = [ - "openssl-probe", + "openssl-probe 0.2.1", "rustls-pki-types", "schannel", - "security-framework 3.2.0", + "security-framework 3.6.0", ] [[package]] @@ -12928,14 +13821,41 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.12.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" +checksum = "be040f8b0a225e40375822a563fa9524378b9d63112f53e19ffff34df5d33fdd" dependencies = [ "web-time", "zeroize", ] +[[package]] +name = "rustls-platform-verifier" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d99feebc72bae7ab76ba994bb5e121b8d83d910ca40b36e0921f53becc41784" +dependencies = [ + "core-foundation 0.10.1", + "core-foundation-sys", + "jni", + "log", + "once_cell", + "rustls 0.23.36", + "rustls-native-certs 0.8.3", + "rustls-platform-verifier-android", + "rustls-webpki 0.103.9", + "security-framework 3.6.0", + "security-framework-sys", + "webpki-root-certs", + "windows-sys 0.61.2", +] + +[[package]] +name = "rustls-platform-verifier-android" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" + [[package]] name = "rustls-webpki" version = "0.101.7" @@ -12948,9 +13868,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.3" +version = "0.103.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4a72fe2bcf7a6ac6fd7d0b9e5cb68aeb7d4c0a0271730218b3e92d43b4eb435" +checksum = "d7df23109aa6c1567d1c575b9952556388da57401e4ace1d15f79eedad0d8f53" dependencies = [ "aws-lc-rs", "ring 0.17.14", @@ -12960,15 +13880,15 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "rusty-fork" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" +checksum = "cc6bf79ff24e648f6da1f8d1f011e9cac26491b619e6b9280f2b47f1774e6ee2" dependencies = [ "fnv", "quick-error", @@ -12998,18 +13918,18 @@ dependencies = [ [[package]] name = "ruzstd" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3640bec8aad418d7d03c72ea2de10d5c646a598f9883c7babc160d91e3c1b26c" +checksum = "e5ff0cc5e135c8870a775d3320910cd9b564ec036b4dc0b8741629020be63f01" dependencies = [ "twox-hash 2.1.2", ] [[package]] name = "ryu" -version = "1.0.20" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" [[package]] name = "rzup" @@ -13019,13 +13939,13 @@ checksum = "5d2aed296f203fa64bcb4b52069356dd86d6ec578593985b919b6995bee1f0ae" dependencies = [ "hex", "rsa", - "semver 1.0.26", + "semver 1.0.27", "serde", "serde_with", "sha2", "strum 0.27.2", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", "toml 0.8.23", "yaml-rust2", ] @@ -13075,28 +13995,52 @@ version = "2.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" dependencies = [ - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "scc" -version = "2.3.4" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22b2d775fb28f245817589471dd49c5edf64237f4a19d10ce9a92ff4651a27f4" +checksum = "46e6f046b7fef48e2660c57ed794263155d713de679057f2d0c169bfc6e756cc" dependencies = [ "sdd", ] [[package]] name = "schannel" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" +checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", +] + +[[package]] +name = "schemars" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2b42f36aa1cd011945615b92222f6bf73c599a102a300334cd7f8dbeec726cc" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", ] [[package]] @@ -13135,9 +14079,9 @@ dependencies = [ [[package]] name = "sdd" -version = "3.0.8" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "584e070911c7017da6cb2eb0788d09f43d789029b5877d3e5ecc8acf86ceee21" +checksum = "490dcfcbfef26be6800d11870ff2df8774fa6e86d047e3e8c8a76b25655e41ca" [[package]] name = "sec1" @@ -13181,7 +14125,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "core-foundation 0.9.4", "core-foundation-sys", "libc", @@ -13190,12 +14134,12 @@ dependencies = [ [[package]] name = "security-framework" -version = "3.2.0" +version = "3.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271720403f46ca04f7ba6f55d438f8bd878d6b8ca0a1046e8228c4145bcbb316" +checksum = "d17b898a6d6948c3a8ee4372c17cb384f90d2e6e912ef00895b14fd7ab54ec38" dependencies = [ - "bitflags 2.9.0", - "core-foundation 0.10.0", + "bitflags 2.11.0", + "core-foundation 0.10.1", "core-foundation-sys", "libc", "security-framework-sys", @@ -13203,9 +14147,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.14.0" +version = "2.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" +checksum = "321c8673b092a9a42605034a9879d73cb79101ed5fd117bc9a597b89b4e9e61a" dependencies = [ "core-foundation-sys", "libc", @@ -13231,11 +14175,12 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.26" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" dependencies = [ "serde", + "serde_core", ] [[package]] @@ -13273,9 +14218,9 @@ checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc" [[package]] name = "serde" -version = "1.0.221" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "341877e04a22458705eb4e131a1508483c877dca2792b3781d4e5d8a6019ec43" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ "serde_core", "serde_derive", @@ -13320,45 +14265,47 @@ dependencies = [ [[package]] name = "serde_core" -version = "1.0.221" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c459bc0a14c840cb403fc14b148620de1e0778c96ecd6e0c8c3cacb6d8d00fe" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.221" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6185cf75117e20e62b1ff867b9518577271e58abe0037c40bb4794969355ab0" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "serde_json" -version = "1.0.142" +version = "1.0.149" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "030fedb782600dcbd6f02d479bf0d817ac3bb40d644745b769d6a96bc3afc5a7" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" dependencies = [ - "indexmap 2.10.0", + "indexmap 2.13.0", "itoa", "memchr", - "ryu", "serde", + "serde_core", + "zmij", ] [[package]] name = "serde_path_to_error" -version = "0.1.17" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59fab13f937fa393d08645bf3a84bdfe86e296747b506ada67bb15f10f218b2a" +checksum = "10a9ff822e371bb5403e391ecd83e182e0e77ba7f6fe0160b795797109d1b457" dependencies = [ "itoa", "serde", + "serde_core", ] [[package]] @@ -13372,11 +14319,11 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "1.0.0" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40734c41988f7306bb04f0ecf60ec0f3f1caa34290e4e8ea471dcd3346483b83" +checksum = "f8bbf91e5a4d6315eee45e704372590b30e260ee83af6639d64557f51b067776" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -13393,17 +14340,18 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.12.0" +version = "3.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" +checksum = "4fa237f2807440d238e0364a218270b98f767a00d3dada77b1c53ae88940e2e7" dependencies = [ "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.10.0", - "serde", - "serde_derive", + "indexmap 2.13.0", + "schemars 0.9.0", + "schemars 1.2.1", + "serde_core", "serde_json", "serde_with_macros", "time", @@ -13411,14 +14359,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.12.0" +version = "3.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d00caa5193a3c8362ac2b73be6b9e768aa5a4b2f721d8f4b339600c3cb51f8e" +checksum = "52a8e3ca0ca629121f70ab50f95249e5a6f925cc0f6ffe8256c45b728875706c" dependencies = [ - "darling", + "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -13427,7 +14375,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.10.0", + "indexmap 2.13.0", "itoa", "ryu", "serde", @@ -13446,11 +14394,12 @@ dependencies = [ [[package]] name = "serial_test" -version = "3.2.0" +version = "3.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b258109f244e1d6891bf1053a55d63a5cd4f8f4c30cf9a1280989f80e7a1fa9" +checksum = "0d0b343e184fc3b7bb44dff0705fffcf4b3756ba6aff420dddd8b24ca145e555" dependencies = [ - "futures", + "futures-executor", + "futures-util", "log", "once_cell", "parking_lot", @@ -13460,13 +14409,13 @@ dependencies = [ [[package]] name = "serial_test_derive" -version = "3.2.0" +version = "3.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef" +checksum = "6f50427f258fb77356e4cd4aa0e87e2bd2c66dbcee41dc405282cae2bfc26c83" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -13486,7 +14435,7 @@ dependencies = [ "risc_v_cycles", "serde", "serde_json", - "syn 2.0.101", + "syn 2.0.116", "verifier_common", ] @@ -13530,9 +14479,9 @@ dependencies = [ [[package]] name = "sha3-asm" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28efc5e327c837aa837c59eae585fc250715ef939ac32881bcc11677cd02d46" +checksum = "b31139435f327c93c6038ed350ae4588e2c70a13d50599509fee6349967ba35a" dependencies = [ "cc", "cfg-if", @@ -13561,10 +14510,11 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "signal-hook-registry" -version = "1.4.5" +version = "1.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" +checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" dependencies = [ + "errno", "libc", ] @@ -13580,9 +14530,9 @@ dependencies = [ [[package]] name = "simd-adler32" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" +checksum = "e320a6c5ad31d271ad523dcf3ad13e2767ad8b1cb8f047f75a8aeaf8da139da2" [[package]] name = "simdutf8" @@ -13592,21 +14542,21 @@ checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" [[package]] name = "simple_asn1" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb" +checksum = "0d585997b0ac10be3c5ee635f1bab02d512760d14b7c468801ac8a01d9ae5f1d" dependencies = [ "num-bigint 0.4.6", "num-traits", - "thiserror 2.0.12", + "thiserror 2.0.18", "time", ] [[package]] name = "siphasher" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" +checksum = "b2aa850e253778c88a04c3d7323b043aeda9d3e30d5971937c1855769763678e" [[package]] name = "size" @@ -13622,12 +14572,9 @@ checksum = "85636c14b73d81f541e525f585c0a2109e6744e1565b5c1668e31c70c10ed65c" [[package]] name = "slab" -version = "0.4.9" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" [[package]] name = "slop-air" @@ -14032,7 +14979,7 @@ checksum = "e85c0b2008d88bd299beddb64937524dbd7c44f827aa3aadcc1736ac9163b01e" dependencies = [ "p3-util 0.3.1-succinct", "tracing-forest", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -14065,11 +15012,127 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "sm-arith" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "num-bigint 0.4.6", + "pil-std-lib", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "sm-binary", + "sm-frequent-ops", + "static_assertions", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "sm-binary" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "num-bigint 0.4.6", + "pil-std-lib", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "sm-frequent-ops", + "static_assertions", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "sm-frequent-ops" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "clap", + "fields", + "num-bigint 0.4.6", + "proofman-common", + "proofman-util", + "rayon", + "static_assertions", + "tracing", + "zisk-core", +] + +[[package]] +name = "sm-main" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "mem-common", + "num-bigint 0.4.6", + "pil-std-lib", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", + "ziskemu", +] + +[[package]] +name = "sm-mem" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "mem-common", + "num-bigint 0.4.6", + "num-traits", + "pil-std-lib", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "tracing", + "witness", + "zisk-common", + "zisk-core", + "zisk-pil", +] + +[[package]] +name = "sm-rom" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "asm-runner", + "fields", + "itertools 0.14.0", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "tracing", + "zisk-common", + "zisk-core", + "zisk-pil", +] + [[package]] name = "smallvec" -version = "1.15.0" +version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" dependencies = [ "serde", ] @@ -14103,9 +15166,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.9" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef" +checksum = "e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678" dependencies = [ "libc", "windows-sys 0.52.0", @@ -14113,12 +15176,12 @@ dependencies = [ [[package]] name = "socket2" -version = "0.6.0" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233504af464074f9d066d7b5416c5f9b894a5862a6506e306f7b816cdd6f1807" +checksum = "86f4aa3ad99f2088c990dfa82d367e19cb29268ed67c574d10d0a4bfe71f07e0" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] @@ -14232,7 +15295,7 @@ dependencies = [ "tokio", "tracing", "tracing-forest", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "typenum", ] @@ -14244,7 +15307,7 @@ checksum = "72e491eeaf96f0af3ed58b7e4f8a7114a15ef290078a7d2a29773a5cc6a13451" dependencies = [ "bincode 1.3.3", "bytes", - "reqwest 0.12.15", + "reqwest 0.12.28", "serde", "serde_json", "sp1-core-executor", @@ -14349,7 +15412,7 @@ dependencies = [ "memmap2", "serde", "tracing", - "uuid 1.17.0", + "uuid 1.21.0", ] [[package]] @@ -14412,7 +15475,7 @@ dependencies = [ "opentelemetry", "pin-project", "rand 0.8.5", - "reqwest 0.12.15", + "reqwest 0.12.28", "serde", "serde_json", "serial_test", @@ -14448,7 +15511,7 @@ dependencies = [ "tonic 0.12.3", "tracing", "tracing-appender", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -14631,9 +15694,9 @@ dependencies = [ "k256", "num-bigint 0.4.6", "prost 0.13.5", - "reqwest 0.12.15", + "reqwest 0.12.28", "reqwest-middleware", - "rustls 0.23.27", + "rustls 0.23.36", "serde", "sha2", "slop-algebra", @@ -14691,7 +15754,7 @@ dependencies = [ "sp1-recursion-machine", "strum 0.27.2", "substrate-bn-succinct-rs", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -14704,8 +15767,8 @@ dependencies = [ "cfg-if", "critical-section", "embedded-alloc", - "getrandom 0.2.16", - "getrandom 0.3.3", + "getrandom 0.2.17", + "getrandom 0.3.4", "lazy_static", "libm", "rand 0.8.5", @@ -14747,14 +15810,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d904e7009df136af5297832a3ace3370cd14ff1546a232f4f185036c2736fcac" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "stable_deref_trait" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" [[package]] name = "starknet-crypto" @@ -14784,7 +15847,7 @@ checksum = "bbc159a1934c7be9761c237333a57febe060ace2bc9e3b337a59a37af206d19f" dependencies = [ "starknet-curve", "starknet-ff", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -14805,7 +15868,7 @@ dependencies = [ "ark-ff 0.4.2", "bigdecimal", "crypto-bigint", - "getrandom 0.2.16", + "getrandom 0.2.17", "hex", "serde", ] @@ -14888,7 +15951,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -14900,7 +15963,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -14914,9 +15977,9 @@ dependencies = [ "cfg-if", "educe 0.5.11", "fnv", - "hashbrown 0.15.3", + "hashbrown 0.16.1", "hex", - "indexmap 2.10.0", + "indexmap 2.13.0", "itertools 0.12.1", "num-traits", "rand 0.8.5", @@ -14925,9 +15988,9 @@ dependencies = [ "starknet-crypto", "starknet-ff", "std-shims", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -14935,7 +15998,7 @@ name = "stwo-constraint-framework" version = "0.1.1" source = "git+https://github.com/starkware-libs/stwo?rev=0790eba#0790eba46b8af5697083d84fb75bd34b08a0b31f" dependencies = [ - "hashbrown 0.15.3", + "hashbrown 0.16.1", "itertools 0.12.1", "num-traits", "rand 0.8.5", @@ -14947,14 +16010,14 @@ dependencies = [ [[package]] name = "subenum" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f5d5dfb8556dd04017db5e318bbeac8ab2b0c67b76bf197bfb79e9b29f18ecf" +checksum = "ec3d08fe7078c57309d5c3d938e50eba95ba1d33b9c3a101a8465fc6861a5416" dependencies = [ - "heck 0.4.1", + "heck 0.5.0", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.116", ] [[package]] @@ -14987,7 +16050,7 @@ checksum = "4a7568b180699c2138a4bfaadda9a33a7419251489e58760d3b4e74d6588da3d" dependencies = [ "proc-macro2", "rhai", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -15001,9 +16064,9 @@ dependencies = [ [[package]] name = "supports-hyperlinks" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "804f44ed3c63152de6a9f90acbea1a110441de43006ea51bcce8f436196a288b" +checksum = "e396b6523b11ccb83120b115a0b7366de372751aa6edf19844dfb13a6af97e91" [[package]] name = "supports-unicode" @@ -15035,7 +16098,7 @@ dependencies = [ "hex", "once_cell", "reqwest 0.11.27", - "semver 1.0.26", + "semver 1.0.27", "serde", "serde_json", "sha2", @@ -15046,23 +16109,25 @@ dependencies = [ [[package]] name = "symbolic-common" -version = "12.16.3" +version = "12.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d03f433c9befeea460a01d750e698aa86caf86dcfbd77d552885cd6c89d52f50" +checksum = "751a2823d606b5d0a7616499e4130a516ebd01a44f39811be2b9600936509c23" dependencies = [ "debugid", "memmap2", "stable_deref_trait", - "uuid 1.17.0", + "uuid 1.21.0", ] [[package]] name = "symbolic-demangle" -version = "12.16.3" +version = "12.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13d359ef6192db1760a34321ec4f089245ede4342c27e59be99642f12a859de8" +checksum = "79b237cfbe320601dd24b4ac817a5b68bb28f5508e33f08d42be0682cadc8ac9" dependencies = [ - "cpp_demangle", + "cc", + "cpp_demangle 0.5.1", + "msvc-demangler", "rustc-demangle", "symbolic-common", ] @@ -15080,9 +16145,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.101" +version = "2.0.116" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" +checksum = "3df424c70518695237746f84cede799c9c58fcb37450d7b23716568cc8bc69cb" dependencies = [ "proc-macro2", "quote", @@ -15091,14 +16156,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.3.0" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a985ff4ffd7373e10e0fb048110fb11a162e5a4c47f92ddb8787a6f766b769" +checksum = "f8658017776544996edc21c8c7cc8bb4f13db60955382f4bac25dc6303b38438" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -15124,7 +16189,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -15153,7 +16218,21 @@ dependencies = [ "ntapi", "objc2-core-foundation", "objc2-io-kit", - "windows 0.61.1", + "windows 0.61.3", +] + +[[package]] +name = "sysinfo" +version = "0.38.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe840c5b1afe259a5657392a4dbb74473a14c8db999c3ec2f4ae812e028a94da" +dependencies = [ + "libc", + "memchr", + "ntapi", + "objc2-core-foundation", + "objc2-io-kit", + "windows 0.62.2", ] [[package]] @@ -15169,11 +16248,11 @@ dependencies = [ [[package]] name = "system-configuration" -version = "0.6.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" +checksum = "a13f3d0daba03132c0aa9767f98351b3488edc2c100cda2d2ec2b04f3d8d3c8b" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "core-foundation 0.9.4", "system-configuration-sys 0.6.0", ] @@ -15233,21 +16312,21 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "target-triple" -version = "0.1.4" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ac9aa371f599d22256307c24a9d748c041e548cbf599f35d890f9d365361790" +checksum = "591ef38edfb78ca4771ee32cf494cb8771944bee237a9b91fc9c1424ac4b777b" [[package]] name = "tempfile" -version = "3.20.0" +version = "3.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" +checksum = "0136791f7c95b1f6dd99f9cc786b91bb81c3800b639b3478e561ddb7be95e5f1" dependencies = [ "fastrand", - "getrandom 0.3.3", + "getrandom 0.4.1", "once_cell", - "rustix 1.0.7", - "windows-sys 0.59.0", + "rustix 1.1.3", + "windows-sys 0.61.2", ] [[package]] @@ -15263,9 +16342,9 @@ dependencies = [ [[package]] name = "term" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2111ef44dae28680ae9752bb89409e7310ca33a8c621ebe7b106cf5c928b3ac0" +checksum = "d8c27177b12a6399ffc08b98f76f7c9a1f4fe9fc967c784c5a071fa8d93cf7e1" dependencies = [ "windows-sys 0.61.2", ] @@ -15297,7 +16376,7 @@ checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057" dependencies = [ "smawk", "unicode-linebreak", - "unicode-width 0.2.0", + "unicode-width 0.2.2", ] [[package]] @@ -15317,11 +16396,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" dependencies = [ - "thiserror-impl 2.0.12", + "thiserror-impl 2.0.18", ] [[package]] @@ -15332,18 +16411,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -15354,12 +16433,11 @@ checksum = "3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820" [[package]] name = "thread_local" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" dependencies = [ "cfg-if", - "once_cell", ] [[package]] @@ -15373,9 +16451,9 @@ dependencies = [ [[package]] name = "tikv-jemalloc-sys" -version = "0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7" +version = "0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd3c60906412afa9c2b5b5a48ca6a5abe5736aec9eb48ad05037a677e52e4e2d" +checksum = "cd8aa5b2ab86a2cefa406d889139c162cbb230092f7d1d7cbc1716405d852a3b" dependencies = [ "cc", "libc", @@ -15383,9 +16461,9 @@ dependencies = [ [[package]] name = "tikv-jemallocator" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cec5ff18518d81584f477e9bfdf957f5bb0979b0bac3af4ca30b5b3ae2d2865" +checksum = "0359b4327f954e0567e69fb191cf1436617748813819c94b8cd4a431422d053a" dependencies = [ "libc", "tikv-jemalloc-sys", @@ -15393,9 +16471,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.41" +version = "0.3.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" +checksum = "743bd48c283afc0388f9b8827b976905fb217ad9e647fae3a379a9283c4def2c" dependencies = [ "deranged", "itoa", @@ -15403,22 +16481,22 @@ dependencies = [ "num-conv", "num_threads", "powerfmt", - "serde", + "serde_core", "time-core", "time-macros", ] [[package]] name = "time-core" -version = "0.1.4" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c" +checksum = "7694e1cfe791f8d31026952abf09c69ca6f6fa4e1a1229e18988f06a04a12dca" [[package]] name = "time-macros" -version = "0.2.22" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49" +checksum = "2e70e4c5a0e0a8a4823ad65dfe1a6930e4f4d756dcd9dd7939022b5e8c501215" dependencies = [ "num-conv", "time-core", @@ -15435,9 +16513,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" +checksum = "42d3e9c45c09de15d06dd8acf5f4e0e399e85927b7f00711024eb7ae10fa4869" dependencies = [ "displaydoc", "zerovec", @@ -15445,9 +16523,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71" +checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" dependencies = [ "tinyvec_macros", ] @@ -15460,9 +16538,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.48.0" +version = "1.49.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408" +checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86" dependencies = [ "bytes", "libc", @@ -15470,7 +16548,7 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.6.0", + "socket2 0.6.2", "tokio-macros", "windows-sys 0.61.2", ] @@ -15493,7 +16571,7 @@ checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -15529,19 +16607,19 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.2" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" +checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" dependencies = [ - "rustls 0.23.27", + "rustls 0.23.36", "tokio", ] [[package]] name = "tokio-stream" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" +checksum = "32da49809aab5c3bc678af03902d4ccddea2a87d028d86392a4b1560c6906c70" dependencies = [ "futures-core", "pin-project-lite", @@ -15590,17 +16668,17 @@ dependencies = [ [[package]] name = "toml" -version = "0.9.5" +version = "1.0.2+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75129e1dc5000bfbaa9fee9d1b21f974f9fbad9daec557a521ee6e080825f6e8" +checksum = "d1dfefef6a142e93f346b64c160934eb13b5594b84ab378133ac6815cb2bd57f" dependencies = [ - "indexmap 2.10.0", - "serde", - "serde_spanned 1.0.0", - "toml_datetime 0.7.0", + "indexmap 2.13.0", + "serde_core", + "serde_spanned 1.0.4", + "toml_datetime 1.0.0+spec-1.1.0", "toml_parser", "toml_writer", - "winnow 0.7.10", + "winnow 0.7.14", ] [[package]] @@ -15614,11 +16692,20 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.7.0" +version = "0.7.5+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bade1c3e902f58d73d3f294cd7f20391c1cb2fbcb643b73566bc773971df91e3" +checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" dependencies = [ - "serde", + "serde_core", +] + +[[package]] +name = "toml_datetime" +version = "1.0.0+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32c2555c699578a4f59f0cc68e5116c8d7cabbd45e1409b989d4be085b53f13e" +dependencies = [ + "serde_core", ] [[package]] @@ -15627,7 +16714,7 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.10.0", + "indexmap 2.13.0", "toml_datetime 0.6.11", "winnow 0.5.40", ] @@ -15638,21 +16725,33 @@ version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.10.0", + "indexmap 2.13.0", "serde", "serde_spanned 0.6.9", "toml_datetime 0.6.11", "toml_write", - "winnow 0.7.10", + "winnow 0.7.14", +] + +[[package]] +name = "toml_edit" +version = "0.23.10+spec-1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" +dependencies = [ + "indexmap 2.13.0", + "toml_datetime 0.7.5+spec-1.1.0", + "toml_parser", + "winnow 0.7.14", ] [[package]] name = "toml_parser" -version = "1.0.2" +version = "1.0.9+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b551886f449aa90d4fe2bdaa9f4a2577ad2dde302c61ecf262d80b116db95c10" +checksum = "702d4415e08923e7e1ef96cd5727c0dfed80b4d2fa25db9647fe5eb6f7c5a4c4" dependencies = [ - "winnow 0.7.10", + "winnow 0.7.14", ] [[package]] @@ -15663,9 +16762,9 @@ checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" [[package]] name = "toml_writer" -version = "1.0.2" +version = "1.0.6+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc842091f2def52017664b53082ecbbeb5c7731092bad69d2c63050401dfd64" +checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607" [[package]] name = "tonic" @@ -15713,21 +16812,21 @@ dependencies = [ "axum 0.7.9", "base64 0.22.1", "bytes", - "h2 0.4.10", - "http 1.3.1", + "h2 0.4.13", + "http 1.4.0", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", + "hyper 1.8.1", "hyper-timeout 0.5.2", "hyper-util", "percent-encoding", "pin-project", "prost 0.13.5", - "rustls-native-certs 0.8.1", + "rustls-native-certs 0.8.3", "rustls-pemfile 2.2.0", - "socket2 0.5.9", + "socket2 0.5.10", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.4", "tokio-stream", "tower 0.4.13", "tower-layer", @@ -15737,28 +16836,28 @@ dependencies = [ [[package]] name = "tonic" -version = "0.14.3" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a286e33f82f8a1ee2df63f4fa35c0becf4a85a0cb03091a15fd7bf0b402dc94a" +checksum = "7f32a6f80051a4111560201420c7885d0082ba9efe2ab61875c587bb6b18b9a0" dependencies = [ "async-trait", - "axum 0.8.5", + "axum 0.8.8", "base64 0.22.1", "bytes", - "h2 0.4.10", - "http 1.3.1", + "h2 0.4.13", + "http 1.4.0", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", + "hyper 1.8.1", "hyper-timeout 0.5.2", "hyper-util", "percent-encoding", "pin-project", - "socket2 0.6.0", + "socket2 0.6.2", "sync_wrapper 1.0.2", "tokio", "tokio-stream", - "tower 0.5.2", + "tower 0.5.3", "tower-layer", "tower-service", "tracing", @@ -15783,51 +16882,64 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9557ce109ea773b399c9b9e5dca39294110b74f1f342cb347a80d1fce8c26a11" dependencies = [ - "prettyplease 0.2.32", + "prettyplease 0.2.37", "proc-macro2", "prost-build 0.13.5", "prost-types 0.13.5", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "tonic-build" -version = "0.14.3" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27aac809edf60b741e2d7db6367214d078856b8a5bff0087e94ff330fb97b6fc" +checksum = "ce6d8958ed3be404120ca43ffa0fb1e1fc7be214e96c8d33bd43a131b6eebc9e" dependencies = [ - "prettyplease 0.2.32", + "prettyplease 0.2.37", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "tonic-prost" -version = "0.14.3" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6c55a2d6a14174563de34409c9f92ff981d006f56da9c6ecd40d9d4a31500b0" +checksum = "9f86539c0089bfd09b1f8c0ab0239d80392af74c21bc9e0f15e1b4aca4c1647f" dependencies = [ "bytes", "prost 0.14.3", - "tonic 0.14.3", + "tonic 0.14.4", ] [[package]] name = "tonic-prost-build" -version = "0.14.3" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4556786613791cfef4ed134aa670b61a85cfcacf71543ef33e8d801abae988f" +checksum = "65873ace111e90344b8973e94a1fc817c924473affff24629281f90daed1cd2e" dependencies = [ - "prettyplease 0.2.32", + "prettyplease 0.2.37", "proc-macro2", "prost-build 0.14.3", "prost-types 0.14.3", "quote", - "syn 2.0.101", + "syn 2.0.116", "tempfile", - "tonic-build 0.14.3", + "tonic-build 0.14.4", +] + +[[package]] +name = "toolchain_find" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc8c9a7f0a2966e1acdaf0461023d0b01471eeead645370cf4c3f5cff153f2a" +dependencies = [ + "home", + "once_cell", + "regex", + "semver 1.0.27", + "walkdir", ] [[package]] @@ -15852,13 +16964,13 @@ dependencies = [ [[package]] name = "tower" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9" +checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" dependencies = [ "futures-core", "futures-util", - "indexmap 2.10.0", + "indexmap 2.13.0", "pin-project-lite", "slab", "sync_wrapper 1.0.2", @@ -15871,17 +16983,19 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.6.6" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" +checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.11.0", "bytes", "futures-util", - "http 1.3.1", + "http 1.4.0", "http-body 1.0.1", "http-body-util", + "iri-string", "pin-project-lite", + "tower 0.5.3", "tower-layer", "tower-service", "tracing", @@ -15929,7 +17043,7 @@ dependencies = [ "ark-serialize 0.5.0", "clap", "common", - "derive_more 2.0.1", + "derive_more 2.1.1", "fnv", "itertools 0.10.5", "jolt-platform", @@ -15941,14 +17055,14 @@ dependencies = [ "strum 0.26.3", "strum_macros 0.26.4", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] name = "tracing" -version = "0.1.41" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" dependencies = [ "log", "pin-project-lite", @@ -15958,25 +17072,25 @@ dependencies = [ [[package]] name = "tracing-appender" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" +checksum = "786d480bce6247ab75f005b14ae1624ad978d3029d9113f0a22fa1ac773faeaf" dependencies = [ "crossbeam-channel", - "thiserror 1.0.69", + "thiserror 2.0.18", "time", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] name = "tracing-attributes" -version = "0.1.28" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" +checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -15987,14 +17101,14 @@ checksum = "bf0a738ed5d6450a9fb96e86a23ad808de2b727fd1394585da5cdd6788ffe724" dependencies = [ "serde_json", "tracing-core", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] name = "tracing-core" -version = "0.1.33" +version = "0.1.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" dependencies = [ "once_cell", "valuable", @@ -16010,7 +17124,7 @@ dependencies = [ "smallvec", "thiserror 1.0.69", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -16055,9 +17169,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.20" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5" +checksum = "2f30143827ddab0d256fd843b7a66d164e9f271cfa0dde49142c5ca0ca291f1e" dependencies = [ "matchers", "nu-ansi-term", @@ -16076,23 +17190,23 @@ dependencies = [ [[package]] name = "tracing-test" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "557b891436fe0d5e0e363427fc7f217abf9ccd510d5136549847bdcbcd011d68" +checksum = "19a4c448db514d4f24c5ddb9f73f2ee71bfb24c526cf0c570ba142d1119e0051" dependencies = [ "tracing-core", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "tracing-test-macro", ] [[package]] name = "tracing-test-macro" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04659ddb06c87d233c566112c1c9c5b9e98256d9af50ec3bc9c8327f873a7568" +checksum = "ad06847b7afb65c7866a36664b75c40b895e318cea4f71299f013fb22965329d" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -16123,9 +17237,9 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "trybuild" -version = "1.0.111" +version = "1.0.116" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ded9fdb81f30a5708920310bfcd9ea7482ff9cba5f54601f7a19a877d5c2392" +checksum = "47c635f0191bd3a2941013e5062667100969f8c4e9cd787c14f977265d73616e" dependencies = [ "dissimilar", "glob", @@ -16134,7 +17248,7 @@ dependencies = [ "serde_json", "target-triple", "termcolor", - "toml 0.9.5", + "toml 1.0.2+spec-1.1.0", ] [[package]] @@ -16174,38 +17288,38 @@ dependencies = [ [[package]] name = "twirp" -version = "0.9.1" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3c52cc4e4423b6b3e2e2659523c8c9e19af514a06422fe77a95d86f6bf3478a" +checksum = "4bfc65c610b3c5395ebb12132f251e1679386e0efef00c55ddee6affc68dd5c6" dependencies = [ "anyhow", "async-trait", - "axum 0.8.5", + "axum 0.8.8", "futures", - "http 1.3.1", + "http 1.4.0", "http-body-util", - "hyper 1.6.0", - "prost 0.13.5", - "reqwest 0.12.15", + "hyper 1.8.1", + "prost 0.14.3", + "reqwest 0.12.28", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", "tokio", - "tower 0.5.2", + "tower 0.5.3", "url", ] [[package]] name = "twirp-build" -version = "0.9.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "361c9d2474d96655b8a2fbaefba5801d5b1ffe74157b92cc3eae721ebb48d7a9" +checksum = "f108ced0bc35967d210e9e0eab7f79c95ac4a7c4bcf5c40c1e9e53d25885550f" dependencies = [ - "prettyplease 0.2.32", + "prettyplease 0.2.37", "proc-macro2", - "prost-build 0.13.5", + "prost-build 0.14.3", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -16226,16 +17340,16 @@ dependencies = [ "async-trait", "axum 0.7.9", "futures", - "http 1.3.1", + "http 1.4.0", "http-body-util", - "hyper 1.6.0", + "hyper 1.8.1", "prost 0.13.5", - "reqwest 0.12.15", + "reqwest 0.12.28", "serde", "serde_json", "thiserror 1.0.69", "tokio", - "tower 0.5.2", + "tower 0.5.3", "url", ] @@ -16288,20 +17402,20 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77b55e96f110c6db5d1a2f24072552537f0091dc90cebeaa679540bac93e7405" dependencies = [ - "uuid 1.17.0", + "uuid 1.21.0", ] [[package]] name = "typenum" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" [[package]] name = "typetag" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f22b40dd7bfe8c14230cf9702081366421890435b2d625fa92b4acc4c3de6f" +checksum = "be2212c8a9b9bcfca32024de14998494cf9a5dfa59ea1b829de98bac374b86bf" dependencies = [ "erased-serde", "inventory", @@ -16312,13 +17426,13 @@ dependencies = [ [[package]] name = "typetag-impl" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35f5380909ffc31b4de4f4bdf96b877175a016aa2ca98cee39fcfd8c4d53d952" +checksum = "27a7a9b72ba121f6f1f6c3632b85604cac41aedb5ddc70accbebb6cac83de846" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -16359,9 +17473,9 @@ checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "unicode-linebreak" @@ -16383,9 +17497,9 @@ checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" [[package]] name = "unicode-width" -version = "0.2.0" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd" +checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" [[package]] name = "unicode-xid" @@ -16439,13 +17553,14 @@ checksum = "6d49784317cd0d1ee7ec5c716dd598ec5b4483ea832a2dced265471cc0f690ae" [[package]] name = "url" -version = "2.5.4" +version = "2.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" +checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed" dependencies = [ "form_urlencoded", "idna", "percent-encoding", + "serde", ] [[package]] @@ -16478,38 +17593,25 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", "serde", ] [[package]] name = "uuid" -version = "1.17.0" +version = "1.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cf4199d1e5d15ddd86a694e4d0dffa9c323ce759fea589f00fef9d81cc1931d" +checksum = "b672338555252d43fd2240c714dc444b8c6fb0a5c5335e65a07bba7742735ddb" dependencies = [ "atomic", - "getrandom 0.3.3", + "getrandom 0.4.1", "js-sys", "md-5", "rand 0.9.2", - "serde", "sha1_smol", - "uuid-macro-internal", "wasm-bindgen", ] -[[package]] -name = "uuid-macro-internal" -version = "1.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9384a660318abfbd7f8932c34d67e4d1ec511095f95972ddc01e19d7ba8413f" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - [[package]] name = "valuable" version = "0.1.1" @@ -16524,7 +17626,7 @@ checksum = "a1935e10c6f04d22688d07c0790f2fc0e1b1c5c2c55bc0cc87ed67656e587dd8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -16544,9 +17646,8 @@ dependencies = [ [[package]] name = "vergen" -version = "8.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2990d9ea5967266ea0ccf413a4aa5c42a93dbcfda9cb49a97de6931726b12566" +version = "8.3.5" +source = "git+https://github.com/rustyhorde/vergen?branch=legacy%2Fv8#b900b88605a61409de6efabe3afda3ec37fbe5c6" dependencies = [ "anyhow", "cfg-if", @@ -16555,6 +17656,45 @@ dependencies = [ "time", ] +[[package]] +name = "vergen" +version = "9.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b849a1f6d8639e8de261e81ee0fc881e3e3620db1af9f2e0da015d4382ceaf75" +dependencies = [ + "anyhow", + "derive_builder", + "rustversion", + "time", + "vergen-lib", +] + +[[package]] +name = "vergen-git2" +version = "9.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d51ab55ddf1188c8d679f349775362b0fa9e90bd7a4ac69838b2a087623f0d57" +dependencies = [ + "anyhow", + "derive_builder", + "git2", + "rustversion", + "time", + "vergen 9.1.0", + "vergen-lib", +] + +[[package]] +name = "vergen-lib" +version = "9.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b34a29ba7e9c59e62f229ae1932fb1b8fb8a6fdcc99215a641913f5f5a59a569" +dependencies = [ + "anyhow", + "derive_builder", + "rustversion", +] + [[package]] name = "verifier_common" version = "0.1.0" @@ -16582,7 +17722,7 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -16642,52 +17782,49 @@ dependencies = [ [[package]] name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" +version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] -name = "wasi" -version = "0.14.2+wasi-0.2.4" +name = "wasip2" +version = "1.0.2+wasi-0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" +checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" dependencies = [ - "wit-bindgen-rt", + "wit-bindgen", +] + +[[package]] +name = "wasip3" +version = "0.4.0+wasi-0.3.0-rc-2026-01-06" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5" +dependencies = [ + "wit-bindgen", ] [[package]] name = "wasm-bindgen" -version = "0.2.100" +version = "0.2.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +checksum = "64024a30ec1e37399cf85a7ffefebdb72205ca1c972291c51512360d90bd8566" dependencies = [ "cfg-if", "once_cell", "rustversion", "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" -dependencies = [ - "bumpalo", - "log", - "proc-macro2", - "quote", - "syn 2.0.101", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.50" +version = "0.4.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" +checksum = "70a6e77fd0ae8029c9ea0063f87c46fde723e7d887703d74ad2616d792e51e6f" dependencies = [ "cfg-if", + "futures-util", "js-sys", "once_cell", "wasm-bindgen", @@ -16696,9 +17833,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.100" +version = "0.2.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +checksum = "008b239d9c740232e71bd39e8ef6429d27097518b6b30bdf9086833bd5b6d608" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -16706,26 +17843,48 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.100" +version = "0.2.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +checksum = "5256bae2d58f54820e6490f9839c49780dff84c65aeab9e772f15d5f0e913a55" dependencies = [ + "bumpalo", "proc-macro2", "quote", - "syn 2.0.101", - "wasm-bindgen-backend", + "syn 2.0.116", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.100" +version = "0.2.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +checksum = "1f01b580c9ac74c8d8f0c0e4afb04eeef2acf145458e52c03845ee9cd23e3d12" dependencies = [ "unicode-ident", ] +[[package]] +name = "wasm-encoder" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "990065f2fe63003fe337b932cfb5e3b80e0b4d0f5ff650e6985b1048f62c8319" +dependencies = [ + "leb128fmt", + "wasmparser", +] + +[[package]] +name = "wasm-metadata" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" +dependencies = [ + "anyhow", + "indexmap 2.13.0", + "wasm-encoder", + "wasmparser", +] + [[package]] name = "wasm-streams" version = "0.4.2" @@ -16740,10 +17899,22 @@ dependencies = [ ] [[package]] -name = "web-sys" -version = "0.3.77" +name = "wasmparser" +version = "0.244.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" +dependencies = [ + "bitflags 2.11.0", + "hashbrown 0.15.5", + "indexmap 2.13.0", + "semver 1.0.27", +] + +[[package]] +name = "web-sys" +version = "0.3.85" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "312e32e551d92129218ea9a2452120f4aabc03529ef03e4d0d82fb2780608598" dependencies = [ "js-sys", "wasm-bindgen", @@ -16769,6 +17940,15 @@ dependencies = [ "untrusted 0.9.0", ] +[[package]] +name = "webpki-root-certs" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "804f18a4ac2676ffb4e8b5b5fa9ae38af06df08162314f96a68d2a363e21a8ca" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "webpki-roots" version = "0.25.4" @@ -16777,18 +17957,9 @@ checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" [[package]] name = "webpki-roots" -version = "0.26.11" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9" -dependencies = [ - "webpki-roots 1.0.0", -] - -[[package]] -name = "webpki-roots" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2853738d1cc4f2da3a225c18ec6c3721abb31961096e9dbf5ab35fa88b19cfdb" +checksum = "22cfaf3c063993ff62e73cb4311efde4db1efb31ab78a3e5c457939ad5cc0bed" dependencies = [ "rustls-pki-types", ] @@ -16817,9 +17988,9 @@ dependencies = [ [[package]] name = "widestring" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd7cf3379ca1aac9eea11fba24fd7e315d621f8dfe35c8d7d2be8b793726e07d" +checksum = "72069c3113ab32ab29e5584db3c6ec55d416895e60715417b5b883a357c3e471" [[package]] name = "winapi" @@ -16839,11 +18010,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0978bf7171b3d90bac376700cb56d606feb40f251a475a5d6634613564460b22" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -16864,15 +18035,27 @@ dependencies = [ [[package]] name = "windows" -version = "0.61.1" +version = "0.61.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5ee8f3d025738cb02bad7868bbb5f8a6327501e870bf51f1b455b0a2454a419" +checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893" dependencies = [ - "windows-collections", - "windows-core 0.61.0", - "windows-future", + "windows-collections 0.2.0", + "windows-core 0.61.2", + "windows-future 0.2.1", "windows-link 0.1.3", - "windows-numerics", + "windows-numerics 0.2.0", +] + +[[package]] +name = "windows" +version = "0.62.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "527fadee13e0c05939a6a05d5bd6eec6cd2e3dbd648b9f8e447c6518133d8580" +dependencies = [ + "windows-collections 0.3.2", + "windows-core 0.62.2", + "windows-future 0.3.2", + "windows-numerics 0.3.1", ] [[package]] @@ -16881,7 +18064,16 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8" dependencies = [ - "windows-core 0.61.0", + "windows-core 0.61.2", +] + +[[package]] +name = "windows-collections" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23b2d95af1a8a14a3c7367e1ed4fc9c20e0a26e79551b1454d72583c97cc6610" +dependencies = [ + "windows-core 0.62.2", ] [[package]] @@ -16895,47 +18087,72 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.61.0" +version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4763c1de310c86d75a878046489e2e5ba02c649d185f21c67d4cf8a56d098980" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" dependencies = [ "windows-implement", "windows-interface", "windows-link 0.1.3", - "windows-result", - "windows-strings 0.4.0", + "windows-result 0.3.4", + "windows-strings 0.4.2", +] + +[[package]] +name = "windows-core" +version = "0.62.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link 0.2.1", + "windows-result 0.4.1", + "windows-strings 0.5.1", ] [[package]] name = "windows-future" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a1d6bbefcb7b60acd19828e1bc965da6fcf18a7e39490c5f8be71e54a19ba32" +checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" dependencies = [ - "windows-core 0.61.0", + "windows-core 0.61.2", "windows-link 0.1.3", + "windows-threading 0.1.0", +] + +[[package]] +name = "windows-future" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1d6f90251fe18a279739e78025bd6ddc52a7e22f921070ccdc67dde84c605cb" +dependencies = [ + "windows-core 0.62.2", + "windows-link 0.2.1", + "windows-threading 0.2.1", ] [[package]] name = "windows-implement" -version = "0.60.0" +version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "windows-interface" -version = "0.59.1" +version = "0.59.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -16956,46 +18173,74 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" dependencies = [ - "windows-core 0.61.0", + "windows-core 0.61.2", "windows-link 0.1.3", ] +[[package]] +name = "windows-numerics" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e2e40844ac143cdb44aead537bbf727de9b044e107a0f1220392177d15b0f26" +dependencies = [ + "windows-core 0.62.2", + "windows-link 0.2.1", +] + [[package]] name = "windows-registry" -version = "0.4.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4286ad90ddb45071efd1a66dfa43eb02dd0dfbae1545ad6cc3c51cf34d7e8ba3" +checksum = "02752bf7fbdcce7f2a27a742f798510f3e5ad88dbe84871e5168e2120c3d5720" dependencies = [ - "windows-result", - "windows-strings 0.3.1", - "windows-targets 0.53.3", + "windows-link 0.2.1", + "windows-result 0.4.1", + "windows-strings 0.5.1", ] [[package]] name = "windows-result" -version = "0.3.2" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" +dependencies = [ + "windows-link 0.1.3", +] + +[[package]] +name = "windows-result" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows-strings" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" dependencies = [ "windows-link 0.1.3", ] [[package]] name = "windows-strings" -version = "0.3.1" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87fa48cc5d406560701792be122a10132491cff9d0aeb23583cc2dcafc847319" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" dependencies = [ - "windows-link 0.1.3", + "windows-link 0.2.1", ] [[package]] -name = "windows-strings" -version = "0.4.0" +name = "windows-sys" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2ba9642430ee452d5a7aa78d72907ebe8cfda358e8cb7918a2050581322f97" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows-link 0.1.3", + "windows-targets 0.42.2", ] [[package]] @@ -17025,6 +18270,15 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.5", +] + [[package]] name = "windows-sys" version = "0.61.2" @@ -17034,6 +18288,21 @@ dependencies = [ "windows-link 0.2.1", ] +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + [[package]] name = "windows-targets" version = "0.48.5" @@ -17067,21 +18336,45 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.3" +version = "0.53.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" +dependencies = [ + "windows-link 0.2.1", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", +] + +[[package]] +name = "windows-threading" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" dependencies = [ "windows-link 0.1.3", - "windows_aarch64_gnullvm 0.53.0", - "windows_aarch64_msvc 0.53.0", - "windows_i686_gnu 0.53.0", - "windows_i686_gnullvm 0.53.0", - "windows_i686_msvc 0.53.0", - "windows_x86_64_gnu 0.53.0", - "windows_x86_64_gnullvm 0.53.0", - "windows_x86_64_msvc 0.53.0", ] +[[package]] +name = "windows-threading" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3949bd5b99cafdf1c7ca86b43ca564028dfe27d66958f2470940f73d86d75b37" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -17096,9 +18389,15 @@ checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" [[package]] name = "windows_aarch64_gnullvm" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" [[package]] name = "windows_aarch64_msvc" @@ -17114,9 +18413,15 @@ checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" [[package]] name = "windows_aarch64_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] name = "windows_i686_gnu" @@ -17132,9 +18437,9 @@ checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" [[package]] name = "windows_i686_gnu" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" [[package]] name = "windows_i686_gnullvm" @@ -17144,9 +18449,15 @@ checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" [[package]] name = "windows_i686_gnullvm" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" [[package]] name = "windows_i686_msvc" @@ -17162,9 +18473,15 @@ checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" [[package]] name = "windows_i686_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" [[package]] name = "windows_x86_64_gnu" @@ -17180,9 +18497,15 @@ checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" [[package]] name = "windows_x86_64_gnu" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] name = "windows_x86_64_gnullvm" @@ -17198,9 +18521,15 @@ checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" [[package]] name = "windows_x86_64_gnullvm" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" [[package]] name = "windows_x86_64_msvc" @@ -17216,9 +18545,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "windows_x86_64_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" [[package]] name = "winnow" @@ -17231,9 +18560,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.7.10" +version = "0.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" +checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829" dependencies = [ "memchr", ] @@ -17300,7 +18629,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d31a19dae58475d019850e25b0170e94b16d382fbf6afee9c0e80fdc935e73e" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -17338,22 +18667,101 @@ dependencies = [ ] [[package]] -name = "wit-bindgen-rt" -version = "0.39.0" +name = "wit-bindgen" +version = "0.51.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" +checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5" dependencies = [ - "bitflags 2.9.0", + "wit-bindgen-rust-macro", +] + +[[package]] +name = "wit-bindgen-core" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc" +dependencies = [ + "anyhow", + "heck 0.5.0", + "wit-parser", +] + +[[package]] +name = "wit-bindgen-rust" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" +dependencies = [ + "anyhow", + "heck 0.5.0", + "indexmap 2.13.0", + "prettyplease 0.2.37", + "syn 2.0.116", + "wasm-metadata", + "wit-bindgen-core", + "wit-component", +] + +[[package]] +name = "wit-bindgen-rust-macro" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c0f9bfd77e6a48eccf51359e3ae77140a7f50b1e2ebfe62422d8afdaffab17a" +dependencies = [ + "anyhow", + "prettyplease 0.2.37", + "proc-macro2", + "quote", + "syn 2.0.116", + "wit-bindgen-core", + "wit-bindgen-rust", +] + +[[package]] +name = "wit-component" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" +dependencies = [ + "anyhow", + "bitflags 2.11.0", + "indexmap 2.13.0", + "log", + "serde", + "serde_derive", + "serde_json", + "wasm-encoder", + "wasm-metadata", + "wasmparser", + "wit-parser", +] + +[[package]] +name = "wit-parser" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" +dependencies = [ + "anyhow", + "id-arena", + "indexmap 2.13.0", + "log", + "semver 1.0.27", + "serde", + "serde_derive", + "serde_json", + "unicode-xid", + "wasmparser", ] [[package]] name = "witness" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/pil2-proofman?tag=v0.15.0#78497c5a05ea316df2188f98c1df66bffb80192f" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/pil2-proofman.git?branch=pre-develop-0.16.0#312a7cd2b7e5d2a60231db4a6e3fda20b2d92721" dependencies = [ "colored", "fields", - "libloading 0.8.7", + "libloading 0.8.9", "proofman-common", "proofman-util", "serde_json", @@ -17371,9 +18779,9 @@ dependencies = [ [[package]] name = "writeable" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" +checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9" [[package]] name = "ws_stream_wasm" @@ -17388,7 +18796,7 @@ dependencies = [ "pharos", "rustc_version 0.4.1", "send_wrapper 0.6.0", - "thiserror 2.0.12", + "thiserror 2.0.18", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -17413,6 +18821,24 @@ dependencies = [ "rand_core 0.6.4", ] +[[package]] +name = "x509-parser" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d43b0f71ce057da06bc0851b23ee24f3f86190b07203dd8f567d0b706a185202" +dependencies = [ + "asn1-rs", + "data-encoding", + "der-parser", + "lazy_static", + "nom", + "oid-registry", + "ring 0.17.14", + "rusticata-macros", + "thiserror 2.0.18", + "time", +] + [[package]] name = "xmlparser" version = "0.13.6" @@ -17421,9 +18847,9 @@ checksum = "66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4" [[package]] name = "yaml-rust2" -version = "0.10.3" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ce2a4ff45552406d02501cea6c18d8a7e50228e7736a872951fe2fe75c91be7" +checksum = "2462ea039c445496d8793d052e13787f2b90e750b833afee748e601c17621ed9" dependencies = [ "arraydeque", "encoding_rs", @@ -17443,12 +18869,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" [[package]] -name = "yoke" -version = "0.8.0" +name = "yasna" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" +checksum = "e17bb3549cc1321ae1296b9cdc2698e2b6cb1992adfa19a8c72e5b7a738f44cd" +dependencies = [ + "time", +] + +[[package]] +name = "yoke" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72d6e5c6afb84d73944e5cedb052c4680d5657337201555f9f2a16b7406d4954" dependencies = [ - "serde", "stable_deref_trait", "yoke-derive", "zerofrom", @@ -17456,34 +18890,34 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" +checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.26" +version = "0.8.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +checksum = "db6d35d663eadb6c932438e763b262fe1a70987f9ae936e60158176d710cae4a" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.26" +version = "0.8.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +checksum = "4122cd3169e94605190e77839c9a40d40ed048d305bfdc146e7df40ab0f3e517" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -17503,35 +18937,35 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", "synstructure", ] [[package]] name = "zeroize" -version = "1.8.1" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" +checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" dependencies = [ "zeroize_derive", ] [[package]] name = "zeroize_derive" -version = "1.4.2" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] name = "zerotrie" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" +checksum = "2a59c17a5562d507e4b54960e8569ebee33bee890c70aa3fe7b97e85a9fd7851" dependencies = [ "displaydoc", "yoke", @@ -17540,9 +18974,9 @@ dependencies = [ [[package]] name = "zerovec" -version = "0.11.2" +version = "0.11.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428" +checksum = "6c28719294829477f525be0186d13efa9a3c602f7ec202ca9e353d310fb9a002" dependencies = [ "yoke", "zerofrom", @@ -17551,13 +18985,13 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" +checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.116", ] [[package]] @@ -17591,66 +19025,252 @@ dependencies = [ "crossbeam-utils", "displaydoc", "flate2", - "indexmap 2.10.0", + "indexmap 2.13.0", "memchr", - "thiserror 2.0.12", + "thiserror 2.0.18", "zopfli", ] +[[package]] +name = "zisk-build" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "anyhow", + "cargo_metadata 0.23.1", + "clap", + "rom-setup", + "tracing", + "vergen-git2", +] + +[[package]] +name = "zisk-common" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "anyhow", + "bincode 1.3.3", + "fields", + "libc", + "mpi", + "proofman", + "proofman-common", + "proofman-util", + "quinn", + "rcgen", + "rustls 0.23.36", + "serde", + "serde_json", + "thiserror 2.0.18", + "tokio", + "tracing", + "tracing-subscriber 0.3.22", + "zisk-core", +] + +[[package]] +name = "zisk-core" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "elf", + "fields", + "lib-c", + "lib-float", + "paste", + "precompiles-helpers", + "rayon", + "riscv", + "serde", + "sha2", + "tiny-keccak", + "ziskos-hints", +] + [[package]] name = "zisk-distributed-common" version = "0.1.0" -source = "git+https://github.com/han0110/zisk?branch=patch%2Fv0.15.0-cluster#6ffe5f4123a258765cf814c5ff3d3bb8988fb964" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" dependencies = [ "anyhow", "borsh", "chrono", "proofman", "proofman-common", + "proofman-util", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", "tracing-appender", - "tracing-subscriber 0.3.20", - "uuid 1.17.0", + "tracing-subscriber 0.3.22", + "uuid 1.21.0", ] [[package]] -name = "zisk-distributed-grpc-api" -version = "0.15.0" -source = "git+https://github.com/han0110/zisk?branch=patch%2Fv0.15.0-cluster#6ffe5f4123a258765cf814c5ff3d3bb8988fb964" +name = "zisk-pil" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "fields", + "proofman-common", + "proofman-macros", + "rayon", + "serde", + "serde_arrays 0.2.0", +] + +[[package]] +name = "zisk-sdk" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" dependencies = [ "anyhow", - "chrono", - "prost 0.14.3", - "prost-types 0.14.3", + "asm-runner", + "bincode 1.3.3", + "colored", + "executor", + "fields", + "proofman", + "proofman-common", + "proofman-util", + "rom-setup", "serde", - "serde_json", - "tonic 0.14.3", - "tonic-prost", - "tonic-prost-build", + "sha2", "tracing", - "uuid 1.17.0", + "zisk-build", + "zisk-common", + "zisk-core", "zisk-distributed-common", + "zisk-verifier", + "zisk-witness", + "ziskemu", +] + +[[package]] +name = "zisk-verifier" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "anyhow", + "proofman-util", + "proofman-verifier", +] + +[[package]] +name = "zisk-witness" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "anyhow", + "asm-runner", + "data-bus", + "executor", + "fields", + "mem-common", + "pil-std-lib", + "precomp-arith-eq", + "precomp-arith-eq-384", + "precomp-big-int", + "precomp-dma", + "precomp-keccakf", + "precomp-poseidon2", + "precomp-sha256f", + "precompiles-hints", + "proofman", + "proofman-common", + "proofman-macros", + "proofman-util", + "rayon", + "sm-arith", + "sm-binary", + "sm-frequent-ops", + "sm-main", + "sm-mem", + "sm-rom", + "tracing", + "witness", + "zisk-common", + "zisk-core", + "zisk-pil", + "ziskemu", +] + +[[package]] +name = "ziskemu" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "clap", + "data-bus", + "fields", + "mem-common", + "memmap2", + "num-format", + "object 0.37.3", + "proofman-common", + "rayon", + "riscv", + "sm-arith", + "sm-binary", + "symbolic-common", + "symbolic-demangle", + "sysinfo 0.38.0", + "vergen-git2", + "zisk-common", + "zisk-core", + "zisk-pil", ] [[package]] name = "ziskos" -version = "0.15.0" -source = "git+https://github.com/0xPolygonHermez/zisk.git?tag=v0.15.0#b3ca745b80423c8123dc24f19039865a5bc8b074" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" dependencies = [ - "bincode 2.0.1", + "anyhow", + "bincode 1.3.3", + "bytes", "cfg-if", - "getrandom 0.2.16", + "ctor 0.2.9", + "fields", + "getrandom 0.2.17", "lazy_static", "lib-c", "num-bigint 0.4.6", "num-integer", "num-traits", + "once_cell", + "paste", + "precompiles-helpers", "rand 0.8.5", "serde", - "static_assertions", + "sha2", + "tiny-keccak", + "tokio", + "zisk-common", +] + +[[package]] +name = "ziskos-hints" +version = "0.16.0" +source = "git+https://github.com/0xPolygonHermez/zisk.git?branch=pre-develop-0.16.0#0749466f42deb14d1f21a12018800024ba5a1551" +dependencies = [ + "anyhow", + "bincode 1.3.3", + "cfg-if", + "fields", + "getrandom 0.2.17", + "lazy_static", + "lib-c", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "paste", + "precompiles-helpers", + "rand 0.8.5", + "serde", + "sha2", "tiny-keccak", ] @@ -17752,7 +19372,7 @@ dependencies = [ "thiserror 1.0.69", "tiny-keccak", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "typenum", "vec_map", "zkm-curves", @@ -17806,7 +19426,7 @@ dependencies = [ "tiny-keccak", "tracing", "tracing-forest", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "typenum", "web-time", "zkm-core-executor", @@ -17924,7 +19544,7 @@ dependencies = [ "thiserror 1.0.69", "tracing", "tracing-appender", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "zkm-core-executor", "zkm-core-machine", "zkm-primitives", @@ -18101,8 +19721,8 @@ dependencies = [ "tonic-build 0.8.4", "tracing", "twirp-rs", - "uuid 1.17.0", - "vergen", + "uuid 1.21.0", + "vergen 8.3.5", "zkm-build", "zkm-core-executor", "zkm-core-machine", @@ -18148,7 +19768,7 @@ dependencies = [ "sysinfo 0.30.13", "tracing", "tracing-forest", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "zkm-derive", "zkm-primitives", "zkm-zkvm", @@ -18163,7 +19783,7 @@ dependencies = [ "cfg-if", "critical-section", "embedded-alloc", - "getrandom 0.2.16", + "getrandom 0.2.17", "lazy_static", "libm", "p3-field 0.1.0 (git+https://github.com/ProjectZKM/Plonky3)", @@ -18176,10 +19796,16 @@ dependencies = [ ] [[package]] -name = "zopfli" -version = "0.8.2" +name = "zmij" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edfc5ee405f504cd4984ecc6f14d02d55cfda60fa4b689434ef4102aae150cd7" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" + +[[package]] +name = "zopfli" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f05cd8797d63865425ff89b5c4a48804f35ba0ce8d125800027ad6017d2b5249" dependencies = [ "bumpalo", "crc32fast", @@ -18226,9 +19852,9 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "2.0.15+zstd.1.5.7" +version = "2.0.16+zstd.1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb81183ddd97d0c74cedf1d50d85c8d08c1b8b68ee863bdee9e706eedba1a237" +checksum = "91e19ebc2adc8f83e43039e79776e3fda8ca919132d68a1fed6a5faca2683748" dependencies = [ "cc", "pkg-config", diff --git a/Cargo.toml b/Cargo.toml index 8bcd48b..d2b6718 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -48,7 +48,6 @@ license = "MIT OR Apache-2.0" anyhow = "1.0.98" auto_impl = "1.3.0" bincode = { version = "2.0.1", default-features = false } -blake3 = "1.8.2" bytemuck = "1.25.0" cargo_metadata = "0.19.0" ciborium = { version = "0.2.2", default-features = false } @@ -61,11 +60,13 @@ fnv = { version = "1.0.7", default-features = false } futures-util = "0.3" http = "1" indexmap = "2.10.0" +mpi = "0.8.0" parking_lot = "0.12.5" paste = "1.0.15" postcard = { version = "1.0.8", default-features = false } -prost = "0.13" -prost-build = "0.13" +prost = "0.14" +prost-build = "0.14" +prost-types = "0.14" rand = "0.9.2" rkyv = { version = "0.8.12", default-features = false } serde = { version = "1.0.219", default-features = false } @@ -79,11 +80,14 @@ thiserror = "2.0.12" tokio = "1.0" toml = "0.8.23" tonic = "0.14" +tonic-build = "0.14" +tonic-prost = "0.14" +tonic-prost-build = "0.14" tower-http = "0.6.6" tracing = "0.1.41" tracing-subscriber = "0.3.19" -twirp = "0.9.1" -twirp-build = "0.9.0" +twirp = "0.10" +twirp-build = "0.10" uuid = "1" wait-timeout = "0.2.1" @@ -149,9 +153,17 @@ zkm-sdk = { git = "https://github.com/ProjectZKM/Ziren.git", tag = "v1.2.3" } zkm-zkvm = { git = "https://github.com/ProjectZKM/Ziren.git", tag = "v1.2.3", default-features = false } # ZisK dependencies -ziskos = { git = "https://github.com/0xPolygonHermez/zisk.git", tag = "v0.15.0" } -zisk-distributed-grpc-api = { git = "https://github.com/han0110/zisk", branch = "patch/v0.15.0-cluster" } -zisk-proofman-verifier = { git = "https://github.com/0xPolygonHermez/pil2-proofman", package = "proofman-verifier", tag = "v0.15.0" } +ziskos = { git = "https://github.com/0xPolygonHermez/zisk.git", branch = "pre-develop-0.16.0" } +zisk-rom-setup = { git = "https://github.com/0xPolygonHermez/zisk.git", branch = "pre-develop-0.16.0", package = "rom-setup" } +zisk-sdk = { git = "https://github.com/0xPolygonHermez/zisk.git", branch = "pre-develop-0.16.0" } +zisk-core = { git = "https://github.com/0xPolygonHermez/zisk.git", branch = "pre-develop-0.16.0" } +ziskemu = { git = "https://github.com/0xPolygonHermez/zisk.git", branch = "pre-develop-0.16.0" } +proofman = { git = "https://github.com/0xPolygonHermez/pil2-proofman.git", branch = "pre-develop-0.16.0" } +proofman-common = { git = "https://github.com/0xPolygonHermez/pil2-proofman.git", branch = "pre-develop-0.16.0" } +proofman-util = { git = "https://github.com/0xPolygonHermez/pil2-proofman.git", branch = "pre-develop-0.16.0" } +proofman-fields = { git = "https://github.com/0xPolygonHermez/pil2-proofman.git", branch = "pre-develop-0.16.0", package = "fields" } +proofman-verifier = { git = "https://github.com/0xPolygonHermez/pil2-proofman", branch = "pre-develop-0.16.0" } +proofman-starks-lib-c = { git = "https://github.com/0xPolygonHermez/pil2-proofman.git", branch = "pre-develop-0.16.0" } # Local dependencies ere-zkvm-interface = { path = "crates/zkvm-interface" } @@ -195,3 +207,6 @@ ark-ff = { git = "https://github.com/a16z/arkworks-algebra", branch = "dev/twist ark-ec = { git = "https://github.com/a16z/arkworks-algebra", branch = "dev/twist-shout" } ark-serialize = { git = "https://github.com/a16z/arkworks-algebra", branch = "dev/twist-shout" } allocative = { git = "https://github.com/facebookexperimental/allocative", rev = "85b773d85d526d068ce94724ff7a7b81203fc95e" } + +# Patch vergen of zkm-sdk to use newer git2 +vergen = { git = "https://github.com/rustyhorde/vergen", branch = "legacy/v8" } diff --git a/crates/dockerized/server/src/api.rs b/crates/dockerized/server/src/api.rs index c070e95..68773f9 100644 --- a/crates/dockerized/server/src/api.rs +++ b/crates/dockerized/server/src/api.rs @@ -1,6 +1,6 @@ // This file is @generated by prost-build. #[derive(serde::Serialize, serde::Deserialize)] -#[derive(Clone, PartialEq, ::prost::Message)] +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct ExecuteRequest { #[prost(bytes = "vec", tag = "1")] pub input_stdin: ::prost::alloc::vec::Vec, @@ -8,7 +8,7 @@ pub struct ExecuteRequest { pub input_proofs: ::core::option::Option<::prost::alloc::vec::Vec>, } #[derive(serde::Serialize, serde::Deserialize)] -#[derive(Clone, PartialEq, ::prost::Message)] +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct ExecuteResponse { #[prost(oneof = "execute_response::Result", tags = "1, 2")] pub result: ::core::option::Option, @@ -16,7 +16,7 @@ pub struct ExecuteResponse { /// Nested message and enum types in `ExecuteResponse`. pub mod execute_response { #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Clone, PartialEq, ::prost::Oneof)] + #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)] pub enum Result { #[prost(message, tag = "1")] Ok(super::ExecuteOk), @@ -25,7 +25,7 @@ pub mod execute_response { } } #[derive(serde::Serialize, serde::Deserialize)] -#[derive(Clone, PartialEq, ::prost::Message)] +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct ExecuteOk { #[prost(bytes = "vec", tag = "1")] pub public_values: ::prost::alloc::vec::Vec, @@ -33,7 +33,7 @@ pub struct ExecuteOk { pub report: ::prost::alloc::vec::Vec, } #[derive(serde::Serialize, serde::Deserialize)] -#[derive(Clone, PartialEq, ::prost::Message)] +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct ProveRequest { #[prost(bytes = "vec", tag = "1")] pub input_stdin: ::prost::alloc::vec::Vec, @@ -43,7 +43,7 @@ pub struct ProveRequest { pub proof_kind: i32, } #[derive(serde::Serialize, serde::Deserialize)] -#[derive(Clone, PartialEq, ::prost::Message)] +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct ProveResponse { #[prost(oneof = "prove_response::Result", tags = "1, 2")] pub result: ::core::option::Option, @@ -51,7 +51,7 @@ pub struct ProveResponse { /// Nested message and enum types in `ProveResponse`. pub mod prove_response { #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Clone, PartialEq, ::prost::Oneof)] + #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)] pub enum Result { #[prost(message, tag = "1")] Ok(super::ProveOk), @@ -60,7 +60,7 @@ pub mod prove_response { } } #[derive(serde::Serialize, serde::Deserialize)] -#[derive(Clone, PartialEq, ::prost::Message)] +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct ProveOk { #[prost(bytes = "vec", tag = "1")] pub public_values: ::prost::alloc::vec::Vec, @@ -70,7 +70,7 @@ pub struct ProveOk { pub report: ::prost::alloc::vec::Vec, } #[derive(serde::Serialize, serde::Deserialize)] -#[derive(Clone, PartialEq, ::prost::Message)] +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct VerifyRequest { #[prost(bytes = "vec", tag = "1")] pub proof: ::prost::alloc::vec::Vec, @@ -78,7 +78,7 @@ pub struct VerifyRequest { pub proof_kind: i32, } #[derive(serde::Serialize, serde::Deserialize)] -#[derive(Clone, PartialEq, ::prost::Message)] +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct VerifyResponse { #[prost(oneof = "verify_response::Result", tags = "1, 2")] pub result: ::core::option::Option, @@ -86,7 +86,7 @@ pub struct VerifyResponse { /// Nested message and enum types in `VerifyResponse`. pub mod verify_response { #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Clone, PartialEq, ::prost::Oneof)] + #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)] pub enum Result { #[prost(message, tag = "1")] Ok(super::VerifyOk), @@ -95,7 +95,7 @@ pub mod verify_response { } } #[derive(serde::Serialize, serde::Deserialize)] -#[derive(Clone, PartialEq, ::prost::Message)] +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct VerifyOk { #[prost(bytes = "vec", tag = "1")] pub public_values: ::prost::alloc::vec::Vec, diff --git a/crates/test-utils/src/host.rs b/crates/test-utils/src/host.rs index 7fdbecc..18da454 100644 --- a/crates/test-utils/src/host.rs +++ b/crates/test-utils/src/host.rs @@ -122,6 +122,7 @@ where fn assert_output(&self, public_values: &[u8]) { let output = P::compute(self.test_case.clone()); let digest = D::digest(P::Io::serialize_output(&output).unwrap()); - assert_eq!(&*digest, public_values) + assert_eq!(&*digest, &public_values[..digest.len()]); + assert!(public_values[digest.len()..].iter().all(|byte| *byte == 0)); } } diff --git a/crates/zkvm/zisk/Cargo.toml b/crates/zkvm/zisk/Cargo.toml index 11d437b..4d8cc94 100644 --- a/crates/zkvm/zisk/Cargo.toml +++ b/crates/zkvm/zisk/Cargo.toml @@ -7,29 +7,40 @@ license.workspace = true [dependencies] anyhow.workspace = true -blake3.workspace = true -bytemuck = { workspace = true, features = ["extern_crate_alloc"] } +bincode = { workspace = true, features = ["alloc"] } +bytemuck.workspace = true futures-util.workspace = true http.workspace = true +mpi = { workspace = true, optional = true } parking_lot.workspace = true +prost = { workspace = true, optional = true } serde.workspace = true -strum = { workspace = true, features = ["derive"] } tempfile.workspace = true thiserror.workspace = true tonic = { workspace = true, optional = true } +tonic-prost = { workspace = true, optional = true } tracing.workspace = true uuid = { workspace = true, features = ["v4"] } -wait-timeout.workspace = true # Local dependencies ere-compile-utils = { workspace = true, optional = true } ere-zkvm-interface.workspace = true # Zisk dependencies -zisk-distributed-grpc-api = { workspace = true, optional = true } -zisk-proofman-verifier = { workspace = true, optional = true } +proofman = { workspace = true, optional = true } +proofman-common = { workspace = true, optional = true } +proofman-fields = { workspace = true, optional = true } +proofman-util = { workspace = true, optional = true } +proofman-verifier = { workspace = true, optional = true } +zisk-core = { workspace = true, optional = true } +zisk-rom-setup = { workspace = true, optional = true } +zisk-sdk = { workspace = true, optional = true, features = ["disable_distributed"] } +ziskemu = { workspace = true, optional = true } [dev-dependencies] +tonic-prost-build = { workspace = true } +tonic-build = { workspace = true } + ere-test-utils = { workspace = true, features = ["host"] } [build-dependencies] @@ -39,11 +50,22 @@ ere-build-utils.workspace = true default = ["compiler", "zkvm"] compiler = ["dep:ere-compile-utils"] zkvm = [ + "dep:mpi", + "dep:prost", "dep:tonic", - "dep:zisk-distributed-grpc-api", - "dep:zisk-proofman-verifier", + "dep:tonic-prost", + "dep:proofman", + "dep:proofman-common", + "dep:proofman-fields", + "dep:proofman-util", + "dep:proofman-verifier", + "dep:zisk-rom-setup", + "dep:zisk-core", + "dep:zisk-sdk", + "dep:ziskemu", "ere-zkvm-interface/tokio", ] +cuda = ["zisk-sdk/gpu"] [lints] workspace = true diff --git a/crates/zkvm/zisk/platform/src/lib.rs b/crates/zkvm/zisk/platform/src/lib.rs index 868a02b..0f74d59 100644 --- a/crates/zkvm/zisk/platform/src/lib.rs +++ b/crates/zkvm/zisk/platform/src/lib.rs @@ -2,7 +2,7 @@ extern crate alloc; -use core::{array::from_fn, cell::UnsafeCell, hash::Hasher, ops::Deref}; +use core::{cell::UnsafeCell, hash::Hasher, ops::Deref}; use ere_platform_trait::LengthPrefixedStdin; use fnv::FnvHasher; use ziskos::ziskos_definitions::ziskos_config::UART_ADDR; @@ -150,7 +150,7 @@ pub struct ZiskPlatform; impl Platform for ZiskPlatform { fn read_whole_input() -> impl Deref { - LengthPrefixedStdin::new(ziskos::read_input()) + LengthPrefixedStdin::new(ziskos::io::read_vec()) } fn write_whole_output(output: &[u8]) { @@ -159,10 +159,7 @@ impl Platform for ZiskPlatform { "Maximum output size is 256 bytes, got {}", output.len() ); - output.chunks(4).enumerate().for_each(|(idx, chunk)| { - let value = u32::from_le_bytes(from_fn(|i| chunk.get(i).copied().unwrap_or_default())); - ziskos::set_output(idx, value) - }); + ziskos::io::write(output); } fn print(message: &str) { diff --git a/crates/zkvm/zisk/src/zkvm.rs b/crates/zkvm/zisk/src/zkvm.rs index 8f97754..abca502 100644 --- a/crates/zkvm/zisk/src/zkvm.rs +++ b/crates/zkvm/zisk/src/zkvm.rs @@ -1,18 +1,17 @@ use crate::{ program::ZiskProgram, - zkvm::sdk::{RomDigest, ZiskSdk}, + zkvm::sdk::{ProgramVk, ZiskSdk}, }; use anyhow::bail; use ere_zkvm_interface::zkvm::{ CommonError, Input, ProgramExecutionReport, ProgramProvingReport, Proof, ProofKind, ProverResource, PublicValues, zkVM, zkVMProgramDigest, }; +use mpi as _; use std::time::Instant; -mod cluster_client; mod error; mod sdk; -mod server; pub use error::Error; @@ -98,10 +97,10 @@ impl zkVM for EreZisk { } impl zkVMProgramDigest for EreZisk { - type ProgramDigest = RomDigest; + type ProgramDigest = ProgramVk; fn program_digest(&self) -> anyhow::Result { - Ok(self.sdk.rom_digest()?) + Ok(self.sdk.program_vk()) } } @@ -159,22 +158,22 @@ mod tests { #[test] fn test_prove() { + let _guard = PROVE_LOCK.lock().unwrap(); + let program = basic_program(); let zkvm = EreZisk::new(program, ProverResource::Cpu).unwrap(); - let _guard = PROVE_LOCK.lock().unwrap(); - let test_case = BasicProgram::::valid_test_case(); run_zkvm_prove(&zkvm, &test_case); } #[test] fn test_prove_invalid_test_case() { + let _guard = PROVE_LOCK.lock().unwrap(); + let program = basic_program(); let zkvm = EreZisk::new(program, ProverResource::Cpu).unwrap(); - let _guard = PROVE_LOCK.lock().unwrap(); - for input in [ Input::new(), BasicProgram::::invalid_test_case().input(), diff --git a/crates/zkvm/zisk/src/zkvm/error.rs b/crates/zkvm/zisk/src/zkvm/error.rs index 995f891..000468a 100644 --- a/crates/zkvm/zisk/src/zkvm/error.rs +++ b/crates/zkvm/zisk/src/zkvm/error.rs @@ -1,5 +1,6 @@ -use crate::zkvm::sdk::RomDigest; +use crate::zkvm::sdk::ProgramVk; use ere_zkvm_interface::zkvm::CommonError; +use proofman_common::ProofmanError; use thiserror::Error; #[derive(Debug, Error)] @@ -7,29 +8,47 @@ pub enum Error { #[error(transparent)] CommonError(#[from] CommonError), - // Execution - #[error("Total steps not found in execution report")] - TotalStepsNotFound, + // Common + #[error("Enable `cuda` feature to use `ProverResource::Gpu`")] + CudaFeatureDisabled, - // Rom setup - #[error("Failed to find ROM digest in output")] - RomDigestNotFound, + #[error("Disable `cuda` feature to use `ProverResource::Cpu`")] + CudaFeatureEnabled, - #[error("`cargo-zisk rom-setup` failed in another thread")] - RomSetupFailedBefore, + // Emulator + #[error("ROM transpilation failed: {0}")] + Riscv2zisk(String), - // Prove - #[error("Server crashed")] - ServerCrashed, + #[error("Emulation not terminated")] + EmulatorNotTerminated, - #[error("Timeout waiting for server proving")] - TimeoutWaitingServerProving, + #[error("Emulation failure")] + EmulatorError, - #[error("Timeout waiting for server ready")] - TimeoutWaitingServerReady, + #[error("Emulator panicked: {0}")] + EmulatorPanic(String), - #[error("Unknown server status, stdout: {stdout}")] - UnknownServerStatus { stdout: String }, + // SDK + #[error("Check setup failed: {0}")] + CheckSetup(#[source] ProofmanError), + + #[error("Create ProofCtx failed: {0}")] + ProofCtx(#[source] ProofmanError), + + #[error("Compute program VK failed: {0}")] + ComputeProgramVk(#[source] anyhow::Error), + + #[error("Invalid program VK length, expected 32, got {0}")] + InvalidProgramVkLength(usize), + + #[error("Initialize prover failed: {0}")] + InitProver(#[source] anyhow::Error), + + #[error("Prove failed: {0}")] + Prove(#[source] anyhow::Error), + + #[error("Prove panicked: {0}")] + ProvePanic(String), // Cluster #[error("Invalid cluster endpoint: {0}")] @@ -44,6 +63,9 @@ pub enum Error { #[error("Cluster error: {0}")] ClusterError(String), + #[error("Invalid proof format: {0}")] + InvalidProofFormat(anyhow::Error), + // Verify #[error("Invalid proof")] InvalidProof, @@ -57,9 +79,9 @@ pub enum Error { #[error("Public values length {0}, but expected at least 6")] InvalidPublicValuesLength(usize), - #[error("Unexpected ROM digest - preprocessed: {preprocessed:?}, proved: {proved:?}")] - UnexpectedRomDigest { - preprocessed: RomDigest, - proved: RomDigest, + #[error("Unexpected program VK - preprocessed: {preprocessed:?}, proved: {proved:?}")] + UnexpectedProgramVk { + preprocessed: ProgramVk, + proved: ProgramVk, }, } diff --git a/crates/zkvm/zisk/src/zkvm/sdk.rs b/crates/zkvm/zisk/src/zkvm/sdk.rs index 9d697a4..902dd2c 100644 --- a/crates/zkvm/zisk/src/zkvm/sdk.rs +++ b/crates/zkvm/zisk/src/zkvm/sdk.rs @@ -1,80 +1,65 @@ -use crate::zkvm::Error; -use crate::zkvm::cluster_client::ClusterClient; -use crate::zkvm::server::{ZiskServer, ZiskServerOptions}; +use crate::zkvm::{ + Error, + sdk::{cluster::ClusterClient, local::LocalProver}, +}; use ere_zkvm_interface::zkvm::{CommonError, ProverResource, ProverResourceKind, PublicValues}; -use std::borrow::Cow; -use std::path::Path; -use std::process::Command; +use proofman_common::{ + MpiCtx, ParamsGPU, ProofCtx, ProofType, SetupCtx, SetupsVadcop, VerboseMode, +}; +use proofman_fields::Goldilocks; +use proofman_util::VadcopFinalProof; +use proofman_verifier::verify_vadcop_final; use std::{ - env, fs, - io::BufRead, + any::Any, + env, mem::transmute, + panic::{self, AssertUnwindSafe}, path::PathBuf, - sync::OnceLock, - time::{Duration, Instant}, + sync::Arc, + time::Duration, }; use tempfile::tempdir; -use tracing::info; +use zisk_core::{Riscv2zisk, ZiskRom}; +use zisk_rom_setup::rom_merkle_setup; +use zisk_sdk::{ElfBinaryFromFile, ZISK_PUBLICS, ZiskProofWithPublicValues}; +use ziskemu::{Emu, EmuOptions}; + +mod cluster; +mod local; + +/// Merkle root of ROM trace. +pub type ProgramVk = [u8; 32]; /// Verifying key of the aggregation proof. -/// -/// Extracted from `$HOME/.zisk/provingKey/zisk/vadcop_final/vadcop_final.verkey.json`. pub const VADCOP_FINAL_VK: [u8; 32] = unsafe { - // Use `transmute` to keep the endianness because `zisk_proofman_verifier::verify` will - // use `bytemuck` to cast it to `[u64; 4]`. transmute([ - 723851053263266420u64, - 2272245643171245153u64, - 9868173762158752255u64, - 6004219199197288727u64, + 5756952873125057328u64, + 1254521327410429374u64, + 17471446849604192873u64, + 13226325674217234543u64, ]) }; -/// Merkle root of ROM trace generated by `cargo-zisk rom-setup`. -pub type RomDigest = [u64; 4]; - +/// Prover backend - either local or cluster. +#[allow(clippy::large_enum_variant)] pub enum ZiskProver { - Server(ZiskServer), + Local(LocalProver), Cluster(ClusterClient), } pub struct ZiskSdk { - elf_path: PathBuf, - resource: ProverResource, - /// ROM digest will be setup when `ZiskSdk::prove` or `ZiskSdk::verify` - /// is called, or if env variable `ERE_ZISK_SETUP_ON_INIT` is set. - /// - /// Use `Option` inside because ROM setup might fail, we can get rid of - /// it if `OnceLock::get_or_try_init` is stabilized. - rom_digest: OnceLock>, - /// Prover instance, either a local server or a cluster client. + rom: ZiskRom, + program_vk: ProgramVk, prover: ZiskProver, } impl ZiskSdk { /// Returns SDK for the ELF. pub fn new(elf: Vec, resource: ProverResource) -> Result { - // Save ELF to `~/.zisk/cache` along with the ROM binaries, to avoid it - // been cleaned up during a long run process. - let cache_dir_path = dot_zisk_dir_path().join("cache"); - fs::create_dir_all(&cache_dir_path) - .map_err(|err| CommonError::create_dir("cache", &cache_dir_path, err))?; - - // Use blake3 hash as the ELF file name, since ROM setup uses blake3 as - // unique identifier as well. - let elf_hash = blake3::hash(&elf); - let elf_path = cache_dir_path.join(format!("{elf_hash}.elf")); - - fs::write(&elf_path, elf).map_err(|err| CommonError::write_file("elf", &elf_path, err))?; - - let prover = match &resource { - ProverResource::Cpu | ProverResource::Gpu => ZiskProver::Server(ZiskServer::new( - &elf_path, - resource.is_gpu(), - ZiskServerOptions::from_env(), - )), - ProverResource::Cluster(config) => ZiskProver::Cluster(ClusterClient::new(config)?), - _ => Err(CommonError::unsupported_prover_resource_kind( + match &resource { + ProverResource::Cpu if cfg!(feature = "cuda") => Err(Error::CudaFeatureEnabled)?, + ProverResource::Gpu if cfg!(not(feature = "cuda")) => Err(Error::CudaFeatureDisabled)?, + ProverResource::Network(_) => Err(CommonError::unsupported_prover_resource_kind( resource.kind(), [ ProverResourceKind::Cpu, @@ -82,139 +67,105 @@ impl ZiskSdk { ProverResourceKind::Cluster, ], ))?, + _ => {} }; - let sdk = Self { - elf_path, - resource, - rom_digest: OnceLock::new(), + // Convert ELF to ZisK ROM + let rom = Riscv2zisk::new(&elf) + .run() + .map_err(|e| Error::Riscv2zisk(e.to_string()))?; + + // Compute program VK + let program_vk = compute_program_vk(&elf)?; + + // Initialize prover + let prover = match &resource { + ProverResource::Cpu | ProverResource::Gpu => ZiskProver::Local(LocalProver::new(elf)?), + ProverResource::Cluster(config) => ZiskProver::Cluster(ClusterClient::new(config)?), + _ => unreachable!(), + }; + + Ok(Self { + rom, + program_vk, prover, - }; - - if env::var_os("ERE_ZISK_SETUP_ON_INIT").is_some() { - sdk.rom_digest()?; - - if let ZiskProver::Server(server) = &sdk.prover { - server.ensure_ready()?; - } - } - - Ok(sdk) + }) } - /// Execute the ELF with the given `input`. - pub fn execute(&self, input: &[u8]) -> Result<(PublicValues, u64), Error> { - let tempdir = tempdir().map_err(CommonError::tempdir)?; - let input_path = tempdir.path().join("input"); - let output_path = tempdir.path().join("output"); + pub fn program_vk(&self) -> ProgramVk { + self.program_vk + } - fs::write(&input_path, input) - .map_err(|err| CommonError::write_file("input", &input_path, err))?; + /// Execute the ELF with the given `stdin`. + pub fn execute(&self, stdin: &[u8]) -> Result<(PublicValues, u64), Error> { + let mut emu = Emu::new(&self.rom); + emu.ctx = emu.create_emu_context(stdin.to_vec()); - let mut cmd = Command::new("ziskemu"); - let output = cmd - .arg("--elf") - .arg(&self.elf_path) - .arg("--inputs") - .arg(input_path) - .arg("--output") - .arg(&output_path) - .arg("--stats") // Enable stats in order to get total steps. - .output() - .map_err(|err| CommonError::command(&cmd, err))?; + panic::catch_unwind(AssertUnwindSafe(|| emu.run_fast(&EmuOptions::default()))) + .map_err(|err| Error::EmulatorPanic(panic_msg(err)))?; - if !output.status.success() { - return Err(CommonError::command_exit_non_zero( - &cmd, - output.status, - Some(&output), - ))?; + if !emu.ctx.inst_ctx.end { + return Err(Error::EmulatorNotTerminated); } - // Extract cycle count from the stdout. + if emu.ctx.inst_ctx.error { + return Err(Error::EmulatorError); + } - let total_num_cycles = String::from_utf8_lossy(&output.stdout) - .split_once("STEPS") - .and_then(|(_, stats)| { - stats - .split_whitespace() - .next() - .and_then(|steps| steps.replace(",", "").parse::().ok()) - }) - .ok_or(Error::TotalStepsNotFound)?; - - let public_values = fs::read(&output_path) - .map_err(|err| CommonError::read_file("output", &output_path, err))?; + let public_values = emu.get_output_8(); + let total_num_cycles = emu.number_of_steps(); Ok((public_values, total_num_cycles)) } - /// Returns the ROM digest of the ELF. - /// - /// If it is not setup yet, it makes sure the global setup is done, then - /// does ROM setup of the ELF and stores the ROM digest for later usage. - pub fn rom_digest(&self) -> Result { - // FIXME: Use `get_or_try_init` when it is stabilized - let mut result = Ok(()); - let rom_digest = *self.rom_digest.get_or_init(|| { - check_setup(self.resource.is_gpu()) - .and_then(|_| rom_setup(&self.elf_path)) - .map_err(|err| result = Err(err)) - .ok() - }); - result?; - rom_digest.ok_or(Error::RomSetupFailedBefore) - } - - /// Prove the ELF with the given input. + /// Prove the ELF with the given stdin. /// /// Returns the public values, proof, and proving time. - pub fn prove(&self, input: &[u8]) -> Result<(PublicValues, Vec, Duration), Error> { + pub fn prove(&self, stdin: &[u8]) -> Result<(PublicValues, Vec, Duration), Error> { let (proof, proving_time) = match &self.prover { - ZiskProver::Cluster(client) => client.prove(input)?, - ZiskProver::Server(server) => { - self.rom_digest()?; - - let start = Instant::now(); - let proof = server.prove(input)?; - let proving_time = start.elapsed(); - - (proof, proving_time) - } + ZiskProver::Local(local) => local.prove(stdin)?, + ZiskProver::Cluster(client) => client.prove(stdin)?, }; - // Deserialize public values. - let (proved_rom_digest, public_values) = deserialize_public_values(&proof)?; + // Extract public values and program_vk + let (public_values, proved_program_vk) = extract_public_values_and_progam_vk(&proof)?; - // The proved ROM digest should be equal to preprocessed one. - let rom_digest = self.rom_digest()?; - if proved_rom_digest != rom_digest { - return Err(Error::UnexpectedRomDigest { - preprocessed: rom_digest, - proved: proved_rom_digest, + // The proved program VK should match the preprocessed + if proved_program_vk != self.program_vk { + return Err(Error::UnexpectedProgramVk { + preprocessed: self.program_vk, + proved: proved_program_vk, }); } - Ok((public_values, proof, proving_time)) + Ok(( + public_values, + bincode::serde::encode_to_vec(&proof, bincode::config::legacy()) + .map_err(|err| CommonError::serialize("proof", "bincode", err))?, + proving_time, + )) } /// Verify the proof of the ELF, and returns public values. pub fn verify(&self, proof: &[u8]) -> Result { - let proof = align_to_u64(proof)?; + let proof: ZiskProofWithPublicValues = + bincode::serde::decode_from_slice(proof, bincode::config::legacy()) + .map_err(|err| CommonError::deserialize("proof", "bincode", err))? + .0; - if !zisk_proofman_verifier::verify(&proof, &VADCOP_FINAL_VK) { - Err(Error::InvalidProof)? + let vadcop_final_proof = vadcop_final_proof_aligned(&proof)?; + if !verify_vadcop_final(&vadcop_final_proof, &VADCOP_FINAL_VK) { + return Err(Error::InvalidProof); } - // Deserialize public values. - let (proved_rom_digest, public_values) = deserialize_public_values(&proof)?; + // Extract public values and program_vk + let (public_values, proved_program_vk) = extract_public_values_and_progam_vk(&proof)?; - // The proved ROM digest should be equal to preprocessed one. - let rom_digest = self.rom_digest()?; - if proved_rom_digest != rom_digest { - return Err(Error::UnexpectedRomDigest { - preprocessed: rom_digest, - proved: proved_rom_digest, + // The proved program VK should match the preprocessed + if proved_program_vk != self.program_vk { + return Err(Error::UnexpectedProgramVk { + preprocessed: self.program_vk, + proved: proved_program_vk, }); } @@ -222,127 +173,94 @@ impl ZiskSdk { } } -/// Does global setup if it is not done yet. -fn check_setup(cuda: bool) -> Result<(), Error> { - info!("Running command `cargo-zisk check-setup --aggregation`..."); +fn compute_program_vk(elf: &[u8]) -> Result { + let mpi_ctx = Arc::new(MpiCtx::new()); + let mut pctx = ProofCtx::create_ctx(proving_key_path(), false, VerboseMode::Info, mpi_ctx) + .map_err(Error::ProofCtx)?; + let mut params = ParamsGPU::new(false); + params.with_max_number_streams(1); + let sctx = SetupCtx::new(&pctx.global_info, &ProofType::Basic, false, ¶ms, &[]); + let setups_vadcop = SetupsVadcop::new(&pctx.global_info, false, false, ¶ms, &[]); + pctx.set_device_buffers(&sctx, &setups_vadcop, false, ¶ms) + .map_err(Error::ProofCtx)?; - let cargo_zisk = if cuda { - "cargo-zisk-cuda" - } else { - "cargo-zisk" + let elf = ElfBinaryFromFile { + elf: elf.to_vec(), + name: String::new(), + with_hints: false, }; - let mut cmd = Command::new(cargo_zisk); - let output = cmd - .args(["check-setup", "--aggregation"]) - .output() - .map_err(|err| CommonError::command(&cmd, err))?; + let tempdir = tempdir().map_err(CommonError::tempdir)?; - if !output.status.success() { - Err(CommonError::command_exit_non_zero( - &cmd, - output.status, - Some(&output), - ))?; - } + let (_, program_vk) = + rom_merkle_setup::(&pctx, &elf, &Some(tempdir.path().to_path_buf())) + .map_err(Error::ComputeProgramVk)?; - info!("Command `cargo-zisk check-setup --aggregation` succeeded"); - - Ok(()) + program_vk_from_slice(&program_vk) } -/// Does ROM setup of the ELF and returns the ROM digest. -fn rom_setup(elf_path: &Path) -> Result { - info!("Running command `cargo-zisk rom-setup` ..."); +fn extract_public_values_and_progam_vk( + proof: &ZiskProofWithPublicValues, +) -> Result<(PublicValues, ProgramVk), Error> { + let program_vk = program_vk_from_slice(&proof.get_program_vk().vk)?; - let mut cmd = Command::new("cargo-zisk"); - let output = cmd - .arg("rom-setup") - .arg("--elf") - .arg(elf_path) - .output() - .map_err(|err| CommonError::command(&cmd, err))?; + let mut public_values = vec![0; ZISK_PUBLICS * 4]; + proof.get_publics().read_slice(&mut public_values); + proof.get_publics().head(); - if !output.status.success() { - Err(CommonError::command_exit_non_zero( - &cmd, - output.status, - Some(&output), - ))?; - } - - // Parse the ROM digest from the stdout. - let rom_digest = output - .stdout - .lines() - .find_map(|line| { - let line = line.ok()?; - let line = line.split_once("Root hash: [")?.1; - let line = line.strip_suffix("]")?; - line.split(", ") - .filter_map(|word| word.parse::().ok()) - .collect::>() - .try_into() - .ok() - }) - .ok_or(Error::RomDigestNotFound)?; - - info!("Command `cargo-zisk rom-setup` succeeded"); - - Ok(rom_digest) + Ok((public_values, program_vk)) } -/// Deserialize public values as json string sequence, and parse the `RomDigest` -/// and user set public values as `Vec`. -fn deserialize_public_values(proof: &[u8]) -> Result<(RomDigest, Vec), Error> { - let proof = align_to_u64(proof)?; - let proof = bytemuck::cast_slice::(&proof); +fn program_vk_from_slice(program_vk: &[u8]) -> Result { + (program_vk.len() == 32) + .then(|| program_vk.try_into().unwrap()) + .ok_or_else(|| Error::InvalidProgramVkLength(program_vk.len())) +} - // The public values contain at least the the total number of public values, - // `RomDigest`, and the number of user set public values. - if proof.len() < 6 { - return Err(Error::InvalidPublicValuesLength(proof.len())); - } - - // The first element is total number of public values. - - // The next 4 elements of public values should be ROM digest. - let rom_digest = proof[1..5].try_into().unwrap(); - - // The next element should be the number of user set public values. - let num_user_public_values = proof[5] as usize; - - // The rest elements should be user set public values and should be `u32`. - let public_values = proof[6..] - .iter() - .map(|v| Some(u32::try_from(*v).ok()?.to_le_bytes())) - .take(num_user_public_values) - .collect::>>() - .ok_or(Error::InvalidPublicValue)? - .into_iter() - .flatten() - .collect(); - - Ok((rom_digest, public_values)) +fn vadcop_final_proof_aligned( + proof: &ZiskProofWithPublicValues, +) -> Result { + let mut vadcop_final_proof = proof + .get_vadcop_final_proof() + .map_err(Error::InvalidProofFormat)?; + vadcop_final_proof.proof = align_to_u64(vadcop_final_proof.proof)?; + vadcop_final_proof.public_values = align_to_u64(vadcop_final_proof.public_values)?; + Ok(vadcop_final_proof) } /// Returns u64-aligned bytes. /// /// Returns an error if `data.len()` is not a multiple of 8. -fn align_to_u64(data: &[u8]) -> Result, Error> { +fn align_to_u64(data: Vec) -> Result, Error> { if !data.len().is_multiple_of(8) { return Err(Error::InvalidProofSize(data.len())); } Ok(if data.as_ptr().cast::().is_aligned() { - Cow::Borrowed(data) + data } else { let mut aligned: Vec = vec![0; data.len() / 8]; - bytemuck::cast_slice_mut(&mut aligned).copy_from_slice(data); - Cow::Owned(bytemuck::cast_slice(&aligned).to_vec()) + bytemuck::cast_slice_mut(&mut aligned).copy_from_slice(&data); + bytemuck::cast_slice(&aligned).to_vec() }) } +fn panic_msg(err: Box) -> String { + None.or_else(|| err.downcast_ref::().cloned()) + .or_else(|| err.downcast_ref::<&'static str>().map(ToString::to_string)) + .unwrap_or_else(|| "unknown panic msg".to_string()) +} + /// Returns path to `~/.zisk` directory. -pub(crate) fn dot_zisk_dir_path() -> PathBuf { +fn dot_zisk_dir_path() -> PathBuf { PathBuf::from(env::var("HOME").expect("env `$HOME` should be set")).join(".zisk") } + +/// Returns path to `~/.zisk/cache` directory. +fn cache_path() -> PathBuf { + dot_zisk_dir_path().join("cache") +} + +/// Returns path to `~/.zisk/provingKey` directory. +fn proving_key_path() -> PathBuf { + dot_zisk_dir_path().join("provingKey") +} diff --git a/crates/zkvm/zisk/src/zkvm/cluster_client.rs b/crates/zkvm/zisk/src/zkvm/sdk/cluster.rs similarity index 81% rename from crates/zkvm/zisk/src/zkvm/cluster_client.rs rename to crates/zkvm/zisk/src/zkvm/sdk/cluster.rs index dcc36e7..38494ec 100644 --- a/crates/zkvm/zisk/src/zkvm/cluster_client.rs +++ b/crates/zkvm/zisk/src/zkvm/sdk/cluster.rs @@ -1,16 +1,25 @@ //! Remote ZisK cluster proving. -use crate::zkvm::Error; +use crate::zkvm::{ + Error, + sdk::cluster::api::{ + ErrorResponse, HintsMode, InputMode, LaunchProofRequest, ProofStatusType, + SubscribeToProofRequest, SystemStatusRequest, launch_proof_response, + system_status_response, zisk_distributed_api_client::ZiskDistributedApiClient, + }, +}; use ere_zkvm_interface::zkvm::{RemoteProverConfig, block_on}; use futures_util::StreamExt; use std::time::Duration; use tonic::transport::Channel; use tracing::debug; -use zisk_distributed_grpc_api::{ - ErrorResponse, InputMode, LaunchProofRequest, ProofStatusType, SubscribeToProofRequest, - SystemStatusRequest, launch_proof_response, system_status_response, - zisk_distributed_api_client::ZiskDistributedApiClient, -}; +use zisk_sdk::ZiskProofWithPublicValues; + +#[rustfmt::skip] +mod api; + +#[cfg(test)] +mod test; /// Wrapper for the ZisK cluster client. /// @@ -27,14 +36,17 @@ impl ClusterClient { } /// Sync wrapper for [`Self::prove_async`]. - pub fn prove(&self, input: &[u8]) -> Result<(Vec, Duration), Error> { + pub fn prove(&self, input: &[u8]) -> Result<(ZiskProofWithPublicValues, Duration), Error> { block_on(self.prove_async(input)) } /// Send proof request to cluster and wait for completion. /// - /// Returns the proof and proving time reported by the cluster. - async fn prove_async(&self, input: &[u8]) -> Result<(Vec, Duration), Error> { + /// Returns the proof with public values and proving time reported by the cluster. + async fn prove_async( + &self, + input: &[u8], + ) -> Result<(ZiskProofWithPublicValues, Duration), Error> { let mut client = self.client.clone(); // Check system status to get available compute capacity @@ -80,9 +92,12 @@ impl ClusterClient { let launch_request = LaunchProofRequest { data_id, compute_capacity, - input_mode: InputMode::Data.into(), - input_path: None, + minimal_compute_capacity: compute_capacity, + inputs_mode: InputMode::Data.into(), + inputs_uri: None, input_data: Some(input.to_vec()), + hints_mode: HintsMode::None.into(), + hints_uri: None, simulated_node: None, }; @@ -120,16 +135,19 @@ impl ClusterClient { match ProofStatusType::try_from(update.status) { Ok(ProofStatusType::ProofStatusCompleted) => match update.final_proof { Some(final_proof) => { - let proof = bytemuck::cast_slice(&final_proof.values).to_vec(); + let proof_with_publics = ZiskProofWithPublicValues::new_from_vadcop_proof( + &final_proof.values, + false, + ) + .map_err(Error::InvalidProofFormat)?; let proving_time = Duration::from_millis(update.duration_ms); debug!( - proof_size = proof.len(), proving_time = ?proving_time, "Proof generated successfully" ); - Ok((proof, proving_time)) + Ok((proof_with_publics, proving_time)) } None => Err(cluster_error("Missing final proof")), }, diff --git a/crates/zkvm/zisk/src/zkvm/sdk/cluster/api.rs b/crates/zkvm/zisk/src/zkvm/sdk/cluster/api.rs new file mode 100644 index 0000000..d154426 --- /dev/null +++ b/crates/zkvm/zisk/src/zkvm/sdk/cluster/api.rs @@ -0,0 +1,381 @@ +// This file is @generated by prost-build. +/// Standardized error response +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] +pub struct ErrorResponse { + /// Error code + #[prost(string, tag = "1")] + pub code: ::prost::alloc::string::String, + /// Human-readable error message + #[prost(string, tag = "2")] + pub message: ::prost::alloc::string::String, +} +#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)] +pub struct SystemStatusRequest {} +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] +pub struct SystemStatusResponse { + #[prost(oneof = "system_status_response::Result", tags = "1, 2")] + pub result: ::core::option::Option, +} +/// Nested message and enum types in `SystemStatusResponse`. +pub mod system_status_response { + #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)] + pub enum Result { + #[prost(message, tag = "1")] + Status(super::SystemStatus), + #[prost(message, tag = "2")] + Error(super::ErrorResponse), + } +} +#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)] +pub struct SystemStatus { + #[prost(uint32, tag = "1")] + pub total_workers: u32, + #[prost(uint32, tag = "2")] + pub compute_capacity: u32, + #[prost(uint32, tag = "3")] + pub idle_workers: u32, + #[prost(uint32, tag = "4")] + pub busy_workers: u32, + #[prost(uint32, tag = "5")] + pub active_jobs: u32, +} +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] +pub struct LaunchProofRequest { + #[prost(string, tag = "1")] + pub data_id: ::prost::alloc::string::String, + #[prost(uint32, tag = "2")] + pub compute_capacity: u32, + #[prost(uint32, tag = "3")] + pub minimal_compute_capacity: u32, + #[prost(enumeration = "InputMode", tag = "4")] + pub inputs_mode: i32, + #[prost(string, optional, tag = "5")] + pub inputs_uri: ::core::option::Option<::prost::alloc::string::String>, + /// Input data sent directly from client + #[prost(bytes = "vec", optional, tag = "6")] + pub input_data: ::core::option::Option<::prost::alloc::vec::Vec>, + #[prost(enumeration = "HintsMode", tag = "7")] + pub hints_mode: i32, + #[prost(string, optional, tag = "8")] + pub hints_uri: ::core::option::Option<::prost::alloc::string::String>, + /// If set, indicates this is a simulated worker + #[prost(uint32, optional, tag = "9")] + pub simulated_node: ::core::option::Option, +} +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] +pub struct LaunchProofResponse { + #[prost(oneof = "launch_proof_response::Result", tags = "1, 2")] + pub result: ::core::option::Option, +} +/// Nested message and enum types in `LaunchProofResponse`. +pub mod launch_proof_response { + #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)] + pub enum Result { + #[prost(string, tag = "1")] + JobId(::prost::alloc::string::String), + #[prost(message, tag = "2")] + Error(super::ErrorResponse), + } +} +/// Subscription request message +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] +pub struct SubscribeToProofRequest { + #[prost(string, tag = "1")] + pub job_id: ::prost::alloc::string::String, +} +/// Subscription status update (streamed to client) +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] +pub struct ProofStatusUpdate { + #[prost(string, tag = "1")] + pub job_id: ::prost::alloc::string::String, + #[prost(enumeration = "ProofStatusType", tag = "2")] + pub status: i32, + /// Present on success + #[prost(message, optional, tag = "3")] + pub final_proof: ::core::option::Option, + /// Present on failure + #[prost(message, optional, tag = "4")] + pub error: ::core::option::Option, + #[prost(uint64, tag = "5")] + pub duration_ms: u64, +} +#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] +pub struct FinalProof { + #[prost(uint64, repeated, tag = "1")] + pub values: ::prost::alloc::vec::Vec, + #[prost(uint64, tag = "2")] + pub executed_steps: u64, +} +#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] +#[repr(i32)] +pub enum InputMode { + /// No input provided + None = 0, + /// Input will be provided as a PATH + Path = 1, + /// Input data will be sent directly + Data = 2, +} +impl InputMode { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Self::None => "INPUT_MODE_NONE", + Self::Path => "INPUT_MODE_PATH", + Self::Data => "INPUT_MODE_DATA", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "INPUT_MODE_NONE" => Some(Self::None), + "INPUT_MODE_PATH" => Some(Self::Path), + "INPUT_MODE_DATA" => Some(Self::Data), + _ => None, + } + } +} +#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] +#[repr(i32)] +pub enum HintsMode { + /// No hints provided + None = 0, + /// Hints will be provided as a PATH + Path = 1, + /// Hints will be sent as a stream + Stream = 2, +} +impl HintsMode { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Self::None => "HINTS_MODE_NONE", + Self::Path => "HINTS_MODE_PATH", + Self::Stream => "HINTS_MODE_STREAM", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "HINTS_MODE_NONE" => Some(Self::None), + "HINTS_MODE_PATH" => Some(Self::Path), + "HINTS_MODE_STREAM" => Some(Self::Stream), + _ => None, + } + } +} +#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] +#[repr(i32)] +pub enum ProofStatusType { + ProofStatusCompleted = 0, + ProofStatusFailed = 1, +} +impl ProofStatusType { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Self::ProofStatusCompleted => "PROOF_STATUS_COMPLETED", + Self::ProofStatusFailed => "PROOF_STATUS_FAILED", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "PROOF_STATUS_COMPLETED" => Some(Self::ProofStatusCompleted), + "PROOF_STATUS_FAILED" => Some(Self::ProofStatusFailed), + _ => None, + } + } +} +/// Generated client implementations. +pub mod zisk_distributed_api_client { + #![allow( + unused_variables, + dead_code, + missing_docs, + clippy::wildcard_imports, + clippy::let_unit_value, + )] + use tonic::codegen::*; + use tonic::codegen::http::Uri; + #[derive(Debug, Clone)] + pub struct ZiskDistributedApiClient { + inner: tonic::client::Grpc, + } + impl ZiskDistributedApiClient { + /// Attempt to create a new client by connecting to a given endpoint. + pub async fn connect(dst: D) -> Result + where + D: TryInto, + D::Error: Into, + { + let conn = tonic::transport::Endpoint::new(dst)?.connect().await?; + Ok(Self::new(conn)) + } + } + impl ZiskDistributedApiClient + where + T: tonic::client::GrpcService, + T::Error: Into, + T::ResponseBody: Body + std::marker::Send + 'static, + ::Error: Into + std::marker::Send, + { + pub fn new(inner: T) -> Self { + let inner = tonic::client::Grpc::new(inner); + Self { inner } + } + pub fn with_origin(inner: T, origin: Uri) -> Self { + let inner = tonic::client::Grpc::with_origin(inner, origin); + Self { inner } + } + pub fn with_interceptor( + inner: T, + interceptor: F, + ) -> ZiskDistributedApiClient> + where + F: tonic::service::Interceptor, + T::ResponseBody: Default, + T: tonic::codegen::Service< + http::Request, + Response = http::Response< + >::ResponseBody, + >, + >, + , + >>::Error: Into + std::marker::Send + std::marker::Sync, + { + ZiskDistributedApiClient::new(InterceptedService::new(inner, interceptor)) + } + /// Compress requests with the given encoding. + /// + /// This requires the server to support it otherwise it might respond with an + /// error. + #[must_use] + pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self { + self.inner = self.inner.send_compressed(encoding); + self + } + /// Enable decompressing responses. + #[must_use] + pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self { + self.inner = self.inner.accept_compressed(encoding); + self + } + /// Limits the maximum size of a decoded message. + /// + /// Default: `4MB` + #[must_use] + pub fn max_decoding_message_size(mut self, limit: usize) -> Self { + self.inner = self.inner.max_decoding_message_size(limit); + self + } + /// Limits the maximum size of an encoded message. + /// + /// Default: `usize::MAX` + #[must_use] + pub fn max_encoding_message_size(mut self, limit: usize) -> Self { + self.inner = self.inner.max_encoding_message_size(limit); + self + } + /// System status + pub async fn system_status( + &mut self, + request: impl tonic::IntoRequest, + ) -> std::result::Result< + tonic::Response, + tonic::Status, + > { + self.inner + .ready() + .await + .map_err(|e| { + tonic::Status::unknown( + format!("Service was not ready: {}", e.into()), + ) + })?; + let codec = tonic_prost::ProstCodec::default(); + let path = http::uri::PathAndQuery::from_static( + "/zisk.distributed.api.v1.ZiskDistributedApi/SystemStatus", + ); + let mut req = request.into_request(); + req.extensions_mut() + .insert( + GrpcMethod::new( + "zisk.distributed.api.v1.ZiskDistributedApi", + "SystemStatus", + ), + ); + self.inner.unary(req, path, codec).await + } + /// Launch a proof job + pub async fn launch_proof( + &mut self, + request: impl tonic::IntoRequest, + ) -> std::result::Result< + tonic::Response, + tonic::Status, + > { + self.inner + .ready() + .await + .map_err(|e| { + tonic::Status::unknown( + format!("Service was not ready: {}", e.into()), + ) + })?; + let codec = tonic_prost::ProstCodec::default(); + let path = http::uri::PathAndQuery::from_static( + "/zisk.distributed.api.v1.ZiskDistributedApi/LaunchProof", + ); + let mut req = request.into_request(); + req.extensions_mut() + .insert( + GrpcMethod::new( + "zisk.distributed.api.v1.ZiskDistributedApi", + "LaunchProof", + ), + ); + self.inner.unary(req, path, codec).await + } + /// Client subscription to job completion + pub async fn subscribe_to_proof( + &mut self, + request: impl tonic::IntoRequest, + ) -> std::result::Result< + tonic::Response>, + tonic::Status, + > { + self.inner + .ready() + .await + .map_err(|e| { + tonic::Status::unknown( + format!("Service was not ready: {}", e.into()), + ) + })?; + let codec = tonic_prost::ProstCodec::default(); + let path = http::uri::PathAndQuery::from_static( + "/zisk.distributed.api.v1.ZiskDistributedApi/SubscribeToProof", + ); + let mut req = request.into_request(); + req.extensions_mut() + .insert( + GrpcMethod::new( + "zisk.distributed.api.v1.ZiskDistributedApi", + "SubscribeToProof", + ), + ); + self.inner.server_streaming(req, path, codec).await + } + } +} diff --git a/crates/zkvm/zisk/src/zkvm/sdk/cluster/test.rs b/crates/zkvm/zisk/src/zkvm/sdk/cluster/test.rs new file mode 100644 index 0000000..7cd64ec --- /dev/null +++ b/crates/zkvm/zisk/src/zkvm/sdk/cluster/test.rs @@ -0,0 +1,31 @@ +use std::{env, fs, path::PathBuf}; + +/// To sync generated `api.rs`, run: +/// +/// ``` +/// cargo test --package ere-zisk --lib --release -- zkvm::cluster_client::test::api_generation --exact +/// ``` +#[test] +fn api_generation() { + let tempdir = tempfile::tempdir().unwrap(); + let dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")); + let proto_dir = dir.join("src/zkvm/sdk/cluster"); + + tonic_prost_build::configure() + .build_server(false) + .out_dir(tempdir.path()) + .compile_protos( + &[&proto_dir.join("zisk_distributed_api.proto")], + &[&proto_dir], + ) + .unwrap(); + + let latest = tempdir.path().join("zisk.distributed.api.v1.rs"); + let current = proto_dir.join("api.rs"); + + // If it's in CI env, don't overwrite but only check if it's up-to-date. + if env::var_os("GITHUB_ACTIONS").is_none() { + fs::copy(&latest, ¤t).unwrap(); + } + assert_eq!(fs::read(&latest).unwrap(), fs::read(¤t).unwrap()); +} diff --git a/crates/zkvm/zisk/src/zkvm/sdk/cluster/zisk_distributed_api.proto b/crates/zkvm/zisk/src/zkvm/sdk/cluster/zisk_distributed_api.proto new file mode 100644 index 0000000..4bc4dab --- /dev/null +++ b/crates/zkvm/zisk/src/zkvm/sdk/cluster/zisk_distributed_api.proto @@ -0,0 +1,112 @@ +syntax = "proto3"; + +package zisk.distributed.api.v1; + +// ============================================================================ +// gRPC Service Definition +// ============================================================================ + +service ZiskDistributedApi { + // System status + rpc SystemStatus(SystemStatusRequest) returns (SystemStatusResponse); + + // Launch a proof job + rpc LaunchProof(LaunchProofRequest) returns (LaunchProofResponse); + + // Client subscription to job completion + rpc SubscribeToProof(SubscribeToProofRequest) returns (stream ProofStatusUpdate); +} + +// ============================================================================ +// Common Types +// ============================================================================ + +// Standardized error response +message ErrorResponse { + string code = 1; // Error code + string message = 2; // Human-readable error message +} + +// ============================================================================ +// SystemStatus +// ============================================================================ + +message SystemStatusRequest {} + +message SystemStatusResponse { + oneof result { + SystemStatus status = 1; + ErrorResponse error = 2; + } +} + +message SystemStatus { + uint32 total_workers = 1; + uint32 compute_capacity = 2; + uint32 idle_workers = 3; + uint32 busy_workers = 4; + uint32 active_jobs = 5; +} + +// ============================================================================ +// LaunchProof +// ============================================================================ + +message LaunchProofRequest { + string data_id = 1; + uint32 compute_capacity = 2; + uint32 minimal_compute_capacity = 3; + InputMode inputs_mode = 4; + optional string inputs_uri = 5; + optional bytes input_data = 6; // Input data sent directly from client + HintsMode hints_mode = 7; + optional string hints_uri = 8; + optional uint32 simulated_node = 9; // If set, indicates this is a simulated worker +} + +enum InputMode { + INPUT_MODE_NONE = 0; // No input provided + INPUT_MODE_PATH = 1; // Input will be provided as a PATH + INPUT_MODE_DATA = 2; // Input data will be sent directly +} + +enum HintsMode { + HINTS_MODE_NONE = 0; // No hints provided + HINTS_MODE_PATH = 1; // Hints will be provided as a PATH + HINTS_MODE_STREAM = 2; // Hints will be sent as a stream +} + +message LaunchProofResponse { + oneof result { + string job_id = 1; + ErrorResponse error = 2; + } +} + +// ============================================================================ +// SubscribeToProof +// ============================================================================ + +// Subscription request message +message SubscribeToProofRequest { + string job_id = 1; +} + +// Subscription status update (streamed to client) +message ProofStatusUpdate { + string job_id = 1; + ProofStatusType status = 2; + optional FinalProof final_proof = 3; // Present on success + optional ErrorResponse error = 4; // Present on failure + uint64 duration_ms = 5; +} + +enum ProofStatusType { + PROOF_STATUS_COMPLETED = 0; + PROOF_STATUS_FAILED = 1; +} + +message FinalProof { + repeated uint64 values = 1; + uint64 executed_steps = 2; +} diff --git a/crates/zkvm/zisk/src/zkvm/sdk/local.rs b/crates/zkvm/zisk/src/zkvm/sdk/local.rs new file mode 100644 index 0000000..77a148c --- /dev/null +++ b/crates/zkvm/zisk/src/zkvm/sdk/local.rs @@ -0,0 +1,100 @@ +use crate::zkvm::{ + Error, + sdk::{cache_path, panic_msg, proving_key_path}, +}; +use ere_zkvm_interface::zkvm::CommonError; +use parking_lot::{Mutex, MutexGuard}; +use proofman::ProofMan; +use proofman_common::VerboseMode; +use proofman_fields::Goldilocks; +use std::{fs, ops::Deref}; +use std::{panic, time::Duration}; +use tempfile::tempdir; +use tracing::info; +use zisk_rom_setup::{assembly_files_exist, gen_assembly}; +use zisk_sdk::{ + Asm, ElfBinaryFromFile, ProofOpts, ProverClient, ZiskProofWithPublicValues, ZiskProver, + ZiskStdin, +}; + +pub struct LocalProver { + elf: Vec, + setup: Mutex, + prover: Mutex>>, +} + +impl LocalProver { + pub fn new(elf: Vec) -> Result { + Ok(Self { + elf, + setup: Mutex::new(false), + prover: Mutex::new(None), + }) + } + + pub fn prove(&self, stdin: &[u8]) -> Result<(ZiskProofWithPublicValues, Duration), Error> { + self.setup()?; + + let prover = self.prover().map_err(Error::InitProver)?; + let stdin = ZiskStdin::from_vec(stdin.to_vec()); + let tempdir = tempdir().map_err(CommonError::tempdir)?; + let opts = ProofOpts::default().output_dir(tempdir.path().to_path_buf()); + + let result = panic::catch_unwind(|| prover.prove(stdin).with_proof_options(opts).run()) + .map_err(|err| { + drop(prover); + self.prover.lock().take(); + Error::ProvePanic(panic_msg(err)) + })? + .map_err(Error::Prove)?; + + Ok(( + result.get_proof_with_publics().clone(), + result.get_duration(), + )) + } + + fn setup(&self) -> Result<(), Error> { + let mut guard = self.setup.lock(); + if *guard { + return Ok(()); + } + + info!("Running Proofman check_setup..."); + + ProofMan::::check_setup(proving_key_path(), true, VerboseMode::Info) + .map_err(Error::CheckSetup)?; + + *guard = true; + Ok(()) + } + + fn prover(&self) -> anyhow::Result>> { + let mut guard = self.prover.lock(); + + if guard.is_none() { + let tempdir = tempdir().map_err(CommonError::tempdir)?; + let elf_path = tempdir.path().join("elf"); + + fs::write(&elf_path, &self.elf) + .map_err(|err| CommonError::write_file("elf", &elf_path, err))?; + + if !assembly_files_exist(&elf_path, &cache_path(), false)? { + gen_assembly(&elf_path, &None, &None, false, false)?; + } + + info!("Initializing local ZisK prover..."); + + let prover = ProverClient::builder().asm().build()?; + + let elf_binary = ElfBinaryFromFile::new(&elf_path, false)?; + prover.setup(&elf_binary)?; + + info!("Local ZisK prover initialized"); + + *guard = Some(prover); + } + + Ok(MutexGuard::map(guard, |prover| prover.as_mut().unwrap())) + } +} diff --git a/crates/zkvm/zisk/src/zkvm/server.rs b/crates/zkvm/zisk/src/zkvm/server.rs deleted file mode 100644 index a212ba7..0000000 --- a/crates/zkvm/zisk/src/zkvm/server.rs +++ /dev/null @@ -1,461 +0,0 @@ -//! Local ZisK server management via `cargo-zisk` commands. - -use crate::zkvm::{Error, sdk::dot_zisk_dir_path}; -use ere_zkvm_interface::zkvm::CommonError; -use parking_lot::Mutex; -use std::{ - collections::BTreeMap, - env, fs, - io::Write, - iter, - net::{Ipv4Addr, TcpStream}, - path::{Path, PathBuf}, - process::{Child, Command, Stdio}, - thread, - time::{Duration, Instant}, -}; -use strum::{EnumIter, IntoEnumIterator}; -use tempfile::tempdir; -use tracing::{error, info}; -use wait_timeout::ChildExt; - -pub const DEFAULT_START_SERVER_TIMEOUT_SEC: u64 = 120; // 2 mins -pub const DEFAULT_SHUTDOWN_SERVER_TIMEOUT_SEC: u64 = 30; // 30 secs -pub const DEFAULT_PROVE_TIMEOUT_SEC: u64 = 3600; // 1 hour - -/// ZisK server status returned from `cargo-zisk prove-client status`. -#[derive(Debug)] -pub enum ZiskServerStatus { - Idle, - Working, -} - -/// Options of `cargo-zisk` commands. -#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, EnumIter)] -pub enum ZiskServerOption { - Port, - UnlockMappedMemory, // Should be set if locked memory is not enough - MinimalMemory, - // GPU options - Preallocate, // Should be set only if GPU memory is enough - SharedTables, - MaxStreams, - NumberThreadsWitness, - MaxWitnessStored, -} - -impl ZiskServerOption { - /// The key of the env variable to read from. - fn env_var_key(&self) -> &'static str { - match self { - Self::Port => "ERE_ZISK_PORT", - Self::UnlockMappedMemory => "ERE_ZISK_UNLOCK_MAPPED_MEMORY", - Self::MinimalMemory => "ERE_ZISK_MINIMAL_MEMORY", - Self::Preallocate => "ERE_ZISK_PREALLOCATE", - Self::SharedTables => "ERE_ZISK_SHARED_TABLES", - Self::MaxStreams => "ERE_ZISK_MAX_STREAMS", - Self::NumberThreadsWitness => "ERE_ZISK_NUMBER_THREADS_WITNESS", - Self::MaxWitnessStored => "ERE_ZISK_MAX_WITNESS_STORED", - } - } - - /// Whether the option is a flag (false-by-default boolean option) or not. - /// - /// When we read the option from env variable, if the option is a flag, - /// we only check if the env variable is set or not. - fn is_flag(&self) -> bool { - match self { - Self::UnlockMappedMemory - | Self::MinimalMemory - | Self::Preallocate - | Self::SharedTables => true, - Self::Port | Self::MaxStreams | Self::NumberThreadsWitness | Self::MaxWitnessStored => { - false - } - } - } - - /// The option key to be appended to `cargo-zisk` command arguments. - fn key(&self) -> &'static str { - match self { - Self::Port => "--port", - Self::UnlockMappedMemory => "--unlock-mapped-memory", - // NOTE: Use snake case for `prove-client` command - // Issue for tracking: https://github.com/eth-act/ere/issues/151. - Self::MinimalMemory => "--minimal_memory", - Self::Preallocate => "--preallocate", - Self::SharedTables => "--shared-tables", - Self::MaxStreams => "--max-streams", - Self::NumberThreadsWitness => "--number-threads-witness", - Self::MaxWitnessStored => "--max-witness-stored", - } - } -} - -/// Configurable options for `cargo-zisk server` and `cargo-zisk prove-client` commands. -#[derive(Clone)] -pub struct ZiskServerOptions(BTreeMap); - -impl ZiskServerOptions { - /// Read options from env variables. - pub fn from_env() -> Self { - Self( - ZiskServerOption::iter() - .flat_map(|option| env::var(option.env_var_key()).ok().map(|val| (option, val))) - .collect(), - ) - } - - /// Returns `cargo-zisk` command arguments by given options that have been - /// set. - fn args( - &self, - options: impl IntoIterator, - ) -> impl Iterator { - options - .into_iter() - .filter(|option| self.0.contains_key(option)) - .flat_map(|option| { - iter::once(option.key()) - .chain((!option.is_flag()).then(|| self.0[&option].as_str())) - }) - } - - /// Returns `cargo-zisk server` command arguments. - pub(crate) fn server_args(&self) -> impl Iterator { - self.args([ - ZiskServerOption::Port, - ZiskServerOption::UnlockMappedMemory, - ZiskServerOption::Preallocate, - ZiskServerOption::SharedTables, - ZiskServerOption::MaxStreams, - ZiskServerOption::NumberThreadsWitness, - ZiskServerOption::MaxWitnessStored, - ]) - } - - /// Returns `cargo-zisk prove-client` command arguments. - pub(crate) fn prove_client_args(&self) -> impl Iterator { - self.args([ZiskServerOption::Port]) - } - - /// Returns `cargo-zisk prove-client prove` command arguments. - pub(crate) fn prove_args(&self) -> impl Iterator { - self.prove_client_args() - .chain(self.args([ZiskServerOption::MinimalMemory])) - } -} - -/// Wrapper for ZisK server child process. -pub struct ZiskServer { - options: ZiskServerOptions, - elf_path: PathBuf, - cuda: bool, - child: Mutex>, -} - -impl Drop for ZiskServer { - fn drop(&mut self) { - self.shutdown(); - } -} - -impl ZiskServer { - /// Create a new ZisK server for the given ELF. - /// - /// The server process is lazily started on the first call to [`prove`](ZiskServer::prove). - pub fn new(elf_path: &Path, cuda: bool, options: ZiskServerOptions) -> Self { - Self { - elf_path: elf_path.to_path_buf(), - cuda, - options, - child: Mutex::new(None), - } - } - - /// Send prove request to server and wait for proof to be created. - /// - /// Returns the proof. - pub fn prove(&self, input: &[u8]) -> Result, Error> { - self.ensure_ready()?; - - // Prefix that ZisK server will add to the file name of the proof. - // We use constant because the file will be save to a temporary dir, - // so there will be no conflict. - const PREFIX: &str = "ere"; - - let tempdir = tempdir().map_err(CommonError::tempdir)?; - let input_path = tempdir.path().join("input"); - let output_path = tempdir.path().join("output"); - let proof_path = output_path.join(format!("{PREFIX}-vadcop_final_proof.bin")); - - fs::write(&input_path, input) - .map_err(|err| CommonError::write_file("input", &input_path, err))?; - - // NOTE: Use snake case for `prove-client` command - // Issue for tracking: https://github.com/eth-act/ere/issues/151. - let mut cmd = Command::new("cargo-zisk"); - let output = cmd - .args(["prove-client", "prove"]) - .arg("--input") - .arg(input_path) - .arg("--output_dir") - .arg(&output_path) - .args(["-p", PREFIX]) - .args(["--aggregation", "--verify_proofs"]) - .args(self.options.prove_args()) - .output() - .map_err(|err| CommonError::command(&cmd, err))?; - - if !output.status.success() { - return Err(CommonError::command_exit_non_zero( - &cmd, - output.status, - Some(&output), - ))?; - } - - // ZisK server will finish the `prove` requested above then respond the - // following `status`. So if the following `status` succeeds, the proof - // should also be ready. - self.status(prove_timeout()).map_err(|err| { - if matches!(err, Error::TimeoutWaitingServerReady) { - Error::TimeoutWaitingServerProving - } else if err.to_string().contains("EOF") { - Error::ServerCrashed - } else { - err - } - })?; - - let proof = fs::read(&proof_path) - .map_err(|err| CommonError::read_file("proof", &proof_path, err))?; - - Ok(proof) - } - - /// Ensure the server is running and responsive, restarting it if needed. - pub fn ensure_ready(&self) -> Result<(), Error> { - if self.child.lock().is_some() && self.status(start_server_timeout()).is_ok() { - return Ok(()); - } - - const MAX_RETRY: usize = 3; - let mut attempt = 0; - - loop { - self.shutdown(); - match self.start() { - Ok(()) => return Ok(()), - Err(Error::TimeoutWaitingServerReady) if attempt < MAX_RETRY => { - error!("Timeout waiting server ready, restarting..."); - attempt += 1; - continue; - } - Err(err) => return Err(err), - } - } - } - - /// Spawn the server process and wait until it's ready. - fn start(&self) -> Result<(), Error> { - info!("Starting ZisK server..."); - - let (cargo_zisk, witness_lib_name) = if self.cuda { - ("cargo-zisk-cuda", "libzisk_witness_cuda.so") - } else { - ("cargo-zisk", "libzisk_witness.so") - }; - let witness_lib_path = dot_zisk_dir_path().join("bin").join(witness_lib_name); - - let mut cmd = Command::new(cargo_zisk); - cmd.arg("server") - .args(self.options.server_args()) - .arg("--elf") - .arg(&self.elf_path) - .arg("--witness-lib") - .arg(witness_lib_path) - .arg("--aggregation"); - - let child = cmd.spawn().map_err(|err| CommonError::command(&cmd, err))?; - - { - let mut guard = self.child.lock(); - *guard = Some(child); - } - - self.wait_until_ready()?; - - Ok(()) - } - - /// Wait until the server status to be idle. - pub fn wait_until_ready(&self) -> Result<(), Error> { - const INTERVAL: Duration = Duration::from_secs(1); - - let timeout = start_server_timeout(); - - info!("Waiting until server is ready..."); - - let start = Instant::now(); - while !matches!(self.status(timeout), Ok(ZiskServerStatus::Idle)) { - if start.elapsed() > timeout { - return Err(Error::TimeoutWaitingServerReady); - } - thread::sleep(INTERVAL); - } - - Ok(()) - } - - /// Gracefully shut down the server, falling back to force-kill on failure. - fn shutdown(&self) { - let mut guard = self.child.lock(); - let Some(mut child) = guard.take() else { - return; - }; - - info!("Shutting down ZisK server"); - - let mut cmd = Command::new("cargo-zisk"); - let result = cmd - .args(["prove-client", "shutdown"]) - .args(self.options.prove_client_args()) - .stdout(Stdio::piped()) - .stderr(Stdio::piped()) - .spawn() - .and_then( - |mut child| match child.wait_timeout(shutdown_server_timeout())? { - Some(_) => child.wait_with_output(), - None => { - child.kill().ok(); - Err(std::io::Error::other("shutdown command timed out")) - } - }, - ); - - if result.as_ref().is_ok_and(|output| output.status.success()) { - info!("Shutdown ZisK server"); - } else { - error!( - "Failed to shutdown ZisK server: {}", - result - .map(|output| String::from_utf8_lossy(&output.stderr).to_string()) - .unwrap_or_else(|err| err.to_string()) - ); - error!("Shutdown server child process and asm services manually..."); - let _ = child.kill(); - shutdown_asm_service(23115); - shutdown_asm_service(23116); - shutdown_asm_service(23117); - remove_shm_files(); - } - } - - /// Get status of server. - fn status(&self, timeout: Duration) -> Result { - let mut cmd = Command::new("cargo-zisk"); - let mut child = cmd - .args(["prove-client", "status"]) - .args(self.options.prove_client_args()) - .stdout(Stdio::piped()) - .stderr(Stdio::piped()) - .spawn() - .map_err(|err| CommonError::command(&cmd, err))?; - - if child - .wait_timeout(timeout) - .map_err(|err| CommonError::command(&cmd, err))? - .is_none() - { - // Timeout reached, kill the process - child.kill().ok(); - return Err(Error::TimeoutWaitingServerReady); - } - - let output = child - .wait_with_output() - .map_err(|err| CommonError::command(&cmd, err))?; - - if !output.status.success() { - return Err(CommonError::command_exit_non_zero( - &cmd, - output.status, - Some(&output), - ))?; - } - - let stdout = String::from_utf8_lossy(&output.stdout); - if stdout.contains("idle") { - Ok(ZiskServerStatus::Idle) - } else if stdout.contains("working") { - Ok(ZiskServerStatus::Working) - } else { - Err(Error::UnknownServerStatus { - stdout: stdout.to_string(), - }) - } - } -} - -/// Send shutdown request to ZisK asm services. -fn shutdown_asm_service(port: u16) { - // According to https://github.com/0xPolygonHermez/zisk/blob/v0.15.0/emulator-asm/asm-runner/src/asm_services/mod.rs#L34. - const CMD_SHUTDOWN_REQUEST_ID: u64 = 1000000; - if let Ok(mut stream) = TcpStream::connect((Ipv4Addr::LOCALHOST, port)) { - let _ = stream.write_all( - &[CMD_SHUTDOWN_REQUEST_ID, 0, 0, 0, 0] - .into_iter() - .flat_map(|word| word.to_le_bytes()) - .collect::>(), - ); - } -} - -/// Remove shared memory created by ZisK. -fn remove_shm_files() { - let Ok(shm_dir) = fs::read_dir(Path::new("/dev/shm")) else { - return; - }; - - for entry in shm_dir.flatten() { - let path = entry.path(); - if path - .file_name() - .and_then(|n| n.to_str()) - .is_some_and(|name| name.starts_with("ZISK") || name.starts_with("sem")) - { - let _ = fs::remove_file(&path); - } - } -} - -/// Returns the server start timeout, configurable via `ERE_ZISK_START_SERVER_TIMEOUT_SEC`. -fn start_server_timeout() -> Duration { - timeout( - "ERE_ZISK_START_SERVER_TIMEOUT_SEC", - DEFAULT_START_SERVER_TIMEOUT_SEC, - ) -} - -/// Returns the server shutdown timeout, configurable via `ERE_ZISK_SHUTDOWN_SERVER_TIMEOUT_SEC`. -fn shutdown_server_timeout() -> Duration { - timeout( - "ERE_ZISK_SHUTDOWN_SERVER_TIMEOUT_SEC", - DEFAULT_SHUTDOWN_SERVER_TIMEOUT_SEC, - ) -} - -/// Returns the prove timeout, configurable via `ERE_ZISK_PROVE_TIMEOUT_SEC`. -fn prove_timeout() -> Duration { - timeout("ERE_ZISK_PROVE_TIMEOUT_SEC", DEFAULT_PROVE_TIMEOUT_SEC) -} - -/// Read a timeout from the given env variable key, falling back to `default`. -fn timeout(key: &str, default: u64) -> Duration { - let sec = env::var(key) - .ok() - .and_then(|timeout| timeout.parse::().ok()) - .unwrap_or(default); - Duration::from_secs(sec) -} diff --git a/docker/zisk/Dockerfile.base b/docker/zisk/Dockerfile.base index 067ade9..68b9d4a 100644 --- a/docker/zisk/Dockerfile.base +++ b/docker/zisk/Dockerfile.base @@ -6,9 +6,6 @@ FROM $BASE_IMAGE # ZisK requires Ubuntu 22.04 or higher (ere-base uses 24.04 by default). # We operate as root for SDK and dependency installation. -# Whether to enable CUDA feature or not. -ARG CUDA - # Install ZisK system dependencies (for Ubuntu) # Taken from https://0xpolygonhermez.github.io/zisk/getting_started/installation.html RUN apt-get update && apt-get install -y --no-install-recommends \ @@ -37,8 +34,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ gcc-riscv64-unknown-elf \ && apt-get clean && rm -rf /var/lib/apt/lists/* -# Default to build for RTX 50 series -ARG CUDA_ARCH=sm_120 # Copy the ZisK SDK installer script from the workspace context COPY --chmod=755 scripts/sdk_installers/install_zisk_sdk.sh /tmp/install_zisk_sdk.sh diff --git a/docker/zisk/Dockerfile.server b/docker/zisk/Dockerfile.server index 9fa9499..2d69a83 100644 --- a/docker/zisk/Dockerfile.server +++ b/docker/zisk/Dockerfile.server @@ -14,6 +14,9 @@ WORKDIR /ere ARG CUDA ARG RUSTFLAGS +# Default to build for RTX 50 series +ARG CUDA_ARCH=sm_120 + RUN cargo build --release --package ere-server --bin ere-server --features zisk${CUDA:+,cuda} \ && mkdir bin && mv target/release/ere-server bin/ere-server \ && cargo clean && rm -rf $CARGO_HOME/registry/ diff --git a/scripts/sdk_installers/install_zisk_sdk.sh b/scripts/sdk_installers/install_zisk_sdk.sh index b9059b1..81e6ae8 100755 --- a/scripts/sdk_installers/install_zisk_sdk.sh +++ b/scripts/sdk_installers/install_zisk_sdk.sh @@ -28,69 +28,49 @@ echo "Installing ZisK Toolchain and SDK using ziskup (prebuilt binaries)..." ensure_tool_installed "curl" "to download the ziskup installer" ensure_tool_installed "bash" "to run the ziskup installer" ensure_tool_installed "rustup" "for managing Rust toolchains (ZisK installs its own)" -ensure_tool_installed "cargo" "as cargo-zisk is a cargo subcommand" +ensure_tool_installed "cargo" "to pre-build lib-c" # Step 1: Download and run the script that installs the ziskup binary itself. -# Export SETUP_KEY=proving-no-consttree to download proving key but avoid doing -# cargo-zisk check-setup. -export ZISK_VERSION="0.15.0" -export SETUP_KEY=${SETUP_KEY:=proving-no-consttree} -curl "https://raw.githubusercontent.com/0xPolygonHermez/zisk/main/ziskup/install.sh" | bash -unset SETUP_KEY +# Export SETUP_KEY=proving-no-consttree to download proving key without doing setup. +export ZISK_VERSION="0.16.0" +# export SETUP_KEY=${SETUP_KEY:=proving-no-consttree} +# curl "https://raw.githubusercontent.com/0xPolygonHermez/zisk/main/ziskup/install.sh" | bash +# unset SETUP_KEY -# Step 2: Ensure the installed cargo-zisk binary is in PATH for this script session. -export PATH="$PATH:$HOME/.zisk/bin" - -# FIXME: Issue for tracking: https://github.com/eth-act/ere/issues/200. +# FIXME: Remove and download from prebuilt when released if true; then + ZISK_DIR="$HOME/.zisk" + BUCKET_URL="https://storage.googleapis.com/zisk-setup" + KEY_FILE="zisk-provingkey-pre-$ZISK_VERSION.tar.gz" + + mkdir -p "$ZISK_DIR/bin" "$ZISK_DIR/zisk/emulator-asm" + + # Download and install proving key + rm -rf "$ZISK_DIR/provingKey" "$ZISK_DIR/verifyKey" "$ZISK_DIR/cache" + curl -L -#o "/tmp/$KEY_FILE" "$BUCKET_URL/$KEY_FILE" + tar -xf "/tmp/$KEY_FILE" -C "$ZISK_DIR" + rm -f "/tmp/$KEY_FILE" + + # Build libziskclib.a WORKSPACE=$(mktemp -d) - git clone https://github.com/han0110/zisk.git --depth 1 --branch patch/v0.15.0 "$WORKSPACE" - cargo build --manifest-path "$WORKSPACE/Cargo.toml" --release - cp "$WORKSPACE/target/release/cargo-zisk" "$HOME/.zisk/bin/cargo-zisk" - cp "$WORKSPACE/target/release/libzisk_witness.so" "$HOME/.zisk/bin/libzisk_witness.so" - rm -rf "$WORKSPACE" + git clone --depth 1 --branch "pre-develop-$ZISK_VERSION" https://github.com/0xPolygonHermez/zisk.git "$WORKSPACE" + cargo build --manifest-path "$WORKSPACE/Cargo.toml" --release --package ziskclib --package cargo-zisk + + # Install toolchain + "$WORKSPACE/target/release/cargo-zisk" sdk install-toolchain + + # Copy files + cp "$WORKSPACE/target/release/cargo-zisk" "$ZISK_DIR/bin/" + cp "$WORKSPACE/target/release/libziskclib.a" "$ZISK_DIR/bin/" + cp -r "$WORKSPACE/emulator-asm/src" "$ZISK_DIR/zisk/emulator-asm/" + cp "$WORKSPACE/emulator-asm/Makefile" "$ZISK_DIR/zisk/emulator-asm/" + cp -r "$WORKSPACE/lib-c" "$ZISK_DIR/zisk/" + + # Cleanup + rm -rf "${WORKSPACE}" fi -# Verify ZisK installation -echo "Verifying ZisK installation..." - -echo "Checking for 'zisk' toolchain..." -if rustup toolchain list | grep -q "^zisk"; then - echo "ZisK Rust toolchain found." -else - echo "Error: ZisK Rust toolchain ('zisk') not found after installation!" >&2 - exit 1 -fi - -echo "Checking for cargo-zisk CLI tool..." -if cargo-zisk --version; then - echo "cargo-zisk CLI tool verified successfully." -else - echo "Error: 'cargo-zisk --version' failed." >&2 - exit 1 -fi - -# Step 3: Build cargo-zisk-cuda from source with `gpu` feature enabled -if [ -n "$CUDA" ]; then - WORKSPACE=$(mktemp -d) - # FIXME: Issue for tracking: https://github.com/eth-act/ere/issues/200. - # git clone https://github.com/0xPolygonHermez/zisk.git --depth 1 --tag "v$ZISK_VERSION" "$WORKSPACE" - git clone https://github.com/han0110/zisk.git --depth 1 --branch patch/v0.15.0 "$WORKSPACE" - cargo build --manifest-path "$WORKSPACE/Cargo.toml" --release --features gpu - cp "$WORKSPACE/target/release/cargo-zisk" "$HOME/.zisk/bin/cargo-zisk-cuda" - cp "$WORKSPACE/target/release/libzisk_witness.so" "$HOME/.zisk/bin/libzisk_witness_cuda.so" - rm -rf "$WORKSPACE" - - echo "Checking for cargo-zisk-cuda CLI tool..." - if cargo-zisk-cuda --version; then - echo "cargo-zisk-cuda CLI tool verified successfully." - else - echo "Error: 'cargo-zisk-cuda --version' failed." >&2 - exit 1 - fi -fi - -# Step 4: Make sure `lib-c`'s build script is ran. +# Step 2: Make sure `lib-c`'s build script is ran. # # `ziskos` provides guest program runtime, and `lib-c` is a dependency of `ziskos`, # when we need to compile guest, the `build.rs` of `lib-c` will need to be ran once, @@ -98,8 +78,8 @@ fi # So here we make sure it's already ran, and the built thing will be stored in # `$CARGO_HOME/git/checkouts/zisk-{hash}/{rev}/lib-c/c/build`, so could be # re-used as long as the `ziskos` has the same version. -WORKSPACE="/tmp/build-lib-c" -cargo new "$WORKSPACE" --name build-lib-c -cargo add lib-c --git https://github.com/0xPolygonHermez/zisk.git --tag "v$ZISK_VERSION" --manifest-path "$WORKSPACE/Cargo.toml" +WORKSPACE=$(mktemp -d) +cargo init "$WORKSPACE" --name build-lib-c +cargo add lib-c --git https://github.com/0xPolygonHermez/zisk.git --branch "pre-develop-$ZISK_VERSION" --manifest-path "$WORKSPACE/Cargo.toml" cargo build --manifest-path "$WORKSPACE/Cargo.toml" rm -rf "$WORKSPACE" diff --git a/tests/zisk/basic_go/go.mod b/tests/zisk/basic_go/go.mod index 5ab7560..a6a98fd 100644 --- a/tests/zisk/basic_go/go.mod +++ b/tests/zisk/basic_go/go.mod @@ -11,3 +11,6 @@ require ( github.com/usbarmory/tamago v0.0.0-20250710154000-3dd21eabac74 // indirect github.com/x448/float16 v0.8.4 // indirect ) + +// FIXME: Remove when it is upstreamed +replace github.com/eth-act/skunkworks-tama => github.com/han0110/skunkworks-tama v0.0.0-20260218141853-cc6e788414fe diff --git a/tests/zisk/basic_go/go.sum b/tests/zisk/basic_go/go.sum index 276b6d1..5976d63 100644 --- a/tests/zisk/basic_go/go.sum +++ b/tests/zisk/basic_go/go.sum @@ -1,7 +1,7 @@ -github.com/eth-act/skunkworks-tama v0.0.0-20251105112532-eff8e3af014b h1:Nm1FYhFjCWnKkaRZzSjGmeWdqevsunbpOnYOayWpuoM= -github.com/eth-act/skunkworks-tama v0.0.0-20251105112532-eff8e3af014b/go.mod h1:M9fXNuyicUdFmj5nBlXRTNcUbJIDLMMs4eY1QoZHM3g= github.com/fxamacker/cbor/v2 v2.9.0 h1:NpKPmjDBgUfBms6tr6JZkTHtfFGcMKsw3eGcmD/sapM= github.com/fxamacker/cbor/v2 v2.9.0/go.mod h1:vM4b+DJCtHn+zz7h3FFp/hDAI9WNWCsZj23V5ytsSxQ= +github.com/han0110/skunkworks-tama v0.0.0-20260218141853-cc6e788414fe h1:lv5TcqAYJUVs6e0iGzZy4/EWUMcimTNYTeO9MXQrL+A= +github.com/han0110/skunkworks-tama v0.0.0-20260218141853-cc6e788414fe/go.mod h1:M9fXNuyicUdFmj5nBlXRTNcUbJIDLMMs4eY1QoZHM3g= github.com/usbarmory/tamago v0.0.0-20250710154000-3dd21eabac74 h1:zH22Y68S2cpwW278H+9v4r2SWpdP+JwUk/AwVc9LOlw= github.com/usbarmory/tamago v0.0.0-20250710154000-3dd21eabac74/go.mod h1:0Bc0GnC88LvCAoCRUcd3DBFl7cribfVbCsiMJUbXyAE= github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM=