diff --git a/Cargo.lock b/Cargo.lock index 05193007f..922d7fc5c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -68,7 +68,7 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" dependencies = [ - "getrandom 0.2.5", + "getrandom 0.2.6", "once_cell", "version_check 0.9.4", ] @@ -85,7 +85,7 @@ dependencies = [ [[package]] name = "annuity" version = "1.0.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-benchmarking", "frame-support", @@ -185,9 +185,9 @@ dependencies = [ [[package]] name = "async-global-executor" -version = "2.0.3" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c026b7e44f1316b567ee750fea85103f87fcb80792b860e979f221259796ca0a" +checksum = "c290043c9a95b05d45e952fb6383c67bcb61471f60cfa21e890dba6654234f43" dependencies = [ "async-channel", "async-executor", @@ -236,34 +236,16 @@ dependencies = [ "event-listener", ] -[[package]] -name = "async-process" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83137067e3a2a6a06d67168e49e68a0957d215410473a740cea95a2425c0b7c6" -dependencies = [ - "async-io", - "blocking", - "cfg-if 1.0.0", - "event-listener", - "futures-lite", - "libc", - "once_cell", - "signal-hook", - "winapi 0.3.9", -] - [[package]] name = "async-std" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8056f1455169ab86dd47b47391e4ab0cbd25410a70e9fe675544f49bafaf952" +checksum = "52580991739c5cdb36cde8b2a516371c0a3b70dda36d916cc08b82372916808c" dependencies = [ "async-channel", "async-global-executor", "async-io", "async-lock", - "async-process", "crossbeam-utils", "futures-channel", "futures-core", @@ -303,9 +285,9 @@ checksum = "30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9" [[package]] name = "async-trait" -version = "0.1.52" +version = "0.1.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3" +checksum = "ed6aa3524a2dfcf9fe180c51eae2b58738348d819517ceadf95789c51fff7600" dependencies = [ "proc-macro2", "quote", @@ -377,7 +359,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9fe17f59a06fe8b87a6fc8bf53bb70b3aba76d7685f432487a68cd5552853625" dependencies = [ "futures-core", - "getrandom 0.2.5", + "getrandom 0.2.6", "instant", "pin-project 1.0.10", "rand 0.8.5", @@ -394,7 +376,7 @@ dependencies = [ "cc", "cfg-if 1.0.0", "libc", - "miniz_oxide", + "miniz_oxide 0.4.4", "object", "rustc-demangle", ] @@ -526,7 +508,7 @@ dependencies = [ [[package]] name = "bitcoin" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin_hashes 0.7.6", "frame-support", @@ -587,9 +569,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitvec" -version = "0.20.4" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7774144344a4faa177370406a7ff5f1da24303817368584c6206c8303eb07848" +checksum = "1489fcb93a5bb47da0462ca93ad252ad6af2145cce58d10d46a83931ba9f016b" dependencies = [ "funty", "radium", @@ -608,6 +590,15 @@ dependencies = [ "opaque-debug 0.3.0", ] +[[package]] +name = "blake2" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9cf849ee05b2ee5fba5e36f97ff8ec2533916700fc0758d40d92136a42f3388" +dependencies = [ + "digest 0.10.3", +] + [[package]] name = "blake2-rfc" version = "0.2.18" @@ -739,7 +730,7 @@ checksum = "bd769563b4ea2953e2825c9e6b7470a5f55f67e0be00030bf3e390a2a6071f64" [[package]] name = "btc-relay" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin 1.2.0", "frame-benchmarking", @@ -815,6 +806,17 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" +[[package]] +name = "bzip2-sys" +version = "0.1.11+1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" +dependencies = [ + "cc", + "libc", + "pkg-config", +] + [[package]] name = "cache-padded" version = "1.2.0" @@ -847,7 +849,7 @@ checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" dependencies = [ "camino", "cargo-platform", - "semver 1.0.6", + "semver 1.0.7", "serde", "serde_json", ] @@ -959,9 +961,9 @@ dependencies = [ [[package]] name = "clap" -version = "3.1.6" +version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8c93436c21e4698bacadf42917db28b23017027a4deccb35dbe47a7e7840123" +checksum = "71c47df61d9e16dc010b55dba1952a57d8c215dbb533fd13cdd13369aac73b1c" dependencies = [ "atty", "bitflags", @@ -976,9 +978,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "3.1.4" +version = "3.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da95d038ede1a964ce99f49cbe27a7fb538d1da595e4b4f70b8c8f338d17bf16" +checksum = "a3aab4734e083b809aaf5794e14e756d1c798d2c69c7f7de7a09a2f5214993c1" dependencies = [ "heck 0.4.0", "proc-macro-error", @@ -1272,7 +1274,7 @@ dependencies = [ [[package]] name = "currency" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "frame-system", @@ -1316,9 +1318,9 @@ dependencies = [ [[package]] name = "darling" -version = "0.13.1" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0d720b8683f8dd83c65155f0530560cba68cd2bf395f6513a483caee57ff7f4" +checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" dependencies = [ "darling_core", "darling_macro", @@ -1326,9 +1328,9 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.13.1" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a340f241d2ceed1deb47ae36c4144b2707ec7dd0b649f894cb39bb595986324" +checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" dependencies = [ "fnv", "ident_case", @@ -1340,9 +1342,9 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.13.1" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c41b3b7352feb3211a0d743dc5700a4e3b60f51bd2b368892d1e0f9a95f44b" +checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" dependencies = [ "darling_core", "quote", @@ -1378,7 +1380,7 @@ dependencies = [ [[package]] name = "democracy" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-benchmarking", "frame-support", @@ -1448,6 +1450,7 @@ checksum = "f2fb860ca6fafa5552fb6d0e816a69c8e49f0908bf524e30a90d97c85892d506" dependencies = [ "block-buffer 0.10.2", "crypto-common", + "subtle", ] [[package]] @@ -1577,9 +1580,9 @@ checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] name = "encoding_rs" -version = "0.8.30" +version = "0.8.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dc8abb250ffdda33912550faa54c88ec8b998dec0b2c55ab224921ce11df" +checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b" dependencies = [ "cfg-if 1.0.0", ] @@ -1678,7 +1681,7 @@ dependencies = [ [[package]] name = "escrow" version = "1.0.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-benchmarking", "frame-support", @@ -1780,7 +1783,7 @@ dependencies = [ [[package]] name = "fee" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "currency", "frame-benchmarking", @@ -1812,9 +1815,9 @@ dependencies = [ [[package]] name = "finality-grandpa" -version = "0.14.4" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8ac3ff5224ef91f3c97e03eb1de2db82743427e91aaa5ac635f454f0b164f5a" +checksum = "d9def033d8505edf199f6a5d07aa7e6d2d6185b164293b77f0efd108f4f3e11d" dependencies = [ "either", "futures 0.3.21", @@ -1846,15 +1849,15 @@ checksum = "279fb028e20b3c4c320317955b77c5e0c9701f05a1d309905d6fc702cdc5053e" [[package]] name = "flate2" -version = "1.0.22" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f" +checksum = "b39522e96686d38f4bc984b9198e3a0613264abaebaff2c5c918bfa6b6da09af" dependencies = [ "cfg-if 1.0.0", "crc32fast", "libc", "libz-sys", - "miniz_oxide", + "miniz_oxide 0.5.1", ] [[package]] @@ -1890,7 +1893,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", ] @@ -1907,14 +1910,14 @@ dependencies = [ [[package]] name = "fragile" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da1b8f89c5b5a5b7e59405cfcf0bb9588e5ed19f0b57a4cd542bbba3f164a6d" +checksum = "e9d758e60b45e8d749c89c1b389ad8aee550f86aa12e2b9298b546dda7a82ab1" [[package]] name = "frame-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -1936,7 +1939,7 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "Inflector", "chrono", @@ -1944,26 +1947,40 @@ dependencies = [ "frame-benchmarking", "frame-support", "handlebars", + "hash-db", + "hex", + "itertools", + "kvdb", "linked-hash-map", "log 0.4.16", + "memory-db", "parity-scale-codec", + "rand 0.8.5", "sc-cli", + "sc-client-api", "sc-client-db", "sc-executor", "sc-service", "serde", "serde_json", + "serde_nanos", + "sp-api", + "sp-blockchain", "sp-core", + "sp-database", "sp-externalities", "sp-keystore", "sp-runtime", "sp-state-machine", + "sp-std", + "sp-storage", + "sp-trie", ] [[package]] name = "frame-executive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -1978,9 +1995,9 @@ dependencies = [ [[package]] name = "frame-metadata" -version = "14.2.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37ed5e5c346de62ca5c184b4325a6600d1eaca210666e4606fe4e449574978d0" +checksum = "df6bb8542ef006ef0de09a5c4420787d79823c0ed7924225822362fd2bf2ff2d" dependencies = [ "cfg-if 1.0.0", "parity-scale-codec", @@ -1991,7 +2008,7 @@ dependencies = [ [[package]] name = "frame-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "bitflags", "frame-metadata", @@ -2020,7 +2037,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "Inflector", "frame-support-procedural-tools", @@ -2032,7 +2049,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate 1.1.3", @@ -2044,7 +2061,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "proc-macro2", "quote", @@ -2054,7 +2071,7 @@ dependencies = [ [[package]] name = "frame-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "log 0.4.16", @@ -2071,7 +2088,7 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", "sp-api", @@ -2099,6 +2116,12 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "fs_extra" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" + [[package]] name = "fuchsia-cprng" version = "0.1.1" @@ -2123,9 +2146,9 @@ checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" [[package]] name = "funty" -version = "1.1.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" @@ -2299,9 +2322,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d39cd93900197114fa1fcb7ae84ca742095eed9442088988ae74fa744e930e77" +checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad" dependencies = [ "cfg-if 1.0.0", "libc", @@ -2384,9 +2407,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62eeb471aa3e3c9197aa4bfeabfe02982f6dc96f750486c0bb0009ac58b26d2b" +checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57" dependencies = [ "bytes 1.1.0", "fnv", @@ -2397,7 +2420,7 @@ dependencies = [ "indexmap", "slab", "tokio", - "tokio-util", + "tokio-util 0.7.1", "tracing", ] @@ -2594,9 +2617,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.6.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9100414882e15fb7feccb4897e5f0ff0ff1ca7d1a86a23208ada4d7a18e6c6c4" +checksum = "6330e8a36bd8c859f3fa6d9382911fbb7147ec39807f63b923933a247240b9ba" [[package]] name = "httpdate" @@ -2640,9 +2663,9 @@ dependencies = [ [[package]] name = "hyper" -version = "0.14.17" +version = "0.14.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "043f0e083e9901b6cc658a77d1eb86f4fc650bbb977a4337dd63192826aa85dd" +checksum = "b26ae0a80afebe130861d90abf98e3814a4f28a4c6ffeb5ab8ebb2be311e0ef2" dependencies = [ "bytes 1.1.0", "futures-channel", @@ -2670,7 +2693,7 @@ checksum = "5f9f7a97316d44c0af9b0301e65010573a853a9fc97046d7331d7f6bc0fd5a64" dependencies = [ "ct-logs", "futures-util", - "hyper 0.14.17", + "hyper 0.14.18", "log 0.4.16", "rustls 0.19.1", "rustls-native-certs 0.5.0", @@ -2686,13 +2709,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d87c48c02e0dc5e3b849a2041db3029fd066650f8f717c07bf8ed78ccb895cac" dependencies = [ "http", - "hyper 0.14.17", + "hyper 0.14.18", "log 0.4.16", "rustls 0.20.4", "rustls-native-certs 0.6.1", "tokio", "tokio-rustls 0.23.3", - "webpki-roots 0.22.2", + "webpki-roots 0.22.3", ] [[package]] @@ -2702,7 +2725,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" dependencies = [ "bytes 1.1.0", - "hyper 0.14.17", + "hyper 0.14.18", "native-tls", "tokio", "tokio-native-tls", @@ -2775,9 +2798,9 @@ dependencies = [ [[package]] name = "impl-codec" -version = "0.5.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "161ebdfec3c8e3b52bf61c4f3550a1eea4f9579d10dc1b936f3171ebdcd6c443" +checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" dependencies = [ "parity-scale-codec", ] @@ -2804,9 +2827,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.8.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282a6247722caba404c065016bbfa522806e51714c34f5dfc3e4a3a46fcb4223" +checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee" dependencies = [ "autocfg", "hashbrown 0.11.2", @@ -2834,7 +2857,7 @@ dependencies = [ [[package]] name = "interbtc-primitives" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin 1.2.0", "bstringify", @@ -2849,7 +2872,7 @@ dependencies = [ [[package]] name = "interbtc-rpc" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "interbtc-primitives", "jsonrpc-core", @@ -2877,7 +2900,7 @@ dependencies = [ [[package]] name = "interbtc-runtime-standalone" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "annuity", "btc-relay", @@ -2952,7 +2975,7 @@ dependencies = [ [[package]] name = "interbtc-standalone" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin 1.2.0", "clap", @@ -3039,7 +3062,7 @@ checksum = "35e70ee094dc02fd9c13fdad4940090f22dbd6ac7c9e7094a46cf0232a50bc7c" [[package]] name = "issue" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin 1.2.0", "btc-relay", @@ -3098,9 +3121,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.56" +version = "0.3.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a38fc24e30fd564ce974c02bf1d337caddff65be6cc4735a1f7eab22a7440f04" +checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397" dependencies = [ "wasm-bindgen", ] @@ -3125,7 +3148,7 @@ checksum = "d2b99d4207e2a04fb4581746903c2bb7eb376f88de9c699d0f3e10feeac0cd3a" dependencies = [ "derive_more", "futures 0.3.21", - "hyper 0.14.17", + "hyper 0.14.18", "hyper-tls", "jsonrpc-core", "jsonrpc-pubsub", @@ -3180,7 +3203,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1dea6e07251d9ce6a552abfb5d7ad6bc290a4596c8dcc3d795fae2bbdc1f3ff" dependencies = [ "futures 0.3.21", - "hyper 0.14.17", + "hyper 0.14.18", "jsonrpc-core", "jsonrpc-server-utils", "log 0.4.16", @@ -3233,7 +3256,7 @@ dependencies = [ "log 0.4.16", "tokio", "tokio-stream", - "tokio-util", + "tokio-util 0.6.9", "unicase 2.6.0", ] @@ -3254,9 +3277,9 @@ dependencies = [ [[package]] name = "jsonrpsee" -version = "0.8.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05fd8cd6c6b1bbd06881d2cf88f1fc83cc36c98f2219090f839115fb4a956cb9" +checksum = "91dc760c341fa81173f9a434931aaf32baad5552b0230cc6c93e8fb7eaad4c19" dependencies = [ "jsonrpsee-client-transport", "jsonrpsee-core", @@ -3268,9 +3291,9 @@ dependencies = [ [[package]] name = "jsonrpsee-client-transport" -version = "0.8.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3303cdf246e6ab76e2866fb3d9acb6c76a068b1b28bd923a1b7a8122257ad7b5" +checksum = "765f7a36d5087f74e3b3b47805c2188fef8eb54afcb587b078d9f8ebfe9c7220" dependencies = [ "futures 0.3.21", "http", @@ -3282,16 +3305,16 @@ dependencies = [ "thiserror", "tokio", "tokio-rustls 0.23.3", - "tokio-util", + "tokio-util 0.7.1", "tracing", - "webpki-roots 0.22.2", + "webpki-roots 0.22.3", ] [[package]] name = "jsonrpsee-core" -version = "0.8.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f220b5a238dc7992b90f1144fbf6eaa585872c9376afe6fe6863ffead6191bf3" +checksum = "82ef77ecd20c2254d54f5da8c0738eacca61e6b6511268a8f2753e3148c6c706" dependencies = [ "anyhow", "arrayvec 0.7.2", @@ -3299,7 +3322,7 @@ dependencies = [ "beef", "futures-channel", "futures-util", - "hyper 0.14.17", + "hyper 0.14.18", "jsonrpsee-types", "rustc-hash", "serde", @@ -3312,12 +3335,12 @@ dependencies = [ [[package]] name = "jsonrpsee-http-client" -version = "0.8.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dce69e96aa236cc2e3a20467420b31cbc8464703aa95bc33a163d25b0f56023" +checksum = "92709e0b8255691f4df954a0176b1cbc3312f151e7ed2e643812e8bd121f1d1c" dependencies = [ "async-trait", - "hyper 0.14.17", + "hyper 0.14.18", "hyper-rustls 0.23.0", "jsonrpsee-core", "jsonrpsee-types", @@ -3331,9 +3354,9 @@ dependencies = [ [[package]] name = "jsonrpsee-proc-macros" -version = "0.8.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4299ebf790ea9de1cb72e73ff2ae44c723ef264299e5e2d5ef46a371eb3ac3d8" +checksum = "b7291c72805bc7d413b457e50d8ef3e87aa554da65ecbbc278abb7dfc283e7f0" dependencies = [ "proc-macro-crate 1.1.3", "proc-macro2", @@ -3343,9 +3366,9 @@ dependencies = [ [[package]] name = "jsonrpsee-types" -version = "0.8.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1b3f601bbbe45cd63f5407b6f7d7950e08a7d4f82aa699ff41a4a5e9e54df58" +checksum = "38b6aa52f322cbf20c762407629b8300f39bcc0cf0619840d9252a2f65fd2dd9" dependencies = [ "anyhow", "beef", @@ -3357,9 +3380,9 @@ dependencies = [ [[package]] name = "jsonrpsee-ws-client" -version = "0.8.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aff425cee7c779e33920913bc695447416078ee6d119f443f3060feffa4e86b5" +checksum = "dd66d18bab78d956df24dd0d2e41e4c00afbb818fda94a98264bdd12ce8506ac" dependencies = [ "jsonrpsee-client-transport", "jsonrpsee-core", @@ -3406,9 +3429,9 @@ dependencies = [ [[package]] name = "kvdb" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45a3f58dc069ec0e205a27f5b45920722a46faed802a0541538241af6228f512" +checksum = "a301d8ecb7989d4a6e2c57a49baca77d353bdbf879909debe3f375fe25d61f86" dependencies = [ "parity-util-mem", "smallvec", @@ -3416,20 +3439,20 @@ dependencies = [ [[package]] name = "kvdb-memorydb" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3b6b85fc643f5acd0bffb2cc8a6d150209379267af0d41db72170021841f9f5" +checksum = "ece7e668abd21387aeb6628130a6f4c802787f014fa46bc83221448322250357" dependencies = [ "kvdb", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", ] [[package]] name = "kvdb-rocksdb" -version = "0.14.0" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b1b6ea8f2536f504b645ad78419c8246550e19d2c3419a167080ce08edee35a" +checksum = "ca7fbdfd71cd663dceb0faf3367a99f8cf724514933e9867cec4995b6027cbc1" dependencies = [ "fs-swap", "kvdb", @@ -3437,7 +3460,7 @@ dependencies = [ "num_cpus", "owning_ref", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "regex", "rocksdb", "smallvec", @@ -3463,9 +3486,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.121" +version = "0.2.123" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efaa7b300f3b5fe8eb6bf21ce3895e1751d9665086af2d64b42f19701015ff4f" +checksum = "cb691a747a7ab48abc15c5b42066eaafde10dc427e3b6ee2a1cf43db04c763bd" [[package]] name = "libloading" @@ -3799,7 +3822,7 @@ dependencies = [ "pin-project 1.0.10", "rand 0.7.3", "salsa20", - "sha3", + "sha3 0.9.1", ] [[package]] @@ -3859,7 +3882,7 @@ dependencies = [ "libp2p-core", "libp2p-swarm", "log 0.4.16", - "lru 0.7.3", + "lru 0.7.5", "rand 0.7.3", "smallvec", "unsigned-varint 0.7.1", @@ -3968,14 +3991,17 @@ dependencies = [ [[package]] name = "librocksdb-sys" -version = "6.20.3" +version = "0.6.1+6.28.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c309a9d2470844aceb9a4a098cf5286154d20596868b75a6b36357d2bb9ca25d" +checksum = "81bc587013734dadb7cf23468e531aa120788b87243648be42e2d3a072186291" dependencies = [ "bindgen", + "bzip2-sys", "cc", "glob", "libc", + "libz-sys", + "tikv-jemalloc-sys", ] [[package]] @@ -4070,10 +4096,11 @@ checksum = "a261afc61b7a5e323933b402ca6a1765183687c614789b1e4db7762ed4230bca" [[package]] name = "lock_api" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88943dd7ef4a2e5a4bfa2753aaab3013e34ce2533d1996fb18ef591e315e2b3b" +checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53" dependencies = [ + "autocfg", "scopeguard", ] @@ -4107,9 +4134,9 @@ dependencies = [ [[package]] name = "lru" -version = "0.7.3" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcb87f3080f6d1d69e8c564c0fcfde1d7aa8cc451ce40cae89479111f03bc0eb" +checksum = "32613e41de4c47ab04970c348ca7ae7382cf116625755af070b008a15516a889" dependencies = [ "hashbrown 0.11.2", ] @@ -4223,12 +4250,12 @@ dependencies = [ [[package]] name = "memory-db" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d505169b746dacf02f7d14d8c80b34edfd8212159c63d23c977739a0d960c626" +checksum = "6566c70c1016f525ced45d7b7f97730a2bafb037c788211d0c186ef5b2189f0a" dependencies = [ "hash-db", - "hashbrown 0.11.2", + "hashbrown 0.12.0", "parity-util-mem", ] @@ -4291,6 +4318,15 @@ dependencies = [ "autocfg", ] +[[package]] +name = "miniz_oxide" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082" +dependencies = [ + "adler", +] + [[package]] name = "mio" version = "0.6.23" @@ -4407,7 +4443,7 @@ dependencies = [ [[package]] name = "module-btc-relay-rpc" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4422,7 +4458,7 @@ dependencies = [ [[package]] name = "module-btc-relay-rpc-runtime-api" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "parity-scale-codec", @@ -4433,7 +4469,7 @@ dependencies = [ [[package]] name = "module-issue-rpc" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4448,7 +4484,7 @@ dependencies = [ [[package]] name = "module-issue-rpc-runtime-api" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "parity-scale-codec", @@ -4459,7 +4495,7 @@ dependencies = [ [[package]] name = "module-oracle-rpc" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4474,7 +4510,7 @@ dependencies = [ [[package]] name = "module-oracle-rpc-runtime-api" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "parity-scale-codec", @@ -4486,7 +4522,7 @@ dependencies = [ [[package]] name = "module-redeem-rpc" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4501,7 +4537,7 @@ dependencies = [ [[package]] name = "module-redeem-rpc-runtime-api" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "parity-scale-codec", @@ -4512,7 +4548,7 @@ dependencies = [ [[package]] name = "module-refund-rpc" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4527,7 +4563,7 @@ dependencies = [ [[package]] name = "module-refund-rpc-runtime-api" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "parity-scale-codec", @@ -4538,7 +4574,7 @@ dependencies = [ [[package]] name = "module-relay-rpc" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4553,7 +4589,7 @@ dependencies = [ [[package]] name = "module-relay-rpc-runtime-api" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "parity-scale-codec", @@ -4564,7 +4600,7 @@ dependencies = [ [[package]] name = "module-replace-rpc" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4579,7 +4615,7 @@ dependencies = [ [[package]] name = "module-replace-rpc-runtime-api" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "parity-scale-codec", @@ -4590,7 +4626,7 @@ dependencies = [ [[package]] name = "module-vault-registry-rpc" version = "0.3.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4606,7 +4642,7 @@ dependencies = [ [[package]] name = "module-vault-registry-rpc-runtime-api" version = "0.3.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "module-oracle-rpc-runtime-api", @@ -4663,7 +4699,7 @@ dependencies = [ "generic-array 0.14.5", "multihash-derive", "sha2 0.9.9", - "sha3", + "sha3 0.9.1", "unsigned-varint 0.5.1", ] @@ -4772,9 +4808,9 @@ dependencies = [ [[package]] name = "native-tls" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48ba9f7719b5a0f42f338907614285fb5fd70e53858141f69898a1fb7203b24d" +checksum = "fd7e2f3618557f980e0b17e8856252eee3c97fa12c54dff0ca290fb6266ca4a9" dependencies = [ "lazy_static", "libc", @@ -4824,7 +4860,7 @@ dependencies = [ [[package]] name = "nomination" version = "0.5.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "currency", "fee", @@ -5099,7 +5135,7 @@ dependencies = [ [[package]] name = "oracle" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "currency", "frame-benchmarking", @@ -5121,7 +5157,7 @@ dependencies = [ [[package]] name = "orml-tokens" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?rev=aac79b3b31953381669a2ffa9b3e9bfe48e87f38#aac79b3b31953381669a2ffa9b3e9bfe48e87f38" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?rev=2b5d4ce1d08fb54c0007c2055653892d2c93a92e#2b5d4ce1d08fb54c0007c2055653892d2c93a92e" dependencies = [ "frame-support", "frame-system", @@ -5136,7 +5172,7 @@ dependencies = [ [[package]] name = "orml-traits" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?rev=aac79b3b31953381669a2ffa9b3e9bfe48e87f38#aac79b3b31953381669a2ffa9b3e9bfe48e87f38" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?rev=2b5d4ce1d08fb54c0007c2055653892d2c93a92e#2b5d4ce1d08fb54c0007c2055653892d2c93a92e" dependencies = [ "frame-support", "impl-trait-for-tuples", @@ -5154,7 +5190,7 @@ dependencies = [ [[package]] name = "orml-utilities" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?rev=aac79b3b31953381669a2ffa9b3e9bfe48e87f38#aac79b3b31953381669a2ffa9b3e9bfe48e87f38" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?rev=2b5d4ce1d08fb54c0007c2055653892d2c93a92e#2b5d4ce1d08fb54c0007c2055653892d2c93a92e" dependencies = [ "frame-support", "parity-scale-codec", @@ -5168,7 +5204,7 @@ dependencies = [ [[package]] name = "orml-vesting" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?rev=aac79b3b31953381669a2ffa9b3e9bfe48e87f38#aac79b3b31953381669a2ffa9b3e9bfe48e87f38" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?rev=2b5d4ce1d08fb54c0007c2055653892d2c93a92e#2b5d4ce1d08fb54c0007c2055653892d2c93a92e" dependencies = [ "frame-support", "frame-system", @@ -5201,7 +5237,7 @@ dependencies = [ [[package]] name = "pallet-aura" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -5217,7 +5253,7 @@ dependencies = [ [[package]] name = "pallet-authorship" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -5232,7 +5268,7 @@ dependencies = [ [[package]] name = "pallet-balances" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-benchmarking", "frame-support", @@ -5247,7 +5283,7 @@ dependencies = [ [[package]] name = "pallet-collective" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-benchmarking", "frame-support", @@ -5264,7 +5300,7 @@ dependencies = [ [[package]] name = "pallet-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-benchmarking", "frame-support", @@ -5287,7 +5323,7 @@ dependencies = [ [[package]] name = "pallet-membership" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-benchmarking", "frame-support", @@ -5304,7 +5340,7 @@ dependencies = [ [[package]] name = "pallet-multisig" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -5318,7 +5354,7 @@ dependencies = [ [[package]] name = "pallet-preimage" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-benchmarking", "frame-support", @@ -5334,7 +5370,7 @@ dependencies = [ [[package]] name = "pallet-scheduler" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-benchmarking", "frame-support", @@ -5350,7 +5386,7 @@ dependencies = [ [[package]] name = "pallet-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -5371,7 +5407,7 @@ dependencies = [ [[package]] name = "pallet-society" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -5385,7 +5421,7 @@ dependencies = [ [[package]] name = "pallet-sudo" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -5399,7 +5435,7 @@ dependencies = [ [[package]] name = "pallet-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-benchmarking", "frame-support", @@ -5416,7 +5452,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -5433,7 +5469,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -5450,7 +5486,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -5461,7 +5497,7 @@ dependencies = [ [[package]] name = "pallet-treasury" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -5477,7 +5513,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-support", "frame-system", @@ -5491,9 +5527,9 @@ dependencies = [ [[package]] name = "parity-db" -version = "0.3.9" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d121a9af17a43efd0a38c6afa508b927ba07785bd4709efb2ac03bf77efef8d" +checksum = "b3e7f385d61562f5834282b90aa50b41f38a35cf64d5209b8b05487b50553dbe" dependencies = [ "blake2-rfc", "crc32fast", @@ -5510,9 +5546,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "2.3.1" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "373b1a4c1338d9cd3d1fa53b3a11bdab5ab6bd80a20f7f7becd76953ae2be909" +checksum = "e8b44461635bbb1a0300f100a841e571e7d919c81c73075ef5d152ffdb521066" dependencies = [ "arrayvec 0.7.2", "bitvec", @@ -5524,9 +5560,9 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "2.3.1" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1557010476e0595c9b568d16dcfb81b93cdeb157612726f5170d31aa707bed27" +checksum = "c45ed1f39709f5a89338fab50e59816b2e8815f5bb58276e7ddf9afd495f73f8" dependencies = [ "proc-macro-crate 1.1.3", "proc-macro2", @@ -5556,15 +5592,15 @@ dependencies = [ [[package]] name = "parity-util-mem" -version = "0.10.2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f4cb4e169446179cbc6b8b6320cc9fca49bd2e94e8db25f25f200a8ea774770" +checksum = "c32561d248d352148124f036cac253a644685a21dc9fea383eb4907d7bd35a8f" dependencies = [ "cfg-if 1.0.0", - "hashbrown 0.11.2", + "hashbrown 0.12.0", "impl-trait-for-tuples", "parity-util-mem-derive", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "primitive-types", "smallvec", "winapi 0.3.9", @@ -5638,7 +5674,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "87f5ec2493a61ac0506c0f4199f99070cbe83857b0337006a30f3e6719b8ef58" dependencies = [ "lock_api", - "parking_lot_core 0.9.1", + "parking_lot_core 0.9.2", ] [[package]] @@ -5657,9 +5693,9 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28141e0cc4143da2443301914478dc976a61ffdb3f043058310c70df2fed8954" +checksum = "995f667a6c822200b0433ac218e05582f0e2efa1b922a3fd2fbaadc5f87bab37" dependencies = [ "cfg-if 1.0.0", "libc", @@ -5670,9 +5706,9 @@ dependencies = [ [[package]] name = "paste" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0744126afe1a6dd7f394cb50a716dbe086cb06e255e53d8d0185d82828358fb5" +checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc" [[package]] name = "pbkdf2" @@ -5823,9 +5859,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.24" +version = "0.3.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe" +checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" [[package]] name = "platforms" @@ -5835,8 +5871,8 @@ checksum = "e8d0eef3571242013a0d5dc84861c3ae4a652e56e12adf8bdc26ff5f8cb34c94" [[package]] name = "polkadot-core-primitives" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.18" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.18#9ed0c98204d25eaad8a6b40248daee8e6a40d111" dependencies = [ "parity-scale-codec", "parity-util-mem", @@ -5848,8 +5884,8 @@ dependencies = [ [[package]] name = "polkadot-parachain" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.18" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.18#9ed0c98204d25eaad8a6b40248daee8e6a40d111" dependencies = [ "derive_more", "frame-support", @@ -5936,9 +5972,9 @@ dependencies = [ [[package]] name = "primitive-types" -version = "0.10.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05e4722c697a58a99d5d06a08c30821d7c082a4632198de1eaa5a6c22ef42373" +checksum = "e28720988bff275df1f51b171e1b2a18c30d194c4d2b61defdacecd625a5d94a" dependencies = [ "fixed-hash", "impl-codec", @@ -5998,9 +6034,9 @@ checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" [[package]] name = "proc-macro2" -version = "1.0.36" +version = "1.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029" +checksum = "ec757218438d5fda206afc041538b2f6d889286160d649a86a24d37e1235afd1" dependencies = [ "unicode-xid", ] @@ -6111,9 +6147,9 @@ checksum = "cf7e6d18738ecd0902d30d1ad232c9125985a3422929b16c65517b38adc14f96" [[package]] name = "psm" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eca0fa5dd7c4c96e184cec588f0b1db1ee3165e678db21c09793105acb17e6f" +checksum = "871372391786ccec00d3c5d3d6608905b3d4db263639cfe075d3b60a736d115a" dependencies = [ "cc", ] @@ -6143,18 +6179,18 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.16" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4af2ec4714533fcdf07e886f17025ace8b997b9ce51204ee69b6da831c3da57" +checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1" dependencies = [ "proc-macro2", ] [[package]] name = "radium" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643f8f41a8ebc4c5dc4515c82bb8abd397b527fc20fd681b7c011c2aee5d44fb" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" [[package]] name = "rand" @@ -6244,7 +6280,7 @@ version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" dependencies = [ - "getrandom 0.2.5", + "getrandom 0.2.6", ] [[package]] @@ -6318,7 +6354,7 @@ dependencies = [ [[package]] name = "redeem" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin 1.2.0", "btc-relay", @@ -6346,20 +6382,20 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.2.11" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8380fe0152551244f0747b1bf41737e0f8a74f97a14ccefd1148187271634f3c" +checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42" dependencies = [ "bitflags", ] [[package]] name = "redox_users" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7776223e2696f1aa4c6b0170e83212f47296a00424305117d013dfe86fb0fe55" +checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ - "getrandom 0.2.5", + "getrandom 0.2.6", "redox_syscall", "thiserror", ] @@ -6387,7 +6423,7 @@ dependencies = [ [[package]] name = "refund" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin 1.2.0", "btc-relay", @@ -6465,7 +6501,7 @@ dependencies = [ [[package]] name = "relay" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin 1.2.0", "btc-relay", @@ -6506,7 +6542,7 @@ dependencies = [ [[package]] name = "replace" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin 1.2.0", "btc-relay", @@ -6547,7 +6583,7 @@ dependencies = [ "h2", "http", "http-body", - "hyper 0.14.17", + "hyper 0.14.18", "hyper-tls", "ipnet", "js-sys", @@ -6589,7 +6625,7 @@ checksum = "8c31b5c4033f8fdde8700e4657be2c497e7288f01515be52168c631e2e4d4086" [[package]] name = "reward" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-benchmarking", "frame-support", @@ -6622,9 +6658,9 @@ dependencies = [ [[package]] name = "rocksdb" -version = "0.17.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a62eca5cacf2c8261128631bed9f045598d40bfbe4b29f5163f0f802f8f44a7" +checksum = "620f4129485ff1a7128d184bc687470c21c7951b64779ebc9cfdad3dcd920290" dependencies = [ "libc", "librocksdb-sys", @@ -6713,7 +6749,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.6", + "semver 1.0.7", ] [[package]] @@ -6838,7 +6874,7 @@ dependencies = [ [[package]] name = "sc-allocator" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "log 0.4.16", "sp-core", @@ -6849,7 +6885,7 @@ dependencies = [ [[package]] name = "sc-basic-authorship" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "futures-timer", @@ -6872,7 +6908,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -6888,7 +6924,7 @@ dependencies = [ [[package]] name = "sc-chain-spec" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "impl-trait-for-tuples", "memmap2 0.5.3", @@ -6905,7 +6941,7 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "proc-macro-crate 1.1.3", "proc-macro2", @@ -6916,7 +6952,7 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "chrono", "clap", @@ -6954,14 +6990,14 @@ dependencies = [ [[package]] name = "sc-client-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "fnv", "futures 0.3.21", "hash-db", "log 0.4.16", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-executor", "sc-transaction-pool-api", "sc-utils", @@ -6982,7 +7018,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "hash-db", "kvdb", @@ -6992,7 +7028,7 @@ dependencies = [ "log 0.4.16", "parity-db", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-client-api", "sc-state-db", "sp-arithmetic", @@ -7007,14 +7043,14 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "futures 0.3.21", "futures-timer", "libp2p", "log 0.4.16", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-client-api", "sc-utils", "serde", @@ -7031,7 +7067,7 @@ dependencies = [ [[package]] name = "sc-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "futures 0.3.21", @@ -7060,7 +7096,7 @@ dependencies = [ [[package]] name = "sc-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "futures 0.3.21", @@ -7085,14 +7121,12 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "lazy_static", - "libsecp256k1", - "log 0.4.16", "lru 0.6.6", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-executor-common", "sc-executor-wasmi", "sc-executor-wasmtime", @@ -7107,13 +7141,14 @@ dependencies = [ "sp-trie", "sp-version", "sp-wasm-interface", + "tracing", "wasmi", ] [[package]] name = "sc-executor-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "environmental", "parity-scale-codec", @@ -7130,7 +7165,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmi" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "log 0.4.16", "parity-scale-codec", @@ -7146,7 +7181,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "cfg-if 1.0.0", "libc", @@ -7164,17 +7199,19 @@ dependencies = [ [[package]] name = "sc-finality-grandpa" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ + "ahash", "async-trait", "dyn-clone", "finality-grandpa", "fork-tree", "futures 0.3.21", "futures-timer", + "hex", "log 0.4.16", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "rand 0.8.5", "sc-block-builder", "sc-chain-spec", @@ -7202,7 +7239,7 @@ dependencies = [ [[package]] name = "sc-informant" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "ansi_term", "futures 0.3.21", @@ -7219,11 +7256,11 @@ dependencies = [ [[package]] name = "sc-keystore" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "hex", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "serde_json", "sp-application-crypto", "sp-core", @@ -7234,9 +7271,8 @@ dependencies = [ [[package]] name = "sc-network" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ - "async-std", "async-trait", "asynchronous-codec 0.5.0", "bitflags", @@ -7253,9 +7289,9 @@ dependencies = [ "linked-hash-map", "linked_hash_set", "log 0.4.16", - "lru 0.7.3", + "lru 0.7.5", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "pin-project 1.0.10", "prost", "prost-build", @@ -7284,13 +7320,14 @@ dependencies = [ [[package]] name = "sc-network-gossip" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ + "ahash", "futures 0.3.21", "futures-timer", "libp2p", "log 0.4.16", - "lru 0.7.3", + "lru 0.7.5", "sc-network", "sp-runtime", "substrate-prometheus-endpoint", @@ -7300,19 +7337,19 @@ dependencies = [ [[package]] name = "sc-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "bytes 1.1.0", "fnv", "futures 0.3.21", "futures-timer", "hex", - "hyper 0.14.17", + "hyper 0.14.18", "hyper-rustls 0.22.1", "num_cpus", "once_cell", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "rand 0.7.3", "sc-client-api", "sc-network", @@ -7328,7 +7365,7 @@ dependencies = [ [[package]] name = "sc-peerset" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "libp2p", @@ -7341,7 +7378,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "log 0.4.16", "substrate-prometheus-endpoint", @@ -7350,7 +7387,7 @@ dependencies = [ [[package]] name = "sc-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "hash-db", @@ -7358,7 +7395,7 @@ dependencies = [ "jsonrpc-pubsub", "log 0.4.16", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-block-builder", "sc-chain-spec", "sc-client-api", @@ -7381,7 +7418,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "jsonrpc-core", @@ -7390,7 +7427,7 @@ dependencies = [ "jsonrpc-pubsub", "log 0.4.16", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-chain-spec", "sc-transaction-pool-api", "serde", @@ -7406,7 +7443,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "jsonrpc-core", @@ -7423,7 +7460,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "directories", @@ -7436,7 +7473,7 @@ dependencies = [ "log 0.4.16", "parity-scale-codec", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "pin-project 1.0.10", "rand 0.7.3", "sc-block-builder", @@ -7487,13 +7524,13 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "log 0.4.16", "parity-scale-codec", "parity-util-mem", "parity-util-mem-derive", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-client-api", "sp-core", ] @@ -7501,13 +7538,13 @@ dependencies = [ [[package]] name = "sc-telemetry" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "chrono", "futures 0.3.21", "libp2p", "log 0.4.16", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "pin-project 1.0.10", "rand 0.7.3", "serde", @@ -7519,7 +7556,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "ansi_term", "atty", @@ -7528,7 +7565,7 @@ dependencies = [ "libc", "log 0.4.16", "once_cell", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "regex", "rustc-hash", "sc-client-api", @@ -7550,7 +7587,7 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "proc-macro-crate 1.1.3", "proc-macro2", @@ -7561,7 +7598,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "futures-timer", @@ -7569,7 +7606,7 @@ dependencies = [ "log 0.4.16", "parity-scale-codec", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "retain_mut", "sc-client-api", "sc-transaction-pool-api", @@ -7588,7 +7625,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "log 0.4.16", @@ -7601,20 +7638,21 @@ dependencies = [ [[package]] name = "sc-utils" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "futures-timer", "lazy_static", - "parking_lot 0.11.2", + "log 0.4.16", + "parking_lot 0.12.0", "prometheus 0.13.0", ] [[package]] name = "scale-info" -version = "1.0.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c55b744399c25532d63a0d2789b109df8d46fc93752d46b0782991a931a782f" +checksum = "21fe4ca2b2295d5519b364579162b8e18f4902f6c9e8a975e7d05e7ef63622f5" dependencies = [ "bitvec", "cfg-if 1.0.0", @@ -7626,9 +7664,9 @@ dependencies = [ [[package]] name = "scale-info-derive" -version = "1.0.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baeb2780690380592f86205aa4ee49815feb2acad8c2f59e6dd207148c3f1fcd" +checksum = "e767e52f2d5b2e71e86b1c82976bf4c3acdef88d72af7fa3498cef31cd9708cb" dependencies = [ "proc-macro-crate 1.1.3", "proc-macro2", @@ -7714,6 +7752,15 @@ dependencies = [ "serde", ] +[[package]] +name = "secp256k1" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c42e6f1735c5f00f51e43e28d6634141f2bcad10931b2609ddd74a86d751260" +dependencies = [ + "secp256k1-sys 0.4.2", +] + [[package]] name = "secp256k1-sys" version = "0.4.0" @@ -7743,7 +7790,7 @@ dependencies = [ [[package]] name = "security" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-support", "frame-system", @@ -7799,9 +7846,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a3381e03edd24287172047536f20cabde766e2cd3e65e6b00fb3af51c4f38d" +checksum = "d65bd28f48be7196d222d95b9243287f48d27aca604e08497513019ff0502cc4" dependencies = [ "serde", ] @@ -7852,6 +7899,15 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_nanos" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e44969a61f5d316be20a42ff97816efb3b407a924d06824c3d8a49fa8450de0e" +dependencies = [ + "serde", +] + [[package]] name = "serde_urlencoded" version = "0.7.1" @@ -7872,7 +7928,7 @@ dependencies = [ "bitcoin 1.1.0", "clap", "futures 0.3.21", - "hyper 0.14.17", + "hyper 0.14.18", "hyper-tls", "runtime", "serde", @@ -7969,6 +8025,16 @@ dependencies = [ "opaque-debug 0.3.0", ] +[[package]] +name = "sha3" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "881bf8156c87b6301fc5ca6b27f11eeb2761224c7081e69b409d5a1951a70c86" +dependencies = [ + "digest 0.10.3", + "keccak", +] + [[package]] name = "sharded-slab" version = "0.1.4" @@ -7984,16 +8050,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" -[[package]] -name = "signal-hook" -version = "0.3.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "647c97df271007dcea485bb74ffdb57f2e683f1306c854f468a0c244badabf2d" -dependencies = [ - "libc", - "signal-hook-registry", -] - [[package]] name = "signal-hook-registry" version = "1.4.0" @@ -8023,9 +8079,9 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5" +checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32" [[package]] name = "sled" @@ -8062,7 +8118,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6142f7c25e94f6fd25a32c3348ec230df9109b463f59c8c7acc4bd34936babb7" dependencies = [ "aes-gcm", - "blake2", + "blake2 0.9.2", "chacha20poly1305", "rand 0.8.5", "rand_core 0.6.3", @@ -8113,7 +8169,7 @@ dependencies = [ [[package]] name = "sp-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "hash-db", "log 0.4.16", @@ -8130,9 +8186,9 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ - "blake2-rfc", + "blake2 0.10.4", "proc-macro-crate 1.1.3", "proc-macro2", "quote", @@ -8141,8 +8197,8 @@ dependencies = [ [[package]] name = "sp-application-crypto" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", "scale-info", @@ -8154,8 +8210,8 @@ dependencies = [ [[package]] name = "sp-arithmetic" -version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "integer-sqrt", "num-traits", @@ -8170,7 +8226,7 @@ dependencies = [ [[package]] name = "sp-authorship" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "parity-scale-codec", @@ -8182,7 +8238,7 @@ dependencies = [ [[package]] name = "sp-block-builder" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", "sp-api", @@ -8194,13 +8250,13 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "log 0.4.16", - "lru 0.7.3", + "lru 0.7.5", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sp-api", "sp-consensus", "sp-database", @@ -8212,7 +8268,7 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "futures 0.3.21", @@ -8231,7 +8287,7 @@ dependencies = [ [[package]] name = "sp-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "parity-scale-codec", @@ -8249,19 +8305,21 @@ dependencies = [ [[package]] name = "sp-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", "scale-info", "serde", "sp-arithmetic", "sp-runtime", + "sp-std", + "sp-timestamp", ] [[package]] name = "sp-core" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "base58", "bitflags", @@ -8281,15 +8339,15 @@ dependencies = [ "num-traits", "parity-scale-codec", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "primitive-types", "rand 0.7.3", "regex", "scale-info", "schnorrkel", + "secp256k1 0.21.3", "secrecy", "serde", - "sha2 0.10.2", "sp-core-hashing", "sp-debug-derive", "sp-externalities", @@ -8300,8 +8358,6 @@ dependencies = [ "substrate-bip39", "thiserror", "tiny-bip39", - "tiny-keccak", - "twox-hash", "wasmi", "zeroize", ] @@ -8309,20 +8365,21 @@ dependencies = [ [[package]] name = "sp-core-hashing" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ - "blake2-rfc", + "blake2 0.10.4", "byteorder", + "digest 0.10.3", "sha2 0.10.2", + "sha3 0.10.1", "sp-std", - "tiny-keccak", "twox-hash", ] [[package]] name = "sp-core-hashing-proc-macro" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "proc-macro2", "quote", @@ -8333,16 +8390,16 @@ dependencies = [ [[package]] name = "sp-database" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "kvdb", - "parking_lot 0.11.2", + "parking_lot 0.12.0", ] [[package]] name = "sp-debug-derive" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "proc-macro2", "quote", @@ -8351,8 +8408,8 @@ dependencies = [ [[package]] name = "sp-externalities" -version = "0.11.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "0.12.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "environmental", "parity-scale-codec", @@ -8363,7 +8420,7 @@ dependencies = [ [[package]] name = "sp-finality-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "finality-grandpa", "log 0.4.16", @@ -8381,7 +8438,7 @@ dependencies = [ [[package]] name = "sp-inherents" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -8394,15 +8451,16 @@ dependencies = [ [[package]] name = "sp-io" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "futures 0.3.21", "hash-db", "libsecp256k1", "log 0.4.16", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", + "secp256k1 0.21.3", "sp-core", "sp-externalities", "sp-keystore", @@ -8418,8 +8476,8 @@ dependencies = [ [[package]] name = "sp-keyring" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "lazy_static", "sp-core", @@ -8429,14 +8487,14 @@ dependencies = [ [[package]] name = "sp-keystore" -version = "0.11.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "0.12.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "futures 0.3.21", "merlin", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "schnorrkel", "serde", "sp-core", @@ -8447,7 +8505,7 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "thiserror", "zstd", @@ -8456,7 +8514,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "sp-api", "sp-core", @@ -8466,7 +8524,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "backtrace", "lazy_static", @@ -8475,8 +8533,8 @@ dependencies = [ [[package]] name = "sp-rpc" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "rustc-hash", "serde", @@ -8485,8 +8543,8 @@ dependencies = [ [[package]] name = "sp-runtime" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "either", "hash256-std-hasher", @@ -8507,8 +8565,8 @@ dependencies = [ [[package]] name = "sp-runtime-interface" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -8524,8 +8582,8 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" -version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "Inflector", "proc-macro-crate 1.1.3", @@ -8537,7 +8595,7 @@ dependencies = [ [[package]] name = "sp-serializer" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "serde", "serde_json", @@ -8546,7 +8604,7 @@ dependencies = [ [[package]] name = "sp-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", "scale-info", @@ -8560,7 +8618,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", "scale-info", @@ -8570,14 +8628,14 @@ dependencies = [ [[package]] name = "sp-state-machine" -version = "0.11.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "0.12.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "hash-db", "log 0.4.16", "num-traits", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "rand 0.7.3", "smallvec", "sp-core", @@ -8594,12 +8652,12 @@ dependencies = [ [[package]] name = "sp-std" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" [[package]] name = "sp-storage" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "impl-serde", "parity-scale-codec", @@ -8612,7 +8670,7 @@ dependencies = [ [[package]] name = "sp-tasks" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "log 0.4.16", "sp-core", @@ -8625,7 +8683,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "futures-timer", @@ -8640,8 +8698,8 @@ dependencies = [ [[package]] name = "sp-tracing" -version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", "sp-std", @@ -8653,7 +8711,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "sp-api", "sp-runtime", @@ -8662,7 +8720,7 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "async-trait", "log 0.4.16", @@ -8677,8 +8735,8 @@ dependencies = [ [[package]] name = "sp-trie" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "hash-db", "memory-db", @@ -8686,14 +8744,15 @@ dependencies = [ "scale-info", "sp-core", "sp-std", + "thiserror", "trie-db", "trie-root", ] [[package]] name = "sp-version" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "impl-serde", "parity-scale-codec", @@ -8710,7 +8769,7 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "parity-scale-codec", "proc-macro2", @@ -8720,8 +8779,8 @@ dependencies = [ [[package]] name = "sp-wasm-interface" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "impl-trait-for-tuples", "log 0.4.16", @@ -8767,7 +8826,7 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "staking" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-benchmarking", "frame-support", @@ -8846,7 +8905,7 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "platforms", ] @@ -8854,7 +8913,7 @@ dependencies = [ [[package]] name = "substrate-frame-rpc-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "frame-system-rpc-runtime-api", "futures 0.3.21", @@ -8876,11 +8935,10 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ - "async-std", "futures-util", - "hyper 0.14.17", + "hyper 0.14.18", "log 0.4.16", "prometheus 0.13.0", "thiserror", @@ -8890,7 +8948,7 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.18#fc3fd073d3a0acf9933c3994b660ebd7b5833f65" dependencies = [ "ansi_term", "build-helper", @@ -8911,8 +8969,8 @@ checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] name = "subxt" -version = "0.16.0" -source = "git+https://github.com/interlay/subxt?rev=1193d94206a669c59cc5dd89486fecfa82ca584a#1193d94206a669c59cc5dd89486fecfa82ca584a" +version = "0.20.0" +source = "git+https://github.com/interlay/subxt?rev=344e44c3729adcb945b937d6703212e7ae41da50#344e44c3729adcb945b937d6703212e7ae41da50" dependencies = [ "async-trait", "bitvec", @@ -8923,28 +8981,23 @@ dependencies = [ "hex", "jsonrpsee", "log 0.4.16", - "num-traits", "parity-scale-codec", "scale-info", "serde", "serde_json", "sp-core", "sp-runtime", - "sp-version", - "subxt-client", "subxt-macro", "thiserror", - "url 2.2.2", ] [[package]] name = "subxt-client" version = "0.1.0" -source = "git+https://github.com/interlay/subxt?rev=1193d94206a669c59cc5dd89486fecfa82ca584a#1193d94206a669c59cc5dd89486fecfa82ca584a" dependencies = [ - "async-std", "futures 0.1.31", "futures 0.3.21", + "jsonrpsee", "jsonrpsee-core", "jsonrpsee-types", "log 0.4.16", @@ -8959,13 +9012,13 @@ dependencies = [ [[package]] name = "subxt-codegen" -version = "0.16.0" -source = "git+https://github.com/interlay/subxt?rev=1193d94206a669c59cc5dd89486fecfa82ca584a#1193d94206a669c59cc5dd89486fecfa82ca584a" +version = "0.20.0" +source = "git+https://github.com/interlay/subxt?rev=344e44c3729adcb945b937d6703212e7ae41da50#344e44c3729adcb945b937d6703212e7ae41da50" dependencies = [ "async-trait", "darling", "frame-metadata", - "heck 0.3.3", + "heck 0.4.0", "parity-scale-codec", "proc-macro-crate 0.1.5", "proc-macro-error", @@ -8977,13 +9030,13 @@ dependencies = [ [[package]] name = "subxt-macro" -version = "0.16.0" -source = "git+https://github.com/interlay/subxt?rev=1193d94206a669c59cc5dd89486fecfa82ca584a#1193d94206a669c59cc5dd89486fecfa82ca584a" +version = "0.20.0" +source = "git+https://github.com/interlay/subxt?rev=344e44c3729adcb945b937d6703212e7ae41da50#344e44c3729adcb945b937d6703212e7ae41da50" dependencies = [ "async-trait", "darling", "frame-metadata", - "heck 0.3.3", + "heck 0.4.0", "parity-scale-codec", "proc-macro-crate 0.1.5", "proc-macro-error", @@ -8997,7 +9050,7 @@ dependencies = [ [[package]] name = "supply" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "frame-benchmarking", "frame-support", @@ -9015,9 +9068,9 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.89" +version = "1.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea297be220d52398dcc07ce15a209fce436d361735ac1db700cab3b6cdfb9f54" +checksum = "b683b2b825c8eef438b77c36a06dc262294da3d5a5813fac20da149241dcd44d" dependencies = [ "proc-macro2", "quote", @@ -9131,6 +9184,17 @@ dependencies = [ "num_cpus", ] +[[package]] +name = "tikv-jemalloc-sys" +version = "0.4.3+5.2.1-patched.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1792ccb507d955b46af42c123ea8863668fae24d03721e40cad6a41773dbb49" +dependencies = [ + "cc", + "fs_extra", + "libc", +] + [[package]] name = "time" version = "0.1.44" @@ -9161,15 +9225,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "tiny-keccak" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" -dependencies = [ - "crunchy", -] - [[package]] name = "tinyvec" version = "1.5.1" @@ -9290,13 +9345,27 @@ checksum = "9e99e1983e5d376cd8eb4b66604d2e99e79f5bd988c3055891dcd8c9e2604cc0" dependencies = [ "bytes 1.1.0", "futures-core", - "futures-io", "futures-sink", "log 0.4.16", "pin-project-lite 0.2.8", "tokio", ] +[[package]] +name = "tokio-util" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0edfdeb067411dba2044da6d1cb2df793dd35add7888d73c16e3381ded401764" +dependencies = [ + "bytes 1.1.0", + "futures-core", + "futures-io", + "futures-sink", + "pin-project-lite 0.2.8", + "tokio", + "tracing", +] + [[package]] name = "toml" version = "0.5.8" @@ -9314,9 +9383,9 @@ checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" [[package]] name = "tracing" -version = "0.1.32" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a1bdf54a7c28a2bbf701e1d2233f6c77f473486b94bee4f9678da5a148dca7f" +checksum = "80b9fa4360528139bc96100c160b7ae879f5567f49f1782b0b02035b0358ebf3" dependencies = [ "cfg-if 1.0.0", "log 0.4.16", @@ -9338,9 +9407,9 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa31669fa42c09c34d94d8165dd2012e8ff3c66aca50f3bb226b68f216f2706c" +checksum = "90442985ee2f57c9e1b548ee72ae842f4a9a20e3f417cc38dbc5dc684d9bb4ee" dependencies = [ "lazy_static", "valuable", @@ -9518,6 +9587,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ee73e6e4924fe940354b8d4d98cad5231175d615cd855b758adc658c0aac6a0" dependencies = [ "cfg-if 1.0.0", + "digest 0.10.3", "rand 0.8.5", "static_assertions", ] @@ -9722,7 +9792,7 @@ dependencies = [ [[package]] name = "vault-registry" version = "1.2.0" -source = "git+https://github.com/interlay/interbtc?rev=e7a6b41abe69de294abf32a5d350c0c5b719cce3#e7a6b41abe69de294abf32a5d350c0c5b719cce3" +source = "git+https://github.com/interlay/interbtc?rev=92278904c8f35b5f3ef3b3393065831df7dd05b7#92278904c8f35b5f3ef3b3393065831df7dd05b7" dependencies = [ "bitcoin 1.2.0", "currency", @@ -9812,7 +9882,7 @@ dependencies = [ "futures-util", "headers", "http", - "hyper 0.14.17", + "hyper 0.14.18", "log 0.4.16", "mime 0.3.16", "mime_guess", @@ -9826,7 +9896,7 @@ dependencies = [ "tokio", "tokio-stream", "tokio-tungstenite", - "tokio-util", + "tokio-util 0.6.9", "tower-service", "tracing", ] @@ -9851,9 +9921,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25f1af7423d8588a3d840681122e72e6a24ddbcb3f0ec385cac0d12d24256c06" +checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad" dependencies = [ "cfg-if 1.0.0", "wasm-bindgen-macro", @@ -9861,9 +9931,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b21c0df030f5a177f3cba22e9bc4322695ec43e7257d865302900290bcdedca" +checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4" dependencies = [ "bumpalo", "lazy_static", @@ -9876,9 +9946,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.29" +version = "0.4.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2eb6ec270a31b1d3c7e266b999739109abce8b6c87e4b31fcfcd788b65267395" +checksum = "6f741de44b75e14c35df886aff5f1eb73aa114fa5d4d00dcd37b5e01259bf3b2" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -9888,9 +9958,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f4203d69e40a52ee523b2529a773d5ffc1dc0071801c87b3d270b471b80ed01" +checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -9898,9 +9968,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa8a30d46208db204854cadbb5d4baf5fcf8071ba5bf48190c3e59937962ebc" +checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b" dependencies = [ "proc-macro2", "quote", @@ -9911,9 +9981,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d958d035c4438e28c70e4321a2911302f10135ce78a9c7834c0cab4123d06a2" +checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744" [[package]] name = "wasm-gc-api" @@ -10135,9 +10205,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.56" +version = "0.3.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c060b319f29dd25724f09a2ba1418f142f539b2be99fbf4d2d5a8f7330afb8eb" +checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283" dependencies = [ "js-sys", "wasm-bindgen", @@ -10174,9 +10244,9 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.22.2" +version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "552ceb903e957524388c4d3475725ff2c8b7960922063af6ce53c9a43da07449" +checksum = "44d8de8415c823c8abd270ad483c6feeac771fad964890779f9a8cb24fbbc1bf" dependencies = [ "webpki 0.22.0", ] @@ -10252,9 +10322,9 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows-sys" -version = "0.32.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3df6e476185f92a12c072be4a189a0210dcdcf512a1891d6dff9edb874deadc6" +checksum = "5acdd78cb4ba54c0045ac14f62d8f94a03d10047904ae2a40afa1e99d8f70825" dependencies = [ "windows_aarch64_msvc", "windows_i686_gnu", @@ -10265,33 +10335,33 @@ dependencies = [ [[package]] name = "windows_aarch64_msvc" -version = "0.32.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8e92753b1c443191654ec532f14c199742964a061be25d77d7a96f09db20bf5" +checksum = "17cffbe740121affb56fad0fc0e421804adf0ae00891205213b5cecd30db881d" [[package]] name = "windows_i686_gnu" -version = "0.32.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a711c68811799e017b6038e0922cb27a5e2f43a2ddb609fe0b6f3eeda9de615" +checksum = "2564fde759adb79129d9b4f54be42b32c89970c18ebf93124ca8870a498688ed" [[package]] name = "windows_i686_msvc" -version = "0.32.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c11bb1a02615db74680b32a68e2d61f553cc24c4eb5b4ca10311740e44172" +checksum = "9cd9d32ba70453522332c14d38814bceeb747d80b3958676007acadd7e166956" [[package]] name = "windows_x86_64_gnu" -version = "0.32.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c912b12f7454c6620635bbff3450962753834be2a594819bd5e945af18ec64bc" +checksum = "cfce6deae227ee8d356d19effc141a509cc503dfd1f850622ec4b0f84428e1f4" [[package]] name = "windows_x86_64_msvc" -version = "0.32.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "504a2476202769977a040c6364301a3f65d0cc9e3fb08600b2bda150a0488316" +checksum = "d19538ccc21819d01deaf88d6a17eae6596a12e9aafdbb97916fb49896d89de9" [[package]] name = "winreg" @@ -10323,9 +10393,12 @@ dependencies = [ [[package]] name = "wyz" -version = "0.2.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214" +checksum = "30b31594f29d27036c383b53b59ed3476874d518f0efb151b27a4c275141390e" +dependencies = [ + "tap", +] [[package]] name = "x25519-dalek" @@ -10340,8 +10413,8 @@ dependencies = [ [[package]] name = "xcm" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.18" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.18#9ed0c98204d25eaad8a6b40248daee8e6a40d111" dependencies = [ "derivative", "impl-trait-for-tuples", @@ -10354,7 +10427,7 @@ dependencies = [ [[package]] name = "xcm-procedural" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.18#9ed0c98204d25eaad8a6b40248daee8e6a40d111" dependencies = [ "Inflector", "proc-macro2", diff --git a/Cargo.toml b/Cargo.toml index f1f60a58e..b7c48ad73 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,6 +2,7 @@ members = [ "oracle", "runtime", + "runtime/client", "vault", "bitcoin", "faucet", diff --git a/bitcoin/Cargo.toml b/bitcoin/Cargo.toml index e9cc9746c..182affa95 100644 --- a/bitcoin/Cargo.toml +++ b/bitcoin/Cargo.toml @@ -30,11 +30,11 @@ hyper = "0.10" esplora-btc-api = "1.0.3" # Substrate dependencies -sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } [dependencies.interbtc-bitcoin] git = "https://github.com/interlay/interbtc" -rev = "e7a6b41abe69de294abf32a5d350c0c5b719cce3" +rev = "92278904c8f35b5f3ef3b3393065831df7dd05b7" package = "bitcoin" optional = true diff --git a/faucet/Cargo.toml b/faucet/Cargo.toml index 846515b4f..2e332566a 100644 --- a/faucet/Cargo.toml +++ b/faucet/Cargo.toml @@ -18,7 +18,7 @@ chrono = "0.4.19" tokio = { version = "1.0", features = ["full"] } thiserror = "1.0" jsonrpc-http-server = "18.0.0" -parity-scale-codec = "2.0.0" +parity-scale-codec = "3.0.0" serde_json = "1.0.71" serde = "1.0.136" hex = "0.4.2" @@ -37,4 +37,4 @@ service = { path = "../service" } runtime = { path = "../runtime", features = ["testing-utils"] } # Substrate dependencies -sp-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } +sp-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } diff --git a/faucet/src/http.rs b/faucet/src/http.rs index 6d9398b2a..de6c9fc00 100644 --- a/faucet/src/http.rs +++ b/faucet/src/http.rs @@ -313,11 +313,11 @@ pub async fn start_http( #[cfg(all(test, feature = "standalone-metadata"))] mod tests { use crate::error::Error; - use runtime::{CurrencyId, CurrencyIdExt, OracleKey, Token, VaultId, DOT, INTERBTC, KBTC, KSM}; + use runtime::{CurrencyId, CurrencyIdExt, OracleKey, Token, VaultId, DOT, IBTC, KBTC, KSM}; use std::{collections::HashMap, sync::Arc}; const DEFAULT_TESTING_CURRENCY: CurrencyId = Token(DOT); - const DEFAULT_WRAPPED_CURRENCY: CurrencyId = Token(INTERBTC); + const DEFAULT_WRAPPED_CURRENCY: CurrencyId = Token(IBTC); use super::{ fund_account, open_kv_store, CollateralBalancesPallet, FundAccountJsonRpcRequest, FundingRequestAccountType, diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index d92edd832..a7631752d 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -7,11 +7,10 @@ edition = "2018" [features] default = [] testing-utils = [ - # "substrate-subxt/client", - # "substrate-subxt-client", "tempdir", "interbtc", "rand", + "subxt-client", ] standalone-metadata = [] parachain-metadata-kintsugi = [] @@ -19,7 +18,7 @@ parachain-metadata-testnet = [] [dependencies] serde = { version = "1.0.136", features = ["derive"] } -codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive", "full"] } +codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "full"] } async-trait = "0.1.40" thiserror = "1.0" serde_json = "1.0.71" @@ -33,49 +32,49 @@ cfg-if = "1.0" prometheus = { version = "0.12.0", features = ["process"] } # Substrate dependencies -sp-arithmetic = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } -sp-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } -sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } -sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } -sp-version = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } -frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } +sp-arithmetic = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } +sp-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } +sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } +sp-version = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } +frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } # Subxt dependencies -# https://github.com/interlay/subxt/tree/polkadot-v0.9.17 -subxt = { package = "subxt", git = "https://github.com/interlay/subxt", rev = "1193d94206a669c59cc5dd89486fecfa82ca584a" } -subxt-client = { package = "subxt-client", git = "https://github.com/interlay/subxt", rev = "1193d94206a669c59cc5dd89486fecfa82ca584a" } +# https://github.com/interlay/subxt/tree/polkadot-v0.9.18 +subxt = { package = "subxt", git = "https://github.com/interlay/subxt", rev = "344e44c3729adcb945b937d6703212e7ae41da50" } +subxt-client = { package = "subxt-client", path = "./client", optional = true } -jsonrpsee = { version = "0.8.0", features = ["macros", "jsonrpsee-types", "client", "jsonrpsee-ws-client", "jsonrpsee-client-transport"] } +jsonrpsee = { version = "0.10.1", features = ["macros", "jsonrpsee-types", "client", "jsonrpsee-ws-client", "jsonrpsee-client-transport"] } # Polkadot dependencies -xcm = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.17" } -polkadot-parachain = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.17" } +xcm = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.18" } +polkadot-parachain = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.18" } bitcoin = { path = "../bitcoin"} # Dependencies for the testing utils for integration tests tempdir = { version = "0.3.7", optional = true } -interbtc = { package = "interbtc-standalone", git = "https://github.com/interlay/interbtc", rev = "e7a6b41abe69de294abf32a5d350c0c5b719cce3", optional = true } +interbtc = { package = "interbtc-standalone", git = "https://github.com/interlay/interbtc", rev = "92278904c8f35b5f3ef3b3393065831df7dd05b7", optional = true } rand = { version = "0.7", optional = true } [dependencies.primitives] git = "https://github.com/interlay/interbtc" -rev = "e7a6b41abe69de294abf32a5d350c0c5b719cce3" +rev = "92278904c8f35b5f3ef3b3393065831df7dd05b7" package = "interbtc-primitives" [dependencies.module-bitcoin] git = "https://github.com/interlay/interbtc" -rev = "e7a6b41abe69de294abf32a5d350c0c5b719cce3" +rev = "92278904c8f35b5f3ef3b3393065831df7dd05b7" package = "bitcoin" [dependencies.module-btc-relay] git = "https://github.com/interlay/interbtc" -rev = "e7a6b41abe69de294abf32a5d350c0c5b719cce3" +rev = "92278904c8f35b5f3ef3b3393065831df7dd05b7" package = "btc-relay" [dependencies.module-oracle-rpc-runtime-api] git = "https://github.com/interlay/interbtc" -rev = "e7a6b41abe69de294abf32a5d350c0c5b719cce3" +rev = "92278904c8f35b5f3ef3b3393065831df7dd05b7" package = "module-oracle-rpc-runtime-api" [dev-dependencies] diff --git a/runtime/client/Cargo.toml b/runtime/client/Cargo.toml new file mode 100644 index 000000000..c281fe81d --- /dev/null +++ b/runtime/client/Cargo.toml @@ -0,0 +1,34 @@ +[package] +name = "subxt-client" +version = "0.1.0" +authors = [] +edition = "2018" + +license = "GPL-3.0" +repository = "https://github.com/paritytech/substrate-subxt" +documentation = "https://docs.rs/substrate-subxt-client" +homepage = "https://www.parity.io/" +description = "Embed a substrate node into your subxt application." +keywords = ["parity", "substrate", "blockchain"] + +[dependencies] +tokio = { version = "1.10", features = ["time", "rt-multi-thread"] } +futures = { version = "0.3.9", features = ["compat"], package = "futures" } +futures01 = { package = "futures", version = "0.1.29" } +jsonrpsee = "0.10.1" +jsonrpsee-types = "0.10.1" +jsonrpsee-core = { version = "0.10.1", features = ["async-client"] } + +log = "0.4.13" +serde_json = "1.0.61" +thiserror = "1.0.23" + +sc-client-db = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } +sp-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } +sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18", default-features = false } +sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18", default-features = false } + +[target.'cfg(target_arch="x86_64")'.dependencies] +sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18", default-features = false, features = [ + "wasmtime", +] } diff --git a/runtime/client/src/lib.rs b/runtime/client/src/lib.rs new file mode 100644 index 000000000..261519fcb --- /dev/null +++ b/runtime/client/src/lib.rs @@ -0,0 +1,275 @@ +use futures::{ + channel::mpsc, + future::{select, FutureExt}, + sink::SinkExt, + stream::StreamExt, +}; +use jsonrpsee_core::{ + async_trait, + client::{Client as JsonRpcClient, TransportReceiverT, TransportSenderT}, +}; +use sc_network::config::TransportConfig; +pub use sc_service::{ + config::{DatabaseSource, KeystoreConfig, WasmExecutionMethod}, + Error as ServiceError, +}; +use sc_service::{ + config::{NetworkConfiguration, TelemetryEndpoints}, + ChainSpec, Configuration, KeepBlocks, RpcHandlers, RpcSession, TaskManager, +}; +pub use sp_keyring::AccountKeyring; +use thiserror::Error; +use tokio::task; + +/// Error thrown by the client. +#[derive(Debug, Error)] +pub enum SubxtClientError { + /// Failed to parse json rpc message. + #[error("{0}")] + Json(#[from] serde_json::Error), + /// Channel closed. + #[error("{0}")] + Mpsc(#[from] mpsc::SendError), +} + +/// Sending end. +pub struct Sender(mpsc::UnboundedSender); + +/// Receiving end +pub struct Receiver(mpsc::UnboundedReceiver); + +#[async_trait] +impl TransportSenderT for Sender { + type Error = SubxtClientError; + + async fn send(&mut self, msg: String) -> Result<(), Self::Error> { + self.0.send(msg).await?; + Ok(()) + } +} + +#[async_trait] +impl TransportReceiverT for Receiver { + type Error = SubxtClientError; + + async fn receive(&mut self) -> Result { + let msg = self.0.next().await.expect("channel should be open"); + Ok(msg) + } +} + +/// Client for an embedded substrate node. +pub struct SubxtClient { + rpc: RpcHandlers, + sender: Sender, + receiver: Receiver, +} + +impl SubxtClient { + /// Create a new client. + pub fn new(mut task_manager: TaskManager, rpc: RpcHandlers) -> Self { + let (to_back, from_front) = mpsc::unbounded(); + let (to_front, from_back) = mpsc::unbounded(); + + let rpc_copy = rpc.clone(); + let session = RpcSession::new(to_front.clone()); + task::spawn( + select( + Box::pin(from_front.for_each(move |message: String| { + let rpc = rpc.clone(); + let session = session.clone(); + let mut to_front = to_front.clone(); + async move { + let response = rpc.rpc_query(&session, &message).await; + if let Some(response) = response { + to_front.send(response).await.ok(); + } + } + })), + Box::pin(async move { + task_manager.future().await.ok(); + }), + ) + .map(drop), + ); + + Self { + rpc: rpc_copy, + sender: Sender(to_back), + receiver: Receiver(from_back), + } + } + + /// Creates a new client from a config. + pub fn from_config( + config: SubxtClientConfig, + builder: impl Fn(Configuration) -> Result<(TaskManager, RpcHandlers), ServiceError>, + ) -> Result { + let config = config.into_service_config(); + let (task_manager, rpc_handlers) = (builder)(config)?; + Ok(Self::new(task_manager, rpc_handlers)) + } +} + +impl Clone for SubxtClient { + fn clone(&self) -> Self { + let (to_back, from_front) = mpsc::unbounded(); + let (to_front, from_back) = mpsc::unbounded(); + + let rpc = self.rpc.clone(); + let session = RpcSession::new(to_front.clone()); + task::spawn(Box::pin(from_front.for_each(move |message: String| { + let rpc = rpc.clone(); + let session = session.clone(); + let mut to_front = to_front.clone(); + async move { + let response = rpc.rpc_query(&session, &message).await; + if let Some(response) = response { + to_front.send(response).await.ok(); + } + } + }))); + + Self { + rpc: self.rpc.clone(), + sender: Sender(to_back), + receiver: Receiver(from_back), + } + } +} + +impl From for JsonRpcClient { + fn from(client: SubxtClient) -> Self { + (client.sender, client.receiver).into() + } +} + +/// Role of the node. +#[derive(Clone, Copy, Debug)] +pub enum Role { + /// Light client. + Light, + /// A full node (mainly used for testing purposes). + Authority(AccountKeyring), +} + +impl From for sc_service::Role { + fn from(role: Role) -> Self { + match role { + Role::Light => Self::Light, + Role::Authority(_) => Self::Authority, + } + } +} + +impl From for Option { + fn from(role: Role) -> Self { + match role { + Role::Light => None, + Role::Authority(key) => Some(key.to_seed()), + } + } +} + +/// Client configuration. +#[derive(Clone)] +pub struct SubxtClientConfig { + /// Name of the implementation. + pub impl_name: &'static str, + /// Version of the implementation. + pub impl_version: &'static str, + /// Author of the implementation. + pub author: &'static str, + /// Copyright start year. + pub copyright_start_year: i32, + /// Database configuration. + pub db: DatabaseSource, + /// Keystore configuration. + pub keystore: KeystoreConfig, + /// Chain specification. + pub chain_spec: C, + /// Role of the node. + pub role: Role, + /// Enable telemetry on the given port. + pub telemetry: Option, + /// Wasm execution method + pub wasm_method: WasmExecutionMethod, + /// Handle to the tokio runtime. Will be used to spawn futures by the task manager. + pub tokio_handle: tokio::runtime::Handle, +} + +impl SubxtClientConfig { + /// Creates a service configuration. + pub fn into_service_config(self) -> Configuration { + let mut network = NetworkConfiguration::new( + format!("{} (subxt client)", self.chain_spec.name()), + "unknown", + Default::default(), + None, + ); + network.boot_nodes = self.chain_spec.boot_nodes().to_vec(); + network.transport = TransportConfig::Normal { + enable_mdns: true, + allow_private_ipv4: true, + // wasm_external_transport: None, + }; + let telemetry_endpoints = if let Some(port) = self.telemetry { + let endpoints = TelemetryEndpoints::new(vec![(format!("/ip4/127.0.0.1/tcp/{}/ws", port), 0)]) + .expect("valid config; qed"); + Some(endpoints) + } else { + None + }; + let service_config = Configuration { + network, + impl_name: self.impl_name.to_string(), + impl_version: self.impl_version.to_string(), + chain_spec: Box::new(self.chain_spec), + role: self.role.into(), + database: self.db, + keystore: self.keystore, + max_runtime_instances: 8, + announce_block: true, + dev_key_seed: self.role.into(), + telemetry_endpoints, + tokio_handle: self.tokio_handle, + default_heap_pages: Default::default(), + disable_grandpa: Default::default(), + execution_strategies: Default::default(), + force_authoring: Default::default(), + keep_blocks: KeepBlocks::All, + keystore_remote: Default::default(), + offchain_worker: Default::default(), + prometheus_config: Default::default(), + rpc_cors: Default::default(), + rpc_http: Default::default(), + rpc_ipc: Default::default(), + rpc_ws: Default::default(), + rpc_ws_max_connections: Default::default(), + rpc_methods: Default::default(), + state_cache_child_ratio: Default::default(), + state_cache_size: Default::default(), + tracing_receiver: Default::default(), + tracing_targets: Default::default(), + transaction_pool: Default::default(), + wasm_method: self.wasm_method, + base_path: Default::default(), + informant_output_format: Default::default(), + state_pruning: Default::default(), + // transaction_storage: sc_client_db::TransactionStorageMode::BlockBody, + wasm_runtime_overrides: Default::default(), + rpc_max_payload: Default::default(), + ws_max_out_buffer_capacity: Default::default(), + runtime_cache_size: 2, + }; + + log::info!("{}", service_config.impl_name); + log::info!("✌️ version {}", service_config.impl_version); + log::info!("❤️ by {}, {}", self.author, self.copyright_start_year); + log::info!("📋 Chain specification: {}", service_config.chain_spec.name()); + log::info!("🏷 Node name: {}", service_config.network.node_name); + log::info!("👤 Role: {:?}", self.role); + + service_config + } +} diff --git a/runtime/metadata-parachain-kintsugi.scale b/runtime/metadata-parachain-kintsugi.scale index c6f618c3e..405a4f349 100644 Binary files a/runtime/metadata-parachain-kintsugi.scale and b/runtime/metadata-parachain-kintsugi.scale differ diff --git a/runtime/metadata-parachain-testnet.scale b/runtime/metadata-parachain-testnet.scale index f6b5d32dd..568ce197f 100644 Binary files a/runtime/metadata-parachain-testnet.scale and b/runtime/metadata-parachain-testnet.scale differ diff --git a/runtime/metadata-standalone.scale b/runtime/metadata-standalone.scale index 26f9ef29a..45bb71ab9 100644 Binary files a/runtime/metadata-standalone.scale and b/runtime/metadata-standalone.scale differ diff --git a/runtime/src/error.rs b/runtime/src/error.rs index e1d47108e..a0a1df50c 100644 --- a/runtime/src/error.rs +++ b/runtime/src/error.rs @@ -1,25 +1,12 @@ pub use jsonrpsee::core::Error as JsonRpseeError; -use crate::{ - metadata::{DispatchError, ErrorDetails}, - types::*, - BTC_RELAY_MODULE, ISSUE_MODULE, RELAY_MODULE, SYSTEM_MODULE, -}; +use crate::{metadata::DispatchError, types::*, BTC_RELAY_MODULE, ISSUE_MODULE, RELAY_MODULE, SYSTEM_MODULE}; use codec::Error as CodecError; -use jsonrpsee::{ - client_transport::ws::WsHandshakeError, - core::error::Error as RequestError, - types::error::{CallError, ErrorResponse}, -}; +use jsonrpsee::{client_transport::ws::WsHandshakeError, core::error::Error as RequestError, types::error::CallError}; use prometheus::Error as PrometheusError; use serde_json::Error as SerdeJsonError; -use std::{ - array::TryFromSliceError, - fmt::{Debug, Display}, - io::Error as IoError, - num::TryFromIntError, -}; -use subxt::{sp_core::crypto::SecretStringError, BasicError, TransactionError}; +use std::{array::TryFromSliceError, fmt::Debug, io::Error as IoError, num::TryFromIntError}; +use subxt::{sp_core::crypto::SecretStringError, BasicError, ModuleError, TransactionError}; use thiserror::Error; use tokio::time::error::Elapsed; use url::ParseError as UrlParseError; @@ -75,7 +62,7 @@ pub enum Error { #[error("Error converting: {0}")] Convert(#[from] TryFromIntError), #[error("Subxt runtime error: {0}")] - SubxtRuntimeError(#[from] OuterSubxtError), + SubxtRuntimeError(#[from] SubxtError), #[error("Error decoding: {0}")] CodecError(#[from] CodecError), #[error("Error encoding json data: {0}")] @@ -92,162 +79,87 @@ pub enum Error { impl From for Error { fn from(err: BasicError) -> Self { - Self::SubxtRuntimeError(OuterSubxtError(err.into())) - } -} - -impl From for Error { - fn from(err: SubxtError) -> Self { - Self::SubxtRuntimeError(OuterSubxtError(err)) - } -} - -// hacky workaround to pretty print runtime errors -#[derive(Debug)] -pub struct OuterSubxtError(pub SubxtError); - -impl From for OuterSubxtError { - fn from(err: SubxtError) -> Self { - Self(err) - } -} - -impl std::error::Error for OuterSubxtError {} - -impl Display for OuterSubxtError { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - match &self.0 { - subxt::Error::Runtime(err) => { - if let Some(ErrorDetails { error, pallet, .. }) = err.clone().inner().details() { - write!(f, "{} from {}", error, pallet) - } else { - Debug::fmt(&err, f) - } - } - err => Display::fmt(&err, f), - } + Self::SubxtRuntimeError(err.into()) } } impl Error { - fn is_runtime_err(&self, pallet_name: &str, error_name: &str) -> bool { + fn is_module_err(&self, pallet_name: &str, error_name: &str) -> bool { matches!( self, - Error::SubxtRuntimeError(OuterSubxtError(SubxtError::Runtime(runtime_error))) - if matches!( - runtime_error.clone().inner().details(), - Some(ErrorDetails { - pallet, - error, - .. - }) - if pallet == pallet_name && error == error_name - ) + Error::SubxtRuntimeError(SubxtError::Module(ModuleError { + pallet, error, .. + })) if pallet == pallet_name && error == error_name, ) } pub fn is_duplicate_block(&self) -> bool { - self.is_runtime_err(BTC_RELAY_MODULE, &format!("{:?}", BtcRelayPalletError::DuplicateBlock)) + self.is_module_err(BTC_RELAY_MODULE, &format!("{:?}", BtcRelayPalletError::DuplicateBlock)) } pub fn is_invalid_chain_id(&self) -> bool { - self.is_runtime_err(BTC_RELAY_MODULE, &format!("{:?}", BtcRelayPalletError::InvalidChainID)) + self.is_module_err(BTC_RELAY_MODULE, &format!("{:?}", BtcRelayPalletError::InvalidChainID)) } pub fn is_issue_completed(&self) -> bool { - self.is_runtime_err(ISSUE_MODULE, &format!("{:?}", IssuePalletError::IssueCompleted)) + self.is_module_err(ISSUE_MODULE, &format!("{:?}", IssuePalletError::IssueCompleted)) } pub fn is_valid_refund(&self) -> bool { - self.is_runtime_err(RELAY_MODULE, &format!("{:?}", RelayPalletError::ValidRefundTransaction)) + self.is_module_err(RELAY_MODULE, &format!("{:?}", RelayPalletError::ValidRefundTransaction)) } - fn map_call_error( - &self, - call: impl Fn(&CallError) -> Option, - other: impl Fn(&String) -> Option, - ) -> Option { + fn map_call_error(&self, call: impl Fn(&CallError) -> Option) -> Option { match self { - Error::SubxtRuntimeError(OuterSubxtError(SubxtError::Rpc(RequestError::Call(err)))) => call(err), - Error::SubxtRuntimeError(OuterSubxtError(SubxtError::Rpc(RequestError::Request(message)))) => { - if let Ok(error_response) = serde_json::from_str::(message) { - call(&CallError::Custom { - code: error_response.error.code.code(), - message: error_response.error.message.to_string(), - data: error_response.error.data.map(ToOwned::to_owned), - }) - } else { - other(message) - } - } + Error::SubxtRuntimeError(SubxtError::Rpc(RequestError::Call(err))) => call(err), _ => None, } } pub fn is_invalid_transaction(&self) -> Option { - self.map_call_error( - |call_error| { - if let CallError::Custom { - code: POOL_INVALID_TX, - data, - .. - } = call_error - { - Some(data.clone().map(|raw| raw.to_string()).unwrap_or_default()) - } else { - None - } - }, - |message| { - if message.contains(INVALID_TX_MESSAGE) { - Some(message.to_string()) - } else { - None - } - }, - ) + self.map_call_error(|call_error| { + if let CallError::Custom { + code: POOL_INVALID_TX, + data, + .. + } = call_error + { + Some(data.clone().map(|raw| raw.to_string()).unwrap_or_default()) + } else { + None + } + }) } pub fn is_pool_too_low_priority(&self) -> Option<()> { - self.map_call_error( - |call_error| { - if let CallError::Custom { - code: POOL_TOO_LOW_PRIORITY, - .. - } = call_error - { - Some(()) - } else { - None - } - }, - |message| { - if message.contains(TOO_LOW_PRIORITY_MESSAGE) { - Some(()) - } else { - None - } - }, - ) + self.map_call_error(|call_error| { + if let CallError::Custom { + code: POOL_TOO_LOW_PRIORITY, + .. + } = call_error + { + Some(()) + } else { + None + } + }) } pub fn is_rpc_disconnect_error(&self) -> bool { matches!( self, - Error::SubxtRuntimeError(OuterSubxtError(SubxtError::Rpc(JsonRpseeError::RestartNeeded(_)))) + Error::SubxtRuntimeError(SubxtError::Rpc(JsonRpseeError::RestartNeeded(_))) ) } pub fn is_rpc_error(&self) -> bool { - matches!(self, Error::SubxtRuntimeError(OuterSubxtError(SubxtError::Rpc(_)))) + matches!(self, Error::SubxtRuntimeError(SubxtError::Rpc(_))) } pub fn is_block_hash_not_found_error(&self) -> bool { matches!( self, - Error::SubxtRuntimeError(OuterSubxtError(SubxtError::Transaction( - TransactionError::BlockHashNotFound - ))) + Error::SubxtRuntimeError(SubxtError::Transaction(TransactionError::BlockHashNotFound)) ) } @@ -260,7 +172,7 @@ impl Error { } pub fn is_parachain_shutdown_error(&self) -> bool { - self.is_runtime_err(SYSTEM_MODULE, &format!("{:?}", SystemPalletError::CallFiltered)) + self.is_module_err(SYSTEM_MODULE, &format!("{:?}", SystemPalletError::CallFiltered)) } } @@ -280,6 +192,3 @@ pub enum KeyLoadingError { const BASE_ERROR: i32 = 1000; const POOL_INVALID_TX: i32 = BASE_ERROR + 10; const POOL_TOO_LOW_PRIORITY: i32 = POOL_INVALID_TX + 4; - -const INVALID_TX_MESSAGE: &str = "Invalid Transaction"; -const TOO_LOW_PRIORITY_MESSAGE: &str = "Priority is too low"; diff --git a/runtime/src/integration/bitcoin_simulator.rs b/runtime/src/integration/bitcoin_simulator.rs index 07c22eede..b3e03183f 100644 --- a/runtime/src/integration/bitcoin_simulator.rs +++ b/runtime/src/integration/bitcoin_simulator.rs @@ -26,7 +26,7 @@ use tokio::{ /// input uxto. #[derive(Clone)] pub struct MockBitcoinCore { - parachain_rpc: InterBtcParachain, + parachain_rpc: Arc, blocks: Arc>>, mempool: Arc>>, transaction_creation_lock: Arc>, @@ -42,7 +42,7 @@ impl MockBitcoinCore { /// Creates a new instance, and initializes parachain's btc-relay pub async fn new(parachain_rpc: InterBtcParachain) -> Self { let ret = Self { - parachain_rpc, + parachain_rpc: Arc::new(parachain_rpc), blocks: Arc::new(RwLock::new(vec![])), mempool: Arc::new(RwLock::new(vec![])), transaction_creation_lock: Arc::new(Mutex::new(())), @@ -81,7 +81,7 @@ impl MockBitcoinCore { /// Creates a new instance, but does not initializes parachain's btc-relay pub async fn new_uninitialized(parachain_rpc: InterBtcParachain) -> Self { Self { - parachain_rpc, + parachain_rpc: Arc::new(parachain_rpc), blocks: Arc::new(RwLock::new(vec![])), mempool: Arc::new(RwLock::new(vec![])), transaction_creation_lock: Arc::new(Mutex::new(())), diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 87fb5278b..755ecac80 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -36,8 +36,8 @@ pub use rpc::{ pub use sp_arithmetic::{traits as FixedPointTraits, FixedI128, FixedPointNumber, FixedU128}; use std::time::Duration; pub use subxt::{ + extrinsic::Signer, sp_core::{crypto::Ss58Codec, sr25519::Pair}, - Signer, }; pub use types::*; @@ -126,12 +126,6 @@ impl Config for InterBtcRuntime { type Signature = MultiSignature; } -impl From<::AccountId> for metadata::system::storage::Account { - fn from(account_id: ::AccountId) -> Self { - Self(account_id) - } -} - pub fn parse_collateral_currency(src: &str) -> Result { match src.to_uppercase().as_str() { id if id == KSM.symbol() => Ok(Token(KSM)), @@ -151,7 +145,7 @@ pub fn parse_native_currency(src: &str) -> Result { pub fn parse_wrapped_currency(src: &str) -> Result { match src.to_uppercase().as_str() { id if id == KBTC.symbol() => Ok(Token(KBTC)), - id if id == INTERBTC.symbol() => Ok(Token(INTERBTC)), + id if id == IBTC.symbol() => Ok(Token(IBTC)), _ => Err(Error::InvalidCurrency), } } diff --git a/runtime/src/rpc.rs b/runtime/src/rpc.rs index 7e9e64c1b..8de4e4241 100644 --- a/runtime/src/rpc.rs +++ b/runtime/src/rpc.rs @@ -1,8 +1,7 @@ use crate::{ conn::{new_websocket_client, new_websocket_client_with_retry}, - error::OuterSubxtError, metadata, - metadata::DispatchError, + metadata::{DispatchError, Event as InterBtcEvent}, notify_retry, types::*, AccountId, CurrencyId, Error, InterBtcRuntime, InterBtcSigner, RetryPolicy, RichH256Le, SubxtError, @@ -12,14 +11,14 @@ use crate::{BTC_RELAY_MODULE, STABLE_BITCOIN_CONFIRMATIONS, STABLE_PARACHAIN_CON use async_trait::async_trait; use codec::Encode; use futures::{future::join_all, stream::StreamExt, FutureExt, SinkExt}; -use jsonrpsee::core::to_json_value; use module_oracle_rpc_runtime_api::BalanceWrapper; use primitives::UnsignedFixedPoint; use sp_runtime::FixedPointNumber; use std::{collections::BTreeSet, future::Future, sync::Arc, time::Duration}; use subxt::{ - BasicError, Client as SubxtClient, ClientBuilder as SubxtClientBuilder, DefaultExtra, Event, EventSubscription, - EventsDecoder, Metadata, RpcClient, Signer, TransactionEvents, TransactionProgress, + rpc::{rpc_params, ClientT}, + BasicError, Client as SubxtClient, ClientBuilder as SubxtClientBuilder, Event, PolkadotExtrinsicParams, RpcClient, + TransactionEvents, TransactionProgress, }; use tokio::{ sync::RwLock, @@ -32,23 +31,21 @@ cfg_if::cfg_if! { if #[cfg(feature = "standalone-metadata")] { const DEFAULT_SPEC_VERSION: u32 = 1; } else if #[cfg(feature = "parachain-metadata-kintsugi")] { - const DEFAULT_SPEC_VERSION: u32 = 13; + const DEFAULT_SPEC_VERSION: u32 = 14; } else if #[cfg(feature = "parachain-metadata-testnet")] { - const DEFAULT_SPEC_VERSION: u32 = 4; + const DEFAULT_SPEC_VERSION: u32 = 5; } } -type RuntimeApi = metadata::RuntimeApi>; +type RuntimeApi = metadata::RuntimeApi>; pub(crate) type ShutdownSender = tokio::sync::broadcast::Sender>; #[derive(Clone)] pub struct InterBtcParachain { - rpc_client: RpcClient, - ext_client: SubxtClient, + ext_client: Arc>, signer: Arc>, account_id: AccountId, api: Arc, - metadata: Arc, shutdown_tx: ShutdownSender, pub native_currency_id: CurrencyId, pub relay_chain_currency_id: CurrencyId, @@ -62,10 +59,8 @@ impl InterBtcParachain { shutdown_tx: ShutdownSender, ) -> Result { let account_id = signer.account_id().clone(); - let rpc_client = rpc_client.into(); - let ext_client = SubxtClientBuilder::new().set_client(rpc_client.clone()).build().await?; + let ext_client = SubxtClientBuilder::new().set_client(rpc_client).build().await?; let api: RuntimeApi = ext_client.clone().to_runtime_api(); - let metadata = Arc::new(ext_client.rpc().metadata().await?); let runtime_version = ext_client.rpc().runtime_version(None).await?; if runtime_version.spec_version == DEFAULT_SPEC_VERSION { @@ -84,10 +79,8 @@ impl InterBtcParachain { let wrapped_currency_id = currency_constants.get_wrapped_currency_id()?; let parachain_rpc = Self { - rpc_client, - ext_client, + ext_client: Arc::new(ext_client), api: Arc::new(api), - metadata, signer: Arc::new(RwLock::new(signer)), account_id, shutdown_tx, @@ -99,6 +92,10 @@ impl InterBtcParachain { Ok(parachain_rpc) } + fn rpc(&self) -> Arc { + self.ext_client.rpc().client.clone() + } + pub async fn from_url(url: &str, signer: InterBtcSigner, shutdown_tx: ShutdownSender) -> Result { let ws_client = new_websocket_client(url, None, None).await?; Self::new(ws_client, signer, shutdown_tx).await @@ -140,7 +137,7 @@ impl InterBtcParachain { .api .storage() .system() - .account(self.account_id.clone(), None) + .account(&self.account_id, None) .await .map(|x| x.nonce) .unwrap_or(0); @@ -150,10 +147,15 @@ impl InterBtcParachain { } /// Gets a copy of the signer with a unique nonce - async fn with_unique_signer<'client, F, R>(&self, call: F) -> Result, Error> + async fn with_unique_signer<'client, F, R>( + &self, + call: F, + ) -> Result, Error> where F: Fn(InterBtcSigner) -> R, - R: Future, BasicError>>, + R: Future< + Output = Result, BasicError>, + >, { notify_retry::( || async { @@ -224,10 +226,8 @@ impl InterBtcParachain { /// # Arguments /// * `on_error` - callback for decoding errors, is not allowed to take too long pub async fn on_event_error(&self, on_error: E) -> Result<(), Error> { - let sub = self.ext_client.rpc().subscribe_finalized_events().await?; - let decoder = EventsDecoder::::new((*self.metadata).clone()); + let mut sub = self.api.events().subscribe_finalized().await?; - let mut sub = EventSubscription::::new(sub, &decoder); loop { match sub.next().await { Some(Err(err)) => on_error(err), // report error @@ -255,12 +255,7 @@ impl InterBtcParachain { R: Future, E: Fn(SubxtError), { - let sub = self.ext_client.rpc().subscribe_finalized_events().await?; - let decoder = EventsDecoder::::new((*self.metadata).clone()); - - let mut sub = EventSubscription::::new(sub, &decoder); - sub.filter_event::(); - + let mut sub = self.api.events().subscribe_finalized().await?.filter_events::<(T,)>(); let (tx, mut rx) = futures::channel::mpsc::channel::(32); // two tasks: one for event listening and one for callback calling @@ -268,21 +263,15 @@ impl InterBtcParachain { async move { let tx = &tx; while let Some(result) = sub.next().fuse().await { - if let Ok(raw_event) = result { - log::trace!("raw event: {:?}", raw_event); - let decoded = T::decode(&mut &raw_event.data[..]); - match decoded { - Ok(event) => { - log::trace!("decoded event: {:?}", event); - // send the event to the other task - if tx.clone().send(event).await.is_err() { - break; - } - } - Err(err) => { - on_error(err.into()); + match result { + Ok(event_details) => { + let event = event_details.event; + log::trace!("event: {:?}", event); + if tx.clone().send(event).await.is_err() { + break; } - }; + } + Err(err) => on_error(err.into()), } } Result::<(), _>::Err(Error::ChannelClosed) @@ -313,7 +302,7 @@ impl InterBtcParachain { .tx() .utility() .batch(encoded_calls.clone()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -329,7 +318,7 @@ impl InterBtcParachain { .tx() .tokens() .transfer(recipient.clone(), Token(DOT), 100) - .sign_and_submit_then_watch(&signer.clone()) + .sign_and_submit_then_watch_default(&signer.clone()) .await .unwrap(); @@ -340,7 +329,7 @@ impl InterBtcParachain { .tx() .tokens() .transfer(recipient.clone(), Token(DOT), 100) - .sign_and_submit_then_watch(&signer.clone()) + .sign_and_submit_then_watch_default(&signer.clone()) .await .unwrap_err() .into() @@ -356,7 +345,7 @@ impl InterBtcParachain { .tx() .tokens() .transfer(recipient.clone(), Token(DOT), 100) - .sign_and_submit(&signer.clone()) + .sign_and_submit_default(&signer.clone()) .await .unwrap(); @@ -365,7 +354,7 @@ impl InterBtcParachain { .tx() .tokens() .transfer(recipient, Token(DOT), 100) - .sign_and_submit_then_watch(&signer.clone()) + .sign_and_submit_then_watch_default(&signer.clone()) .await .unwrap_err() .into() @@ -431,7 +420,7 @@ impl CollateralBalancesPallet for InterBtcParachain { .api .storage() .tokens() - .accounts(id.clone(), currency_id, head) + .accounts(&id, ¤cy_id, head) .await? .free) } @@ -446,7 +435,7 @@ impl CollateralBalancesPallet for InterBtcParachain { .api .storage() .tokens() - .accounts(id.clone(), currency_id, head) + .accounts(&id, ¤cy_id, head) .await? .reserved) } @@ -457,7 +446,7 @@ impl CollateralBalancesPallet for InterBtcParachain { .tx() .tokens() .transfer(recipient.clone(), currency_id, amount) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -551,7 +540,7 @@ impl ReplacePallet for InterBtcParachain { .tx() .replace() .request_replace(vault_id.currencies.clone(), amount, griefing_collateral) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -564,7 +553,7 @@ impl ReplacePallet for InterBtcParachain { .tx() .replace() .withdraw_replace(vault_id.currencies.clone(), amount) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -590,7 +579,7 @@ impl ReplacePallet for InterBtcParachain { collateral, btc_address, ) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -603,7 +592,7 @@ impl ReplacePallet for InterBtcParachain { .tx() .replace() .execute_replace(replace_id, merkle_proof.into(), raw_tx.into()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -616,7 +605,7 @@ impl ReplacePallet for InterBtcParachain { .tx() .replace() .cancel_replace(replace_id) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -630,11 +619,8 @@ impl ReplacePallet for InterBtcParachain { ) -> Result, Error> { let head = self.get_latest_block_hash().await?; let result: Vec = self - .rpc_client - .request( - "replace_getNewVaultReplaceRequests", - &[to_json_value(account_id)?, to_json_value(head)?], - ) + .rpc() + .request("replace_getNewVaultReplaceRequests", rpc_params![account_id, head]) .await?; join_all( result @@ -653,11 +639,8 @@ impl ReplacePallet for InterBtcParachain { ) -> Result, Error> { let head = self.get_latest_block_hash().await?; let result: Vec = self - .rpc_client - .request( - "replace_getOldVaultReplaceRequests", - &[to_json_value(account_id)?, to_json_value(head)?], - ) + .rpc() + .request("replace_getOldVaultReplaceRequests", rpc_params![account_id, head]) .await?; join_all( result @@ -680,7 +663,7 @@ impl ReplacePallet for InterBtcParachain { .api .storage() .replace() - .replace_requests(replace_id, head) + .replace_requests(&replace_id, head) .await? .ok_or(Error::StorageItemNotFound)?) } @@ -732,7 +715,7 @@ impl OraclePallet for InterBtcParachain { .api .storage() .oracle() - .aggregate(OracleKey::ExchangeRate(currency_id), head) + .aggregate(&OracleKey::ExchangeRate(currency_id), head) .await? .ok_or(Error::StorageItemNotFound)?) } @@ -748,7 +731,7 @@ impl OraclePallet for InterBtcParachain { .tx() .oracle() .feed_values(values.clone()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -766,7 +749,7 @@ impl OraclePallet for InterBtcParachain { .tx() .oracle() .feed_values(vec![(OracleKey::FeeEstimation, value)]) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -781,7 +764,7 @@ impl OraclePallet for InterBtcParachain { .api .storage() .oracle() - .aggregate(OracleKey::FeeEstimation, head) + .aggregate(&OracleKey::FeeEstimation, head) .await? .ok_or(Error::StorageItemNotFound)?) } @@ -790,14 +773,10 @@ impl OraclePallet for InterBtcParachain { async fn wrapped_to_collateral(&self, amount: u128, currency_id: CurrencyId) -> Result { let head = self.get_latest_block_hash().await?; let result: BalanceWrapper<_> = self - .rpc_client + .rpc() .request( "oracle_wrappedToCollateral", - &[ - to_json_value(BalanceWrapper { amount })?, - to_json_value(currency_id)?, - to_json_value(head)?, - ], + rpc_params![BalanceWrapper { amount }, currency_id, head], ) .await?; @@ -808,14 +787,10 @@ impl OraclePallet for InterBtcParachain { async fn collateral_to_wrapped(&self, amount: u128, currency_id: CurrencyId) -> Result { let head = self.get_latest_block_hash().await?; let result: BalanceWrapper<_> = self - .rpc_client + .rpc() .request( "oracle_collateralToWrapped", - &[ - to_json_value(BalanceWrapper { amount })?, - to_json_value(currency_id)?, - to_json_value(head)?, - ], + rpc_params![BalanceWrapper { amount }, currency_id, head], ) .await?; @@ -828,7 +803,7 @@ impl OraclePallet for InterBtcParachain { .api .storage() .oracle() - .raw_values_updated(key.clone(), head) + .raw_values_updated(key, head) .await? .unwrap_or(false)) } @@ -870,7 +845,7 @@ impl RelayPallet for InterBtcParachain { .tx() .relay() .report_vault_theft(vault_id.clone(), merkle_proof.into(), raw_tx.into()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -896,7 +871,7 @@ impl RelayPallet for InterBtcParachain { .tx() .relay() .report_vault_double_payment(vault_id.clone(), merkle_proofs.clone(), raw_txs.clone()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -916,11 +891,8 @@ impl RelayPallet for InterBtcParachain { async fn is_transaction_invalid(&self, vault_id: &VaultId, raw_tx: &[u8]) -> Result { let head = self.get_latest_block_hash().await?; Ok(matches!( - self.rpc_client - .request( - "relay_isTransactionInvalid", - &[to_json_value(vault_id)?, to_json_value(raw_tx)?, to_json_value(head)?], - ) + self.rpc() + .request("relay_isTransactionInvalid", rpc_params![vault_id, raw_tx, head],) .await, Ok(()), )) @@ -942,7 +914,7 @@ impl RelayPallet for InterBtcParachain { .tx() .relay() .initialize(header.clone(), height) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -960,7 +932,7 @@ impl RelayPallet for InterBtcParachain { .tx() .relay() .store_block_header(header.clone()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1056,11 +1028,11 @@ impl IssuePallet for InterBtcParachain { .tx() .issue() .request_issue(amount, vault_id.clone(), griefing_collateral) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await? - .find_first_event::()? + .find_first::()? .ok_or(Error::RequestIssueIDNotFound) } @@ -1070,7 +1042,7 @@ impl IssuePallet for InterBtcParachain { .tx() .issue() .execute_issue(issue_id, merkle_proof.into(), raw_tx.into()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1083,7 +1055,7 @@ impl IssuePallet for InterBtcParachain { .tx() .issue() .cancel_issue(issue_id) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1096,7 +1068,7 @@ impl IssuePallet for InterBtcParachain { .api .storage() .issue() - .issue_requests(issue_id, head) + .issue_requests(&issue_id, head) .await? .ok_or(Error::StorageItemNotFound)?) } @@ -1107,11 +1079,8 @@ impl IssuePallet for InterBtcParachain { ) -> Result, Error> { let head = self.get_latest_block_hash().await?; let result: Vec = self - .rpc_client - .request( - "issue_getVaultIssueRequests", - &[to_json_value(account_id)?, to_json_value(head)?], - ) + .rpc() + .request("issue_getVaultIssueRequests", rpc_params![account_id, head]) .await?; join_all( result @@ -1180,11 +1149,11 @@ impl RedeemPallet for InterBtcParachain { .tx() .redeem() .request_redeem(amount, btc_address, vault_id.clone()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await? - .find_first_event::()? + .find_first::()? .ok_or(Error::RequestRedeemIDNotFound)?; Ok(redeem_event.redeem_id) } @@ -1195,7 +1164,7 @@ impl RedeemPallet for InterBtcParachain { .tx() .redeem() .execute_redeem(redeem_id, merkle_proof.into(), raw_tx.into()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1208,7 +1177,7 @@ impl RedeemPallet for InterBtcParachain { .tx() .redeem() .cancel_redeem(redeem_id, reimburse) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1221,7 +1190,7 @@ impl RedeemPallet for InterBtcParachain { .api .storage() .redeem() - .redeem_requests(redeem_id, head) + .redeem_requests(&redeem_id, head) .await? .ok_or(Error::StorageItemNotFound)?) } @@ -1232,11 +1201,8 @@ impl RedeemPallet for InterBtcParachain { ) -> Result, Error> { let head = self.get_latest_block_hash().await?; let result: Vec = self - .rpc_client - .request( - "redeem_getVaultRedeemRequests", - &[to_json_value(account_id)?, to_json_value(head)?], - ) + .rpc() + .request("redeem_getVaultRedeemRequests", rpc_params![account_id, head]) .await?; join_all( result @@ -1277,7 +1243,7 @@ impl RefundPallet for InterBtcParachain { .tx() .refund() .execute_refund(refund_id, merkle_proof.into(), raw_tx.into()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1290,7 +1256,7 @@ impl RefundPallet for InterBtcParachain { .api .storage() .refund() - .refund_requests(refund_id, head) + .refund_requests(&refund_id, head) .await? .ok_or(Error::StorageItemNotFound)?) } @@ -1301,11 +1267,8 @@ impl RefundPallet for InterBtcParachain { ) -> Result, Error> { let head = self.get_latest_block_hash().await?; let result: Vec = self - .rpc_client - .request( - "refund_getVaultRefundRequests", - &[to_json_value(account_id)?, to_json_value(head)?], - ) + .rpc() + .request("refund_getVaultRefundRequests", rpc_params![account_id, head]) .await?; join_all( result @@ -1363,7 +1326,7 @@ impl BtcRelayPallet for InterBtcParachain { /// * `height` - chain height async fn get_block_hash(&self, height: u32) -> Result { let head = self.get_latest_block_hash().await?; - Ok(self.api.storage().btc_relay().chains_hashes(0, height, head).await?) + Ok(self.api.storage().btc_relay().chains_hashes(&0, &height, head).await?) } /// Get the corresponding block header for the given hash. @@ -1372,7 +1335,7 @@ impl BtcRelayPallet for InterBtcParachain { /// * `hash` - little endian block hash async fn get_block_header(&self, hash: H256Le) -> Result { let head = self.get_latest_block_hash().await?; - Ok(self.api.storage().btc_relay().block_headers(hash, head).await?) + Ok(self.api.storage().btc_relay().block_headers(&hash, head).await?) } /// Get the global security parameter k for stable Bitcoin transactions @@ -1424,17 +1387,14 @@ impl BtcRelayPallet for InterBtcParachain { async fn verify_block_header_inclusion(&self, block_hash: H256Le) -> Result<(), Error> { let head = self.get_latest_block_hash().await?; let result: Result<(), DispatchError> = self - .rpc_client + .rpc() .request( "btcRelay_verifyBlockHeaderInclusion", - &[ - to_json_value(Into::::into(block_hash))?, - to_json_value(head)?, - ], + rpc_params![Into::::into(block_hash), head], ) .await?; - result.map_err(|err| Error::SubxtRuntimeError(OuterSubxtError(SubxtError::Runtime(subxt::RuntimeError(err))))) + result.map_err(|err| Error::SubxtRuntimeError(SubxtError::Runtime(subxt::RuntimeError(err)))) } } @@ -1483,13 +1443,7 @@ impl VaultRegistryPallet for InterBtcParachain { /// * `VaultCommittedTheft` - if the vault is stole BTC async fn get_vault(&self, vault_id: &VaultId) -> Result { let head = self.get_latest_block_hash().await?; - match self - .api - .storage() - .vault_registry() - .vaults(vault_id.clone(), head) - .await? - { + match self.api.storage().vault_registry().vaults(vault_id, head).await? { Some(InterBtcVault { status: VaultStatus::Liquidated, .. @@ -1506,11 +1460,8 @@ impl VaultRegistryPallet for InterBtcParachain { async fn get_vaults_by_account_id(&self, account_id: &AccountId) -> Result, Error> { let head = self.get_latest_block_hash().await?; let result = self - .rpc_client - .request( - "vaultRegistry_getVaultsByAccountId", - &[to_json_value(account_id)?, to_json_value(head)?], - ) + .rpc() + .request("vaultRegistry_getVaultsByAccountId", rpc_params![account_id, head]) .await?; Ok(result) @@ -1551,7 +1502,7 @@ impl VaultRegistryPallet for InterBtcParachain { .tx() .vault_registry() .register_vault(vault_id.currencies.clone(), collateral, public_key.clone()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1569,7 +1520,7 @@ impl VaultRegistryPallet for InterBtcParachain { .tx() .vault_registry() .deposit_collateral(vault_id.currencies.clone(), amount) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1591,7 +1542,7 @@ impl VaultRegistryPallet for InterBtcParachain { .tx() .vault_registry() .withdraw_collateral(vault_id.currencies.clone(), amount) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1609,7 +1560,7 @@ impl VaultRegistryPallet for InterBtcParachain { .tx() .vault_registry() .update_public_key(vault_id.currencies.clone(), public_key.clone()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1626,7 +1577,7 @@ impl VaultRegistryPallet for InterBtcParachain { .tx() .vault_registry() .register_address(vault_id.currencies.clone(), btc_address) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; @@ -1644,14 +1595,10 @@ impl VaultRegistryPallet for InterBtcParachain { ) -> Result { let head = self.get_latest_block_hash().await?; let result: BalanceWrapper<_> = self - .rpc_client + .rpc() .request( "vaultRegistry_getRequiredCollateralForWrapped", - &[ - to_json_value(BalanceWrapper { amount: amount_btc })?, - to_json_value(collateral_currency)?, - to_json_value(head)?, - ], + rpc_params![BalanceWrapper { amount: amount_btc }, collateral_currency, head], ) .await?; @@ -1663,10 +1610,10 @@ impl VaultRegistryPallet for InterBtcParachain { async fn get_required_collateral_for_vault(&self, vault_id: VaultId) -> Result { let head = self.get_latest_block_hash().await?; let result: BalanceWrapper<_> = self - .rpc_client + .rpc() .request( "vaultRegistry_getRequiredCollateralForVault", - &[to_json_value(vault_id)?, to_json_value(head)?], + rpc_params![vault_id, head], ) .await?; @@ -1676,11 +1623,8 @@ impl VaultRegistryPallet for InterBtcParachain { async fn get_vault_total_collateral(&self, vault_id: VaultId) -> Result { let head = self.get_latest_block_hash().await?; let result: BalanceWrapper<_> = self - .rpc_client - .request( - "vaultRegistry_getVaultTotalCollateral", - &[to_json_value(vault_id)?, to_json_value(head)?], - ) + .rpc() + .request("vaultRegistry_getVaultTotalCollateral", rpc_params![vault_id, head]) .await?; Ok(result.amount) @@ -1689,14 +1633,10 @@ impl VaultRegistryPallet for InterBtcParachain { async fn get_collateralization_from_vault(&self, vault_id: VaultId, only_issued: bool) -> Result { let head = self.get_latest_block_hash().await?; let result: UnsignedFixedPoint = self - .rpc_client + .rpc() .request( "vaultRegistry_getCollateralizationFromVault", - &[ - to_json_value(vault_id)?, - to_json_value(only_issued)?, - to_json_value(head)?, - ], + rpc_params![vault_id, only_issued, head], ) .await?; @@ -1751,7 +1691,7 @@ impl SudoPallet for InterBtcParachain { .tx() .sudo() .sudo(call.clone()) - .sign_and_submit_then_watch(&signer) + .sign_and_submit_then_watch_default(&signer) .await }) .await?; diff --git a/runtime/src/tests.rs b/runtime/src/tests.rs index 02429a7e8..09b227c16 100644 --- a/runtime/src/tests.rs +++ b/runtime/src/tests.rs @@ -5,7 +5,7 @@ const DEFAULT_TESTING_CURRENCY: CurrencyId = Token(DOT); use super::{ BtcAddress, BtcPublicKey, BtcRelayPallet, CollateralBalancesPallet, CurrencyId, FixedPointNumber, FixedU128, OraclePallet, RawBlockHeader, RelayPallet, ReplacePallet, SecurityPallet, StatusCode, Token, VaultRegistryPallet, - DOT, INTERBTC, + DOT, IBTC, }; use crate::{integration::*, FeedValuesEvent, OracleKey, VaultId, H160, U256}; use module_bitcoin::{formatter::TryFormattable, types::BlockBuilder}; @@ -62,7 +62,7 @@ async fn test_getters() { async fn test_is_transaction_invalid() { let (client, _tmp_dir) = default_provider_client(AccountKeyring::Alice).await; let parachain_rpc = setup_provider(client.clone(), AccountKeyring::Alice).await; - let vault_id = VaultId::new(AccountKeyring::Alice.into(), Token(DOT), Token(INTERBTC)); + let vault_id = VaultId::new(AccountKeyring::Alice.into(), Token(DOT), Token(IBTC)); let err = parachain_rpc.is_transaction_invalid(&vault_id, &[]).await; parachain_rpc @@ -131,7 +131,7 @@ async fn test_register_vault() { let parachain_rpc = setup_provider(client.clone(), AccountKeyring::Alice).await; set_exchange_rate(client.clone()).await; - let vault_id = VaultId::new(AccountKeyring::Alice.into(), Token(DOT), Token(INTERBTC)); + let vault_id = VaultId::new(AccountKeyring::Alice.into(), Token(DOT), Token(IBTC)); parachain_rpc .register_vault(&vault_id, 100, dummy_public_key()) diff --git a/runtime/src/types.rs b/runtime/src/types.rs index 9fe614e67..1c3e5a0e9 100644 --- a/runtime/src/types.rs +++ b/runtime/src/types.rs @@ -5,7 +5,7 @@ use subxt::sp_core::{crypto::Ss58Codec, sr25519::Pair as KeyPair}; pub use primitives::{ CurrencyId, CurrencyId::Token, - TokenSymbol::{DOT, INTERBTC, INTR, KBTC, KINT, KSM}, + TokenSymbol::{DOT, IBTC, INTR, KBTC, KINT, KSM}, }; pub use currency_id::CurrencyIdExt; @@ -20,7 +20,7 @@ pub type H160 = subxt::sp_core::H160; pub type H256 = subxt::sp_core::H256; pub type U256 = subxt::sp_core::U256; -pub type InterBtcSigner = subxt::PairSigner, KeyPair>; +pub type InterBtcSigner = subxt::PairSigner; pub type BtcAddress = module_btc_relay::BtcAddress; diff --git a/service/src/lib.rs b/service/src/lib.rs index 4c5e53bc6..7d39a05c3 100644 --- a/service/src/lib.rs +++ b/service/src/lib.rs @@ -3,7 +3,7 @@ use bitcoin::{cli::BitcoinOpts as BitcoinConfig, BitcoinCore, BitcoinCoreApi, Er use futures::{future::Either, Future, FutureExt}; use runtime::{ cli::ConnectionOpts as ParachainConfig, CurrencyId, CurrencyIdExt, CurrencyInfo, Error as RuntimeError, - InterBtcParachain as BtcParachain, InterBtcSigner, Signer, Ss58Codec, VaultId, + InterBtcParachain as BtcParachain, InterBtcSigner, Ss58Codec, VaultId, }; use std::marker::PhantomData; diff --git a/vault/Cargo.toml b/vault/Cargo.toml index b8c4d2b60..dc03f9fb3 100644 --- a/vault/Cargo.toml +++ b/vault/Cargo.toml @@ -17,7 +17,7 @@ clap = "3.1" tokio = { version = "1.0", features = ["full"] } tokio-metrics = { version = "0.1.0", default-features = false } serde = "1.0.136" -parity-scale-codec = "2.0.0" +parity-scale-codec = "3.0.0" hex = "0.4.2" futures = "0.3.5" async-trait = "0.1.40" @@ -39,9 +39,9 @@ runtime = { path = "../runtime" } service = { path = "../service" } # Substrate dependencies -sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } -sp-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } -sp-arithmetic = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } +sp-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } +sp-arithmetic = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } [dev-dependencies] mockall = "0.8.1" @@ -50,4 +50,4 @@ mockall = "0.8.1" runtime = { path = "../runtime", features = ["testing-utils"] } # Substrate dependencies -frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17" } \ No newline at end of file +frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.18" } \ No newline at end of file diff --git a/vault/src/cancellation.rs b/vault/src/cancellation.rs index 3fcfd9f32..3b3e93792 100644 --- a/vault/src/cancellation.rs +++ b/vault/src/cancellation.rs @@ -320,7 +320,7 @@ mod tests { use futures::channel::mpsc; use runtime::{ AccountId, BtcAddress, BtcPublicKey, CurrencyId, ErrorCode, InterBtcIssueRequest, InterBtcReplaceRequest, - IssueRequestStatus, RequestIssueEvent, StatusCode, Token, VaultId, DOT, INTERBTC, + IssueRequestStatus, RequestIssueEvent, StatusCode, Token, VaultId, DOT, IBTC, }; use std::collections::BTreeSet; @@ -398,7 +398,7 @@ mod tests { requester: AccountId::new([1u8; 32]), btc_public_key: BtcPublicKey { 0: [0; 33] }, status: IssueRequestStatus::Pending, - vault: VaultId::new(AccountId::new([1u8; 32]), Token(DOT), runtime::Token(INTERBTC)), + vault: VaultId::new(AccountId::new([1u8; 32]), Token(DOT), runtime::Token(IBTC)), } } diff --git a/vault/src/collateral.rs b/vault/src/collateral.rs index c6e7ad971..f0c9c20f2 100644 --- a/vault/src/collateral.rs +++ b/vault/src/collateral.rs @@ -133,7 +133,7 @@ mod tests { use async_trait::async_trait; use runtime::{ AccountId, Balance, BtcAddress, BtcPublicKey, CurrencyId, Error as RuntimeError, InterBtcVault, Token, Wallet, - DOT, INTERBTC, + DOT, IBTC, }; macro_rules! assert_ok { @@ -232,7 +232,7 @@ mod tests { } fn dummy_vault_id() -> VaultId { - VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(INTERBTC)) + VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(IBTC)) } #[tokio::test] diff --git a/vault/src/execution.rs b/vault/src/execution.rs index f3034c962..e89129d44 100644 --- a/vault/src/execution.rs +++ b/vault/src/execution.rs @@ -547,7 +547,7 @@ mod tests { }; use runtime::{ AccountId, BlockNumber, BtcPublicKey, CurrencyId, Error as RuntimeError, ErrorCode, InterBtcRichBlockHeader, - InterBtcVault, StatusCode, Token, DOT, INTERBTC, + InterBtcVault, StatusCode, Token, DOT, IBTC, }; use sp_core::H160; use std::collections::BTreeSet; @@ -705,7 +705,7 @@ mod tests { } fn dummy_vault_id() -> VaultId { - VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(INTERBTC)) + VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(IBTC)) } #[test] diff --git a/vault/src/metrics.rs b/vault/src/metrics.rs index b44379cae..957b0f7b6 100644 --- a/vault/src/metrics.rs +++ b/vault/src/metrics.rs @@ -676,8 +676,6 @@ pub async fn publish_tokio_metrics( #[cfg(all(test, feature = "standalone-metadata"))] mod tests { - use std::collections::BTreeSet; - use super::*; use async_trait::async_trait; use bitcoin::{ @@ -687,8 +685,9 @@ mod tests { use runtime::{ AccountId, Balance, BlockNumber, BtcAddress, BtcPublicKey, CurrencyId, Error as RuntimeError, ErrorCode, InterBtcIssueRequest, InterBtcRedeemRequest, InterBtcRefundRequest, InterBtcReplaceRequest, InterBtcVault, - RequestIssueEvent, StatusCode, Token, VaultId, VaultStatus, Wallet, DOT, H256, INTERBTC, INTR, + RequestIssueEvent, StatusCode, Token, VaultId, VaultStatus, Wallet, DOT, H256, IBTC, INTR, }; + use std::collections::BTreeSet; mockall::mock! { Provider {} @@ -840,7 +839,7 @@ mod tests { } fn dummy_vault_id() -> VaultId { - VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(INTERBTC)) + VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(IBTC)) } struct MockProviderBuilder { diff --git a/vault/src/replace.rs b/vault/src/replace.rs index 171212025..4b3b67523 100644 --- a/vault/src/replace.rs +++ b/vault/src/replace.rs @@ -213,7 +213,7 @@ mod tests { }; use runtime::{ AccountId, Balance, BtcAddress, BtcPublicKey, CurrencyId, Error as RuntimeError, InterBtcReplaceRequest, - InterBtcVault, Token, DOT, H256, INTERBTC, + InterBtcVault, Token, DOT, H256, IBTC, }; macro_rules! assert_err { @@ -349,7 +349,7 @@ mod tests { } fn dummy_vault_id() -> VaultId { - VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(INTERBTC)) + VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(IBTC)) } #[tokio::test] diff --git a/vault/src/vaults.rs b/vault/src/vaults.rs index 2af4a490e..69263a3ee 100644 --- a/vault/src/vaults.rs +++ b/vault/src/vaults.rs @@ -265,7 +265,7 @@ mod tests { }; use runtime::{ AccountId, BitcoinBlockHeight, BlockNumber, Error as RuntimeError, H256Le, InterBtcRichBlockHeader, - RawBlockHeader, Token, DOT, INTERBTC, + RawBlockHeader, Token, DOT, IBTC, }; use sp_core::{H160, H256}; @@ -389,7 +389,7 @@ mod tests { } fn dummy_vault_id() -> VaultId { - VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(INTERBTC)) + VaultId::new(AccountId::new([1u8; 32]), Token(DOT), Token(IBTC)) } #[tokio::test] diff --git a/vault/tests/vault_integration_tests.rs b/vault/tests/vault_integration_tests.rs index 5603fbceb..57ca56be5 100644 --- a/vault/tests/vault_integration_tests.rs +++ b/vault/tests/vault_integration_tests.rs @@ -21,7 +21,7 @@ const TIMEOUT: Duration = Duration::from_secs(90); const DEFAULT_NATIVE_CURRENCY: CurrencyId = Token(INTR); const DEFAULT_TESTING_CURRENCY: CurrencyId = Token(DOT); -const DEFAULT_WRAPPED_CURRENCY: CurrencyId = Token(INTERBTC); +const DEFAULT_WRAPPED_CURRENCY: CurrencyId = Token(IBTC); async fn test_with(execute: impl FnOnce(SubxtClient) -> F) -> R where