From 7eef5cc3f8c18c1fcb39e8e72ba84f07920c7988 Mon Sep 17 00:00:00 2001 From: David Date: Fri, 9 Nov 2018 14:32:29 +0100 Subject: [PATCH] Update substrate to use libp2p master as of nov 9 (#1095) * WIP * Use latest lip2p master --- substrate/Cargo.lock | 250 ++++++++++-------- substrate/core/network-libp2p/Cargo.toml | 2 +- .../core/network-libp2p/src/node_handler.rs | 20 +- .../substrate_test_runtime.compact.wasm | Bin 44807 -> 44927 bytes .../release/node_runtime.compact.wasm | Bin 621448 -> 624812 bytes 5 files changed, 151 insertions(+), 121 deletions(-) diff --git a/substrate/Cargo.lock b/substrate/Cargo.lock index 5ebc858b57..eabd0d765f 100644 --- a/substrate/Cargo.lock +++ b/substrate/Cargo.lock @@ -270,11 +270,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "chashmap" -version = "2.2.1" -source = "git+https://github.com/redox-os/tfs#3e7dcdb0c586d0d8bb3f25bfd948d2f418a4ab10" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "owning_ref 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -519,10 +519,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "datastore" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "base64 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "chashmap 2.2.1 (git+https://github.com/redox-os/tfs)", + "chashmap 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1161,31 +1161,30 @@ dependencies = [ [[package]] name = "libp2p" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-dns 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-floodsub 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-identify 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-kad 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-mplex 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-peerstore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-ping 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-ratelimit 0.1.1 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-relay 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-secio 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-tcp-transport 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-transport-timeout 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-uds 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-websocket 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-yamux 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-dns 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-floodsub 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-identify 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-kad 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-mplex 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-peerstore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-ping 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-ratelimit 0.1.1 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-relay 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-secio 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-tcp-transport 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-transport-timeout 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-uds 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-websocket 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-yamux 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "stdweb 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1193,20 +1192,20 @@ dependencies = [ [[package]] name = "libp2p-core" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "multistream-select 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "multistream-select 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rw-stream-sink 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "rw-stream-sink 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "smallvec 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1217,12 +1216,12 @@ dependencies = [ [[package]] name = "libp2p-dns" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "tokio-dns-unofficial 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1230,16 +1229,16 @@ dependencies = [ [[package]] name = "libp2p-floodsub" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1251,15 +1250,15 @@ dependencies = [ [[package]] name = "libp2p-identify" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-peerstore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-peerstore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1272,21 +1271,21 @@ dependencies = [ [[package]] name = "libp2p-kad" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", "bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "datastore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "datastore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-identify 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-ping 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-identify 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-ping 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1300,12 +1299,12 @@ dependencies = [ [[package]] name = "libp2p-mplex" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1316,13 +1315,13 @@ dependencies = [ [[package]] name = "libp2p-peerstore" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "datastore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "datastore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1331,28 +1330,31 @@ dependencies = [ [[package]] name = "libp2p-ping" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ + "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "multistream-select 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "multistream-select 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "libp2p-ratelimit" version = "0.1.1" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "aio-limited 0.1.0 (git+https://github.com/paritytech/aio-limited.git)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1361,14 +1363,14 @@ dependencies = [ [[package]] name = "libp2p-relay" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "libp2p-peerstore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "libp2p-peerstore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "protobuf 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1379,7 +1381,7 @@ dependencies = [ [[package]] name = "libp2p-secio" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "aes-ctr 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "asn1_der 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1389,12 +1391,12 @@ dependencies = [ "eth-secp256k1 0.5.7 (git+https://github.com/paritytech/rust-secp256k1)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "hmac 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rw-stream-sink 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "rw-stream-sink 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "sha2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "stdweb 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1405,12 +1407,12 @@ dependencies = [ [[package]] name = "libp2p-tcp-transport" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "tk-listen 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1419,10 +1421,10 @@ dependencies = [ [[package]] name = "libp2p-transport-timeout" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1430,25 +1432,25 @@ dependencies = [ [[package]] name = "libp2p-uds" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "tokio-uds 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "libp2p-websocket" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", - "rw-stream-sink 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", + "rw-stream-sink 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "stdweb 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "websocket 0.21.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1457,11 +1459,11 @@ dependencies = [ [[package]] name = "libp2p-yamux" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1621,13 +1623,13 @@ dependencies = [ [[package]] name = "multiaddr" version = "0.3.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "data-encoding 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", "unsigned-varint 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1635,7 +1637,7 @@ dependencies = [ [[package]] name = "multihash" version = "0.8.1-pre" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "blake2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1647,7 +1649,7 @@ dependencies = [ [[package]] name = "multistream-select" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1901,6 +1903,11 @@ dependencies = [ "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "owning_ref" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "owning_ref" version = "0.3.3" @@ -1982,6 +1989,16 @@ dependencies = [ "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "owning_ref 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", + "thread-id 3.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot" version = "0.4.8" @@ -2340,7 +2357,7 @@ dependencies = [ [[package]] name = "rw-stream-sink" version = "0.1.0" -source = "git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985#9d9121719308491358ae6e4b0be83cdffa992985" +source = "git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5#d961e656a74d1bab5366d371a06f9e10d5f4a6c5" dependencies = [ "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3266,7 +3283,7 @@ dependencies = [ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)", + "libp2p 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)", "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", "parity-bytes 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3658,6 +3675,16 @@ dependencies = [ "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "thread-id" +version = "3.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "thread-scoped" version = "1.0.2" @@ -4316,7 +4343,7 @@ dependencies = [ "checksum cast 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "011941fb53da1a8ac3e4132a1becc367c44fe13f630769f3143d8c66c91c6cb6" "checksum cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16" "checksum cfg-if 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0c4e7bb64a8ebb0d856483e1e682ea3422f883c5f5615a90d51a2c82fe87fdd3" -"checksum chashmap 2.2.1 (git+https://github.com/redox-os/tfs)" = "" +"checksum chashmap 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "47e651a8c1eb0cbbaa730f705e2531e75276c6f2bbe2eb12662cfd305213dff8" "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878" "checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e" "checksum clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "97276801e127ffb46b66ce23f35cc96bd454fa311294bced4bbace7baa8b1d17" @@ -4343,7 +4370,7 @@ dependencies = [ "checksum ctrlc 3.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "630391922b1b893692c6334369ff528dcc3a9d8061ccf4c803aa8f83cb13db5e" "checksum curve25519-dalek 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3eacf6ff1b911e3170a8c400b402e10c86dc3cb166bd69034ebbc2b785fea4c2" "checksum data-encoding 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "67df0571a74bf0d97fb8b2ed22abdd9a48475c96bd327db968b7d9cace99655e" -"checksum datastore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" +"checksum datastore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" "checksum difference 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b3304d19798a8e067e48d8e69b2c37f0b5e9b4e462504ad9e27e9f3fce02bba8" "checksum difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198" "checksum digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "03b072242a8cbaf9c145665af9d250c59af3b958f83ed6824e13533cf76d5b90" @@ -4416,23 +4443,23 @@ dependencies = [ "checksum lazycell 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddba4c30a78328befecec92fc94970e53b3ae385827d28620f0f5bb2493081e0" "checksum libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)" = "76e3a3ef172f1a0b9a9ff0dd1491ae5e6c948b94479a3021819ba7d860c8645d" "checksum libloading 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3ad660d7cb8c5822cd83d10897b0f1f1526792737a179e73896152f85b88c2" -"checksum libp2p 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-dns 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-floodsub 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-identify 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-kad 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-mplex 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-peerstore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-ping 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-ratelimit 0.1.1 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-relay 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-secio 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-tcp-transport 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-transport-timeout 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-uds 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-websocket 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum libp2p-yamux 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" +"checksum libp2p 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-core 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-dns 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-floodsub 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-identify 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-kad 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-mplex 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-peerstore 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-ping 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-ratelimit 0.1.1 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-relay 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-secio 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-tcp-transport 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-transport-timeout 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-uds 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-websocket 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum libp2p-yamux 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" "checksum linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e" "checksum local-encoding 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e1ceb20f39ff7ae42f3ff9795f3986b1daad821caaa1e1732a0944103a5a1a66" "checksum lock_api 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "775751a3e69bde4df9b38dd00a1b5d6ac13791e4223d4a0506577f0dd27cfb7a" @@ -4450,9 +4477,9 @@ dependencies = [ "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" -"checksum multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" -"checksum multistream-select 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" +"checksum multiaddr 0.3.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum multihash 0.8.1-pre (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" +"checksum multistream-select 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" "checksum names 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ef320dab323286b50fb5cdda23f61c796a72a89998ab565ca32525c5c556f2da" "checksum nan-preserving-float 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "34d4f00fcc2f4c9efa8cc971db0da9e28290e28e97af47585e48691ef10ff31f" "checksum native-tls 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8b0a7bd714e83db15676d31caf968ad7318e9cc35f93c85a90231c8f22867549" @@ -4470,6 +4497,7 @@ dependencies = [ "checksum openssl 0.10.14 (registry+https://github.com/rust-lang/crates.io-index)" = "6285ab297861546af7a2753593b3160bfc09f0ab9d1f5bb009e39d81a169b499" "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" "checksum openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)" = "278c1ad40a89aa1e741a1eed089a2f60b18fab8089c3139b542140fc7d674106" +"checksum owning_ref 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "9d52571ddcb42e9c900c901a18d8d67e393df723fcd51dd59c5b1a85d0acb6cc" "checksum owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37" "checksum parity-bytes 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fa5168b4cf41f3835e4bc6ffb32f51bc9365dc50cb351904595b3931d917fd0c" "checksum parity-codec 2.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "dca389ea5e1632c89b2ce54f7e2b4a8a8c9d278042222a91e0bf95451218cb4c" @@ -4479,6 +4507,7 @@ dependencies = [ "checksum parity-rocksdb-sys 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0e59eda423021494a6cf1be74f6989add403f53157409993f794e17b123cab51" "checksum parity-snappy-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c2086caac40c79289cb70d7e1c64f5888e1c53f5d38399d3e95101493739f423" "checksum parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)" = "511379a8194230c2395d2f5fa627a5a7e108a9f976656ce723ae68fca4097bfc" +"checksum parking_lot 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "fa12d706797d42551663426a45e2db2e0364bd1dbf6aeada87e89c5f981f43e9" "checksum parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "149d8f5b97f3c1133e3cfcd8886449959e856b557ff281e292b733d7c69e005e" "checksum parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4d05f1349491390b1730afba60bb20d55761bef489a954546b58b4b34e1e2ac" "checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" @@ -4522,7 +4551,7 @@ dependencies = [ "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -"checksum rw-stream-sink 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=9d9121719308491358ae6e4b0be83cdffa992985)" = "" +"checksum rw-stream-sink 0.1.0 (git+https://github.com/libp2p/rust-libp2p?rev=d961e656a74d1bab5366d371a06f9e10d5f4a6c5)" = "" "checksum ryu 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7153dd96dade874ab973e098cb62fcdbb89a03682e46b144fd09550998d4a4a7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e27a8b19b835f7aea908818e871f5cc3a5a186550c30773be987e155e8163d8f" @@ -4576,6 +4605,7 @@ dependencies = [ "checksum termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4096add70612622289f2fdcdbd5086dc81c1e2675e6ae58d6c4f62a16c6d7f2f" "checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" "checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6" +"checksum thread-id 3.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c7fbf4c9d56b320106cd64fd024dadfa0be7cb4706725fc44a7d7ce952d820c1" "checksum thread-scoped 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bcbb6aa301e5d3b0b5ef639c9a9c7e2f1c944f177b460c04dc24c69b1fa2bd99" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" diff --git a/substrate/core/network-libp2p/Cargo.toml b/substrate/core/network-libp2p/Cargo.toml index 2947435d8e..6b0fb9af40 100644 --- a/substrate/core/network-libp2p/Cargo.toml +++ b/substrate/core/network-libp2p/Cargo.toml @@ -11,7 +11,7 @@ bytes = "0.4" error-chain = { version = "0.12", default-features = false } fnv = "1.0" futures = "0.1" -libp2p = { git = "https://github.com/libp2p/rust-libp2p", rev = "9d9121719308491358ae6e4b0be83cdffa992985", default-features = false, features = ["secio-rsa", "secio-secp256k1"] } +libp2p = { git = "https://github.com/libp2p/rust-libp2p", rev = "d961e656a74d1bab5366d371a06f9e10d5f4a6c5", default-features = false, features = ["secio-rsa", "secio-secp256k1"] } parking_lot = "0.5" libc = "0.2" log = "0.4" diff --git a/substrate/core/network-libp2p/src/node_handler.rs b/substrate/core/network-libp2p/src/node_handler.rs index 5f3e74d2ba..ad1f4b7504 100644 --- a/substrate/core/network-libp2p/src/node_handler.rs +++ b/substrate/core/network-libp2p/src/node_handler.rs @@ -59,11 +59,11 @@ pub struct SubstrateNodeHandler { need_report_kad_open: bool, /// Substream open for sending pings, if any. - ping_out_substream: Option>, + ping_out_substream: Option>, /// Active pinging attempt with the moment it expires. active_ping_out: Option, /// Substreams open for receiving pings. - ping_in_substreams: Vec>, + ping_in_substreams: Vec>, /// Future that fires when we need to ping the node again. /// /// Every time we receive a pong, we reset the timer to the next time. @@ -245,7 +245,7 @@ macro_rules! listener_upgrade { upgrade::or(upgrade::or(upgrade::or( upgrade::map((*$self.registered_custom).clone(), move |c| FinalUpgrade::Custom(c)), upgrade::map(KadConnecConfig::new(), move |(c, s)| FinalUpgrade::Kad(c, s))), - upgrade::map(ping::Ping::default(), move |p| FinalUpgrade::from(p))), + upgrade::map(ping::protocol::Ping::default(), move |p| FinalUpgrade::from(p))), upgrade::map(identify::IdentifyProtocolConfig, move |i| FinalUpgrade::from(i))) // TODO: meh for cloning a Vec here ) @@ -343,7 +343,7 @@ where TSubstream: AsyncRead + AsyncWrite + Send + 'static, self.upgrades_in_progress_dial.push((purpose, Box::new(upgrade) as Box<_>)); } UpgradePurpose::Ping => { - let wanted = upgrade::map(ping::Ping::default(), move |p| FinalUpgrade::from(p)); + let wanted = upgrade::map(ping::protocol::Ping::default(), move |p| FinalUpgrade::from(p)); let upgrade = upgrade::apply(substream, wanted, Endpoint::Dialer); self.upgrades_in_progress_dial.push((purpose, Box::new(upgrade) as Box<_>)); } @@ -837,16 +837,16 @@ enum FinalUpgrade { Kad(KadConnecController, Box + Send>), IdentifyListener(identify::IdentifySender), IdentifyDialer(identify::IdentifyInfo, Multiaddr), - PingDialer(ping::PingDialer), - PingListener(ping::PingListener), + PingDialer(ping::protocol::PingDialer), + PingListener(ping::protocol::PingListener), Custom(RegisteredProtocolSubstream), } -impl From> for FinalUpgrade { - fn from(out: ping::PingOutput) -> Self { +impl From> for FinalUpgrade { + fn from(out: ping::protocol::PingOutput) -> Self { match out { - ping::PingOutput::Ponger(ponger) => FinalUpgrade::PingListener(ponger), - ping::PingOutput::Pinger(pinger) => FinalUpgrade::PingDialer(pinger), + ping::protocol::PingOutput::Ponger(ponger) => FinalUpgrade::PingListener(ponger), + ping::protocol::PingOutput::Pinger(pinger) => FinalUpgrade::PingDialer(pinger), } } } diff --git a/substrate/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/substrate/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index ff19b2bdf76deecda9e138a4641b8e0854adc158..72683d7e19b2af43325f7f1ec1357721881a4c0d 100644 GIT binary patch delta 7120 zcmai33v?URnVuO*w)OP*mG~KtWXFjUl1Lh9BsmXfOikjD7YP9l4Y<;16s$P5BRRZ- zfI5xI25@qLhL9H_&=5jSSiymE=-KQx=fJWoh23nsXAczElkTBx3bcooZYi7n{u#-3 zoU|()&As=ZfByUb-~H}??;Y*@rEu|=!fD0}5rsX@x4BELyxVDhc`JL9Z?Yd4JHt71 zoO*!$hX0qVm2&MiUEAE-H*lMt(FcaJT-2F~4Ni@~@M``?);YW|wu}9%EmL)N z_ZdzR$|Q>_D1r;cfzkX;C4<{m}|N80o zxqR6D3SV`;U_>yD2r$CF^|bL{nEDW5gI9!V6#Lk{)e?U)f3UjU+WHvo zN)E{)R&!4E+#_c=u?m$Dl2#X_BkZ%aTMZtB$n(2(YNfYmJI~swXN%fQ#;w=)_K%=w>40y z)>Dvt8rQP4I?9VGtC$%IpEGb6;~{>-sFtAyNL-}-{Q^d)kMU_ms6_=2pJjK?yhTtE zn!Sd7KC{Yc*e**;yx7THZ6k1dPg^anC)#MRr_Wl9>xNnLaUGep0KvaJYpGDu)$Qig zH`$-sy?hsIoD<_;WjD;3i|d1PUM=42oZG^8<+ZtX0XkdeU4`rZdG)xyGH(%X{BGW} ze9K}$@kU{Y2p`F+S`B=57su@wdwoHSF#Y|4n=Ei*wOn7Ks_$`tU_kcrZ?Q4?2*LEp zrmB2*Xss10^A|R-m!kVo>+EP?n_|B(YM&c-{)v$NW?_5B2L@oT2|&ff?qlL4z&lT+ ziQcEEqVbvl_`W3Z$5sHCzjaY14gc1~Uwf9)z#I|MQYo0F=5Jq8LU*=zc9#NHUbUv# zeM{={|Jiv;n5^o6>Y=WiZ51Kt_%W&?D(x1|Yhhn(z6}O$>R-rST;7M;^d4RKWGB0? z$BV|19%2{!ZBKy__ZJ!QM}i}?qD^>y2iv$}m2i3odtt?549BlmoDZKjSuzpnUt$S` zInEMcWez<)xbgz7gR3&Q+SfEQe)Ue&9$HQJ>}ysOq}esysQq}&Q8UOf;9-$U5oF)m znfw$PJ8<1gd}n_3x`l+)uJyO_o$S}^+igqhU1d(T`MQ=01JiLE^^%<(zOI&O*Hgav z?E2MH?On6s0_@2*yoni?|K=u{%r3Zj7aFhM{2|Hq-7;h)*c^##>J73VH(;wxV_t{_ z_N%Y5bYdg_EB0n0jpu{f*8p!$^5BvS26!J&fJXp7S85U#6;O89jZ#(H#C;KCS*7Lq_Dm%o9|I)snQy>baYU)vGq`HCg>Ge}SF8 zZM)gNtJEi-0PU&82hiyTj9)2{m~l#Td|f>azH*gY zPEzzBm5ZFu)9o(7Ew@xIIq@yOwt;|ii@Zy4N^Y-5a(c^MJZ_k}RwtBgY005*@BsmLD^=xgPF^YBVcAw2HfbwK;A%BU=&aFOr^u*Sg zB4$O2Qw82eQvB%%`)I4L(Jk39B(RBMw_#g>K0<=wLM>9UY736`ZY&Af;G zATzVZOFjSvugwMUoFeZ8i`dzWkA0T$LdTVDq`dNNwwd*0-6rpS^N%QAV>i z?ISZZj;d%{ws2~hx74t8$rwXLq%`*yEYzkYTXAd+ftZ$@lLc)w2`?Fbbn+H&_>9gd z0u*kR+SankHObbeFb+R#ldO@5g1*e$r^Fm0BfN2qcTNI$GvOWy;Ea=fxvhb($h&U; z36BwY`woo{VM@(rH{99Ngt-8!V}8uUbfAf0!`E$23lDqa&JED8nHp_|2JVtpQDgpH ziT_9A#k(3xT&lIl?Pc%Y)jjvGc8GcCLbzss&1}itH}j3`le^p4-`(xy8&F%u*FoCC zR^9_ucFR3=2PmXJi`hwD?Q6F%i$bQ!~nV*s6Ono!vmLOhog3K6w+?D-Aset za>))yUBp=z5;+a2N3xTn>`bmDXE*!xY*vLeZbYF91=Dr3J0A9-V|>TC0%^A!n_L5f za%22qy45fZvt-`Hpd1(wEljW|+uGFo@v*LP7m=o}*CA%~4QUzrwif!He#O2a?Jj0_ zghkv#-z`)7W-s5rY6d7yaN0JjXSg+3OKm8z7SXa-3#K+dP%|4C8Kj>)n9>ynlWlxp zdCsBQ)9sv@PbqIW)QX8V5{pBvn`lea_D-~CQ@eeljeVy>4NSD7)Q*j}B}Y5QBXhed z#_`J;%N6mnFkH)k;sgyUuSf$(yT^xMoCeJXUXy50kM-NgBn6%{&}6n3);E{IK4*^j zim8pcS0E@jf$XUY!!)~XZYQOp;$W9dR59*_ahgtML1u&01+$Z^(k6~0rkPe%KC=)A zz>@KJ&dd>i<$3Fr=Yqs3vu9<}2!6wICv4srjXlkQ3~zccdg|@|2sz z)3Ph_6w(Q5jq`NcRGyl+BZ(GaE96sfy8233kHG0#Cd*?-D&luu&NDo3KDd{9VqM4a&eJX9?xmr?-5 zJ(7ogI5H!I4%3pAHY9fS&a}_&=A1_8*fEtCA(-sPLQ*@xU|>Nh7Bqf0)t*g3@$9W zYCV>ca-77m@5BaJL?*wm;}0uocF=Z_oHfc~yI4+ zqqIoU7PX6y7*oeMB`Cr^h*Ya0T!7!|SB4h0O@eAsgm67Yn<`@-?INbPn=A z!)dH;>tz7x!?Xgi6-hAuBfmaHJ2^VJer23$=_qTy`yeIg(kl-0P>a1Y z>b2k-of?VfL!@IG`U|IH5r(E5j>Q<~guM~4hThNF zIB}sNIKWOm+EHV?1HcN#8AB`a4fJ}2ee>uuIQ$+Sd$@22Vd|b6=zY$Ud)oXXj}S>I z5YrP0HH6fP!VC%hO94OP8tFjqupxL=I|ZyPu5ZLc{?zTq4X z7VzrV^ukUM8`%%{;w>0^bMJOsyV*Ki_c1zFJ081{4L)|lc}m1_`TqOy?)8Oy>*L?& z-Ti$DZ7`!R$oBVXIy>^j%j}~kefjHu*u%4vPs;2k`xi2P|8llvf0;X@XSeka&(CB# zq}lE4;6B;0U_(~VWEUiFPqK|qu61zZA3W2~9@xK#eYh`+Q_xAa@u}6qgE0Bj{G5mc zNS}iik*h%YrG?{cDBs{kt^uWJ6*)5XB7Qu6zkuA0@;u6Flz&7?7Rm&XD@QpUWfjUf zg?0=jJ--_ETTxb_r03V-CvaR2b4KK5Pr9+uyuqEvg9|3fwSqhY{kf@5J`1it%A|l%mIXvW&C<&S07LfTp5W^bAorL^ml;7Y-h`k2+ zVwCryoQLvxlrEI7pv0r&`T`s#eePn5b)Yo9Md!b6xjKLA!A4$`V@e|C*AfYTG?Yrk zV{F%V;Qq5&nu&K$bBGLTHjF*%k>24b=j3MMPE?43h1n0&Zf)FY8l zTu%C9v8WaZ$SF2@cz&gxnyXfhEEDeQ`vo^vfwZrX>O~ zEtQIBTC9FOd-zBz`|i`tVj>V%;(l^D7z@S%3fuMc>`Hh5?;_EpKN3)saH#Pr=+{-j zyd2WwNjatX1Bp~BrYY>pr`tq1*49<3Ck!H7Q;35SC*MUICP5q99{dN`samAI^-&zORH?BdZ4<{cE zkkMr@?ALV+`9B}ai+VVqM1s+{q9-GISogEBXE%v~P!I}AC>2Y^g27ajl|FY=1T1>Y z9|d-ah!Txz?8ncos{k$`IV?w%uojLcQwtP!-Ju#*f80YD`6D4&PT-P=X#P+#$=3a7 zYYtHn9O0mr0tKVt;QVZ+w{NhcLm$|-MbE^C^HXPrKe~vP}L-Bz=jXVmK%i(BH z4~CP9uF1)Gh^;*|4gOYF$k9+N1$u_zmp|wagjwftc@{{bX@0~TOdwQQQL2jnRQ2k2 z!p(tfpO%gMLw@kYL7pimruj5Ep@6yZR4nF~hNUg(C5&7D_~A z#h>b!{I}P_*G+@}@uH_G5RPdWZ;-wH0d9)#msi9S%k0PhAhWIx~3TK%ly-yQ(YUkwT*cK@eXot727mH4q+w1P4^G zag97QBJhFl2Tuq0;ImO&$8kAlJx6zryNi!mclR(J<{bX;j5w=joY8T0+~2M4PI@vp zLy_-szgzda_xIggTR3AN%`@6D!XZ#oCbA#ucaknHGFAe8vy|tcTkehe%-0%PR#}EJMk(+Z` z=vBV@VnK$Gmmxp~`=O$Z|1Q^7d8KFE$p>i)5h8e1s6jQv?yiyeQ@LkqI@~Q!VpQ@= zF0qCS80Yq!;lye*hKX8JpboQ(byI7PKX8UKpokbTo}*@fnrz>a>iugy?DG2SVcw(l z$5GB{*oX3L1B0pQ#w3r?4m`D*Pa{;jeT9p~RSc&>iJ3yXJWXV?`y~F;{d;@{HsAZ|Jb2mHO zGM##7TcYE-8({OJd>=}0pRtPJaNu}WiJo%+fLJq77z-e8oIXt8QOdKK2@kg z124bFwzl3PbT_bjnrhh>t#o4T)ZKwf#-#mV4NC5vg98G!1)dvxn^JE)& zL;aN5C~ulF1Lck>Gl9ozQ@VvRqbI}}``C9KVcuYqr|SGYY}wRlD2Jw=E)E*gnt3B< zPxA@j>7RZX$|t8cpgcW&76!hWew=Tf1$5pnEFwWBxed1i*@5E9o@8&%)CuOVXD)L= zi6u%yS+{YPgN7TFaA-e4TPBjXoOiQdtM%-(au*>PU0t2KD!#;xSB%aYb~1U`X*IId z`o~V|w}p`_x=zyqeBag4dBMT;bpj&~@p*D&V0?kvu@#lgiRZJ$%0yD;|!p_J7R)Bz!x>o?kEzbWtJ#Y<;1r{$TP;Xz{gVxU$AITfJ7kId&au~U0Nh?2w#-6_RWqx*U$pDDh8-m^dTX$`9m4oSs3^*-2d~F@Gucst+@%n4V%A0?~MaWCs_znUy_x&=3 z#739jkItLRe?_#%Z`t4`*n-xT6a#{B!hx+W@B2hR^xVVNS~v4AvVXPu@P0h?HNd+p z{nVVV9PrMMf=2+sOD3YqJBj4@$aw;<9YlzI5ATTM;qB*g<@Rs*SG*8 z&v9v*_?#1lH1wZX!MrMYGI;ZjKYeAG-_I7W+@E)JnPvODtZ~)DzSo8j4PHb8yKUtp z_VKD^d4~J=*VyUR507$xS~r@hj6Z9#?3xw+Q5R&NuGt9Nm#=*mCBF_Sk{w+4t?;D6 z_N|}TbkBX5PDG|hg-3K7*(*aFltupL0N;D-Cx!DoV!6Thg!rH3OTor)Q1XOaK_50a z2YC2ipwrPB5?I&9rY6o1eiHG71Vj_@bny^h%Clu-gy-0k8(T$0Tv@=tVmV3pjos}1 zjgiS-$%FO8E2t>@1*qpS3OcgNf!2sS?3VrloKal7QU%+%p_Z*3@be+Id7!nPtP7Ji z050qa0`7pw2jGkB<$;KsM%jl0;U+)XyPX$fm=E}e06Z-7IF*6KRy}xG-m9yjPQaiU zy^bT&GAyEPjZ&!l(r=TSNgij}uw)_j#9&+Y4cfsYv{jeH#id^V*6~v3^#HASsDpEK z3rL<~>o3-t)T`?&_>duvw7kXEysYCjc|#;JBod&Q^1-&IMW~!a1sRT@NT}##l)fMj zRIx7-%u@|-xV*p*^(di50!4lY7R_~n&s*jjfi(+wjZ)JjA6Y{_pSO!zhA5Uxv=rzB z^Hrc=RG|`SJ9!s6LDNwsi2x-F`V}~!TZvi|91Y*)$BJi}P0cGkC9>ckWGf=NXp<8! zFfv#w&lz-Lk0Kb_ct+TX0BuIqBLcJuvM)9@^3}QE?LX&vKl{Z`QoO>o&?a_dM?|1ftK#_Cuq>Th@yM(aMS!(PoEl>v?s0Fn0 zNco^rd4NfG*RcQCHlwiuc)%#Qn5YEn15$+%q{+h`Oka2R#3_&(hFt;BBDf+r*g0p4 zVWcoAsA4+E_OZXeyMAHtD&#dN2OP14p+;(Niuj>{Px3=iKPd`o59JF-(MrjWW%Bie z+Q5R2qo|)0WoPbg&ieE72GZPz5bA#%|+}KYYvnE_}Zcuyjn;`J7bUYPv zw~U>eoysm^x8CcoIm0b>&IxC@!a<=9UfQ(1wjJm=4qv*A(j}IW-MoE%w!-lB6_UD# zaz=$wHQGl~sW9qC`x5oTqy2X3cZ~LB>PJWWN$Tq(eH z@Edi2ahG%eP4<7@x%< z*_(HMXH&!>*-Kv^D5W`hs+iJ1EmfCxFDG@-QP~5fk=RDVc|_eHCI13%IjM`YVM(qE zw6hEMPKYBN_DOC!viXfIeGz|%3pn-;Q}7n-E=Bt!AMvx9Lv>la*o!>tq@OYRf;zfc zxr#aM#KanesgUsvg_P^vF^DCv6=8GxJ;#~`{^ggum(&vJd?iZ%&nUMb{wm1Bbs zyKHv@T%r;mJ|raffFvSyUmW_w6{Y7y#0MRmNpGhv_KWoxx=}oBGI7U5;j2At#*Ul1 zh99DBk?sTYc+J7oxnQZnqaYb>Rk#SXjbjcM4oZUIQib=ZKDV2l*)dx<@KElD9SwBj zZP+EFyn5Hm?8^Ibi_5)!|7QZ7mXALeXBwpCZrd}Rziwzx@ta*<(2v}RMF<*mAr_Nd0P;S9J@h5d z!-<^^;UYW#P-m@k??*=E91JABkv^%gnR}1oM*HF32McF^cKf~?=^M_!?Q4^V9ZkrP zye1M_FsTJq-XzQ~;oGGQf<#})n)l26Gwk~P@#>+yc_VOLq7RQy>H+q|{*LkkpyTe& z{(C>Ze=#51hH@ucit>LL-HsO?xTz9e!5gp8MOY9g1}_iz6AZFAEEzOfnG$GYFNrmL`?{PSwNV3rP;l{++1h#|JXb)xBIDy zycpMQOV?s@(#j}W)J(8fpKcSaWFjr=T2j|kRf)xP_Sw^yi?O(sOs5oCR+0(RmNho# z8Cz7Yg*91vO517%B2_b)N$4i~{P1KkrP^}bO51W&)8u&4VvR@I#8?K_nz2OG zO4xA}?Ajxem@s8q$0SiRqp7+UXZIXYMO{&>Of04*V#$PNYf1Lbk?TY~6OWnccsd0f zOf!*YQ;*(IDQ9e3iK{W)j466TV|$KjqGiiUBAU?Tw5cRDJ;r`{^!;(kXgs0lX+0f{ z>are-P3dM;$LrYHV|Ah)(=^SpGFrw|WlK-7Z;s_e&CKYDR3c`ZaVrti)9h!*SBj>t zB$JvP(^9Htr%a8-o;`xq#v)niq>`|(I z6H}|w=|nne>6t{_PRTJ@kF(P!ls45iHPcKcVkz6Q;&LoeUHlbkg}r6d!0Ppbt5bt& zPJHeZ->fAwrfFuPB-Bc!ZEfuDPRX}&RnI-ev!RpYn#_zEgX^iXmWqh`Z7(#9kLpQ1k<8fSSZX33ojtIkW#RSg+N0xH z<%{#hn4C%3siXxTfO<-doqR!Sw{*p_5@{=LDyf8?lINDKv)2vUo4Tn^ZMeg5>UA6b EAI8@B6951J diff --git a/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 36962bb6a13a887a90a601b19437244038d86f68..4fbcc974d009df0e7d334462296e80ed16a01032 100644 GIT binary patch delta 96871 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

BV_%M>uv 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 LtA2(b^sN3L%9R@7 delta 93987 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