diff --git a/.gitignore b/.gitignore index 0b2e47ac..102bb372 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ dump.rdb Cargo.lock .idea +/coverage_report diff --git a/Cargo.lock b/Cargo.lock index 0f276f0b..e8e79414 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -155,7 +155,7 @@ dependencies = [ "alloy-sol-macro-input", "const-hex", "heck", - "indexmap 2.6.0", + "indexmap", "proc-macro-error", "proc-macro2", "quote", @@ -191,21 +191,6 @@ dependencies = [ "serde", ] -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - -[[package]] -name = "android_system_properties" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" -dependencies = [ - "libc", -] - [[package]] name = "ansi_term" version = "0.12.1" @@ -745,7 +730,6 @@ dependencies = [ "cc", "cfg-if", "constant_time_eq", - "rayon-core", ] [[package]] @@ -933,7 +917,7 @@ checksum = "4cde2c574760f88d5a6da8dfc55dbb79d91f4da15aa87b9e0d57d4d3a8fa5687" dependencies = [ "anyhow", "celestia-tendermint-proto", - "prost", + "prost 0.12.6", "prost-build", "prost-types", "serde", @@ -969,7 +953,7 @@ dependencies = [ "futures", "num-traits", "once_cell", - "prost", + "prost 0.12.6", "prost-types", "serde", "serde_bytes", @@ -993,7 +977,7 @@ dependencies = [ "flex-error", "num-derive", "num-traits", - "prost", + "prost 0.12.6", "prost-types", "serde", "serde_bytes", @@ -1063,11 +1047,7 @@ version = "0.4.38" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" dependencies = [ - "android-tzdata", - "iana-time-zone", "num-traits", - "serde", - "windows-targets 0.52.6", ] [[package]] @@ -1143,12 +1123,6 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" -[[package]] -name = "cobs" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15" - [[package]] name = "coins-bip32" version = "0.8.7" @@ -1472,46 +1446,11 @@ dependencies = [ "cfg-if", "digest 0.9.0", "rand_core", - "sp1-lib", + "sp1-lib 1.2.0", "subtle-ng", "zeroize", ] -[[package]] -name = "darling" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 2.0.79", -] - -[[package]] -name = "darling_macro" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" -dependencies = [ - "darling_core", - "quote", - "syn 2.0.79", -] - [[package]] name = "dashmap" version = "6.1.0" @@ -1647,7 +1586,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" dependencies = [ "powerfmt", - "serde", ] [[package]] @@ -1794,7 +1732,7 @@ dependencies = [ "elliptic-curve", "hex-literal", "signature", - "sp1-lib", + "sp1-lib 1.2.0", "spki", ] @@ -1853,18 +1791,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "embedded-io" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced" - -[[package]] -name = "embedded-io" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edd0f118536f44f5ccd48bcb8b111bdc3de888b58c74639dfb034a357d0f206d" - [[package]] name = "encode_unicode" version = "0.3.6" @@ -1898,6 +1824,27 @@ dependencies = [ "zeroize", ] +[[package]] +name = "enum-map" +version = "2.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9" +dependencies = [ + "enum-map-derive", + "serde", +] + +[[package]] +name = "enum-map-derive" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + [[package]] name = "enum_dispatch" version = "0.3.13" @@ -2320,6 +2267,12 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" + [[package]] name = "foreign-types" version = "0.3.2" @@ -2508,10 +2461,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", - "js-sys", "libc", "wasi", - "wasm-bindgen", ] [[package]] @@ -2596,7 +2547,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.6.0", + "indexmap", "slab", "tokio", "tokio-util", @@ -2615,7 +2566,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.1.0", - "indexmap 2.6.0", + "indexmap", "slab", "tokio", "tokio-util", @@ -2645,12 +2596,6 @@ dependencies = [ "rayon", ] -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - [[package]] name = "hashbrown" version = "0.13.2" @@ -2676,6 +2621,11 @@ name = "hashbrown" version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash", +] [[package]] name = "hashers" @@ -2887,6 +2837,19 @@ dependencies = [ "webpki-roots", ] +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes", + "hyper 0.14.30", + "native-tls", + "tokio", + "tokio-native-tls", +] + [[package]] name = "hyper-tls" version = "0.6.0" @@ -2922,29 +2885,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "iana-time-zone" -version = "0.1.61" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" -dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "wasm-bindgen", - "windows-core", -] - -[[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" -dependencies = [ - "cc", -] - [[package]] name = "ics23" version = "0.11.3" @@ -2957,19 +2897,13 @@ dependencies = [ "bytes", "hex", "informalsystems-pbjson", - "prost", + "prost 0.12.6", "ripemd", "serde", "sha2 0.10.8", "sha3", ] -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - [[package]] name = "idna" version = "0.5.0" @@ -3041,17 +2975,6 @@ dependencies = [ "sha2 0.10.8", ] -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", - "serde", -] - [[package]] name = "indexmap" version = "2.6.0" @@ -3581,6 +3504,15 @@ version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" +[[package]] +name = "lru" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" +dependencies = [ + "hashbrown 0.15.0", +] + [[package]] name = "lz4-sys" version = "1.11.1+lz4-1.10.0" @@ -4003,12 +3935,6 @@ version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" -[[package]] -name = "oneshot" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e296cf87e61c9cfc1a61c3c63a0f7f286ed4554e0e22be84e8a38e1d264a2a29" - [[package]] name = "opaque-debug" version = "0.3.1" @@ -4108,9 +4034,9 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] name = "p3-air" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45e909ef66fa5d77ff0fd3cb5af4b33b27fa6fb68d02b9b1e70edbc29383e565" +checksum = "066f571b2e645505ed5972dd0e1e252ba03352150830c9566769ca711c0f1e9b" dependencies = [ "p3-field", "p3-matrix", @@ -4118,9 +4044,9 @@ dependencies = [ [[package]] name = "p3-baby-bear" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46965470aac1cddfe52f535424b59d52f2fffef0fdeb9dbed19da39b1d8f048a" +checksum = "ff00f571044d299310d9659c6e51c98422de3bf94b8577f7f30cf59cf2043e40" dependencies = [ "num-bigint 0.4.6", "p3-field", @@ -4133,9 +4059,9 @@ dependencies = [ [[package]] name = "p3-blake3" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36ef32d6ea21dd5cf9fec8a31bf0c64e6ceee8901dbf50966b83a443093c2aba" +checksum = "cc4cb69ae54a279bbbd477566d1bdb71aa879b528fd658d0fcfc36f54b00217c" dependencies = [ "blake3", "p3-symmetric", @@ -4143,9 +4069,9 @@ dependencies = [ [[package]] name = "p3-bn254-fr" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e3edfca6be3b3109adf8e3330baec30c3fc5f9f4d63d27aaec1b471ca51ed67" +checksum = "bf19917f986d45e9abb6d177e875824ced6eed096480d574fce16f2c45c721ea" dependencies = [ "ff 0.13.0", "num-bigint 0.4.6", @@ -4158,25 +4084,27 @@ dependencies = [ [[package]] name = "p3-challenger" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6662ea899a5d848b60c699944491d72757873b5e1fd46798e4712f90a03a4e9" +checksum = "3be7e4fbce4566a93091107eadfafa0b5374bd1ffd3e0f6b850da3ff72eb183f" dependencies = [ "p3-field", "p3-maybe-rayon", "p3-symmetric", "p3-util", + "serde", "tracing", ] [[package]] name = "p3-commit" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc3563918b5cc44ef5280bf9b51753e70dc78802de25e3fb81ed6c94617ccb6e" +checksum = "7a03eb0f99d68a712c41e658e9a7782a0705d4ffcfb6232a43bd3f1ef9591002" dependencies = [ "itertools 0.12.1", "p3-challenger", + "p3-dft", "p3-field", "p3-matrix", "p3-util", @@ -4185,9 +4113,9 @@ dependencies = [ [[package]] name = "p3-dft" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "510095701819d83c9509fe825bbf1ebfe50426ae75149df5fe1dcfd18261323a" +checksum = "1556de968523fbe5d804ab50600ea306fcceea3500cfd7601e40882480524664" dependencies = [ "p3-field", "p3-matrix", @@ -4198,9 +4126,9 @@ dependencies = [ [[package]] name = "p3-field" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61f1977a0a65789f719aa824119c332c4676b000bdbfe94d312fb6244a70d601" +checksum = "cec2af6e1ac47a2035af5165e668d64612c4b9ccabd06df37fc1fd381fdf8a71" dependencies = [ "itertools 0.12.1", "num-bigint 0.4.6", @@ -4212,9 +4140,9 @@ dependencies = [ [[package]] name = "p3-fri" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c22ddb958f200d9289cc73ff68847b0167ca0c14557b791dd9e318f98c2d1b28" +checksum = "f351ee9f9d4256455164565cd91e3e6d2487cc2a5355515fa2b6d479269188dd" dependencies = [ "itertools 0.12.1", "p3-challenger", @@ -4231,30 +4159,20 @@ dependencies = [ [[package]] name = "p3-interpolation" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d032cda212f6b408d7d5b0b9a8270a9455acb93742fe55a0880d82be8e90e500" +checksum = "d24d0f2907a374ebe4545fcff3120d6376d9630cf0bef30feedcfc5908ea2c37" dependencies = [ "p3-field", "p3-matrix", "p3-util", ] -[[package]] -name = "p3-keccak" -version = "0.1.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c56abdd5a8a780049d2f8e92cea1df57b55a2ef50a40d1103f2732f7a00e4b1" -dependencies = [ - "p3-symmetric", - "tiny-keccak", -] - [[package]] name = "p3-keccak-air" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8398f1694ccc38513df0b8cab5f9ef7325423f27cd9e4fa20bdc77d5079cf1b" +checksum = "e66badd47cedf6570e91a0cabc389b80dfd53ba1a6e9a45a3923fd54b86122ff" dependencies = [ "p3-air", "p3-field", @@ -4262,15 +4180,13 @@ dependencies = [ "p3-maybe-rayon", "p3-util", "tracing", - "tracing-forest", - "tracing-subscriber", ] [[package]] name = "p3-matrix" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d548ee0b834f8e2ebc5037073acd101a3b0ca41a2d1d28a15ba0ccd9059495b0" +checksum = "fa272f3ae77ed8d73478aa7c89e712efb15bda3ff4aff10fadfe11a012cd5389" dependencies = [ "itertools 0.12.1", "p3-field", @@ -4283,18 +4199,18 @@ dependencies = [ [[package]] name = "p3-maybe-rayon" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55f5575d3d61bedb3e05681abb0f36b8bb339d65aa395d50756bfa64e9cd3f46" +checksum = "3eecad6292021858f282d643d9d1284ab112a200494d589863a9c4080e578ef0" dependencies = [ "rayon", ] [[package]] name = "p3-mds" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6e57ed310d59245f93e24ee805ea7aa16fc9c505551b76a15f5e50f29d177e" +checksum = "716c4dbe68a02f1541eb09149d07b8663a3a5951b1864a31cd67ff3bb0826e57" dependencies = [ "itertools 0.12.1", "p3-dft", @@ -4307,9 +4223,9 @@ dependencies = [ [[package]] name = "p3-merkle-tree" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af46b41cba75d483ec8a553cbab1d2d794935ae3403d75394acfa4fb2c977cce" +checksum = "ad7ebab52a03c26025988663a135aed62f5084a2e2ea262176dc8748efb593e5" dependencies = [ "itertools 0.12.1", "p3-commit", @@ -4324,22 +4240,23 @@ dependencies = [ [[package]] name = "p3-poseidon2" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adaba6f14c197203530e233badce0ca1126ba3bf3c9ff766505b497bdad0bee1" +checksum = "39c042efa15beab7a8c4d0ca9b9e4cbda7582be0c08e121e830fec45f082935b" dependencies = [ "gcd", "p3-field", "p3-mds", "p3-symmetric", "rand", + "serde", ] [[package]] name = "p3-symmetric" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57ecc4282566eb14f48be7707f6745c4dff6be664984d59ec0fb1849cd82b5c2" +checksum = "b9896a831f5b688adc13f6fbe1dcf66ecfaa4622a500f81aa745610e777acb72" dependencies = [ "itertools 0.12.1", "p3-field", @@ -4348,9 +4265,9 @@ dependencies = [ [[package]] name = "p3-uni-stark" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1af5c038b22b058bf1d49fb1ea3dd6c240a3e46c3278fde5c444e0034f7ffe37" +checksum = "8437ebcd060c8a5479898030b114a93da8a86eb4c2e5f313d9eeaaf40c6e6f61" dependencies = [ "itertools 0.12.1", "p3-air", @@ -4361,18 +4278,15 @@ dependencies = [ "p3-matrix", "p3-maybe-rayon", "p3-util", - "postcard", "serde", "tracing", - "tracing-forest", - "tracing-subscriber", ] [[package]] name = "p3-util" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79f3fef0e00d9d7246385e758c4cd39b4efcbbcea31752471491ab502631385e" +checksum = "dedb9d27ba47ac314c6fac4ca54e55c3e486c864d51ec5ba55dbe47b75121157" dependencies = [ "serde", ] @@ -4578,7 +4492,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.6.0", + "indexmap", ] [[package]] @@ -4657,18 +4571,6 @@ version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" -[[package]] -name = "postcard" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f7f0a8d620d71c457dd1d47df76bb18960378da56af4527aaa10f515eee732e" -dependencies = [ - "cobs", - "embedded-io 0.4.0", - "embedded-io 0.6.1", - "serde", -] - [[package]] name = "powerfmt" version = "0.2.0" @@ -4920,6 +4822,24 @@ dependencies = [ "tempfile", ] +[[package]] +name = "prism-tests" +version = "0.1.0" +dependencies = [ + "anyhow", + "keystore-rs", + "log", + "pretty_env_logger", + "prism-common", + "prism-da", + "prism-errors", + "prism-lightclient", + "prism-prover", + "prism-storage", + "rand", + "tokio", +] + [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -4999,7 +4919,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" dependencies = [ "bytes", - "prost-derive", + "prost-derive 0.12.6", +] + +[[package]] +name = "prost" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b0487d90e047de87f984913713b85c601c05609aad5b0df4b4573fbf69aa13f" +dependencies = [ + "bytes", + "prost-derive 0.13.3", ] [[package]] @@ -5016,7 +4946,7 @@ dependencies = [ "once_cell", "petgraph", "prettyplease", - "prost", + "prost 0.12.6", "prost-types", "regex", "syn 2.0.79", @@ -5037,21 +4967,25 @@ dependencies = [ ] [[package]] -name = "prost-types" -version = "0.12.6" +name = "prost-derive" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" +checksum = "e9552f850d5f0964a4e4d0bf306459ac29323ddfbae05e35a7c0d35cb0803cc5" dependencies = [ - "prost", + "anyhow", + "itertools 0.13.0", + "proc-macro2", + "quote", + "syn 2.0.79", ] [[package]] -name = "psm" -version = "0.1.23" +name = "prost-types" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa37f80ca58604976033fae9515a8a2989fc13797d953f7c04fb8fa36a11f205" +checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" dependencies = [ - "cc", + "prost 0.12.6", ] [[package]] @@ -5294,19 +5228,23 @@ dependencies = [ "http 0.2.12", "http-body 0.4.6", "hyper 0.14.30", + "hyper-tls 0.5.0", "ipnet", "js-sys", "log", "mime", + "native-tls", "once_cell", "percent-encoding", "pin-project-lite", + "rustls-pemfile 1.0.4", "serde", "serde_json", "serde_urlencoded", "sync_wrapper 0.1.2", "system-configuration 0.5.1", "tokio", + "tokio-native-tls", "tower-service", "url", "wasm-bindgen", @@ -5332,7 +5270,7 @@ dependencies = [ "http-body-util", "hyper 1.4.1", "hyper-rustls", - "hyper-tls", + "hyper-tls 0.6.0", "hyper-util", "ipnet", "js-sys", @@ -5344,7 +5282,7 @@ dependencies = [ "pin-project-lite", "quinn", "rustls", - "rustls-pemfile", + "rustls-pemfile 2.2.0", "rustls-pki-types", "serde", "serde_json", @@ -5636,12 +5574,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5bfb394eeed242e909609f56089eecfe5fda225042e8b171791b9c95f5931e5" dependencies = [ "openssl-probe", - "rustls-pemfile", + "rustls-pemfile 2.2.0", "rustls-pki-types", "schannel", "security-framework", ] +[[package]] +name = "rustls-pemfile" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +dependencies = [ + "base64 0.21.7", +] + [[package]] name = "rustls-pemfile" version = "2.2.0" @@ -5697,9 +5644,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" +checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" [[package]] name = "rusty-fork" @@ -5763,9 +5710,9 @@ dependencies = [ [[package]] name = "scc" -version = "2.2.1" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "553f8299af7450cda9a52d3a370199904e7a46b5ffd1bef187c4a6af3bb6db69" +checksum = "f2c1f7fc6deb21665a9060dfc7d271be784669295a31babdcd4dd2c79ae8cbfb" dependencies = [ "sdd", ] @@ -5984,36 +5931,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_with" -version = "3.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e28bdad6db2b8340e449f7108f020b3b092e8583a9e3fb82713e1d4e71fe817" -dependencies = [ - "base64 0.22.1", - "chrono", - "hex", - "indexmap 1.9.3", - "indexmap 2.6.0", - "serde", - "serde_derive", - "serde_json", - "serde_with_macros", - "time", -] - -[[package]] -name = "serde_with_macros" -version = "3.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d846214a9854ef724f3da161b426242d8de7c1fc7de2f89bb1efcb154dca79d" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 2.0.79", -] - [[package]] name = "serial_test" version = "3.1.1" @@ -6222,15 +6139,15 @@ dependencies = [ [[package]] name = "sp1-core-executor" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fde11e88cf1e7fa272ec3accb643845b1d3a13b9b7840a0357b00acdfdbedf9" +checksum = "4bcf4d12fdcdb59632dbb8491e9f1ed5090de774b46cb5ef26ce5fcd4d024e3e" dependencies = [ "bincode", "bytemuck", "elf", + "enum-map", "eyre", - "generic-array 1.1.0", "hashbrown 0.14.5", "hex", "itertools 0.13.0", @@ -6238,14 +6155,11 @@ dependencies = [ "nohash-hasher", "num", "p3-field", - "p3-keccak-air", "p3-maybe-rayon", "rand", "rrs-succinct", "serde", - "serde_with", "sp1-curves", - "sp1-derive", "sp1-primitives", "sp1-stark", "strum", @@ -6254,22 +6168,17 @@ dependencies = [ "tiny-keccak", "tracing", "typenum", + "vec_map", ] [[package]] name = "sp1-core-machine" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "748ffa83d438905521f389f46fed2de6f3b05b1da2ffc2273194bede11a258fc" +checksum = "0a6f7b232d011a2db7a314d53ee37ef79e60c2e282e4c249c9b91041e4ff88ec" dependencies = [ - "anyhow", - "arrayref", "bincode", - "blake3", - "bytemuck", "cfg-if", - "curve25519-dalek", - "elf", "elliptic-curve", "generic-array 1.1.0", "hashbrown 0.14.5", @@ -6277,32 +6186,20 @@ dependencies = [ "itertools 0.13.0", "k256", "log", - "nohash-hasher", "num", - "num-bigint 0.4.6", "num_cpus", "p3-air", "p3-baby-bear", "p3-blake3", "p3-challenger", - "p3-commit", - "p3-dft", "p3-field", - "p3-fri", - "p3-keccak", "p3-keccak-air", "p3-matrix", "p3-maybe-rayon", - "p3-merkle-tree", - "p3-poseidon2", - "p3-symmetric", "p3-uni-stark", "p3-util", "rand", - "rayon-scan", - "rrs-succinct", "serde", - "serde_with", "size", "snowbridge-amcl", "sp1-core-executor", @@ -6324,10 +6221,11 @@ dependencies = [ [[package]] name = "sp1-curves" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c19d1e60fdd17ec53b8453d7634ed3a136800151412c8d9873944f782c4bc89" +checksum = "c1c2c7fb1a24a9dcd06ffc26c4377056163cba55d47b973b19eec81442217f57" dependencies = [ + "cfg-if", "curve25519-dalek", "dashu", "elliptic-curve", @@ -6345,11 +6243,10 @@ dependencies = [ [[package]] name = "sp1-derive" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d06fdae1dc74a9085b155d12180825653e530983262b8ad2e57fe15551d17a" +checksum = "1d6c88b3e7ead9192679bf2ef5b0c28b6e7b9a56f929bd76851820e5e5b947bb" dependencies = [ - "proc-macro2", "quote", "syn 1.0.109", ] @@ -6368,41 +6265,58 @@ dependencies = [ "snowbridge-amcl", ] +[[package]] +name = "sp1-lib" +version = "3.0.0-rc3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd5835b93e7be1840ac075bf16ddc9235a7be122e2209cf3ad3e1cb0f50353f8" +dependencies = [ + "bincode", + "serde", +] + [[package]] name = "sp1-primitives" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d13f9b8ac43071ecfe5980a135cbcecb26ecad243165adce8de5aa3746a2af59" +checksum = "2567220b2d8170a0c42eba514dec66b76c5c87927c9a3232ee53a56310acee72" dependencies = [ - "itertools 0.13.0", + "bincode", + "hex", "lazy_static", + "num-bigint 0.4.6", "p3-baby-bear", "p3-field", "p3-poseidon2", "p3-symmetric", + "serde", + "sha2 0.10.8", ] [[package]] name = "sp1-prover" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf5496754989ea23332537094818b4d8bc55e04171fc4f87161493399c2219ad" +checksum = "cb59f305b4768a441049f46bc52e0d1edfd2d3179d65a3440f7396baa74e1bda" dependencies = [ "anyhow", "bincode", "clap", "dirs 5.0.1", - "hex", + "eyre", "itertools 0.13.0", + "lazy_static", + "lru", "num-bigint 0.4.6", - "oneshot", "p3-baby-bear", "p3-bn254-fr", "p3-challenger", "p3-commit", "p3-field", "p3-matrix", + "p3-symmetric", "rayon", + "reqwest 0.11.27", "serde", "serde_json", "serial_test", @@ -6413,7 +6327,6 @@ dependencies = [ "sp1-recursion-compiler", "sp1-recursion-core", "sp1-recursion-gnark-ffi", - "sp1-recursion-program", "sp1-stark", "subtle-encoding", "tempfile", @@ -6424,53 +6337,54 @@ dependencies = [ [[package]] name = "sp1-recursion-circuit" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab0ee89dd4928419672f046a472b3e0114e405805d96de9f39e4e83d323778ab" +checksum = "e08f45e8fa3caf412251a730cdad04b36285e745a6c1b409d865bae3338a5196" dependencies = [ - "bincode", + "hashbrown 0.14.5", "itertools 0.13.0", + "num-traits", "p3-air", "p3-baby-bear", "p3-bn254-fr", + "p3-challenger", "p3-commit", + "p3-dft", "p3-field", "p3-fri", "p3-matrix", + "p3-symmetric", "p3-util", + "rand", + "rayon", "serde", + "sp1-core-executor", "sp1-core-machine", + "sp1-derive", + "sp1-primitives", "sp1-recursion-compiler", "sp1-recursion-core", - "sp1-recursion-derive", - "sp1-recursion-program", + "sp1-recursion-gnark-ffi", "sp1-stark", + "tracing", ] [[package]] name = "sp1-recursion-compiler" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89d0dcf2766edd698ecc336c90d6a228759ee716fc6e24a8e3927210e2536de" +checksum = "648941453ab9e8c69386df5cd660dedabe4d06c041450d8a2548ba6cefa6ed45" dependencies = [ "backtrace", "itertools 0.13.0", - "p3-air", "p3-baby-bear", "p3-bn254-fr", - "p3-commit", "p3-field", - "p3-fri", - "p3-matrix", - "p3-poseidon2", "p3-symmetric", - "p3-util", - "rayon", "serde", "sp1-core-machine", "sp1-primitives", "sp1-recursion-core", - "sp1-recursion-core-v2", "sp1-recursion-derive", "sp1-stark", "tracing", @@ -6479,16 +6393,14 @@ dependencies = [ [[package]] name = "sp1-recursion-core" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fef244f580afc3c783880cdee7e26c56eb1d3c4522e2c98bd89f79366c3d92a1" +checksum = "faf8c5dc0a2c33ef1dc7da7a137574e4f1783e45489681ca01aa3309abc6adee" dependencies = [ - "arrayref", "backtrace", "ff 0.13.0", "hashbrown 0.14.5", "itertools 0.13.0", - "num_cpus", "p3-air", "p3-baby-bear", "p3-bn254-fr", @@ -6504,52 +6416,11 @@ dependencies = [ "p3-symmetric", "p3-util", "serde", - "serde_with", - "sp1-core-executor", "sp1-core-machine", "sp1-derive", "sp1-primitives", "sp1-stark", "static_assertions", - "tracing", - "zkhash", -] - -[[package]] -name = "sp1-recursion-core-v2" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82adbabcf41de013fb7394c06437937fd740c5005e760a215bfc2196f993ae" -dependencies = [ - "arrayref", - "backtrace", - "ff 0.13.0", - "hashbrown 0.14.5", - "itertools 0.13.0", - "num_cpus", - "p3-air", - "p3-baby-bear", - "p3-bn254-fr", - "p3-challenger", - "p3-commit", - "p3-dft", - "p3-field", - "p3-fri", - "p3-matrix", - "p3-maybe-rayon", - "p3-merkle-tree", - "p3-poseidon2", - "p3-symmetric", - "p3-util", - "serde", - "serde_with", - "sp1-core-executor", - "sp1-core-machine", - "sp1-derive", - "sp1-primitives", - "sp1-recursion-core", - "sp1-stark", - "static_assertions", "thiserror", "tracing", "vec_map", @@ -6558,20 +6429,19 @@ dependencies = [ [[package]] name = "sp1-recursion-derive" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "168c1e526a6c8b3877f360fae3fb545bdf0ce7e11e77878170775eeb87c9a043" +checksum = "a7807dc1a72bb7b86f2e82c414cb58b9789d880ca459b2113f7406df814945ae" dependencies = [ - "proc-macro2", "quote", "syn 1.0.109", ] [[package]] name = "sp1-recursion-gnark-ffi" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1100ea8ab4374397aafb7f89b6d5d60ed8d5040b51f6db22bd3f9807204b13a1" +checksum = "bff667dda92cbe2f9382e36fe222641f60a4e794e0a3b6c7597cd6a74d79262d" dependencies = [ "anyhow", "bincode", @@ -6584,7 +6454,6 @@ dependencies = [ "p3-baby-bear", "p3-field", "p3-symmetric", - "rand", "serde", "serde_json", "sha2 0.10.8", @@ -6594,43 +6463,11 @@ dependencies = [ "tempfile", ] -[[package]] -name = "sp1-recursion-program" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35252bdd8b0bd54f37d1df5ec9ef10de0d301550e6a5fc660de134f1b126da78" -dependencies = [ - "itertools 0.13.0", - "p3-air", - "p3-baby-bear", - "p3-challenger", - "p3-commit", - "p3-dft", - "p3-field", - "p3-fri", - "p3-matrix", - "p3-maybe-rayon", - "p3-merkle-tree", - "p3-poseidon2", - "p3-symmetric", - "p3-util", - "rand", - "serde", - "sp1-core-executor", - "sp1-core-machine", - "sp1-primitives", - "sp1-recursion-compiler", - "sp1-recursion-core", - "sp1-stark", - "stacker", - "tracing", -] - [[package]] name = "sp1-sdk" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85a21138889b9cbe9b72a652162dad26b904e07dccbbbc10adb4b081abdd4f80" +checksum = "df9a960e85019f30d96a2269bb2faa4982fbc0af784bc7c5998ae5d8ee2ea033" dependencies = [ "alloy-sol-types", "anyhow", @@ -6640,30 +6477,25 @@ dependencies = [ "dirs 5.0.1", "ethers", "futures", - "getrandom", "hashbrown 0.14.5", "hex", "indicatif", + "itertools 0.13.0", "log", - "num-bigint 0.4.6", "p3-baby-bear", - "p3-commit", "p3-field", "p3-fri", - "p3-matrix", - "prost", + "prost 0.13.3", "reqwest 0.12.8", "reqwest-middleware", "serde", - "serde_json", - "sha2 0.10.8", "sp1-core-executor", "sp1-core-machine", + "sp1-primitives", "sp1-prover", "sp1-stark", "strum", "strum_macros", - "sysinfo", "tempfile", "thiserror", "tokio", @@ -6674,14 +6506,15 @@ dependencies = [ [[package]] name = "sp1-stark" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfae288fe87c6c9fe5f15c04ad38605f2e8e27f86d1e4228359e36a20f003c68" +checksum = "ba8706930d1d65aa645d194b175f6c4c0f47ac7833640b4f46cf4da5964d2d1d" dependencies = [ "arrayref", "getrandom", "hashbrown 0.14.5", "itertools 0.13.0", + "num-traits", "p3-air", "p3-baby-bear", "p3-challenger", @@ -6700,25 +6533,26 @@ dependencies = [ "serde", "sp1-derive", "sp1-primitives", + "strum", + "strum_macros", + "sysinfo", + "thiserror", "tracing", ] [[package]] name = "sp1-zkvm" -version = "1.2.0" +version = "3.0.0-rc3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a777787c41fffb1ce1e74229f480223ce8d0ae66763aaac689cec737a19663e" +checksum = "58c61090e56fa9f05e38295d39cb74e49391da007a05cc2f92681d7179776f7d" dependencies = [ - "bincode", "cfg-if", "getrandom", "lazy_static", "libm", - "once_cell", "rand", - "serde", "sha2 0.10.8", - "sp1-lib", + "sp1-lib 3.0.0-rc3", ] [[package]] @@ -6743,19 +6577,6 @@ dependencies = [ "der", ] -[[package]] -name = "stacker" -version = "0.1.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "799c883d55abdb5e98af1a7b3f23b9b6de8ecada0ecac058672d7635eb48ca7b" -dependencies = [ - "cc", - "cfg-if", - "libc", - "psm", - "windows-sys 0.59.0", -] - [[package]] name = "static_assertions" version = "1.1.0" @@ -7152,7 +6973,7 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.6.0", + "indexmap", "toml_datetime", "winnow 0.5.40", ] @@ -7163,7 +6984,7 @@ version = "0.22.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" dependencies = [ - "indexmap 2.6.0", + "indexmap", "serde", "serde_spanned", "toml_datetime", @@ -7325,24 +7146,23 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "twirp-rs" -version = "0.3.0" +version = "0.13.0-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfa3161d8eee0abcad4e762f4215381a430cc1281870d575b0f1e4fbfc74b8ce" +checksum = "27dfcc06b8d9262bc2d4b8d1847c56af9971a52dd8a0076876de9db763227d0d" dependencies = [ "async-trait", "axum 0.7.7", - "bytes", "futures", "http 1.1.0", "http-body-util", "hyper 1.4.1", - "prost", + "prost 0.13.3", "reqwest 0.12.8", "serde", "serde_json", "thiserror", "tokio", - "tower 0.4.13", + "tower 0.5.1", "url", ] @@ -7481,7 +7301,7 @@ version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d82b1bc5417102a73e8464c686eef947bdfb99fcdfc0a4f228e81afa9526470a" dependencies = [ - "indexmap 2.6.0", + "indexmap", "serde", "serde_json", "utoipa-gen", @@ -7543,6 +7363,9 @@ name = "vec_map" version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" +dependencies = [ + "serde", +] [[package]] name = "vergen" diff --git a/Cargo.toml b/Cargo.toml index de008a1f..1c31246a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,6 +16,7 @@ readme = "README.md" [workspace] default-members = [ "crates/bin", + "crates/tests", "crates/node_types/prover", "crates/node_types/lightclient", "crates/common", @@ -26,6 +27,7 @@ default-members = [ members = [ "crates/bin", + "crates/tests", "crates/node_types/prover", "crates/node_types/lightclient", "crates/common", @@ -61,8 +63,8 @@ config = "0.14.0" thiserror = "1.0.62" indexed-merkle-tree = "0.6.2" dotenvy = "0.15.7" -celestia-rpc = "0.4.0" -celestia-types = "0.4.0" +celestia-rpc = "=0.4.0" +celestia-types = "=0.4.0" mockall = "0.12.1" keystore-rs = "0.1.2" toml = "0.8.14" @@ -80,8 +82,8 @@ auto_impl = "1.2.0" bincode = "1.3.3" ed25519-consensus = "2.1.0" secp256k1 = { version = "0.29.0", features = ["global-context", "rand-std"] } -sp1-zkvm = { version = "1.2.0" } -sp1-sdk = { version = "1.2.0" } +sp1-zkvm = { version = "3.0.0-rc1" } +sp1-sdk = { version = "3.0.0-rc1" } prism-common = { path = "crates/common" } prism-storage = { path = "crates/storage" } prism-nova = { path = "crates/zk/nova" } @@ -90,6 +92,7 @@ prism-errors = { path = "crates/errors" } prism-bin = { path = "crates/bin" } prism-groth16 = { path = "crates/zk/groth16" } prism-prover = { path = "crates/node_types/prover" } +prism-tests = { path = "crates/tests" } prism-lightclient = { path = "crates/node_types/lightclient" } rocksdb = { version = "0.21.0", features = ["multi-threaded-cf"] } diff --git a/crates/bin/Cargo.toml b/crates/bin/Cargo.toml index dbe88517..4edb35f0 100644 --- a/crates/bin/Cargo.toml +++ b/crates/bin/Cargo.toml @@ -49,8 +49,3 @@ prism-lightclient = { workspace = true } prism-da = { workspace = true } sp1-sdk = { workspace = true } rand = { workspace = true } - -[[test]] -name = "integration_tests" -path = "tests/integration_tests.rs" -harness = true diff --git a/crates/tests/Cargo.toml b/crates/tests/Cargo.toml new file mode 100644 index 00000000..1961c882 --- /dev/null +++ b/crates/tests/Cargo.toml @@ -0,0 +1,33 @@ +[package] +name = "prism-tests" +version.workspace = true +edition.workspace = true +license.workspace = true +homepage.workspace = true +repository.workspace = true + + +[features] +default = [] +groth16 = [] +test_utils = [] +mock_prover = [] + +[dependencies] +log = { workspace = true } +pretty_env_logger = { workspace = true } +anyhow = { workspace = true } +keystore-rs = { workspace = true } +prism-common = { workspace = true, features = ["test_utils"] } +prism-storage = { workspace = true } +prism-errors = { workspace = true } +prism-prover = { workspace = true, features = ["mock_prover"] } +prism-lightclient = { workspace = true } +prism-da = { workspace = true } +rand = { workspace = true } +tokio = { workspace = true } + +[[test]] +name = "integration_tests" +path = "src/lib.rs" +harness = true diff --git a/crates/bin/tests/integration_tests.rs b/crates/tests/src/lib.rs similarity index 90% rename from crates/bin/tests/integration_tests.rs rename to crates/tests/src/lib.rs index f39a41e3..b664ce74 100644 --- a/crates/bin/tests/integration_tests.rs +++ b/crates/tests/src/lib.rs @@ -1,10 +1,10 @@ -// #![cfg(test)] +#![cfg(test)] #[macro_use] extern crate log; + use anyhow::Result; use keystore_rs::create_signing_key; -use prism_bin::{cfg::Config, node_types::NodeType}; use prism_common::{ operation::{Operation, ServiceChallenge}, test_utils::create_mock_signing_key, @@ -14,7 +14,7 @@ use prism_da::{ DataAvailabilityLayer, }; use prism_lightclient::LightClient; -use prism_prover::Prover; +use prism_prover::{webserver::WebServerConfig, Prover}; use prism_storage::{inmemory::InMemoryDatabase, Database}; use rand::{rngs::StdRng, Rng, SeedableRng}; use std::sync::Arc; @@ -70,7 +70,6 @@ async fn test_light_client_prover_talking() -> Result<()> { let bridge_da_layer = Arc::new(CelestiaConnection::new(&bridge_cfg, None).await.unwrap()); let lc_da_layer = Arc::new(CelestiaConnection::new(&lc_cfg, None).await.unwrap()); let db = setup_db(); - let cfg = Config::default(); let signing_key = create_signing_key(); let pubkey = signing_key.verification_key(); @@ -80,27 +79,23 @@ async fn test_light_client_prover_talking() -> Result<()> { let prover = Arc::new(Prover::new( db.clone(), bridge_da_layer.clone(), - cfg.clone().webserver.unwrap(), - cfg.clone().celestia_config.unwrap().start_height, + WebServerConfig::default(), + 0, signing_key.clone(), )?); - let lightclient = Arc::new(LightClient::new( - lc_da_layer.clone(), - cfg.celestia_config.unwrap(), - Some(pubkey), - )); + let lightclient = Arc::new(LightClient::new(lc_da_layer.clone(), lc_cfg, Some(pubkey))); let prover_clone = prover.clone(); spawn(async move { debug!("starting prover"); - prover_clone.start().await.unwrap(); + prover_clone.run().await.unwrap(); }); let lc_clone = lightclient.clone(); spawn(async move { debug!("starting light client"); - lc_clone.start().await.unwrap(); + lc_clone.run().await.unwrap(); }); spawn(async move { @@ -157,14 +152,15 @@ async fn test_light_client_prover_talking() -> Result<()> { } } - tokio::time::sleep(Duration::from_millis(500)).await; + tokio::time::sleep(Duration::from_millis(5000)).await; } }); let mut rx = lc_da_layer.clone().subscribe_to_heights(); + let initial_height = rx.recv().await.unwrap(); while let Ok(height) = rx.recv().await { debug!("received height {}", height); - if height >= 100 { + if height >= initial_height + 100 { break; } } diff --git a/elf/riscv32im-succinct-zkvm-elf b/elf/riscv32im-succinct-zkvm-elf index a4a39101..373dd6a2 100755 Binary files a/elf/riscv32im-succinct-zkvm-elf and b/elf/riscv32im-succinct-zkvm-elf differ diff --git a/justfile b/justfile index 9e87357c..815fa604 100644 --- a/justfile +++ b/justfile @@ -85,6 +85,12 @@ unit-test: @echo "Running unit tests..." cargo test --lib --release --features "mock_prover" -- --skip test_light_client_prover_talking +coverage: + @echo "Generating coverage report..." + cargo llvm-cov nextest --html --output-dir coverage_report --lib --features "mock_prover" --release --workspace --exclude prism-bin --exclude-from-report prism-sp1 --ignore-filename-regex sp1 + @echo "Coverage report generated in 'coverage_report' directory" + + install-deps: #!/usr/bin/env bash set -euo pipefail