From 42ba478f5dc26e0e2654112d3dba33e61ffdc1fa Mon Sep 17 00:00:00 2001 From: Antoine A <> Date: Tue, 21 Nov 2023 00:47:30 +0100 Subject: Support ethereum 1.13.5 Use POA ethereum network for tests Improve test runner Update dependencies --- Cargo.lock | 505 +++++++++++++++++++++------------------- README.md | 4 +- btc-wire/Cargo.toml | 8 +- btc-wire/src/bin/segwit-demo.rs | 2 +- btc-wire/src/lib.rs | 6 +- common/Cargo.toml | 4 +- common/src/currency.rs | 8 +- eth-wire/Cargo.toml | 4 +- eth-wire/src/rpc.rs | 73 +++--- instrumentation/Cargo.toml | 8 +- instrumentation/src/btc.rs | 12 +- instrumentation/src/eth.rs | 33 ++- instrumentation/src/main.rs | 18 +- instrumentation/src/utils.rs | 17 +- makefile | 2 +- script/prepare.sh | 6 +- wire-gateway/Cargo.toml | 6 +- 17 files changed, 381 insertions(+), 335 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index efe2b0c..0f18a97 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -19,9 +19,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "aho-corasick" -version = "1.1.1" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea5d730647d4fadd988536d06fecce94b7b4f2a7efdae548f1cf4b63205518ab" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" dependencies = [ "memchr", ] @@ -97,13 +97,13 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.73" +version = "0.1.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" +checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -135,9 +135,9 @@ checksum = "23ce669cd6c8588f79e15cf450314f9638f967fc5770ff1c7c1deb0925ea7cfa" [[package]] name = "base64" -version = "0.21.4" +version = "0.21.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" +checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9" [[package]] name = "bech32" @@ -145,33 +145,44 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" +[[package]] +name = "bech32" +version = "0.10.0-beta" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98f7eed2b2781a6f0b5c903471d48e15f56fb4e1165df8a9a2337fd1a59d45ea" + [[package]] name = "bitcoin" -version = "0.30.1" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e99ff7289b20a7385f66a0feda78af2fc119d28fb56aea8886a9cd0a4abdd75" +checksum = "5973a027b341b462105675962214dfe3c938ad9afd395d84b28602608bdcec7b" dependencies = [ - "bech32", - "bitcoin-private", + "bech32 0.10.0-beta", + "bitcoin-internals", "bitcoin_hashes", + "hex-conservative", "hex_lit", "secp256k1", "serde", ] [[package]] -name = "bitcoin-private" -version = "0.1.0" +name = "bitcoin-internals" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73290177011694f38ec25e165d0387ab7ea749a4b81cd4c80dae5988229f7a57" +checksum = "9425c3bf7089c983facbae04de54513cce73b41c7f9ff8c845b54e7bc64ebbfb" +dependencies = [ + "serde", +] [[package]] name = "bitcoin_hashes" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d7066118b13d4b20b23645932dfb3a81ce7e29f95726c2036fa33cd7b092501" +checksum = "1930a4dabfebb8d7d9992db18ebe3ae2876f0a305fab206fd168df931ede293b" dependencies = [ - "bitcoin-private", + "bitcoin-internals", + "hex-conservative", "serde", ] @@ -183,9 +194,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" [[package]] name = "block-buffer" @@ -200,7 +211,7 @@ dependencies = [ name = "btc-wire" version = "0.1.0" dependencies = [ - "bech32", + "bech32 0.9.1", "bitcoin", "clap", "clap_lex", @@ -296,9 +307,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.4.6" +version = "4.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d04704f56c2cde07f43e8e2c154b43f216dc5c92fc98ada720177362f953b956" +checksum = "2275f18819641850fa26c89acc84d465c1bf91ce57bc2748b28c420473352f64" dependencies = [ "clap_builder", "clap_derive", @@ -306,9 +317,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.4.6" +version = "4.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e231faeaca65ebd1ea3c737966bf858971cd38c3849107aa3ea7de90a804e45" +checksum = "07cdf1b148b25c1e1f7a42225e30a0d99a615cd4637eae7365548dd4529b95bc" dependencies = [ "anstream", "anstyle", @@ -318,27 +329,27 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.4.2" +version = "4.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0862016ff20d69b84ef8247369fabf5c008a7417002411897d40ee1f4532b873" +checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "clap_lex" -version = "0.5.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961" +checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" [[package]] name = "clap_mangen" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b44f35c514163027542f7147797ff930523eea288e03642727348ef1a9666f6b" +checksum = "d3be86020147691e1d2ef58f75346a3d4d94807bfc473e377d52f09f0f7d77f7" dependencies = [ "clap", "roff", @@ -346,9 +357,9 @@ dependencies = [ [[package]] name = "color-backtrace" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6fcd4d200ae702628e8d54bafff5f7e7397b031a5849656a6f5bfe2c5fb780d" +checksum = "150fd80a270c0671379f388c8204deb6a746bb4eac8a6c03fe2460b2c0127ea0" dependencies = [ "backtrace", "termcolor", @@ -395,35 +406,34 @@ dependencies = [ [[package]] name = "const-hex" -version = "1.9.1" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c37be52ef5e3b394db27a2341010685ad5103c72ac15ce2e9420a7e8f93f342c" +checksum = "a5104de16b218eddf8e34ffe2f86f74bfa4e61e95a1b89732fccf6325efd0557" dependencies = [ "cfg-if", "cpufeatures", "hex", + "proptest", "serde", ] [[package]] name = "const-random" -version = "0.1.15" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368a7a772ead6ce7e1de82bfb04c485f3db8ec744f72925af5735e29a22cc18e" +checksum = "5aaf16c9c2c612020bcfd042e170f6e32de9b9d75adb5277cdbbd2e2c8c8299a" dependencies = [ "const-random-macro", - "proc-macro-hack", ] [[package]] name = "const-random-macro" -version = "0.1.15" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d7d6ab3c3a2282db210df5f02c4dab6e0a7057af0fb7ebd4070f30fe05c0ddb" +checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" dependencies = [ "getrandom", "once_cell", - "proc-macro-hack", "tiny-keccak", ] @@ -435,9 +445,9 @@ checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" [[package]] name = "cpufeatures" -version = "0.2.9" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" +checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0" dependencies = [ "libc", ] @@ -578,7 +588,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -589,7 +599,7 @@ checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ "darling_core", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -633,10 +643,11 @@ dependencies = [ [[package]] name = "deranged" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2696e8a945f658fd14dc3b87242e6b80cd0f36ff04ea560fa39082368847946" +checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3" dependencies = [ + "powerfmt", "serde", ] @@ -653,9 +664,9 @@ dependencies = [ [[package]] name = "dlv-list" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8aead04dc46b5f263c25721cf25c9e595951d15055f8063f92392fa0d7f64cf4" +checksum = "442039f5147480ba31067cb00ada1adae6892028e40e45fc5de7b7df6dcc1b5f" dependencies = [ "const-random", ] @@ -690,25 +701,14 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.4" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "add4f07d43996f76ef320709726a556a9d4f965d9410d8d0271132d2f8293480" +checksum = "f258a7194e7f7c2a7837a8913aeab7fd8c383457034fa20ce4dd3dcb813e8eb8" dependencies = [ - "errno-dragonfly", "libc", "windows-sys 0.48.0", ] -[[package]] -name = "errno-dragonfly" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" -dependencies = [ - "cc", - "libc", -] - [[package]] name = "eth-wire" version = "0.1.0" @@ -789,9 +789,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.27" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010" +checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" dependencies = [ "crc32fast", "miniz_oxide", @@ -799,9 +799,9 @@ dependencies = [ [[package]] name = "flexi_logger" -version = "0.27.2" +version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64d1984eeb4ccb9a6f3fa5f2a1850d34afed6fd4ffcd1513b691eef9dda0f057" +checksum = "2ac35b454b60e1836602173e2eb7ef531173388c0212e02ec7f9fac086159ee5" dependencies = [ "chrono", "glob", @@ -827,9 +827,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.28" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" +checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb" dependencies = [ "futures-core", "futures-sink", @@ -837,38 +837,38 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.28" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" +checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c" [[package]] name = "futures-macro" -version = "0.3.28" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" +checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "futures-sink" -version = "0.3.28" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" +checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817" [[package]] name = "futures-task" -version = "0.3.28" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" +checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2" [[package]] name = "futures-util" -version = "0.3.28" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" +checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104" dependencies = [ "futures-core", "futures-macro", @@ -891,9 +891,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.10" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" +checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" dependencies = [ "cfg-if", "libc", @@ -926,15 +926,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "hashbrown" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" - -[[package]] -name = "hashbrown" -version = "0.14.1" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12" +checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156" [[package]] name = "heck" @@ -954,6 +948,12 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +[[package]] +name = "hex-conservative" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30ed443af458ccb6d81c1e7e661545f94d3176752fb1df2f543b902a1e0f51e2" + [[package]] name = "hex_lit" version = "0.1.1" @@ -971,9 +971,9 @@ dependencies = [ [[package]] name = "http" -version = "0.2.9" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" +checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" dependencies = [ "bytes", "fnv", @@ -1019,7 +1019,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2 0.4.9", + "socket2 0.4.10", "tokio", "tower-service", "tracing", @@ -1041,16 +1041,16 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.57" +version = "0.1.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613" +checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows", + "windows-core", ] [[package]] @@ -1100,12 +1100,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.0.2" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8adf3ddd720272c6ea8bf59463c04e0f93d0bbf7c5439b691bca2987e0270897" +checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" dependencies = [ "equivalent", - "hashbrown 0.14.1", + "hashbrown 0.14.2", "serde", ] @@ -1184,9 +1184,9 @@ checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "js-sys" -version = "0.3.64" +version = "0.3.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" +checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8" dependencies = [ "wasm-bindgen", ] @@ -1199,9 +1199,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.148" +version = "0.2.150" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cdc71e17332e86d2e1d38c1f99edcb6288ee11b815fb1a4b049eaa2114d369b" +checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" [[package]] name = "libdeflate-sys" @@ -1221,11 +1221,17 @@ dependencies = [ "libdeflate-sys", ] +[[package]] +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + [[package]] name = "linux-raw-sys" -version = "0.4.8" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3852614a3bd9ca9804678ba6be5e3b8ce76dfc902cae004e3e0c44051b6e88db" +checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829" [[package]] name = "listenfd" @@ -1240,9 +1246,9 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" +checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" dependencies = [ "autocfg", "scopeguard", @@ -1290,9 +1296,9 @@ dependencies = [ [[package]] name = "mio" -version = "0.8.8" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" +checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0" dependencies = [ "libc", "wasi", @@ -1301,11 +1307,12 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" +checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" dependencies = [ "autocfg", + "libm", ] [[package]] @@ -1347,12 +1354,12 @@ checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575" [[package]] name = "ordered-multimap" -version = "0.6.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ed8acf08e98e744e5384c8bc63ceb0364e68a6854187221c18df61c4797690e" +checksum = "a4d6a8c22fc714f0c2373e6091bf6f5e9b37b1bc0b1184874b7e0a4e303d318f" dependencies = [ "dlv-list", - "hashbrown 0.13.2", + "hashbrown 0.14.2", ] [[package]] @@ -1373,9 +1380,9 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.8" +version = "0.9.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" +checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" dependencies = [ "cfg-if", "libc", @@ -1425,7 +1432,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1470,9 +1477,9 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.4.3" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31114a898e107c51bb1609ffaf55a0e011cf6a4d7f1170d0015a165082c0338b" +checksum = "3bccab0e7fd7cc19f820a1c8c91720af652d0c88dc9664dd72aef2614f04af3b" [[package]] name = "postgres" @@ -1517,6 +1524,12 @@ dependencies = [ "postgres-protocol", ] +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + [[package]] name = "ppv-lite86" version = "0.2.17" @@ -1525,9 +1538,9 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "primitive-types" -version = "0.12.1" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f3486ccba82358b11a77516035647c34ba167dfa53312630de83b12bd4f3d66" +checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ "fixed-hash", "impl-serde", @@ -1535,18 +1548,28 @@ dependencies = [ ] [[package]] -name = "proc-macro-hack" -version = "0.5.20+deprecated" +name = "proc-macro2" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" +checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" +dependencies = [ + "unicode-ident", +] [[package]] -name = "proc-macro2" -version = "1.0.67" +name = "proptest" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d433d9f1a3e8c1263d9456598b16fec66f4acc9a74dacffd35c7bb09b3a1328" +checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" dependencies = [ - "unicode-ident", + "bitflags 2.4.1", + "lazy_static", + "num-traits", + "rand", + "rand_chacha", + "rand_xorshift", + "regex-syntax", + "unarray", ] [[package]] @@ -1610,6 +1633,15 @@ dependencies = [ "getrandom", ] +[[package]] +name = "rand_xorshift" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +dependencies = [ + "rand_core", +] + [[package]] name = "rayon" version = "1.8.0" @@ -1632,18 +1664,18 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.3.5" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" dependencies = [ "bitflags 1.3.2", ] [[package]] name = "regex" -version = "1.9.6" +version = "1.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebee201405406dbf528b8b672104ae6d6d63e6d118cb10e4d51abbc7b58044ff" +checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" dependencies = [ "aho-corasick", "memchr", @@ -1653,9 +1685,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.3.9" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59b23e92ee4318893fa3fe3e6fb365258efbfe6ac6ab30f090cdcbb7aa37efa9" +checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" dependencies = [ "aho-corasick", "memchr", @@ -1664,23 +1696,22 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.7.5" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" +checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] name = "ring" -version = "0.16.20" +version = "0.17.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" +checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b" dependencies = [ "cc", + "getrandom", "libc", - "once_cell", "spin", "untrusted", - "web-sys", - "winapi", + "windows-sys 0.48.0", ] [[package]] @@ -1691,9 +1722,9 @@ checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316" [[package]] name = "rust-ini" -version = "0.19.0" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e2a3bcec1f113553ef1c88aae6c020a369d03d55b58de9869a0908930385091" +checksum = "3e0698206bcb8882bf2a9ecb4c1e7785db57ff052297085a6efd4fe42302068a" dependencies = [ "cfg-if", "ordered-multimap", @@ -1713,11 +1744,11 @@ checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" [[package]] name = "rustix" -version = "0.38.17" +version = "0.38.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f25469e9ae0f3d0047ca8b93fc56843f38e6774f0914a107ff8b41be8be8e0b7" +checksum = "dc99bc2d4f1fed22595588a013687477aedf3cdcfb26558c559edb67b4d9b22e" dependencies = [ - "bitflags 2.4.0", + "bitflags 2.4.1", "errno", "libc", "linux-raw-sys", @@ -1726,9 +1757,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.21.7" +version = "0.21.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd8d6c9f025a446bc4d18ad9632e69aec8f287aa84499ee335599fabd20c3fd8" +checksum = "629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9" dependencies = [ "log", "ring", @@ -1738,9 +1769,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.101.6" +version = "0.101.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c7d5dece342910d9ba34d259310cae3e0154b873b35408b787b59bce53d34fe" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" dependencies = [ "ring", "untrusted", @@ -1769,9 +1800,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "sct" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" dependencies = [ "ring", "untrusted", @@ -1779,9 +1810,9 @@ dependencies = [ [[package]] name = "secp256k1" -version = "0.27.0" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25996b82292a7a57ed3508f052cfff8640d38d32018784acd714758b43da9c8f" +checksum = "2acea373acb8c21ecb5a23741452acd2593ed44ee3d343e72baaa143bc89d0d5" dependencies = [ "bitcoin_hashes", "secp256k1-sys", @@ -1790,38 +1821,38 @@ dependencies = [ [[package]] name = "secp256k1-sys" -version = "0.8.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a129b9e9efbfb223753b9163c4ab3b13cff7fd9c7f010fbac25ab4099fa07e" +checksum = "09e67c467c38fd24bd5499dc9a18183b31575c12ee549197e3e20d57aa4fe3b7" dependencies = [ "cc", ] [[package]] name = "serde" -version = "1.0.188" +version = "1.0.192" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" +checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.188" +version = "1.0.192" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" +checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "serde_json" -version = "1.0.107" +version = "1.0.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" +checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" dependencies = [ "itoa", "ryu", @@ -1830,13 +1861,13 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8725e1dfadb3a50f7e5ce0b1a540466f6ed3fe7a0fca2ac2b8b831d31316bd00" +checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1853,15 +1884,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ca3b16a3d82c4088f343b7480a93550b3eabe1a358569c2dfe38bbcead07237" +checksum = "64cd236ccc1b7a29e7e2739f27c0b2dd199804abc4290e32f59f3b68d6405c23" dependencies = [ "base64", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.0.2", + "indexmap 2.1.0", "serde", "serde_json", "serde_with_macros", @@ -1870,14 +1901,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e6be15c453eb305019bfa438b1593c731f36a289a7853f7707ee29e870b3b3c" +checksum = "93634eb5f75a2323b16de4748022ac4297f9e76b6dced2be287a099f41b5e788" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1914,15 +1945,15 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.11.1" +version = "1.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" +checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" [[package]] name = "socket2" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" dependencies = [ "libc", "winapi", @@ -1930,9 +1961,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.4" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" +checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" dependencies = [ "libc", "windows-sys 0.48.0", @@ -1940,9 +1971,9 @@ dependencies = [ [[package]] name = "spin" -version = "0.5.2" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" [[package]] name = "static_assertions" @@ -1986,9 +2017,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.38" +version = "2.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b" +checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" dependencies = [ "proc-macro2", "quote", @@ -1997,9 +2028,9 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.8.0" +version = "3.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" +checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5" dependencies = [ "cfg-if", "fastrand", @@ -2010,31 +2041,31 @@ dependencies = [ [[package]] name = "termcolor" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64" +checksum = "ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449" dependencies = [ "winapi-util", ] [[package]] name = "thiserror" -version = "1.0.49" +version = "1.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1177e8c6d7ede7afde3585fd2513e611227efd6481bd78d2e82ba1ce16557ed4" +checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.49" +version = "1.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc" +checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -2045,12 +2076,13 @@ checksum = "e70399498abd3ec85f99a2f2d765c8638588e20361678af93a9f47de96719743" [[package]] name = "time" -version = "0.3.29" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "426f806f4089c493dcac0d24c29c01e2c38baf8e30f1b716ee37e83d200b18fe" +checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5" dependencies = [ "deranged", "itoa", + "powerfmt", "serde", "time-core", "time-macros", @@ -2107,9 +2139,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.32.0" +version = "1.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" +checksum = "d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9" dependencies = [ "backtrace", "bytes", @@ -2117,20 +2149,20 @@ dependencies = [ "mio", "num_cpus", "pin-project-lite", - "socket2 0.5.4", + "socket2 0.5.5", "tokio-macros", "windows-sys 0.48.0", ] [[package]] name = "tokio-macros" -version = "2.1.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" +checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -2153,7 +2185,7 @@ dependencies = [ "postgres-protocol", "postgres-types", "rand", - "socket2 0.5.4", + "socket2 0.5.5", "tokio", "tokio-util", "whoami", @@ -2161,9 +2193,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.9" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d68074620f57a0b21594d9735eb2e98ab38b17f80d3fcb189fca266771ca60d" +checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" dependencies = [ "bytes", "futures-core", @@ -2181,11 +2213,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tracing" -version = "0.1.37" +version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "cfg-if", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -2193,20 +2224,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "tracing-core" -version = "0.1.31" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", ] @@ -2235,6 +2266,12 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "unarray" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" + [[package]] name = "unicode-bidi" version = "0.3.13" @@ -2264,15 +2301,15 @@ checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" [[package]] name = "untrusted" -version = "0.7.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "ureq" -version = "2.8.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5ccd538d4a604753ebc2f17cd9946e89b77bf87f6a8e2309667c6f2e87855e3" +checksum = "7830e33f6e25723d41a63f77e434159dad02919f18f55a512b5f16f3b1d77138" dependencies = [ "base64", "flate2", @@ -2320,9 +2357,9 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "uuid" -version = "1.4.1" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" +checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560" [[package]] name = "version_check" @@ -2357,9 +2394,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.87" +version = "0.2.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" +checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -2367,24 +2404,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.87" +version = "0.2.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" +checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.87" +version = "0.2.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" +checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -2392,28 +2429,28 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.87" +version = "0.2.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" +checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.87" +version = "0.2.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" +checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b" [[package]] name = "web-sys" -version = "0.3.64" +version = "0.3.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" +checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85" dependencies = [ "js-sys", "wasm-bindgen", @@ -2467,10 +2504,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] -name = "windows" -version = "0.48.0" +name = "windows-core" +version = "0.51.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" dependencies = [ "windows-targets 0.48.5", ] @@ -2632,6 +2669,6 @@ dependencies = [ [[package]] name = "zeroize" -version = "1.6.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9" +checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" diff --git a/README.md b/README.md index 1de3ec5..d9aa59d 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ ## Install from source -Cargo version 1.70.0 or above is required. You can get cargo from your +Cargo version 1.72.1 or above is required. You can get rustup from your distribution package manager or from [rustup.rs](https://rustup.rs/). ``` @@ -41,7 +41,7 @@ Depolymerizer require: #### Ethereum -[Geth](https://geth.ethereum.org/) version 1.10.26 is expected +[Geth](https://geth.ethereum.org/) version 1.13.5 is expected ### Initialization diff --git a/btc-wire/Cargo.toml b/btc-wire/Cargo.toml index d6a120c..5955a66 100644 --- a/btc-wire/Cargo.toml +++ b/btc-wire/Cargo.toml @@ -3,7 +3,7 @@ name = "btc-wire" version = "0.1.0" edition = "2021" license = "AGPL-3.0-or-later" -rust-version = "1.63.0" +rust-version = "1.72.1" [features] # Enable random failures @@ -11,13 +11,13 @@ fail = [] [dependencies] # Typed bitcoin rpc types -bitcoin = { version = "0.30.1", features = [ +bitcoin = { version = "0.31.0", features = [ "std", "serde", ], default-features = false } # Cli args parser clap = { version = "4.4.6", features = ["derive"] } -clap_lex = "0.5.1" +clap_lex = "0.6.0" # Bech32 encoding and decoding bech32 = "0.9.1" # Serialization library @@ -30,7 +30,7 @@ data-encoding = "2.4.0" # Common lib common = { path = "../common" } # Ini parser -rust-ini = "0.19.0" +rust-ini = "0.20.0" # Hexadecimal encoding hex = { package = "const-hex", version = "1.9.1" } diff --git a/btc-wire/src/bin/segwit-demo.rs b/btc-wire/src/bin/segwit-demo.rs index 26f95f0..579f0da 100644 --- a/btc-wire/src/bin/segwit-demo.rs +++ b/btc-wire/src/bin/segwit-demo.rs @@ -54,7 +54,7 @@ pub fn main() { hex::encode(&second_half) ); // bech32: https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki - let hrp = match address.network { + let hrp = match address.network() { Network::Bitcoin => "bc", Network::Testnet | Network::Signet => "tb", Network::Regtest => "bcrt", diff --git a/btc-wire/src/lib.rs b/btc-wire/src/lib.rs index 750e4d4..05842b1 100644 --- a/btc-wire/src/lib.rs +++ b/btc-wire/src/lib.rs @@ -60,7 +60,7 @@ impl Rpc { amount: &Amount, metadata: &[u8; 32], ) -> rpc::Result { - let hrp = match to.network { + let hrp = match to.network() { Network::Bitcoin => "bc", Network::Testnet | Network::Signet => "tb", Network::Regtest => "bcrt", @@ -70,11 +70,11 @@ impl Rpc { let addresses = [ Address::from_str(&addresses[0]) .unwrap() - .require_network(to.network) + .require_network(*to.network()) .unwrap(), Address::from_str(&addresses[1]) .unwrap() - .require_network(to.network) + .require_network(*to.network()) .unwrap(), ]; let mut recipients = vec![(to, amount)]; diff --git a/common/Cargo.toml b/common/Cargo.toml index 0c165de..e602bd0 100644 --- a/common/Cargo.toml +++ b/common/Cargo.toml @@ -3,7 +3,7 @@ name = "common" version = "0.1.0" edition = "2021" license = "AGPL-3.0-or-later" -rust-version = "1.63.0" +rust-version = "1.72.1" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -21,7 +21,7 @@ base32 = "0.4.0" # Error macros thiserror = "1.0.49" # Ini files -rust-ini = "0.19.0" +rust-ini = "0.20.0" # Logging flexi_logger = { version = "0.27.2", default-features = false } log = "0.4.20" diff --git a/common/src/currency.rs b/common/src/currency.rs index f2596ba..5db056d 100644 --- a/common/src/currency.rs +++ b/common/src/currency.rs @@ -20,7 +20,7 @@ pub const MAIN_BTC: &str = "BITCOINBTC"; pub const REGTEST_BTC: &str = "TESTBTC"; pub const TESTNET_BTC: &str = "DEVBTC"; pub const MAIN_ETH: &str = "ETHEREUMETH"; -pub const ROPSTEN_ETH: &str = "ROPSTENETH"; +pub const GOERLI_ETH: &str = "GOERLIETH"; pub const DEV_ETH: &str = "DEVETH"; #[derive(Debug, Clone, Copy, PartialEq, Eq)] @@ -47,7 +47,7 @@ impl FromStr for Currency { REGTEST_BTC => Currency::BTC(CurrencyBtc::Test), TESTNET_BTC => Currency::BTC(CurrencyBtc::Dev), MAIN_ETH => Currency::ETH(CurrencyEth::Main), - ROPSTEN_ETH => Currency::ETH(CurrencyEth::Ropsten), + GOERLI_ETH => Currency::ETH(CurrencyEth::Goerli), DEV_ETH => Currency::ETH(CurrencyEth::Dev), _ => return Err(()), }) @@ -75,14 +75,14 @@ impl CurrencyBtc { pub enum CurrencyEth { Main, Dev, - Ropsten, + Goerli, } impl CurrencyEth { pub const fn to_str(&self) -> &'static str { match self { CurrencyEth::Main => MAIN_ETH, - CurrencyEth::Ropsten => ROPSTEN_ETH, + CurrencyEth::Goerli => GOERLI_ETH, CurrencyEth::Dev => DEV_ETH, } } diff --git a/eth-wire/Cargo.toml b/eth-wire/Cargo.toml index 72d9afe..71e1cdc 100644 --- a/eth-wire/Cargo.toml +++ b/eth-wire/Cargo.toml @@ -3,7 +3,7 @@ name = "eth-wire" version = "0.1.0" edition = "2021" license = "AGPL-3.0-or-later" -rust-version = "1.63.0" +rust-version = "1.72.1" [features] # Enable random failures @@ -12,7 +12,7 @@ fail = [] [dependencies] # Cli args clap = { version = "4.4.6", features = ["derive"] } -clap_lex = "0.5.1" +clap_lex = "0.6.0" # Serialization library serde = { version = "1.0.188", features = ["derive"] } serde_json = "1.0.107" diff --git a/eth-wire/src/rpc.rs b/eth-wire/src/rpc.rs index f5f3cc6..95d3428 100644 --- a/eth-wire/src/rpc.rs +++ b/eth-wire/src/rpc.rs @@ -20,9 +20,8 @@ //! make our code more compatible with future deprecation use common::{log::log::error, password, reconnect::AutoReconnect, url::Url}; -use ethereum_types::{Address, H256, U256, U64}; +use ethereum_types::{Address, H160, H256, U256, U64}; use serde::de::DeserializeOwned; -use serde_json::error::Category; use std::{ fmt::Debug, io::{self, BufWriter, ErrorKind, Read, Write}, @@ -67,6 +66,7 @@ pub fn auto_rpc_common(ipc_path: PathBuf) -> AutoRpcCommon { } #[derive(Debug, serde::Serialize)] struct RpcRequest<'a, T: serde::Serialize> { + jsonrpc: &'static str, method: &'a str, id: u64, params: &'a T, @@ -133,6 +133,7 @@ impl Rpc { method, id: self.id, params, + jsonrpc: "2.0", }; // Send request @@ -146,6 +147,22 @@ impl Rpc { T: serde::de::DeserializeOwned + Debug, { loop { + // Read one + let pos = self.read_buf[..self.cursor] + .iter() + .position(|c| *c == b'\n') + .map(|pos| pos + 1); // Move after newline + if let Some(pos) = pos { + match serde_json::from_slice(&self.read_buf[..pos]) { + Ok(response) => { + self.read_buf.copy_within(pos..self.cursor, 0); + self.cursor -= pos; + return Ok(response); + } + Err(err) => return Err(err)?, + } + } // Or read more + // Double buffer size if full if self.cursor == self.read_buf.len() { self.read_buf.resize(self.cursor * 2, 0); @@ -155,32 +172,7 @@ impl Rpc { ErrorKind::UnexpectedEof, "RPC EOF".to_string(), ))?, - Ok(nb) => { - self.cursor += nb; - let mut de: serde_json::StreamDeserializer<_, T> = - serde_json::Deserializer::from_slice(&self.read_buf[..self.cursor]) - .into_iter(); - - if let Some(result) = de.next() { - match result { - Ok(response) => { - let read = de.byte_offset(); - self.read_buf.copy_within(read..self.cursor, 0); - self.cursor -= read; - return Ok(response); - } - Err(err) if err.classify() == Category::Eof => { - if nb == 0 { - Err(std::io::Error::new( - ErrorKind::UnexpectedEof, - "Stream EOF", - ))?; - } - } - Err(e) => Err(e)?, - } - } - } + Ok(nb) => self.cursor += nb, Err(e) if e.kind() == ErrorKind::Interrupted => {} Err(e) => Err(e)?, } @@ -188,7 +180,14 @@ impl Rpc { } pub fn subscribe_new_head(&mut self) -> Result> { - let id: String = self.call("eth_subscribe", &["newHeads"])?; + self.send("eth_subscribe", &["newHeads"])?; + let id = loop { + match self.receive::()? { + SubscribeDirtyFix::Fix(_) => { /* TODO debug */ } + SubscribeDirtyFix::Id(id) => break id, + } + }; + let id = self.handle_response(id)?; Ok(RpcStream::new(self, id)) } @@ -238,6 +237,12 @@ enum NotificationOrResponse { Notification(Notification), Response(RpcResponse), } +#[derive(Debug, serde::Deserialize)] +#[serde(untagged)] +enum SubscribeDirtyFix { + Fix(RpcResponse), + Id(RpcResponse), +} /// A notification stream wrapping an rpc client pub struct RpcStream<'a, N: Debug + DeserializeOwned> { @@ -283,6 +288,7 @@ impl Drop for RpcStream<'_, N> { NotificationOrResponse::Response(_) => return, } } + println!("has unusubsriced") } } @@ -401,9 +407,16 @@ pub trait RpcClient { /* ----- Miner ----- */ + fn miner_set_etherbase(&mut self, addr: &H160) -> Result<()> { + match self.call("miner_setEtherbase", &[addr]) { + Err(Error::Null) => Ok(()), + i => i, + } + } + /// Start mining fn miner_start(&mut self) -> Result<()> { - match self.call("miner_start", &[8]) { + match self.call("miner_start", &EMPTY) { Err(Error::Null) => Ok(()), i => i, } diff --git a/instrumentation/Cargo.toml b/instrumentation/Cargo.toml index 984650a..8ec2fe0 100644 --- a/instrumentation/Cargo.toml +++ b/instrumentation/Cargo.toml @@ -3,16 +3,16 @@ name = "instrumentation" version = "0.1.0" edition = "2021" license = "AGPL-3.0-or-later" -rust-version = "1.70.0" +rust-version = "1.72.1" [dependencies] # Cli args parser clap = { version = "4.4.6", features = ["derive"] } -clap_lex = "0.5.1" +clap_lex = "0.6.0" common = { path = "../common" } # Bitcoin btc-wire = { path = "../btc-wire" } -bitcoin = { version = "0.30.1", default-features = false, features = ["std"] } +bitcoin = { version = "0.31.0", default-features = false, features = ["std"] } # Ethereum eth-wire = { path = "../eth-wire" } ethereum-types = { version = "0.14.1", default-features = false } @@ -32,7 +32,7 @@ color-backtrace = "0.6.0" # Send signal to child processes signal-child = "1.0.5" # Edit toml files -rust-ini = "0.19.0" +rust-ini = "0.20.0" # Progress reporting indicatif = "0.17.7" thread-local-panic-hook = "0.1.0" diff --git a/instrumentation/src/btc.rs b/instrumentation/src/btc.rs index 964f302..1495d08 100644 --- a/instrumentation/src/btc.rs +++ b/instrumentation/src/btc.rs @@ -31,6 +31,7 @@ use btc_wire::{ WireState, }; use common::{currency::CurrencyBtc, metadata::OutMetadata, postgres::NoTls, rand_slice}; +use indicatif::ProgressBar; use tempfile::TempDir; use crate::utils::{ @@ -248,9 +249,7 @@ impl DerefMut for BtcCtx { } impl BtcCtx { - pub fn config(test_name: &str, config: &str) { - // Generate temporary dirs - let ctx = TestCtx::new(test_name); + pub fn config(ctx: TestCtx, config: &str) { // Bitcoin config let config = PathBuf::from_str("instrumentation/conf") .unwrap() @@ -323,7 +322,7 @@ impl BtcCtx { ctx.init_db(); // Generate wallet cmd_redirect_ok( - "btc-wire", + &ctx.wire_bin_path, &["-c", ctx.conf.to_str().unwrap(), "initwallet"], &ctx.log("cmd"), "wire initwallet", @@ -1119,6 +1118,9 @@ pub fn config(ctx: TestCtx) { for n in 0..5 { let config_name = format!("bitcoin_auth{}.conf", n); ctx.step(format!("Config {}", config_name)); - BtcCtx::config(&format!("config/{config_name}"), &config_name); + BtcCtx::config( + TestCtx::new(&format!("config/{config_name}"), ProgressBar::hidden()), + &config_name, + ); } } diff --git a/instrumentation/src/eth.rs b/instrumentation/src/eth.rs index f6aa719..f215fd3 100644 --- a/instrumentation/src/eth.rs +++ b/instrumentation/src/eth.rs @@ -247,19 +247,6 @@ impl EthCtx { "create account", ) } - cmd_redirect_ok( - "geth", - &[ - "--datadir", - ctx.wire2_dir.to_str().unwrap(), - "account", - "new", - "--password", - pswd_path.to_str().unwrap(), - ], - &ctx.log("geth2"), - "create account", - ); let list = cmd_out( "geth", &[ @@ -269,7 +256,8 @@ impl EthCtx { "list", ], ); - let addr = &list.lines().nth(1).unwrap()[13..][..40]; + let reserve = &list[13..][..40]; + let client = &list.lines().nth(1).unwrap()[13..][..40]; let genesis = format!( "{{ \"config\": {{ @@ -284,16 +272,19 @@ impl EthCtx { \"istanbulBlock\": 0, \"berlinBlock\": 0, \"londonBlock:\": 0, - \"ethash\": {{}} + \"clique\": {{ + \"period\": 1 + }} }}, \"difficulty\": \"1\", \"gasLimit\": \"0\", \"baseFeePerGas\": null, + \"extraData\": \"0x0000000000000000000000000000000000000000000000000000000000000000{}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\", \"alloc\": {{ \"{}\": {{ \"balance\": \"10000000000000000000\" }} }} }}", - addr + reserve, client ); std::fs::write(ctx.wire_dir.join("genesis.json"), genesis.as_bytes()).unwrap(); @@ -330,6 +321,7 @@ impl EthCtx { &unused_port().to_string(), "--port", &unused_port().to_string(), + "--rpc.enabledeprecatedpersonal" ], &ctx.log("geth"), ); @@ -338,7 +330,7 @@ impl EthCtx { // Generate wallet let out = cmd_out( - "eth-wire", + &ctx.wire_bin_path, &["-c", ctx.conf.to_str().unwrap(), "initwallet"], ); @@ -426,6 +418,8 @@ impl EthCtx { &[ "--datadir", self.ctx.wire2_dir.to_str().unwrap(), + "--keystore", + self.ctx.wire_dir.join("keystore").to_str().unwrap(), "import", path, ], @@ -440,12 +434,15 @@ impl EthCtx { &[ "--datadir", self.ctx.wire2_dir.to_str().unwrap(), + "--keystore", + self.ctx.wire_dir.join("keystore").to_str().unwrap(), "--miner.gasprice", "10", "--authrpc.port", &unused_port().to_string(), "--port", &unused_port().to_string(), + "--rpc.enabledeprecatedpersonal" ], &self.ctx.log("geth2"), ); @@ -488,6 +485,7 @@ impl EthCtx { &unused_port().to_string(), "--port", &unused_port().to_string(), + "--rpc.enabledeprecatedpersonal" ], &self.ctx.log("geth"), ); @@ -556,6 +554,7 @@ impl EthCtx { fn _mine(rpc: &mut Rpc, addr: &H160, mut amount: u16, passwd: &str) { rpc.unlock_account(addr, passwd).ok(); + rpc.miner_set_etherbase(addr).ok(); let mut rpc = rpc.subscribe_new_head().unwrap(); rpc.miner_start().unwrap(); diff --git a/instrumentation/src/main.rs b/instrumentation/src/main.rs index f196d7d..12971ad 100644 --- a/instrumentation/src/main.rs +++ b/instrumentation/src/main.rs @@ -17,7 +17,7 @@ use std::{ panic::catch_unwind, path::PathBuf, - time::{Duration, Instant}, + time::{Duration, Instant}, sync::{Arc, Mutex}, }; use clap::Parser; @@ -110,34 +110,34 @@ pub fn main() { let pb = m.add(ProgressBar::new_spinner()); pb.set_style(start_style.clone()); pb.set_prefix(*name); - pb.set_message("RUN"); + pb.set_message("Init"); pb.enable_steady_tick(Duration::from_millis(1000)); let join = s.spawn(move || { let start = Instant::now(); - let ctx = TestCtx::new(name); - let tmp = ctx.clone(); + let ctx: TestCtx = TestCtx::new(name, pb.clone()); + let out = Arc::new(Mutex::new(String::new())); + let tmp = out.clone(); set_hook(Box::new(move |info| { let mut buf = Vec::new(); color_backtrace::BacktracePrinter::new() .print_panic_info(info, &mut NoColor::new(&mut buf)) .ok(); let str = String::from_utf8(buf).unwrap_or_default(); - tmp.out.lock().unwrap().push_str(&str); + tmp.lock().unwrap().push_str(&str); })); let tmp = ctx.clone(); let result = catch_unwind(|| { action(tmp); }); - let lock = ctx.out.lock().unwrap(); if result.is_ok() { pb.set_style(ok_style.clone()); pb.finish_with_message("OK"); } else { pb.set_style(err_style.clone()); - pb.finish_with_message("ERR"); + pb.finish(); } - - (result, start.elapsed(), lock.clone()) + let out: String = out.lock().unwrap().clone(); + (result, start.elapsed(), out) }); (join, name) }) diff --git a/instrumentation/src/utils.rs b/instrumentation/src/utils.rs index 835764a..5509754 100644 --- a/instrumentation/src/utils.rs +++ b/instrumentation/src/utils.rs @@ -16,14 +16,12 @@ use std::{ fmt::Display, - fmt::Write as _, io::Write as _, net::{Ipv4Addr, SocketAddrV4, TcpListener, TcpStream}, ops::{Deref, DerefMut}, path::{Path, PathBuf}, process::{Child, Command, Stdio}, str::FromStr, - sync::{Arc, Mutex}, thread::sleep, time::{Duration, Instant}, }; @@ -35,6 +33,7 @@ use common::{ rand_slice, url::Url, }; +use indicatif::ProgressBar; use signal_child::{signal::Signal, Signalable}; use tempfile::TempDir; @@ -200,11 +199,11 @@ pub fn retry(mut lambda: impl FnMut() -> bool) { #[derive(Clone)] pub struct TestCtx { pub log_dir: String, - pub out: Arc>, + pub pb: ProgressBar, } impl TestCtx { - pub fn new(name: &str) -> Self { + pub fn new(name: &str, pb: ProgressBar) -> Self { // Create log dir let log_dir = format!("log/{name}"); std::fs::remove_dir_all(&log_dir).ok(); @@ -213,10 +212,7 @@ impl TestCtx { let pwd: String = (0..30).map(|_| fastrand::alphanumeric()).collect(); std::env::set_var("PASSWORD", pwd); - Self { - log_dir, - out: Arc::new(Mutex::new(String::new())), - } + Self { log_dir, pb } } pub fn log(&self, name: &str) -> String { @@ -224,8 +220,7 @@ impl TestCtx { } pub fn step(&self, disp: impl Display) { - let it: &mut String = &mut self.out.lock().unwrap(); - writeln!(it, "{disp}").unwrap(); + self.pb.set_message(format!("{disp}")) } } @@ -238,7 +233,7 @@ pub struct TalerCtx { pub taler_conf: TalerConfig, ctx: TestCtx, db: ChildGuard, - wire_bin_path: String, + pub wire_bin_path: String, stressed: bool, gateway: Option, pub gateway_url: String, diff --git a/makefile b/makefile index 96970e0..b48838b 100644 --- a/makefile +++ b/makefile @@ -10,4 +10,4 @@ test: RUST_BACKTRACE=full cargo run --profile dev --bin instrumentation -- offline msrv: - cargo msrv --min 1.70.0 --max 1.70.0 --linear \ No newline at end of file + cargo msrv --min 1.70.0 \ No newline at end of file diff --git a/script/prepare.sh b/script/prepare.sh index 72adb5d..8c6a63b 100755 --- a/script/prepare.sh +++ b/script/prepare.sh @@ -28,13 +28,13 @@ rm -rfv ~/bitcoin mkdir -pv ~/bitcoin mv -v bitcoin-24.1/* ~/bitcoin -echo "Ⅲ - Install Go Ethereum (Geth) v1.10.26" +echo "Ⅲ - Install Go Ethereum (Geth) v1.13.5" cd $DIR -curl -L https://gethstore.blob.core.windows.net/builds/geth-alltools-linux-amd64-1.10.26-e5eb32ac.tar.gz -o geth.tar.gz +curl -L https://gethstore.blob.core.windows.net/builds/geth-alltools-linux-amd64-1.13.5-916d6a44.tar.gz -o geth.tar.gz tar xvzf geth.tar.gz rm -rfv ~/geth mkdir -pv ~/geth -mv -v geth-alltools-linux-amd64-1.10.26-e5eb32ac/* ~/geth +mv -v geth-alltools-linux-amd64-1.13.5-916d6a44/* ~/geth echo "Ⅳ - Install Lightning Network Daemon v0.15.5-beta" cd $DIR diff --git a/wire-gateway/Cargo.toml b/wire-gateway/Cargo.toml index 652e52e..4f44c02 100644 --- a/wire-gateway/Cargo.toml +++ b/wire-gateway/Cargo.toml @@ -3,7 +3,7 @@ name = "wire-gateway" version = "0.1.0" edition = "2021" license = "AGPL-3.0-or-later" -rust-version = "1.70.0" +rust-version = "1.72.1" [dependencies] # Http library @@ -32,12 +32,12 @@ listenfd = "1.0.0" # Common lib common = { path = "../common" } # Bitcoin types -bitcoin = { version = "0.30.1" } +bitcoin = { version = "0.31.0" } # Ethereum types ethereum-types = { version = "0.14.1", default-features = false } # Cli args parser clap = { version = "4.4.6", features = ["derive"] } -clap_lex = "0.5.1" +clap_lex = "0.6.0" [features] # Enable test admin endpoint -- cgit v1.2.3