diff --git a/Cargo.lock b/Cargo.lock index e08b55b4b..071207caa 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -320,6 +320,17 @@ version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e22d1f4b888c298a027c99dc9048015fac177587de20fc30232a057dfbe24a21" +[[package]] +name = "async-channel" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf46fee83e5ccffc220104713af3292ff9bc7c64c7de289f66dae8e38d826833" +dependencies = [ + "concurrent-queue", + "event-listener", + "futures-core", +] + [[package]] name = "async-io" version = "1.12.0" @@ -424,10 +435,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" [[package]] -name = "base58" +name = "base16ct" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6107fe1be6682a68940da878d9e9f5e90ca5745b3dec9fd1bb393c8777d4f581" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" [[package]] name = "base64" @@ -1155,6 +1166,18 @@ dependencies = [ "zeroize", ] +[[package]] +name = "crypto-bigint" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c2538c4e68e52548bacb3e83ac549f903d44f011ac9d5abb5e132e67d0808f7" +dependencies = [ + "generic-array 0.14.6", + "rand_core 0.6.4", + "subtle", + "zeroize", +] + [[package]] name = "crypto-common" version = "0.1.6" @@ -1360,6 +1383,16 @@ dependencies = [ "zeroize", ] +[[package]] +name = "der" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82b10af9f9f9f2134a42d3f8aa74658660f2e0234b0eb81bd171df8aa32779ed" +dependencies = [ + "const-oid", + "zeroize", +] + [[package]] name = "der-parser" version = "7.0.0" @@ -1472,6 +1505,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" dependencies = [ "block-buffer 0.10.4", + "const-oid", "crypto-common", "subtle", ] @@ -1599,10 +1633,23 @@ version = "0.14.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c" dependencies = [ - "der", - "elliptic-curve", - "rfc6979", - "signature", + "der 0.6.1", + "elliptic-curve 0.12.3", + "rfc6979 0.3.1", + "signature 1.6.4", +] + +[[package]] +name = "ecdsa" +version = "0.16.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a48e5d537b8a30c0b023116d981b16334be1485af7ca68db3a2b7024cbc957fd" +dependencies = [ + "der 0.7.3", + "digest 0.10.6", + "elliptic-curve 0.13.4", + "rfc6979 0.4.0", + "signature 2.1.0", ] [[package]] @@ -1611,7 +1658,7 @@ version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" dependencies = [ - "signature", + "signature 1.6.4", ] [[package]] @@ -1654,18 +1701,37 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3" dependencies = [ - "base16ct", - "crypto-bigint", - "der", + "base16ct 0.1.1", + "crypto-bigint 0.4.9", + "der 0.6.1", "digest 0.10.6", - "ff", + "ff 0.12.1", "generic-array 0.14.6", - "group", + "group 0.12.1", "hkdf", "pem-rfc7468", - "pkcs8", + "pkcs8 0.9.0", "rand_core 0.6.4", - "sec1", + "sec1 0.3.0", + "subtle", + "zeroize", +] + +[[package]] +name = "elliptic-curve" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75c71eaa367f2e5d556414a8eea812bc62985c879748d6403edabd9cb03f16e7" +dependencies = [ + "base16ct 0.2.0", + "crypto-bigint 0.5.1", + "digest 0.10.6", + "ff 0.13.0", + "generic-array 0.14.6", + "group 0.13.0", + "pkcs8 0.10.2", + "rand_core 0.6.4", + "sec1 0.7.1", "subtle", "zeroize", ] @@ -1764,6 +1830,19 @@ dependencies = [ "futures", ] +[[package]] +name = "expander" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f360349150728553f92e4c997a16af8915f418d3a0f21b440d34c5632f16ed84" +dependencies = [ + "blake2", + "fs-err", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "fake-simd" version = "0.1.2" @@ -1804,6 +1883,16 @@ dependencies = [ "subtle", ] +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "rand_core 0.6.4", + "subtle", +] + [[package]] name = "fiat-crypto" version = "0.1.19" @@ -1895,7 +1984,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", ] @@ -1930,7 +2019,7 @@ dependencies = [ [[package]] name = "frame-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "bitflags 1.3.2", "environmental", @@ -1963,7 +2052,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "Inflector", "cfg-expr", @@ -1978,7 +2067,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate", @@ -1990,7 +2079,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "proc-macro2", "quote", @@ -2000,7 +2089,7 @@ dependencies = [ [[package]] name = "frame-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "frame-support", "log", @@ -2015,6 +2104,12 @@ dependencies = [ "sp-weights", ] +[[package]] +name = "fs-err" +version = "2.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0845fa252299212f0389d64ba26f34fa32cfe41588355f21ed507c59a0f64541" + [[package]] name = "fs2" version = "0.4.3" @@ -2190,6 +2285,7 @@ checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" dependencies = [ "typenum", "version_check", + "zeroize", ] [[package]] @@ -2276,7 +2372,18 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" dependencies = [ - "ff", + "ff 0.12.1", + "rand_core 0.6.4", + "subtle", +] + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff 0.13.0", "rand_core 0.6.4", "subtle", ] @@ -2302,9 +2409,9 @@ dependencies = [ [[package]] name = "hash-db" -version = "0.15.2" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" +checksum = "8e7d7786361d7425ae2fe4f9e407eb0efaa0840f5212d109cc018c40c35c6ab4" [[package]] name = "hash256-std-hasher" @@ -2898,13 +3005,14 @@ dependencies = [ [[package]] name = "k256" -version = "0.11.6" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c1e0b51e7ec0a97369623508396067a486bd0cbed95a2659a4b863d28cfc8b" +checksum = "cadb76004ed8e97623117f3df85b17aaa6626ab0b0831e6573f104df16cd1bcc" dependencies = [ "cfg-if", - "ecdsa", - "elliptic-curve", + "ecdsa 0.16.6", + "elliptic-curve 0.13.4", + "once_cell", "sha2 0.10.6", ] @@ -3049,7 +3157,7 @@ dependencies = [ "prost-build", "rand 0.8.5", "rw-stream-sink", - "sec1", + "sec1 0.3.0", "sha2 0.10.6", "smallvec", "thiserror", @@ -3693,12 +3801,11 @@ dependencies = [ [[package]] name = "memory-db" -version = "0.31.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e0c7cba9ce19ac7ffd2053ac9f49843bbd3f4318feedfd74e85c19d5fb0ba66" +checksum = "808b50db46293432a45e63bc15ea51e0ab4c0a1647b8eb114e31a3e698dd6fbe" dependencies = [ "hash-db", - "hashbrown 0.12.3", ] [[package]] @@ -4167,8 +4274,8 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" dependencies = [ - "ecdsa", - "elliptic-curve", + "ecdsa 0.14.8", + "elliptic-curve 0.12.3", "sha2 0.10.6", ] @@ -4178,8 +4285,8 @@ version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dfc8c5bf642dde52bb9e87c0ecd8ca5a76faac2eeed98dedb7c717997e1080aa" dependencies = [ - "ecdsa", - "elliptic-curve", + "ecdsa 0.14.8", + "elliptic-curve 0.12.3", "sha2 0.10.6", ] @@ -4196,7 +4303,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "frame-support", "frame-system", @@ -4212,7 +4319,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", @@ -4228,7 +4335,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -4239,9 +4346,9 @@ dependencies = [ [[package]] name = "parity-db" -version = "0.4.4" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df89dd8311063c54ae4e03d9aeb597b04212a57e82c339344130a9cad9b3e2d9" +checksum = "00bfb81cf5c90a222db2fb7b3a7cbf8cc7f38dfb6647aca4d98edf8281f56ed5" dependencies = [ "blake2", "crc32fast", @@ -4487,8 +4594,18 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" dependencies = [ - "der", - "spki", + "der 0.6.1", + "spki 0.6.0", +] + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der 0.7.3", + "spki 0.7.1", ] [[package]] @@ -5068,11 +5185,21 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" dependencies = [ - "crypto-bigint", + "crypto-bigint 0.4.9", "hmac 0.12.1", "zeroize", ] +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac 0.12.1", + "subtle", +] + [[package]] name = "ring" version = "0.16.20" @@ -5314,7 +5441,7 @@ dependencies = [ [[package]] name = "sc-allocator" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "log", "sp-core", @@ -5325,7 +5452,7 @@ dependencies = [ [[package]] name = "sc-basic-authorship" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "futures", "futures-timer", @@ -5348,7 +5475,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -5363,13 +5490,13 @@ dependencies = [ [[package]] name = "sc-chain-spec" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "memmap2", "sc-chain-spec-derive", "sc-client-api", "sc-executor", - "sc-network-common", + "sc-network", "sc-telemetry", "serde", "serde_json", @@ -5382,7 +5509,7 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -5393,7 +5520,7 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "array-bytes 4.2.0", "chrono", @@ -5433,7 +5560,7 @@ dependencies = [ [[package]] name = "sc-client-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "fnv", "futures", @@ -5459,7 +5586,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "hash-db", "kvdb", @@ -5485,7 +5612,7 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "futures", @@ -5510,7 +5637,7 @@ dependencies = [ [[package]] name = "sc-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "futures", @@ -5539,7 +5666,7 @@ dependencies = [ [[package]] name = "sc-consensus-grandpa" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "ahash 0.8.3", "array-bytes 4.2.0", @@ -5579,7 +5706,7 @@ dependencies = [ [[package]] name = "sc-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "futures", @@ -5602,7 +5729,7 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "lru", "parity-scale-codec", @@ -5626,7 +5753,7 @@ dependencies = [ [[package]] name = "sc-executor-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "sc-allocator", "sp-maybe-compressed-blob", @@ -5639,7 +5766,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmi" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "log", "sc-allocator", @@ -5652,7 +5779,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "anyhow", "cfg-if", @@ -5670,13 +5797,14 @@ dependencies = [ [[package]] name = "sc-informant" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "ansi_term", "futures", "futures-timer", "log", "sc-client-api", + "sc-network", "sc-network-common", "sp-blockchain", "sp-runtime", @@ -5685,7 +5813,7 @@ dependencies = [ [[package]] name = "sc-keystore" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "array-bytes 4.2.0", "async-trait", @@ -5700,12 +5828,12 @@ dependencies = [ [[package]] name = "sc-network" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "array-bytes 4.2.0", + "async-channel", "async-trait", "asynchronous-codec", - "backtrace", "bytes", "either", "fnv", @@ -5713,6 +5841,7 @@ dependencies = [ "futures-timer", "ip_network", "libp2p", + "linked_hash_set", "log", "lru", "mockall", @@ -5743,7 +5872,7 @@ dependencies = [ [[package]] name = "sc-network-bitswap" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "cid", "futures", @@ -5752,6 +5881,7 @@ dependencies = [ "prost", "prost-build", "sc-client-api", + "sc-network", "sc-network-common", "sp-blockchain", "sp-runtime", @@ -5762,19 +5892,20 @@ dependencies = [ [[package]] name = "sc-network-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ + "array-bytes 4.2.0", "async-trait", "bitflags 1.3.2", "bytes", "futures", "futures-timer", "libp2p", - "linked_hash_set", "parity-scale-codec", "prost-build", "sc-consensus", "sc-peerset", + "sc-utils", "serde", "smallvec", "sp-blockchain", @@ -5783,12 +5914,13 @@ dependencies = [ "sp-runtime", "substrate-prometheus-endpoint", "thiserror", + "zeroize", ] [[package]] name = "sc-network-gossip" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "ahash 0.8.3", "futures", @@ -5796,6 +5928,7 @@ dependencies = [ "libp2p", "log", "lru", + "sc-network", "sc-network-common", "sc-peerset", "sp-runtime", @@ -5806,7 +5939,7 @@ dependencies = [ [[package]] name = "sc-network-light" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "array-bytes 4.2.0", "futures", @@ -5816,6 +5949,7 @@ dependencies = [ "prost", "prost-build", "sc-client-api", + "sc-network", "sc-network-common", "sc-peerset", "sp-blockchain", @@ -5827,12 +5961,13 @@ dependencies = [ [[package]] name = "sc-network-sync" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "array-bytes 4.2.0", "async-trait", "fork-tree", "futures", + "futures-timer", "libp2p", "log", "lru", @@ -5842,6 +5977,7 @@ dependencies = [ "prost-build", "sc-client-api", "sc-consensus", + "sc-network", "sc-network-common", "sc-peerset", "sc-utils", @@ -5859,7 +5995,7 @@ dependencies = [ [[package]] name = "sc-network-transactions" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "array-bytes 4.2.0", "futures", @@ -5867,6 +6003,7 @@ dependencies = [ "log", "parity-scale-codec", "pin-project", + "sc-network", "sc-network-common", "sc-peerset", "sc-utils", @@ -5878,7 +6015,7 @@ dependencies = [ [[package]] name = "sc-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "array-bytes 4.2.0", "bytes", @@ -5894,6 +6031,7 @@ dependencies = [ "parking_lot 0.12.1", "rand 0.8.5", "sc-client-api", + "sc-network", "sc-network-common", "sc-peerset", "sc-utils", @@ -5908,7 +6046,7 @@ dependencies = [ [[package]] name = "sc-peerset" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "futures", "libp2p", @@ -5921,7 +6059,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -5930,7 +6068,7 @@ dependencies = [ [[package]] name = "sc-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "futures", "jsonrpsee", @@ -5960,7 +6098,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -5979,7 +6117,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "http", "jsonrpsee", @@ -5994,7 +6132,7 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "array-bytes 4.2.0", "futures", @@ -6020,7 +6158,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "directories 4.0.1", @@ -6086,7 +6224,7 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "log", "parity-scale-codec", @@ -6097,7 +6235,7 @@ dependencies = [ [[package]] name = "sc-storage-monitor" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "clap", "fs4", @@ -6113,7 +6251,7 @@ dependencies = [ [[package]] name = "sc-sysinfo" version = "6.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "futures", "libc", @@ -6132,7 +6270,7 @@ dependencies = [ [[package]] name = "sc-telemetry" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "chrono", "futures", @@ -6151,7 +6289,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "ansi_term", "atty", @@ -6182,7 +6320,7 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -6193,7 +6331,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "futures", @@ -6220,7 +6358,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "futures", @@ -6234,15 +6372,16 @@ dependencies = [ [[package]] name = "sc-utils" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ - "backtrace", + "async-channel", "futures", "futures-timer", "lazy_static", "log", "parking_lot 0.12.1", "prometheus", + "sp-arithmetic", ] [[package]] @@ -6359,10 +6498,24 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" dependencies = [ - "base16ct", - "der", + "base16ct 0.1.1", + "der 0.6.1", + "generic-array 0.14.6", + "pkcs8 0.9.0", + "subtle", + "zeroize", +] + +[[package]] +name = "sec1" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48518a2b5775ba8ca5b46596aae011caa431e6ce7e4a67ead66d92f08884220e" +dependencies = [ + "base16ct 0.2.0", + "der 0.7.3", "generic-array 0.14.6", - "pkcs8", + "pkcs8 0.10.2", "subtle", "zeroize", ] @@ -6576,6 +6729,16 @@ dependencies = [ "rand_core 0.6.4", ] +[[package]] +name = "signature" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500" +dependencies = [ + "digest 0.10.6", + "rand_core 0.6.4", +] + [[package]] name = "siphasher" version = "0.3.10" @@ -6672,7 +6835,7 @@ dependencies = [ [[package]] name = "sp-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "hash-db", "log", @@ -6690,9 +6853,11 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ + "Inflector", "blake2", + "expander", "proc-macro-crate", "proc-macro2", "quote", @@ -6702,7 +6867,7 @@ dependencies = [ [[package]] name = "sp-application-crypto" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", "scale-info", @@ -6715,7 +6880,7 @@ dependencies = [ [[package]] name = "sp-arithmetic" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "integer-sqrt", "num-traits", @@ -6729,7 +6894,7 @@ dependencies = [ [[package]] name = "sp-block-builder" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", "sp-api", @@ -6741,7 +6906,7 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "futures", "log", @@ -6759,25 +6924,22 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "futures", "log", - "parity-scale-codec", "sp-core", "sp-inherents", "sp-runtime", "sp-state-machine", - "sp-std", - "sp-version", "thiserror", ] [[package]] name = "sp-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "parity-scale-codec", @@ -6795,7 +6957,7 @@ dependencies = [ [[package]] name = "sp-consensus-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "finality-grandpa", "log", @@ -6813,7 +6975,7 @@ dependencies = [ [[package]] name = "sp-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", "scale-info", @@ -6825,13 +6987,13 @@ dependencies = [ [[package]] name = "sp-core" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "array-bytes 4.2.0", - "base58", "bitflags 1.3.2", "blake2", "bounded-collections", + "bs58", "dyn-clonable", "ed25519-zebra", "futures", @@ -6868,9 +7030,9 @@ dependencies = [ [[package]] name = "sp-core-hashing" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ - "blake2", + "blake2b_simd", "byteorder", "digest 0.10.6", "sha2 0.10.6", @@ -6882,7 +7044,7 @@ dependencies = [ [[package]] name = "sp-core-hashing-proc-macro" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "proc-macro2", "quote", @@ -6893,7 +7055,7 @@ dependencies = [ [[package]] name = "sp-database" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "kvdb", "parking_lot 0.12.1", @@ -6902,7 +7064,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "proc-macro2", "quote", @@ -6912,7 +7074,7 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.13.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "environmental", "parity-scale-codec", @@ -6923,7 +7085,7 @@ dependencies = [ [[package]] name = "sp-inherents" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -6938,7 +7100,7 @@ dependencies = [ [[package]] name = "sp-io" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "bytes", "ed25519", @@ -6947,6 +7109,7 @@ dependencies = [ "libsecp256k1", "log", "parity-scale-codec", + "rustversion", "secp256k1", "sp-core", "sp-externalities", @@ -6963,7 +7126,7 @@ dependencies = [ [[package]] name = "sp-keyring" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "lazy_static", "sp-core", @@ -6974,9 +7137,8 @@ dependencies = [ [[package]] name = "sp-keystore" version = "0.13.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ - "async-trait", "futures", "merlin", "parity-scale-codec", @@ -6991,7 +7153,7 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "thiserror", "zstd", @@ -7000,7 +7162,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "sp-api", "sp-core", @@ -7010,7 +7172,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "backtrace", "lazy_static", @@ -7020,7 +7182,7 @@ dependencies = [ [[package]] name = "sp-rpc" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "rustc-hash", "serde", @@ -7030,7 +7192,7 @@ dependencies = [ [[package]] name = "sp-runtime" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "either", "hash256-std-hasher", @@ -7052,7 +7214,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -7070,7 +7232,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "Inflector", "proc-macro-crate", @@ -7082,7 +7244,7 @@ dependencies = [ [[package]] name = "sp-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", "scale-info", @@ -7096,7 +7258,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", "scale-info", @@ -7108,7 +7270,7 @@ dependencies = [ [[package]] name = "sp-state-machine" version = "0.13.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "hash-db", "log", @@ -7128,12 +7290,12 @@ dependencies = [ [[package]] name = "sp-std" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" [[package]] name = "sp-storage" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "impl-serde", "parity-scale-codec", @@ -7146,7 +7308,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "futures-timer", @@ -7161,7 +7323,7 @@ dependencies = [ [[package]] name = "sp-tracing" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", "sp-std", @@ -7173,7 +7335,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "sp-api", "sp-runtime", @@ -7182,7 +7344,7 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "async-trait", "log", @@ -7198,11 +7360,11 @@ dependencies = [ [[package]] name = "sp-trie" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "ahash 0.8.3", "hash-db", - "hashbrown 0.12.3", + "hashbrown 0.13.2", "lazy_static", "memory-db", "nohash-hasher", @@ -7221,7 +7383,7 @@ dependencies = [ [[package]] name = "sp-version" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "impl-serde", "parity-scale-codec", @@ -7238,7 +7400,7 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", "proc-macro2", @@ -7249,7 +7411,7 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "anyhow", "impl-trait-for-tuples", @@ -7263,7 +7425,7 @@ dependencies = [ [[package]] name = "sp-weights" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "parity-scale-codec", "scale-info", @@ -7288,7 +7450,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" dependencies = [ "base64ct", - "der", + "der 0.6.1", +] + +[[package]] +name = "spki" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37a5be806ab6f127c3da44b7378837ebf01dadca8510a0e572460216b228bd0e" +dependencies = [ + "base64ct", + "der 0.7.3", ] [[package]] @@ -7409,7 +7581,7 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "platforms 2.0.0", ] @@ -7417,7 +7589,7 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "hyper", "log", @@ -7429,7 +7601,7 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-03#ad5399644aebc54e32a107ac37ae08e6cd1f0cfb" +source = "git+https://github.com/paritytech/substrate.git?tag=monthly-2023-04#75dee3c6fc72f6399a43f498e0e42f94fb82a7bd" dependencies = [ "ansi_term", "build-helper", @@ -7902,9 +8074,9 @@ dependencies = [ [[package]] name = "trie-db" -version = "0.25.1" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3390c0409daaa6027d6681393316f4ccd3ff82e1590a1e4725014e3ae2bf1920" +checksum = "767abe6ffed88a1889671a102c2861ae742726f52e0a5a425b92c9fbfa7e9c85" dependencies = [ "hash-db", "hashbrown 0.13.2", @@ -7915,9 +8087,9 @@ dependencies = [ [[package]] name = "trie-root" -version = "0.17.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a36c5ca3911ed3c9a5416ee6c679042064b93fc637ded67e25f92e68d783891" +checksum = "d4ed310ef5ab98f5fa467900ed906cb9232dd5376597e00fd4cba2a449d06c0b" dependencies = [ "hash-db", ] @@ -8738,7 +8910,7 @@ dependencies = [ "ccm", "curve25519-dalek 3.2.0", "der-parser 8.2.0", - "elliptic-curve", + "elliptic-curve 0.12.3", "hkdf", "hmac 0.12.1", "log", @@ -8750,11 +8922,11 @@ dependencies = [ "rcgen 0.9.3", "ring", "rustls 0.19.1", - "sec1", + "sec1 0.3.0", "serde", "sha1", "sha2 0.10.6", - "signature", + "signature 1.6.4", "subtle", "thiserror", "tokio", diff --git a/node/Cargo.toml b/node/Cargo.toml index 1c9993d66..840454dae 100644 --- a/node/Cargo.toml +++ b/node/Cargo.toml @@ -16,42 +16,42 @@ name = "node-template" [dependencies] clap = { version = "4.0.29", features = ["derive"] } -sc-cli = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-core = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-executor = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-service = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-telemetry = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-keystore = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-transaction-pool = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-transaction-pool-api = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-consensus-aura = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-consensus-aura = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-consensus = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-consensus = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-consensus-grandpa = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-consensus-grandpa = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-client-api = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-runtime = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-timestamp = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-inherents = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-keyring = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -pallet-transaction-payment = { default-features = false, git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } +sc-cli = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-core = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-executor = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-service = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-telemetry = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-keystore = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-transaction-pool = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-transaction-pool-api = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-consensus-aura = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-consensus-aura = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-consensus = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-consensus = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-consensus-grandpa = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-consensus-grandpa = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-client-api = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-runtime = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-timestamp = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-inherents = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-keyring = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +pallet-transaction-payment = { default-features = false, git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } # These dependencies are used for the node template's RPCs jsonrpsee = { version = "0.16.2", features = ["server"] } -sc-rpc = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-api = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-rpc-api = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-blockchain = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sp-block-builder = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -sc-basic-authorship = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } -pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } +sc-rpc = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-api = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-rpc-api = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-blockchain = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sp-block-builder = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +sc-basic-authorship = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } +pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } # Local Dependencies node-template-runtime = { package = "tuxedo-template-runtime", path = "../tuxedo-template-runtime" } [build-dependencies] -substrate-build-script-utils = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } +substrate-build-script-utils = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } [features] default = [] diff --git a/node/src/service.rs b/node/src/service.rs index b54b81207..90297b8c7 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -6,7 +6,6 @@ use sc_client_api::BlockBackend; use sc_consensus_aura::{ImportQueueParams, SlotProportion, StartAuraParams}; use sc_consensus_grandpa::SharedVoterState; pub use sc_executor::NativeElseWasmExecutor; -use sc_keystore::LocalKeystore; use sc_service::{error::Error as ServiceError, Configuration, TaskManager, WarpSyncParams}; use sc_telemetry::{Telemetry, TelemetryWorker}; use sp_consensus_aura::sr25519::AuthorityPair as AuraPair; @@ -55,12 +54,6 @@ pub fn new_partial( >, ServiceError, > { - if config.keystore_remote.is_some() { - return Err(ServiceError::Other( - "Remote Keystores are not supported.".into(), - )); - } - let telemetry = config .telemetry_endpoints .clone() @@ -148,13 +141,6 @@ pub fn new_partial( }) } -fn remote_keystore(_url: &str) -> Result, &'static str> { - // FIXME: here would the concrete keystore be built, - // must return a concrete type (NOT `LocalKeystore`) that - // implements `CryptoStore` and `SyncCryptoStore` - Err("Remote Keystore not supported.") -} - /// Builds a new service for a full client. pub fn new_full(mut config: Configuration) -> Result { let sc_service::PartialComponents { @@ -162,24 +148,12 @@ pub fn new_full(mut config: Configuration) -> Result backend, mut task_manager, import_queue, - mut keystore_container, + keystore_container, select_chain, transaction_pool, other: (block_import, grandpa_link, mut telemetry), } = new_partial(&config)?; - if let Some(url) = &config.keystore_remote { - match remote_keystore(url) { - Ok(k) => keystore_container.set_remote_keystore(k), - Err(e) => { - return Err(ServiceError::Other(format!( - "Error hooking up remote keystore for {}: {}", - url, e - ))) - } - }; - } - let grandpa_protocol_name = sc_consensus_grandpa::protocol_standard_name( &client .block_hash(0) @@ -201,7 +175,7 @@ pub fn new_full(mut config: Configuration) -> Result Vec::default(), )); - let (network, system_rpc_tx, tx_handler_controller, network_starter) = + let (network, system_rpc_tx, tx_handler_controller, network_starter, sync_service) = sc_service::build_network(sc_service::BuildNetworkParams { config: &config, client: client.clone(), @@ -245,13 +219,14 @@ pub fn new_full(mut config: Configuration) -> Result let _rpc_handlers = sc_service::spawn_tasks(sc_service::SpawnTasksParams { network: network.clone(), client: client.clone(), - keystore: keystore_container.sync_keystore(), + keystore: keystore_container.keystore(), task_manager: &mut task_manager, transaction_pool: transaction_pool.clone(), rpc_builder: rpc_extensions_builder, backend, system_rpc_tx, tx_handler_controller, + sync_service: sync_service.clone(), config, telemetry: telemetry.as_mut(), })?; @@ -287,9 +262,9 @@ pub fn new_full(mut config: Configuration) -> Result }, force_authoring, backoff_authoring_blocks, - keystore: keystore_container.sync_keystore(), - sync_oracle: network.clone(), - justification_sync_link: network.clone(), + keystore: keystore_container.keystore(), + sync_oracle: sync_service.clone(), + justification_sync_link: sync_service.clone(), block_proposal_slot_portion: SlotProportion::new(2f32 / 3f32), max_block_proposal_slot_portion: None, telemetry: telemetry.as_ref().map(|x| x.handle()), @@ -307,7 +282,7 @@ pub fn new_full(mut config: Configuration) -> Result // if the node isn't actively participating in consensus then it doesn't // need a keystore, regardless of which protocol we use below. let keystore = if role.is_authority() { - Some(keystore_container.sync_keystore()) + Some(keystore_container.keystore()) } else { None }; @@ -335,6 +310,7 @@ pub fn new_full(mut config: Configuration) -> Result config: grandpa_config, link: grandpa_link, network, + sync: Arc::new(sync_service), voting_rule: sc_consensus_grandpa::VotingRulesBuilder::default().build(), prometheus_registry, shared_voter_state: SharedVoterState::empty(), diff --git a/tuxedo-core/Cargo.toml b/tuxedo-core/Cargo.toml index f8925a0d9..b118356fd 100644 --- a/tuxedo-core/Cargo.toml +++ b/tuxedo-core/Cargo.toml @@ -15,13 +15,13 @@ parity-util-mem = { version = '0.12.0', optional = true } aggregator = { path = "aggregator" } -sp-api = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-debug-derive = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false, features = ["force-debug"] } -sp-core = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-io = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false, features = ["with-tracing"] } -sp-runtime = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-std = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-storage = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} +sp-api = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-debug-derive = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false, features = ["force-debug"] } +sp-core = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-io = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false, features = ["with-tracing"] } +sp-runtime = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-std = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-storage = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} [dev-dependencies] array-bytes = "6.0.0" diff --git a/tuxedo-core/src/verifier.rs b/tuxedo-core/src/verifier.rs index 3f8fb4a81..932651109 100644 --- a/tuxedo-core/src/verifier.rs +++ b/tuxedo-core/src/verifier.rs @@ -164,6 +164,22 @@ mod test { use super::*; use sp_core::{crypto::Pair as _, sr25519::Pair}; + /// Generate a bunch of test keypairs + fn generate_n_pairs(n: u8) -> Vec { + let mut seed = [0u8; 32]; + let mut pairs = Vec::new(); + + // We generate the pairs from sequential seeds. Just changing the last byte of the seed each time. + for i in 0..n { + seed[31] = i; + + let pair = Pair::from_seed(&seed); + pairs.push(pair); + } + + pairs + } + #[test] fn up_for_grabs_always_verifies() { assert!(UpForGrabs.verify(&[], &[])) @@ -171,7 +187,7 @@ mod test { #[test] fn sig_check_with_good_sig() { - let pair = Pair::from_entropy(b"entropy_entropy_entropy_entropy!".as_slice(), None).0; + let pair = Pair::from_seed(&[0u8; 32]); let simplified_tx = b"hello world".as_slice(); let sig = pair.sign(simplified_tx); let redeemer: &[u8] = sig.as_ref(); @@ -185,15 +201,8 @@ mod test { #[test] fn threshold_multisig_with_enough_sigs_passes() { - let pairs: Vec<_> = (1..3) - .map(|i| { - Pair::from_entropy( - format!("entropy_entropy_entropy_entropy{}", i).as_bytes(), - None, - ) - .0 - }) - .collect(); + let threshold = 2; + let pairs = generate_n_pairs(threshold); let signatories: Vec = pairs.iter().map(|p| H256::from(p.public())).collect(); @@ -209,7 +218,7 @@ mod test { let redeemer: &[u8] = &sigs.encode()[..]; let threshold_multisig = ThresholdMultiSignature { - threshold: 2, + threshold, signatories, }; @@ -218,21 +227,15 @@ mod test { #[test] fn threshold_multisig_not_enough_sigs_fails() { - let pairs: Vec<_> = (1..3) - .map(|i| { - Pair::from_entropy( - format!("entropy_entropy_entropy_entropy{}", i).as_bytes(), - None, - ) - .0 - }) - .collect(); + let threshold = 3; + let pairs = generate_n_pairs(threshold); let signatories: Vec = pairs.iter().map(|p| H256::from(p.public())).collect(); let simplified_tx = b"hello_world".as_slice(); let sigs: Vec<_> = pairs .iter() + .take(threshold as usize - 1) .enumerate() .map(|(i, p)| SignatureAndIndex { signature: p.sign(simplified_tx), @@ -242,7 +245,7 @@ mod test { let redeemer: &[u8] = &sigs.encode()[..]; let threshold_multisig = ThresholdMultiSignature { - threshold: 3, + threshold, signatories, }; @@ -251,15 +254,8 @@ mod test { #[test] fn threshold_multisig_replay_sig_attack_fails() { - let pairs: Vec<_> = (1..3) - .map(|i| { - Pair::from_entropy( - format!("entropy_entropy_entropy_entropy{}", i).as_bytes(), - None, - ) - .0 - }) - .collect(); + let threshold = 2; + let pairs = generate_n_pairs(threshold); let signatories: Vec = pairs.iter().map(|p| H256::from(p.public())).collect(); @@ -278,7 +274,7 @@ mod test { let redeemer: &[u8] = &sigs.encode()[..]; let threshold_multisig = ThresholdMultiSignature { - threshold: 2, + threshold, signatories, }; @@ -287,15 +283,8 @@ mod test { #[test] fn threshold_multisig_has_duplicate_signatories_fails() { - let pairs: Vec<_> = (1..3) - .map(|i| { - Pair::from_entropy( - format!("entropy_entropy_entropy_entropy{}", i).as_bytes(), - None, - ) - .0 - }) - .collect(); + let threshold = 2; + let pairs = generate_n_pairs(threshold); let signatories: Vec = vec![H256::from(pairs[0].public()), H256::from(pairs[0].public())]; @@ -313,7 +302,7 @@ mod test { let redeemer: &[u8] = &sigs.encode()[..]; let threshold_multisig = ThresholdMultiSignature { - threshold: 2, + threshold, signatories, }; diff --git a/tuxedo-template-runtime/Cargo.toml b/tuxedo-template-runtime/Cargo.toml index 04bb6f656..453e41cfe 100644 --- a/tuxedo-template-runtime/Cargo.toml +++ b/tuxedo-template-runtime/Cargo.toml @@ -13,35 +13,35 @@ parity-scale-codec = { version = '3.4.0', default-features = false, features = [ scale-info = { version = "2.1.1", default-features = false, features = ["derive"] } parity-util-mem = { version = '0.12.0', optional = true } -sp-api = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-debug-derive = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false, features = ["force-debug"] } -sp-block-builder = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-core = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-inherents = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-io = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false, features = ["with-tracing"] } -sp-offchain = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-runtime = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-session = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-std = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-storage = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-transaction-pool = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-version = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-timestamp = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} +sp-api = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-debug-derive = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false, features = ["force-debug"] } +sp-block-builder = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-core = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-inherents = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-io = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false, features = ["with-tracing"] } +sp-offchain = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-runtime = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-session = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-std = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-storage = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-transaction-pool = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-version = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-timestamp = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} # These were added for Aura / Grandpa API support hex-literal = "0.3.4" -sp-consensus-aura = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-application-crypto = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} -sp-consensus-grandpa = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false} +sp-consensus-aura = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-application-crypto = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} +sp-consensus-grandpa = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false} # Tuxedo Core tuxedo-core = { path = '../tuxedo-core', default-features = false } [build-dependencies] -substrate-wasm-builder = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-03" } +substrate-wasm-builder = { git = "https://github.com/paritytech/substrate.git", tag = "monthly-2023-04" } [dev-dependencies] -sp-keystore = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03", default_features = false } +sp-keystore = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04", default_features = false } [features] default = ["std"] diff --git a/tuxedo-template-runtime/src/lib.rs b/tuxedo-template-runtime/src/lib.rs index 4a554c2d0..56950cef7 100644 --- a/tuxedo-template-runtime/src/lib.rs +++ b/tuxedo-template-runtime/src/lib.rs @@ -348,12 +348,19 @@ impl_runtime_apis! { } } - // Ignore everything after this. + // Tuxedo does not yet support metadata impl sp_api::Metadata for Runtime { fn metadata() -> OpaqueMetadata { - // Tuxedo does not yet support metadata OpaqueMetadata::new(Default::default()) } + + fn metadata_at_version(_version: u32) -> Option { + None + } + + fn metadata_versions() -> sp_std::vec::Vec { + Default::default() + } } impl sp_offchain::OffchainWorkerApi for Runtime { @@ -417,8 +424,8 @@ mod tests { use super::*; use parity_scale_codec::Encode; use sp_core::testing::SR25519; - use sp_keystore::testing::KeyStore; - use sp_keystore::{KeystoreExt, SyncCryptoStore}; + use sp_keystore::testing::MemoryKeystore; + use sp_keystore::{Keystore, KeystoreExt}; use std::sync::Arc; @@ -429,7 +436,7 @@ mod tests { "monkey happy total rib lumber scrap guide photo country online rose diet"; fn new_test_ext() -> sp_io::TestExternalities { - let keystore = KeyStore::new(); + let keystore = MemoryKeystore::new(); let t = GenesisConfig::default() .build_storage() @@ -443,7 +450,7 @@ mod tests { #[test] fn utxo_money_test_genesis() { new_test_ext().execute_with(|| { - let keystore = KeyStore::new(); + let keystore = MemoryKeystore::new(); let shawn_pub_key = keystore .sr25519_generate_new(SR25519, Some(SHAWN_PHRASE)) .unwrap(); @@ -475,7 +482,7 @@ mod tests { #[test] fn utxo_money_multi_sig_genesis_test() { new_test_ext().execute_with(|| { - let keystore = KeyStore::new(); + let keystore = MemoryKeystore::new(); let shawn_pub_key = keystore .sr25519_generate_new(SR25519, Some(SHAWN_PHRASE)) .unwrap(); diff --git a/wallet/Cargo.toml b/wallet/Cargo.toml index 87d0d75d3..d7ad46b48 100644 --- a/wallet/Cargo.toml +++ b/wallet/Cargo.toml @@ -24,7 +24,7 @@ futures = "0.3" env_logger = "0.10.0" log = "0.4.17" -sp-runtime = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03" } -sp-core = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03" } -sp-keystore = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03" } -sc-keystore = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-03" } \ No newline at end of file +sp-runtime = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04" } +sp-core = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04" } +sp-keystore = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04" } +sc-keystore = { git = 'https://github.com/paritytech/substrate', tag = "monthly-2023-04" } \ No newline at end of file diff --git a/wallet/src/keystore.rs b/wallet/src/keystore.rs index 9c2cd79b5..c0770452b 100644 --- a/wallet/src/keystore.rs +++ b/wallet/src/keystore.rs @@ -6,12 +6,12 @@ use anyhow::anyhow; use parity_scale_codec::Encode; use sc_keystore::LocalKeystore; use sp_core::{ - crypto::{CryptoTypePublicPair, Pair as PairT}, + crypto::Pair as PairT, sr25519::{Pair, Public}, H256, }; -use sp_keystore::SyncCryptoStore; -use sp_runtime::{CryptoTypeId, KeyTypeId}; +use sp_keystore::Keystore; +use sp_runtime::KeyTypeId; use std::path::Path; /// A KeyTypeId to use in the keystore for Tuxedo transactions. We'll use this everywhere @@ -38,9 +38,11 @@ pub fn sign_with( public: &Public, message: &[u8], ) -> anyhow::Result> { - keystore - .sign_with(KEY_TYPE, &public.into(), message)? - .ok_or(anyhow!("Key doesn't exist in keystore")) + let sig = keystore + .sr25519_sign(KEY_TYPE, public, message)? + .ok_or(anyhow!("Key doesn't exist in keystore"))?; + + Ok(sig.encode()) } /// Docs TODO @@ -49,7 +51,7 @@ pub fn insert_key(keystore: &LocalKeystore, seed: &str) -> anyhow::Result<()> { let public_key = Pair::from_phrase(seed, None)?.0.public(); println!("The generated public key is {:?}", public_key); keystore - .insert_unknown(KEY_TYPE, seed, public_key.as_ref()) + .insert(KEY_TYPE, seed, public_key.as_ref()) .map_err(|()| anyhow!("Error inserting key"))?; Ok(()) } @@ -60,7 +62,7 @@ pub fn generate_key(keystore: &LocalKeystore, password: Option) -> anyho println!("Generated public key is {:?}", pair.public()); println!("Generated Phrase is {}", phrase); keystore - .insert_unknown(KEY_TYPE, phrase.as_ref(), pair.public().as_ref()) + .insert(KEY_TYPE, phrase.as_ref(), pair.public().as_ref()) .map_err(|()| anyhow!("Error inserting key"))?; Ok(()) } @@ -71,18 +73,7 @@ pub fn has_key(keystore: &LocalKeystore, pubkey: &H256) -> bool { } pub fn get_keys(keystore: &LocalKeystore) -> anyhow::Result>> { - Ok(keystore - .keys(KEY_TYPE)? - .into_iter() - .filter_map(|CryptoTypePublicPair(t, public)| { - // Since we insert with `insert_unknown`, each key is inserted three times. - // Here we filter out just the sr25519 variant so we don't print duplicates. - if t == CryptoTypeId(*b"sr25") { - Some(public) - } else { - None - } - })) + Ok(keystore.keys(KEY_TYPE)?.into_iter()) } /// Caution. Removes key from keystore. Call with care.