diff --git a/Cargo.lock b/Cargo.lock index 2e7c9c5e..c071fa93 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -104,35 +104,37 @@ dependencies = [ [[package]] name = "ark-bn254" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d69eab57e8d2663efa5c63135b2af4f396d66424f88954c21104125ab6b3e6bc" +checksum = "6bc66f96ebe2a17a499475b4f94791d379817592ef494171586967ffdc6f95db" dependencies = [ "ark-ec", "ark-ff", - "ark-r1cs-std", "ark-std", ] [[package]] name = "ark-crypto-primitives" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e0c292754729c8a190e50414fd1a37093c786c709899f29c9f7daccecfa855e" +checksum = "31b3409b1846fe459d19c95df039481575ac6d5842ae63858ad75cc31219bfc1" dependencies = [ "ahash", "ark-crypto-primitives-macros", "ark-ec", "ark-ff", + "ark-r1cs-std", "ark-relations", "ark-serialize", "ark-snark", "ark-std", "blake2", + "blake3", "derivative", "digest", "fnv", "merlin", + "num-bigint", "rayon", "sha2", ] @@ -150,9 +152,9 @@ dependencies = [ [[package]] name = "ark-ec" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43d68f2d516162846c1238e755a7c4d131b892b70cc70c471a8e3ca3ed818fce" +checksum = "8352a2b2aedf6ba2cc38f7520fc51191d518dde96175c729af19f2d059f191c4" dependencies = [ "ahash", "ark-ff", @@ -161,8 +163,8 @@ dependencies = [ "ark-std", "educe", "fnv", - "hashbrown 0.15.5", - "itertools 0.13.0", + "hashbrown 0.17.0", + "itertools 0.14.0", "num-bigint", "num-integer", "num-traits", @@ -172,30 +174,27 @@ dependencies = [ [[package]] name = "ark-ff" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a177aba0ed1e0fbb62aa9f6d0502e9b46dad8c2eab04c14258a1212d2557ea70" +checksum = "f7a806ac6c8307b929df4645776290a50ee2aac754ad09d8bdf73391309e43af" dependencies = [ "ark-ff-asm", "ark-ff-macros", "ark-serialize", "ark-std", - "arrayvec", "digest", "educe", - "itertools 0.13.0", "num-bigint", "num-traits", - "paste", "rayon", "zeroize", ] [[package]] name = "ark-ff-asm" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" +checksum = "1479009684adc073dff49a1025d3a7065b317a9ead25aaaca38cdc70058ba8a2" dependencies = [ "quote", "syn 2.0.110", @@ -203,9 +202,9 @@ dependencies = [ [[package]] name = "ark-ff-macros" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09be120733ee33f7693ceaa202ca41accd5653b779563608f1234f78ae07c4b3" +checksum = "4a0691ed21ef00ef89c1e9bda832eba493dda3ec2f8d892fb25b705f73f06bb8" dependencies = [ "num-bigint", "num-traits", @@ -216,9 +215,9 @@ dependencies = [ [[package]] name = "ark-groth16" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88f1d0f3a534bb54188b8dcc104307db6c56cdae574ddc3212aec0625740fc7e" +checksum = "a293328aa422e65527e285614ce5d1dceb0bd7b8b18d18b1b63191ee1f74cb41" dependencies = [ "ark-crypto-primitives", "ark-ec", @@ -226,15 +225,16 @@ dependencies = [ "ark-poly", "ark-relations", "ark-serialize", + "ark-snark", "ark-std", "rayon", ] [[package]] name = "ark-poly" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "579305839da207f02b89cd1679e50e67b4331e2f9294a57693e5051b7703fe27" +checksum = "75f55af10b672002b8d953e230282c51206842e20e5791a94432219b4201de5c" dependencies = [ "ahash", "ark-ff", @@ -242,21 +242,22 @@ dependencies = [ "ark-std", "educe", "fnv", - "hashbrown 0.15.5", + "hashbrown 0.17.0", "rayon", ] [[package]] name = "ark-r1cs-std" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "941551ef1df4c7a401de7068758db6503598e6f01850bdb2cfdb614a1f9dbea1" +checksum = "291f1c6628bfcac79b0dc2adbe401aa9100e2e96daa971645e0b18fc94de9a98" dependencies = [ "ark-ec", "ark-ff", "ark-relations", "ark-std", "educe", + "itertools 0.14.0", "num-bigint", "num-integer", "num-traits", @@ -265,35 +266,40 @@ dependencies = [ [[package]] name = "ark-relations" -version = "0.5.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec46ddc93e7af44bcab5230937635b06fb5744464dd6a7e7b083e80ebd274384" +checksum = "fe4c11c797a64b8a23e22bf4e77bf582ac27bb21395e3183a9a506ba2561e9f9" dependencies = [ "ark-ff", + "ark-poly", + "ark-serialize", "ark-std", + "foldhash 0.1.5", + "indexmap 2.12.1", + "rayon", "tracing", "tracing-subscriber", ] [[package]] name = "ark-serialize" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f4d068aaf107ebcd7dfb52bc748f8030e0fc930ac8e360146ca54c1203088f7" +checksum = "a74dd304fd536fb95d0a328e72be759209cc496a9da094c5bc56e5fea4f9e86b" dependencies = [ "ark-serialize-derive", "ark-std", - "arrayvec", "digest", "num-bigint", "rayon", + "serde_with", ] [[package]] name = "ark-serialize-derive" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" +checksum = "4f153690697a2b91e5e1251ff98411ee5371500a111a0fd317a70e588eb300f9" dependencies = [ "proc-macro2", "quote", @@ -302,9 +308,9 @@ dependencies = [ [[package]] name = "ark-snark" -version = "0.5.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d368e2848c2d4c129ce7679a7d0d2d612b6a274d3ea6a13bad4445d61b381b88" +checksum = "5bdb461d2be9b2bd6f303c79fffc89f5858790a7b4d33257bca3178e2c071fb9" dependencies = [ "ark-ff", "ark-relations", @@ -314,9 +320,9 @@ dependencies = [ [[package]] name = "ark-std" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "246a225cc6131e9ee4f24619af0f19d67761fff15d7ccc22e42b80846e69449a" +checksum = "367c9c827ed431bff6868b7aa926e05b16eb46603cc8b6e768e4a5553fa1d155" dependencies = [ "num-traits", "rand 0.8.5", @@ -417,9 +423,9 @@ dependencies = [ [[package]] name = "async-lock" -version = "3.4.1" +version = "3.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fd03604047cee9b6ce9de9f70c6cd540a0520c813cbd49bae61f33ab80ed1dc" +checksum = "290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311" dependencies = [ "event-listener 5.4.1", "event-listener-strategy", @@ -782,6 +788,7 @@ dependencies = [ "iana-time-zone", "js-sys", "num-traits", + "serde", "wasm-bindgen", "windows-link", ] @@ -1028,18 +1035,8 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "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", + "darling_core", + "darling_macro", ] [[package]] @@ -1056,38 +1053,13 @@ dependencies = [ "syn 2.0.110", ] -[[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", - "strsim", - "syn 2.0.110", -] - [[package]] name = "darling_macro" version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core 0.20.11", - "quote", - "syn 2.0.110", -] - -[[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", + "darling_core", "quote", "syn 2.0.110", ] @@ -1131,6 +1103,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587" dependencies = [ "powerfmt", + "serde_core", ] [[package]] @@ -1159,7 +1132,7 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" dependencies = [ - "darling 0.20.11", + "darling", "proc-macro2", "quote", "syn 2.0.110", @@ -1301,6 +1274,12 @@ dependencies = [ "shared_child", ] +[[package]] +name = "dyn-clone" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" + [[package]] name = "educe" version = "0.6.0" @@ -1500,6 +1479,18 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +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" @@ -1724,7 +1715,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap", + "indexmap 2.12.1", "slab", "tokio", "tokio-util", @@ -1740,29 +1731,35 @@ dependencies = [ "byteorder", ] +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + [[package]] name = "hashbrown" version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" -dependencies = [ - "ahash", -] [[package]] name = "hashbrown" -version = "0.15.5" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" dependencies = [ - "allocator-api2", + "foldhash 0.2.0", ] [[package]] name = "hashbrown" -version = "0.16.1" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" +checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" +dependencies = [ + "allocator-api2", +] [[package]] name = "heapless" @@ -2091,12 +2088,23 @@ dependencies = [ "delegate-display", "fancy_constructor", "js-sys", - "uuid 1.18.1", + "uuid", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", ] +[[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.12.1" @@ -2105,6 +2113,8 @@ checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" dependencies = [ "equivalent", "hashbrown 0.16.1", + "serde", + "serde_core", ] [[package]] @@ -2137,29 +2147,6 @@ dependencies = [ "web-sys", ] -[[package]] -name = "intertrait" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f00fc6ef7d878dfcf59d9e556ef1b368d7f55b9da5813ed481a3573eef485a01" -dependencies = [ - "intertrait-macros", - "linkme", - "once_cell", -] - -[[package]] -name = "intertrait-macros" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d56984da2d4c9d6d7de8463892e65a9354f4238f641c246fe99176150e97bb8" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", - "uuid 0.8.2", -] - [[package]] name = "inventory" version = "0.3.21" @@ -2242,8 +2229,8 @@ dependencies = [ [[package]] name = "kaspa-addresses" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "borsh", "js-sys", @@ -2257,8 +2244,8 @@ dependencies = [ [[package]] name = "kaspa-bip32" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "borsh", "bs58", @@ -2276,7 +2263,7 @@ dependencies = [ "serde", "sha2", "subtle", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "workflow-wasm", "zeroize", @@ -2284,8 +2271,8 @@ dependencies = [ [[package]] name = "kaspa-consensus-client" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "ahash", "borsh", @@ -2306,7 +2293,7 @@ dependencies = [ "serde", "serde-wasm-bindgen", "serde_json", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "workflow-log", "workflow-wasm", @@ -2314,8 +2301,8 @@ dependencies = [ [[package]] name = "kaspa-consensus-core" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "arc-swap", "async-trait", @@ -2333,15 +2320,17 @@ dependencies = [ "kaspa-math", "kaspa-merkle", "kaspa-muhash", + "kaspa-smt", "kaspa-txscript-errors", "kaspa-utils", "rand 0.8.5", "secp256k1", "serde", + "serde-value", "serde-wasm-bindgen", "serde_json", "smallvec", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "workflow-core", "workflow-log", @@ -2351,8 +2340,8 @@ dependencies = [ [[package]] name = "kaspa-consensus-notify" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "async-channel 2.5.0", "cfg-if 1.0.4", @@ -2365,14 +2354,14 @@ dependencies = [ "kaspa-utils", "log", "paste", - "thiserror 1.0.69", + "thiserror 2.0.18", "triggered", ] [[package]] name = "kaspa-consensus-wasm" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "cfg-if 1.0.4", "faster-hex", @@ -2388,7 +2377,7 @@ dependencies = [ "serde", "serde-wasm-bindgen", "serde_json", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "workflow-log", "workflow-wasm", @@ -2396,18 +2385,18 @@ dependencies = [ [[package]] name = "kaspa-core" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "anyhow", "cfg-if 1.0.4", "ctrlc", + "downcast", "futures-util", - "intertrait", "log", "log4rs", "num_cpus", - "thiserror 1.0.69", + "thiserror 2.0.18", "tokio", "triggered", "wasm-bindgen", @@ -2416,8 +2405,8 @@ dependencies = [ [[package]] name = "kaspa-hashes" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "blake2b_simd", "blake3", @@ -2427,17 +2416,18 @@ dependencies = [ "js-sys", "kaspa-utils", "keccak", - "once_cell", "serde", "sha2", + "sha2-const-stable", "wasm-bindgen", "workflow-wasm", + "zerocopy", ] [[package]] name = "kaspa-index-core" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "async-channel 2.5.0", "async-trait", @@ -2450,14 +2440,14 @@ dependencies = [ "log", "paste", "serde", - "thiserror 1.0.69", + "thiserror 2.0.18", "triggered", ] [[package]] name = "kaspa-math" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "borsh", "faster-hex", @@ -2467,7 +2457,7 @@ dependencies = [ "malachite-nz", "serde", "serde-wasm-bindgen", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "workflow-core", "workflow-log", @@ -2476,16 +2466,16 @@ dependencies = [ [[package]] name = "kaspa-merkle" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "kaspa-hashes", ] [[package]] name = "kaspa-metrics-core" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "async-trait", "borsh", @@ -2494,24 +2484,24 @@ dependencies = [ "kaspa-rpc-core", "separator", "serde", - "thiserror 1.0.69", + "thiserror 2.0.18", "workflow-core", "workflow-log", ] [[package]] name = "kaspa-mining-errors" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "kaspa-consensus-core", - "thiserror 1.0.69", + "thiserror 2.0.18", ] [[package]] name = "kaspa-muhash" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "kaspa-hashes", "kaspa-math", @@ -2521,8 +2511,8 @@ dependencies = [ [[package]] name = "kaspa-notify" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "async-channel 2.5.0", "async-trait", @@ -2530,7 +2520,7 @@ dependencies = [ "derive_more 0.99.20", "futures", "futures-util", - "indexmap", + "indexmap 2.12.1", "itertools 0.13.0", "kaspa-addresses", "kaspa-consensus-core", @@ -2544,7 +2534,7 @@ dependencies = [ "paste", "rand 0.8.5", "serde", - "thiserror 1.0.69", + "thiserror 2.0.18", "triggered", "workflow-core", "workflow-log", @@ -2591,8 +2581,8 @@ dependencies = [ [[package]] name = "kaspa-rpc-core" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "async-channel 2.5.0", "async-trait", @@ -2622,10 +2612,9 @@ dependencies = [ "rand 0.8.5", "serde", "serde-wasm-bindgen", - "serde_nested_with", "smallvec", - "thiserror 1.0.69", - "uuid 1.18.1", + "thiserror 2.0.18", + "uuid", "wasm-bindgen", "workflow-core", "workflow-serializer", @@ -2634,8 +2623,8 @@ dependencies = [ [[package]] name = "kaspa-rpc-macros" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "convert_case 0.6.0", "proc-macro-error", @@ -2645,10 +2634,21 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "kaspa-smt" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" +dependencies = [ + "blake3", + "kaspa-hashes", + "thiserror 2.0.18", + "zerocopy", +] + [[package]] name = "kaspa-txscript" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "ark-bn254", "ark-ec", @@ -2657,13 +2657,13 @@ dependencies = [ "ark-serialize", "ark-snark", "blake2b_simd", + "blake3", "borsh", - "bytemuck", "cc", "cfg-if 1.0.4", "faster-hex", "hexplay", - "indexmap", + "indexmap 2.12.1", "itertools 0.13.0", "kaspa-addresses", "kaspa-consensus-core", @@ -2672,13 +2672,11 @@ dependencies = [ "kaspa-utils", "kaspa-wasm-core", "log", - "once_cell", "parking_lot", "rand 0.8.5", "risc0-binfmt", "risc0-circuit-recursion", "risc0-core", - "risc0-groth16", "risc0-zkp", "secp256k1", "serde", @@ -2686,28 +2684,27 @@ dependencies = [ "serde_json", "sha2", "smallvec", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "workflow-wasm", ] [[package]] name = "kaspa-txscript-errors" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "borsh", "kaspa-hashes", "secp256k1", - "thiserror 1.0.69", + "thiserror 2.0.18", ] [[package]] name = "kaspa-utils" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ - "arc-swap", "async-channel 2.5.0", "borsh", "cfg-if 1.0.4", @@ -2726,22 +2723,22 @@ dependencies = [ "sha2", "smallvec", "sysinfo", - "thiserror 1.0.69", + "thiserror 2.0.18", "triggered", - "uuid 1.18.1", + "uuid", "wasm-bindgen", ] [[package]] name = "kaspa-wallet-core" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "aes", "ahash", "argon2", "async-channel 2.5.0", - "async-std", + "async-lock", "async-trait", "base64", "borsh", @@ -2751,7 +2748,6 @@ dependencies = [ "convert_case 0.6.0", "crypto_box", "dashmap", - "derivative", "downcast", "evpkdf", "faster-hex", @@ -2797,7 +2793,7 @@ dependencies = [ "sha2", "slugify-rs", "sorted-insert", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -2813,8 +2809,8 @@ dependencies = [ [[package]] name = "kaspa-wallet-keys" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "async-trait", "borsh", @@ -2836,7 +2832,7 @@ dependencies = [ "serde-wasm-bindgen", "serde_json", "sha2", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "wasm-bindgen-futures", "workflow-core", @@ -2846,8 +2842,8 @@ dependencies = [ [[package]] name = "kaspa-wallet-macros" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "convert_case 0.5.0", "proc-macro-error", @@ -2860,8 +2856,8 @@ dependencies = [ [[package]] name = "kaspa-wallet-pskt" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "bincode", "derive_builder", @@ -2882,15 +2878,15 @@ dependencies = [ "serde-wasm-bindgen", "serde_json", "serde_repr", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "workflow-wasm", ] [[package]] name = "kaspa-wasm-core" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "faster-hex", "hexplay", @@ -2901,10 +2897,10 @@ dependencies = [ [[package]] name = "kaspa-wrpc-client" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ - "async-std", + "async-lock", "async-trait", "borsh", "cfg-if 1.0.4", @@ -2923,7 +2919,7 @@ dependencies = [ "serde", "serde-wasm-bindgen", "serde_json", - "thiserror 1.0.69", + "thiserror 2.0.18", "toml 0.8.23", "wasm-bindgen", "wasm-bindgen-futures", @@ -2938,11 +2934,11 @@ dependencies = [ [[package]] name = "kaspa-wrpc-wasm" -version = "1.1.0" -source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=9b185f8#9b185f80cd2a5f6fbb3ca6c7ae5c3bb6385352ef" +version = "1.1.1-toc.1" +source = "git+https://github.com/kaspanet/rusty-kaspa.git?rev=d290179#d290179438511ac3ee145339f4f23d0542c2e657" dependencies = [ "ahash", - "async-std", + "async-lock", "cfg-if 1.0.4", "futures", "js-sys", @@ -3008,9 +3004,9 @@ checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" [[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" @@ -3023,26 +3019,6 @@ dependencies = [ "redox_syscall", ] -[[package]] -name = "linkme" -version = "0.2.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edd4ad156b9934dc21cad96fd17278a7cb6f30a5657a9d976cd7b71d6d49c02c" -dependencies = [ - "linkme-impl", -] - -[[package]] -name = "linkme-impl" -version = "0.2.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73fd9dc7072de7168cbdaba9125e8f742cd3a965aa12bde994b4611a174488d8" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "linux-raw-sys" version = "0.11.0" @@ -3175,25 +3151,26 @@ dependencies = [ [[package]] name = "malachite-base" -version = "0.4.22" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ea0ed76adf7defc1a92240b5c36d5368cfe9251640dcce5bd2d0b7c1fd87aeb" +checksum = "a8b6f86fdbb1eb9955946be91775239dfcb0acdb1a51bb07d5fc9b8c854f5ccd" dependencies = [ - "hashbrown 0.14.5", - "itertools 0.11.0", + "hashbrown 0.16.1", + "itertools 0.14.0", "libm", "ryu", ] [[package]] name = "malachite-nz" -version = "0.4.22" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34a79feebb2bc9aa7762047c8e5495269a367da6b5a90a99882a0aeeac1841f7" +checksum = "0197a2f5cfee19d59178e282985c6ca79a9233e26a2adcf40acb693896aa09f6" dependencies = [ - "itertools 0.11.0", + "itertools 0.14.0", "libm", "malachite-base", + "wide", ] [[package]] @@ -3403,6 +3380,15 @@ dependencies = [ "winapi", ] +[[package]] +name = "nu-ansi-term" +version = "0.50.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" +dependencies = [ + "windows-sys 0.61.2", +] + [[package]] name = "num-bigint" version = "0.4.6" @@ -3424,9 +3410,9 @@ dependencies = [ [[package]] name = "num-conv" -version = "0.1.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" +checksum = "c6673768db2d862beb9b39a78fdcb1a69439615d5794a1be50caa9bc92c81967" [[package]] name = "num-integer" @@ -3883,28 +3869,6 @@ dependencies = [ "version_check", ] -[[package]] -name = "proc-macro-error-attr2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" -dependencies = [ - "proc-macro2", - "quote", -] - -[[package]] -name = "proc-macro-error2" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" -dependencies = [ - "proc-macro-error-attr2", - "proc-macro2", - "quote", - "syn 2.0.110", -] - [[package]] name = "proc-macro2" version = "1.0.103" @@ -4023,7 +3987,7 @@ dependencies = [ "anyhow", "chrono", "either", - "indexmap", + "indexmap 2.12.1", "inventory", "itertools 0.14.0", "log", @@ -4044,7 +4008,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2426ba759d848787239d80f9fdb1f223786976f87fb6c3da8188ca7c17744b28" dependencies = [ "heck", - "indexmap", + "indexmap 2.12.1", "proc-macro2", "quote", "rustpython-parser", @@ -4235,6 +4199,26 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "ref-cast" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +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.110", +] + [[package]] name = "regex" version = "1.12.2" @@ -4374,27 +4358,6 @@ dependencies = [ "rand_core 0.9.3", ] -[[package]] -name = "risc0-groth16" -version = "3.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc57e76bb87193d154ac5ee6ee352fbd7edabddab36f02a81f40a048e5ca14f9" -dependencies = [ - "anyhow", - "ark-bn254", - "ark-ec", - "ark-ff", - "ark-groth16", - "ark-serialize", - "bytemuck", - "hex", - "num-bigint", - "num-traits", - "risc0-binfmt", - "risc0-zkp", - "serde", -] - [[package]] name = "risc0-zkp" version = "3.0.4" @@ -4597,9 +4560,18 @@ checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "ryu" -version = "1.0.20" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" + +[[package]] +name = "safe_arch" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "1f7caad094bd561859bcd467734a720c3c1f5d1f338995351fefe2190c45efed" +dependencies = [ + "bytemuck", +] [[package]] name = "salsa20" @@ -4619,6 +4591,30 @@ dependencies = [ "windows-sys 0.59.0", ] +[[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]] name = "scopeguard" version = "1.2.0" @@ -4759,18 +4755,6 @@ dependencies = [ "zmij", ] -[[package]] -name = "serde_nested_with" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc84538493ef215370434907a7dca8117778d16ac1acd0482ce88a0f5cf19707" -dependencies = [ - "darling 0.21.3", - "proc-macro-error2", - "quote", - "syn 2.0.110", -] - [[package]] name = "serde_repr" version = "0.1.20" @@ -4812,13 +4796,31 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_with" +version = "3.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd5414fad8e6907dbdd5bc441a50ae8d6e26151a03b1de04d89a5576de61d01f" +dependencies = [ + "base64", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.12.1", + "schemars 0.9.0", + "schemars 1.2.1", + "serde_core", + "serde_json", + "time", +] + [[package]] name = "serde_yaml" version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap", + "indexmap 2.12.1", "itoa", "ryu", "serde", @@ -4847,6 +4849,21 @@ dependencies = [ "digest", ] +[[package]] +name = "sha2-const-stable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f179d4e11094a893b82fff208f74d448a7512f99f5a0acbd5c679b705f83ed9" + +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + [[package]] name = "shared_child" version = "1.1.1" @@ -5142,11 +5159,20 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "thread_local" +version = "1.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" +dependencies = [ + "cfg-if 1.0.4", +] + [[package]] name = "time" -version = "0.3.44" +version = "0.3.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d" +checksum = "743bd48c283afc0388f9b8827b976905fb217ad9e647fae3a379a9283c4def2c" dependencies = [ "deranged", "itoa", @@ -5154,22 +5180,22 @@ dependencies = [ "num-conv", "num_threads", "powerfmt", - "serde", + "serde_core", "time-core", "time-macros", ] [[package]] name = "time-core" -version = "0.1.6" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" +checksum = "7694e1cfe791f8d31026952abf09c69ca6f6fa4e1a1229e18988f06a04a12dca" [[package]] name = "time-macros" -version = "0.2.24" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30cfb0125f12d9c277f35663a0a33f8c30190f4e4574868a330595412d34ebf3" +checksum = "2e70e4c5a0e0a8a4823ad65dfe1a6930e4f4d756dcd9dd7939022b5e8c501215" dependencies = [ "num-conv", "time-core", @@ -5304,7 +5330,7 @@ version = "0.9.10+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0825052159284a1a8b4d6c0c86cbc801f2da5afd2b225fa548c72f2e74002f48" dependencies = [ - "indexmap", + "indexmap 2.12.1", "serde_core", "serde_spanned 1.0.4", "toml_datetime 0.7.5+spec-1.1.0", @@ -5337,7 +5363,7 @@ version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap", + "indexmap 2.12.1", "serde", "serde_spanned 0.6.9", "toml_datetime 0.6.11", @@ -5351,7 +5377,7 @@ version = "0.23.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6485ef6d0d9b5d0ec17244ff7eb05310113c3f316f2d14200d4de56b3cb98f8d" dependencies = [ - "indexmap", + "indexmap 2.12.1", "toml_datetime 0.7.5+spec-1.1.0", "toml_parser", "winnow", @@ -5456,13 +5482,29 @@ dependencies = [ "valuable", ] +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + [[package]] name = "tracing-subscriber" -version = "0.2.25" +version = "0.3.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" +checksum = "cb7f578e5945fb242538965c2d0b04418d38ec25c79d160cd279bf0731c8d319" dependencies = [ + "nu-ansi-term", + "sharded-slab", + "smallvec", + "thread_local", "tracing-core", + "tracing-log", ] [[package]] @@ -5684,15 +5726,6 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" -[[package]] -name = "uuid" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" -dependencies = [ - "getrandom 0.2.16", -] - [[package]] name = "uuid" version = "1.18.1" @@ -5778,8 +5811,6 @@ dependencies = [ "cfg-if 1.0.4", "once_cell", "rustversion", - "serde", - "serde_json", "wasm-bindgen-macro", ] @@ -5880,6 +5911,16 @@ dependencies = [ "rustls-pki-types", ] +[[package]] +name = "wide" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9479f84a757f819cfab37295955906479181395de83add28f74975fde083141" +dependencies = [ + "bytemuck", + "safe_arch", +] + [[package]] name = "winapi" version = "0.3.9" diff --git a/Cargo.toml b/Cargo.toml index 32952384..8446eec7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,18 +16,18 @@ ahash = "0.8.12" bincode = "1.3.3" faster-hex = "0.9.0" futures = "0.3.31" -kaspa-addresses = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-bip32 = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-consensus-client = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-consensus-core = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-hashes = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-notify = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-rpc-core = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-txscript = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8", features = ["wasm32-sdk"]} -kaspa-utils = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-wallet-core = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-wallet-keys = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } -kaspa-wrpc-client = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "9b185f8" } +kaspa-addresses = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-bip32 = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-consensus-client = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-consensus-core = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-hashes = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-notify = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-rpc-core = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-txscript = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179", features = ["wasm32-sdk"]} +kaspa-utils = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-wallet-core = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-wallet-keys = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } +kaspa-wrpc-client = { git = "https://github.com/kaspanet/rusty-kaspa.git", rev = "d290179" } paste = "1.0" pyo3 = { version = "0.27.1", features = ['multiple-pymethods'] } pyo3-async-runtimes = { version = "0.27.0", features = ['tokio-runtime'] } diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 4ffbcf62..f79fac16 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -20,7 +20,7 @@ - Added `version` getter for `ScriptPublicKey`. ### Changed -- Bumped rusty-kaspa dependency version to commit a311302. +- Bumped rusty-kaspa dependency version to commit d290179. - Moved Kaspa Python SDK out of Rusty-Kaspa (as a workspace member crate) to its own dedicated repository. The internals of this project have changed significantly as a result. However, all APIs exposed to Python remain unchanged. - All Python-exposed structs and enums are prefixed with `Py` (e.g. `PyAddress`) internally. The corresponding Python class name has not changed (prefix is dropped in Python). - All Python-exposed functions are prefixed with `py_` (e.g. `py_sign_message`) internally. The corresponding Python function name has not changed (prefix is dropped in Python). diff --git a/kaspa.pyi b/kaspa.pyi index 33676b38..fc177f62 100644 --- a/kaspa.pyi +++ b/kaspa.pyi @@ -2102,11 +2102,24 @@ class TransactionInput: def sig_op_count(self, value: builtins.int) -> None: r""" Set the signature operation count. - + Args: value: The number of signature operations. """ @property + def compute_budget(self) -> builtins.int: + r""" + The compute budget for this input. + """ + @compute_budget.setter + def compute_budget(self, value: builtins.int) -> None: + r""" + Set the compute budget for this input. + + Args: + value: The compute budget. + """ + @property def utxo(self) -> typing.Optional[UtxoEntryReference]: r""" The UTXO entry reference for transaction signing, or None if not set. @@ -2119,15 +2132,16 @@ class TransactionInput: Args: value: The signature script as bytes or hex string. """ - def __new__(cls, previous_outpoint: TransactionOutpoint, signature_script: Binary, sequence: builtins.int, sig_op_count: builtins.int, utxo: typing.Optional[UtxoEntryReference] = None) -> TransactionInput: + def __new__(cls, previous_outpoint: TransactionOutpoint, signature_script: Binary, sequence: builtins.int, sig_op_count: builtins.int, compute_budget: builtins.int = 0, utxo: typing.Optional[UtxoEntryReference] = None) -> TransactionInput: r""" Create a new transaction input. - + Args: previous_outpoint: Reference to the UTXO being spent. signature_script: The unlocking script (signature). sequence: Sequence number for relative time locks. sig_op_count: Number of signature operations. + compute_budget: Compute budget for this input (default: 0). utxo: Optional UTXO entry reference for signing. Returns: @@ -2152,6 +2166,7 @@ class TransactionInput: - 'signatureScript' (str | None): The signature script as hex string - 'sequence' (int): Sequence number - 'sigOpCount' (int): Signature operation count + - 'computeBudget' (int, optional): Compute budget for this input (default: 0) - 'utxo' (dict | None): Optional UTXO entry reference dict Returns: @@ -3199,12 +3214,12 @@ class Opcodes(enum.Enum): OpCovOutputCount = ... OpCovOutputIdx = ... OpChainblockSeqCommit = ... - OpUnknown213 = ... + OpOutputCovenantId = ... OpUnknown214 = ... - OpUnknown215 = ... - OpUnknown216 = ... - OpUnknown217 = ... - OpUnknown218 = ... + OpCheckSigFromStack = ... + OpCheckSigFromStackECDSA = ... + OpBlake3 = ... + OpBlake3WithKey = ... OpUnknown219 = ... OpUnknown220 = ... OpUnknown221 = ... diff --git a/src/consensus/client/input.rs b/src/consensus/client/input.rs index 022d6fbf..55ffe508 100644 --- a/src/consensus/client/input.rs +++ b/src/consensus/client/input.rs @@ -30,17 +30,19 @@ impl PyTransactionInput { /// signature_script: The unlocking script (signature). /// sequence: Sequence number for relative time locks. /// sig_op_count: Number of signature operations. + /// compute_budget: Compute budget for this input (default: 0). /// utxo: Optional UTXO entry reference for signing. /// /// Returns: /// TransactionInput: A new TransactionInput instance. #[new] - #[pyo3(signature = (previous_outpoint, signature_script, sequence, sig_op_count, utxo=None))] + #[pyo3(signature = (previous_outpoint, signature_script, sequence, sig_op_count, compute_budget=0, utxo=None))] pub fn constructor( previous_outpoint: PyTransactionOutpoint, signature_script: PyBinary, sequence: u64, sig_op_count: u8, + compute_budget: u16, utxo: Option, ) -> PyResult { let inner = TransactionInput::new( @@ -48,6 +50,7 @@ impl PyTransactionInput { Some(signature_script.into()), sequence, sig_op_count, + compute_budget, utxo.map(UtxoEntryReference::from), ); Ok(Self(inner)) @@ -119,6 +122,21 @@ impl PyTransactionInput { self.0.inner().sig_op_count = value; } + /// The compute budget for this input. + #[getter] + pub fn get_compute_budget(&self) -> u16 { + self.0.inner().compute_budget + } + + /// Set the compute budget for this input. + /// + /// Args: + /// value: The compute budget. + #[setter] + pub fn set_compute_budget(&mut self, value: u16) { + self.0.inner().compute_budget = value; + } + /// The UTXO entry reference for transaction signing, or None if not set. #[getter] pub fn get_utxo(&self) -> Option { @@ -142,6 +160,7 @@ impl PyTransactionInput { /// - 'signatureScript' (str | None): The signature script as hex string /// - 'sequence' (int): Sequence number /// - 'sigOpCount' (int): Signature operation count + /// - 'computeBudget' (int, optional): Compute budget for this input (default: 0) /// - 'utxo' (dict | None): Optional UTXO entry reference dict /// /// Returns: @@ -218,6 +237,12 @@ impl TryFrom<&Bound<'_, PyDict>> for PyTransactionInput { .ok_or_else(|| PyKeyError::new_err("Key `sigOpCount` not present"))? .extract()?; + // Parse computeBudget (optional, defaults to 0) + let compute_budget: u16 = match dict.get_item("computeBudget")? { + Some(item) if !item.is_none() => item.extract()?, + _ => 0, + }; + // Parse utxo (optional) let utxo: Option = if let Some(utxo_item) = dict.get_item("utxo")? { if utxo_item.is_none() { @@ -235,6 +260,7 @@ impl TryFrom<&Bound<'_, PyDict>> for PyTransactionInput { signature_script, sequence, sig_op_count, + compute_budget, utxo, ); Ok(Self(input)) diff --git a/src/crypto/txscript/opcodes.rs b/src/crypto/txscript/opcodes.rs index 29680fb5..1a7c6b89 100644 --- a/src/crypto/txscript/opcodes.rs +++ b/src/crypto/txscript/opcodes.rs @@ -252,12 +252,12 @@ crate::wrap_c_enum_for_py!( OpCovOutputCount = 0xd2, OpCovOutputIdx = 0xd3, OpChainblockSeqCommit = 0xd4, - OpUnknown213 = 0xd5, + OpOutputCovenantId = 0xd5, OpUnknown214 = 0xd6, - OpUnknown215 = 0xd7, - OpUnknown216 = 0xd8, - OpUnknown217 = 0xd9, - OpUnknown218 = 0xda, + OpCheckSigFromStack = 0xd7, + OpCheckSigFromStackECDSA = 0xd8, + OpBlake3 = 0xd9, + OpBlake3WithKey = 0xda, OpUnknown219 = 0xdb, OpUnknown220 = 0xdc, OpUnknown221 = 0xdd, diff --git a/src/wallet/core/tx/utils.rs b/src/wallet/core/tx/utils.rs index f0badca9..7faaf34b 100644 --- a/src/wallet/core/tx/utils.rs +++ b/src/wallet/core/tx/utils.rs @@ -55,6 +55,7 @@ pub fn py_create_transaction( None, sequence as u64, sig_op_count, + 0, Some(reference), ) })