diff --git a/Cargo.lock b/Cargo.lock index 8a3eab27..ca004be0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1720,12 +1720,6 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" -[[package]] -name = "convert_case" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" - [[package]] name = "convert_case" version = "0.7.1" @@ -1896,6 +1890,22 @@ dependencies = [ "memchr", ] +[[package]] +name = "ctor" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67773048316103656a637612c4a62477603b777d91d9c62ff2290f9cde178fdb" +dependencies = [ + "ctor-proc-macro", + "dtor", +] + +[[package]] +name = "ctor-proc-macro" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2931af7e13dc045d8e9d26afccc6fa115d64e115c9c84b1166288b46f6782c2" + [[package]] name = "ctr" version = "0.10.0-rc.1" @@ -2079,19 +2089,6 @@ dependencies = [ "syn 2.0.106", ] -[[package]] -name = "derive_more" -version = "0.99.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f" -dependencies = [ - "convert_case 0.4.0", - "proc-macro2", - "quote", - "rustc_version 0.4.1", - "syn 2.0.106", -] - [[package]] name = "derive_more" version = "1.0.0" @@ -2128,7 +2125,7 @@ version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ - "convert_case 0.7.1", + "convert_case", "proc-macro2", "quote", "syn 2.0.106", @@ -2179,6 +2176,21 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" +[[package]] +name = "dtor" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e58a0764cddb55ab28955347b45be00ade43d4d6f3ba4bf3dc354e4ec9432934" +dependencies = [ + "dtor-proc-macro", +] + +[[package]] +name = "dtor-proc-macro" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f678cf4a922c215c63e0de95eb1ff08a958a81d47e485cf9da1e27bf6305cfa5" + [[package]] name = "dunce" version = "1.0.5" @@ -3497,7 +3509,7 @@ dependencies = [ [[package]] name = "k256" version = "0.13.4" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "ecdsa", "elliptic-curve", @@ -4199,8 +4211,8 @@ dependencies = [ [[package]] name = "openvm" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "bytemuck", "getrandom 0.2.16", @@ -4214,8 +4226,8 @@ dependencies = [ [[package]] name = "openvm-algebra-circuit" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cfg-if", "derive-new 0.6.0", @@ -4246,8 +4258,8 @@ dependencies = [ [[package]] name = "openvm-algebra-complex-macros" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-macros-common", "quote", @@ -4256,8 +4268,8 @@ dependencies = [ [[package]] name = "openvm-algebra-guest" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "halo2curves-axiom", "num-bigint 0.4.6", @@ -4272,8 +4284,8 @@ dependencies = [ [[package]] name = "openvm-algebra-moduli-macros" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "num-bigint 0.4.6", "num-prime", @@ -4284,8 +4296,8 @@ dependencies = [ [[package]] name = "openvm-algebra-transpiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-algebra-guest", "openvm-instructions", @@ -4298,8 +4310,8 @@ dependencies = [ [[package]] name = "openvm-benchmarks-prove" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "clap", "derive_more 1.0.0", @@ -4325,8 +4337,8 @@ dependencies = [ [[package]] name = "openvm-benchmarks-utils" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cargo_metadata 0.18.1", "clap", @@ -4340,8 +4352,8 @@ dependencies = [ [[package]] name = "openvm-bigint-circuit" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cfg-if", "derive-new 0.6.0", @@ -4366,8 +4378,8 @@ dependencies = [ [[package]] name = "openvm-bigint-guest" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-platform", "strum_macros 0.26.4", @@ -4375,8 +4387,8 @@ dependencies = [ [[package]] name = "openvm-bigint-transpiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-bigint-guest", "openvm-instructions", @@ -4390,8 +4402,8 @@ dependencies = [ [[package]] name = "openvm-build" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cargo_metadata 0.18.1", "eyre", @@ -4402,8 +4414,8 @@ dependencies = [ [[package]] name = "openvm-circuit" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "backtrace", "cfg-if", @@ -4441,8 +4453,8 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "itertools 0.14.0", "proc-macro2", @@ -4452,8 +4464,8 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -4470,8 +4482,8 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "itertools 0.14.0", "quote", @@ -4480,8 +4492,8 @@ dependencies = [ [[package]] name = "openvm-continuations" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "derivative", "openvm-circuit", @@ -4495,8 +4507,8 @@ dependencies = [ [[package]] name = "openvm-cuda-backend" -version = "1.2.0" -source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.0#64c72dba9db8dedad1c936a04fa344b4b9ecb1cd" +version = "1.2.1" +source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.1#dde6cdaf105cc57d1609fd49568c7bce0a066cc2" dependencies = [ "bincode 2.0.1", "bincode_derive", @@ -4527,8 +4539,8 @@ dependencies = [ [[package]] name = "openvm-cuda-builder" -version = "1.2.0" -source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.0#64c72dba9db8dedad1c936a04fa344b4b9ecb1cd" +version = "1.2.1" +source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.1#dde6cdaf105cc57d1609fd49568c7bce0a066cc2" dependencies = [ "cc", "glob", @@ -4536,10 +4548,11 @@ dependencies = [ [[package]] name = "openvm-cuda-common" -version = "1.2.0" -source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.0#64c72dba9db8dedad1c936a04fa344b4b9ecb1cd" +version = "1.2.1" +source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.1#dde6cdaf105cc57d1609fd49568c7bce0a066cc2" dependencies = [ "bytesize", + "ctor", "lazy_static", "metrics", "openvm-cuda-builder", @@ -4550,7 +4563,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "proc-macro2", "quote", @@ -4559,8 +4572,8 @@ dependencies = [ [[package]] name = "openvm-ecc-circuit" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cfg-if", "derive-new 0.6.0", @@ -4591,8 +4604,8 @@ dependencies = [ [[package]] name = "openvm-ecc-guest" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "ecdsa", "elliptic-curve", @@ -4610,8 +4623,8 @@ dependencies = [ [[package]] name = "openvm-ecc-sw-macros" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-macros-common", "quote", @@ -4620,8 +4633,8 @@ dependencies = [ [[package]] name = "openvm-ecc-transpiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-ecc-guest", "openvm-instructions", @@ -4634,8 +4647,8 @@ dependencies = [ [[package]] name = "openvm-instructions" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -4651,8 +4664,8 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "quote", "syn 2.0.106", @@ -4660,8 +4673,8 @@ dependencies = [ [[package]] name = "openvm-keccak256-circuit" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cfg-if", "derive-new 0.6.0", @@ -4688,16 +4701,16 @@ dependencies = [ [[package]] name = "openvm-keccak256-guest" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-platform", ] [[package]] name = "openvm-keccak256-transpiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -4710,16 +4723,16 @@ dependencies = [ [[package]] name = "openvm-macros-common" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "syn 2.0.106", ] [[package]] name = "openvm-mod-circuit-builder" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cuda-runtime-sys", "itertools 0.14.0", @@ -4739,8 +4752,8 @@ dependencies = [ [[package]] name = "openvm-native-circuit" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cfg-if", "derive-new 0.6.0", @@ -4770,8 +4783,8 @@ dependencies = [ [[package]] name = "openvm-native-compiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "backtrace", "itertools 0.14.0", @@ -4793,8 +4806,8 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "quote", "syn 2.0.106", @@ -4802,8 +4815,8 @@ dependencies = [ [[package]] name = "openvm-native-recursion" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -4829,8 +4842,8 @@ dependencies = [ [[package]] name = "openvm-native-transpiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-instructions", "openvm-transpiler", @@ -4839,8 +4852,8 @@ dependencies = [ [[package]] name = "openvm-pairing" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "group 0.13.0", "halo2curves-axiom", @@ -4864,8 +4877,8 @@ dependencies = [ [[package]] name = "openvm-pairing-circuit" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cfg-if", "derive-new 0.6.0", @@ -4895,8 +4908,8 @@ dependencies = [ [[package]] name = "openvm-pairing-guest" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "halo2curves-axiom", "hex-literal", @@ -4916,8 +4929,8 @@ dependencies = [ [[package]] name = "openvm-pairing-transpiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-instructions", "openvm-pairing-guest", @@ -4929,8 +4942,8 @@ dependencies = [ [[package]] name = "openvm-platform" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "libm", "openvm-custom-insn", @@ -4939,8 +4952,8 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "derivative", "lazy_static", @@ -4957,8 +4970,8 @@ dependencies = [ [[package]] name = "openvm-rv32-adapters" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -4974,8 +4987,8 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cfg-if", "derive-new 0.6.0", @@ -5001,8 +5014,8 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-custom-insn", "p3-field", @@ -5011,8 +5024,8 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -5027,8 +5040,8 @@ dependencies = [ [[package]] name = "openvm-sdk" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "bitcode", "bon", @@ -5084,8 +5097,8 @@ dependencies = [ [[package]] name = "openvm-sha2" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-sha256-guest", "sha2 0.10.9", @@ -5093,8 +5106,8 @@ dependencies = [ [[package]] name = "openvm-sha256-air" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-circuit-primitives", "openvm-stark-backend", @@ -5104,8 +5117,8 @@ dependencies = [ [[package]] name = "openvm-sha256-circuit" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "cfg-if", "derive-new 0.6.0", @@ -5130,16 +5143,16 @@ dependencies = [ [[package]] name = "openvm-sha256-guest" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-platform", ] [[package]] name = "openvm-sha256-transpiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -5152,13 +5165,14 @@ dependencies = [ [[package]] name = "openvm-stark-backend" -version = "1.2.0" -source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.0#64c72dba9db8dedad1c936a04fa344b4b9ecb1cd" +version = "1.2.1" +source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.1#dde6cdaf105cc57d1609fd49568c7bce0a066cc2" dependencies = [ "bitcode", "cfg-if", "derivative", "derive-new 0.7.0", + "eyre", "itertools 0.14.0", "metrics", "p3-air", @@ -5172,18 +5186,19 @@ dependencies = [ "rayon", "rustc-hash 2.1.1", "serde", + "serde_json", "thiserror 1.0.69", "tracing", ] [[package]] name = "openvm-stark-sdk" -version = "1.2.0" -source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.0#64c72dba9db8dedad1c936a04fa344b4b9ecb1cd" +version = "1.2.1" +source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.1#dde6cdaf105cc57d1609fd49568c7bce0a066cc2" dependencies = [ "dashmap", "derivative", - "derive_more 0.99.20", + "derive_more 1.0.0", "ff 0.13.1", "itertools 0.14.0", "metrics", @@ -5215,8 +5230,8 @@ dependencies = [ [[package]] name = "openvm-transpiler" -version = "1.4.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +version = "1.4.1" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "elf", "eyre", @@ -5261,7 +5276,7 @@ dependencies = [ [[package]] name = "p256" version = "0.13.2" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.1#05cb6a11bbd7ac3ac8a00c3fc56391b06f54baa2" dependencies = [ "ecdsa", "elliptic-curve", @@ -7653,7 +7668,7 @@ version = "0.6.0" dependencies = [ "bincode 2.0.1", "ecies", - "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.0)", + "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.1)", "openvm", "openvm-algebra-complex-macros", "openvm-algebra-guest", @@ -7664,7 +7679,7 @@ dependencies = [ "openvm-pairing-guest", "openvm-rv32im-guest", "openvm-sha2", - "p256 0.13.2 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.0)", + "p256 0.13.2 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.1)", "scroll-zkvm-types-chunk", "scroll-zkvm-types-circuit", ] @@ -7812,11 +7827,11 @@ dependencies = [ "alloy-sol-types", "ecies", "itertools 0.14.0", - "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.0)", + "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.1)", "openvm-ecc-guest", "openvm-pairing", "openvm-sha2", - "p256 0.13.2 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.0)", + "p256 0.13.2 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.1)", "rkyv", "sbv-core", "sbv-helpers", diff --git a/Cargo.toml b/Cargo.toml index 9f2f0870..0180f674 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,48 +26,48 @@ version = "0.6.0" [workspace.dependencies] # openvm guest libs -openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0" } -openvm-algebra-complex-macros = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-custom-insn = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-sha2 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0" } -openvm-sha256-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-p256 = { git = "https://github.com/openvm-org/openvm.git", package = "p256", tag = "v1.4.0", features = [ +openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1" } +openvm-algebra-complex-macros = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-custom-insn = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-sha2 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1" } +openvm-sha256-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-p256 = { git = "https://github.com/openvm-org/openvm.git", package = "p256", tag = "v1.4.1", features = [ "std", ] } -openvm-k256 = { git = "https://github.com/openvm-org/openvm.git", package = "k256", tag = "v1.4.0", features = [ +openvm-k256 = { git = "https://github.com/openvm-org/openvm.git", package = "k256", tag = "v1.4.1", features = [ "std", ] } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0" } -openvm-keccak256-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-bigint-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-pairing-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-rv32im-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1" } +openvm-keccak256-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-bigint-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-pairing-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-rv32im-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } # openvm host libs -openvm-benchmarks-prove = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-benchmarks-utils = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-build = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-continuations = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-instructions = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-native-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-native-compiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-native-recursion = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-native-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-rv32im-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } -openvm-sdk = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false, features = [ +openvm-benchmarks-prove = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-benchmarks-utils = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-build = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-continuations = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-instructions = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-native-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-native-compiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-native-recursion = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-native-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-rv32im-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } +openvm-sdk = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false, features = [ "parallel", "evm-prove", "legacy-v1-3", "tco", "unprotected" ] } -openvm-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.0", default-features = false } +openvm-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.4.1", default-features = false } # more openvm related libs -openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", tag = "v1.2.0" } +openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", tag = "v1.2.1" } sbv-core = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master" } sbv-helpers = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master" } diff --git a/crates/circuits/batch-circuit/batch_exe_commit.rs b/crates/circuits/batch-circuit/batch_exe_commit.rs index 3daf5d0d..f2f5a400 100644 --- a/crates/circuits/batch-circuit/batch_exe_commit.rs +++ b/crates/circuits/batch-circuit/batch_exe_commit.rs @@ -1,4 +1,4 @@ #![cfg_attr(rustfmt, rustfmt_skip)] //! Generated by crates/build-guest. DO NOT EDIT! -pub const COMMIT: [u32; 8] = [895296330, 1148458384, 132512161, 428973880, 1840310420, 1233162636, 1450429136, 1332854351]; +pub const COMMIT: [u32; 8] = [1202988051, 1148264508, 1543561268, 1765749557, 1182656731, 396804521, 834486540, 1245597015]; diff --git a/crates/circuits/bundle-circuit/bundle_exe_commit.rs b/crates/circuits/bundle-circuit/bundle_exe_commit.rs index 8dbaf3f4..c645cb76 100644 --- a/crates/circuits/bundle-circuit/bundle_exe_commit.rs +++ b/crates/circuits/bundle-circuit/bundle_exe_commit.rs @@ -1,4 +1,4 @@ #![cfg_attr(rustfmt, rustfmt_skip)] //! Generated by crates/build-guest. DO NOT EDIT! -pub const COMMIT: [u32; 8] = [1257908223, 1206458759, 1468660351, 59874919, 689770277, 1592610906, 773480905, 1252681164]; +pub const COMMIT: [u32; 8] = [373288848, 1343506321, 1914796275, 1793072527, 65733832, 1916923301, 963694893, 639345462]; diff --git a/crates/circuits/chunk-circuit/chunk_exe_commit.rs b/crates/circuits/chunk-circuit/chunk_exe_commit.rs index 84cc5287..2d5a3733 100644 --- a/crates/circuits/chunk-circuit/chunk_exe_commit.rs +++ b/crates/circuits/chunk-circuit/chunk_exe_commit.rs @@ -1,4 +1,4 @@ #![cfg_attr(rustfmt, rustfmt_skip)] //! Generated by crates/build-guest. DO NOT EDIT! -pub const COMMIT: [u32; 8] = [988980860, 377520490, 1389793144, 1577198725, 851225072, 192704613, 306102683, 816798173]; +pub const COMMIT: [u32; 8] = [1957156571, 872843267, 744762733, 1147670747, 1109472993, 163434507, 1792562840, 1106326803]; diff --git a/crates/integration/src/lib.rs b/crates/integration/src/lib.rs index bf81beab..51dd39bd 100644 --- a/crates/integration/src/lib.rs +++ b/crates/integration/src/lib.rs @@ -362,12 +362,11 @@ where std::fs::create_dir_all(&cache_dir)?; // Dump verifier-only assets to disk. - let path_verifier_code = WORKSPACE_ROOT + let path_verifier_dir = WORKSPACE_ROOT .join("releases") .join(guest_version()) - .join("verifier") - .join("verifier.bin"); - let verifier = scroll_zkvm_verifier::verifier::UniversalVerifier::setup(&path_verifier_code)?; + .join("verifier"); + let verifier = scroll_zkvm_verifier::verifier::UniversalVerifier::setup(&path_verifier_dir)?; // Try reading proof from cache if available, and early return in that case. let task_id = witness.identifier(); diff --git a/crates/prover/src/utils/vm.rs b/crates/prover/src/utils/vm.rs index 8b6a6857..1659d16d 100644 --- a/crates/prover/src/utils/vm.rs +++ b/crates/prover/src/utils/vm.rs @@ -33,7 +33,7 @@ pub fn execute_guest( let state = instance .execute(stdin.clone(), None) .map_err(|e| Error::GenProof(e.to_string()))?; - let total_cycle = state.instret; + let total_cycle = state.instret(); let final_memory = state.memory; let public_values: Vec = diff --git a/crates/types/base/src/public_inputs/chunk.rs b/crates/types/base/src/public_inputs/chunk.rs index 37a43226..2312861d 100644 --- a/crates/types/base/src/public_inputs/chunk.rs +++ b/crates/types/base/src/public_inputs/chunk.rs @@ -368,12 +368,6 @@ impl MultiVersionPublicInputs for ChunkInfo { assert_eq!(prev_pi.post_msg_queue_hash, B256::ZERO); } - // blockhash is unused for scroll domain. - if version.domain == Domain::Scroll { - assert_eq!(self.prev_blockhash, B256::ZERO); - assert_eq!(self.post_blockhash, B256::ZERO); - } - // - blockhash chaining must be validated for validiums. // - encryption key must be the same between contiguous chunks in a batch. if version.domain == Domain::Validium { diff --git a/crates/types/chunk/src/scroll.rs b/crates/types/chunk/src/scroll.rs index b6f859f7..422918a4 100644 --- a/crates/types/chunk/src/scroll.rs +++ b/crates/types/chunk/src/scroll.rs @@ -5,4 +5,4 @@ mod execute; pub use execute::execute; mod witness; -pub use witness::{ChunkWitness, ChunkWitnessWithRspTrie, LegacyChunkWitness, ValidiumInputs}; +pub use witness::{ChunkWitness, LegacyChunkWitness, ValidiumInputs}; diff --git a/crates/types/chunk/src/scroll/witness.rs b/crates/types/chunk/src/scroll/witness.rs index 0fa0e25b..bc6caf41 100644 --- a/crates/types/chunk/src/scroll/witness.rs +++ b/crates/types/chunk/src/scroll/witness.rs @@ -3,7 +3,6 @@ use alloy_primitives::B256; use sbv_core::{verifier::StateCommitMode, witness::BlockWitness}; use sbv_primitives::U256; use sbv_primitives::types::consensus::TxL1Message; -use sbv_trie::PartialStateTrie; use std::collections::HashSet; use types_base::version::Version; use types_base::{fork_name::ForkName, public_inputs::chunk::ChunkInfo}; @@ -25,25 +24,6 @@ pub struct ChunkWitness { pub validium: Option, } -/// The witness type accepted by the chunk-circuit. -#[derive(Clone, Debug, serde::Serialize, serde::Deserialize)] -pub struct ChunkWitnessWithRspTrie { - /// Version byte as per [version][types_base::version]. - pub version: u8, - /// The block witness for each block in the chunk. - pub blocks: Vec, - /// The on-chain rolling L1 message queue hash before enqueueing any L1 msg tx from the chunk. - pub prev_msg_queue_hash: B256, - /// The code version specify the chain spec - pub fork_name: ForkName, - /// The compression ratios for each block in the chunk. - pub compression_ratios: Vec>, - /// The cached partial state trie for the chunk. - pub cached_trie: PartialStateTrie, - /// Validium encrypted txs and secret key if this is a validium chain. - pub validium: Option, -} - /// The validium inputs for the chunk witness. #[derive(Clone, Debug, serde::Deserialize, serde::Serialize)] pub struct ValidiumInputs { @@ -208,32 +188,3 @@ impl From for LegacyChunkWitness { } } } - -impl From for ChunkWitnessWithRspTrie { - fn from(mut value: ChunkWitness) -> Self { - let pre_state_root = value - .blocks - .first() - .expect("at least one block") - .prev_state_root; - let cached_trie = PartialStateTrie::new( - pre_state_root, - value.blocks.iter().flat_map(|w| w.states.iter()), - ) - .expect("trie from witness"); - - for block in value.blocks.iter_mut() { - block.states.clear(); - } - - ChunkWitnessWithRspTrie { - version: value.version, - blocks: value.blocks, - prev_msg_queue_hash: value.prev_msg_queue_hash, - fork_name: value.fork_name, - compression_ratios: value.compression_ratios, - cached_trie, - validium: value.validium, - } - } -}