diff --git a/.circleci/config.yml b/.circleci/config.yml index ff6231de9f29..337cce151a4b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ version: 2.1 parameters: msrv-version: type: string - default: "1.52.1" + default: "1.55.0" executors: linux-executor: diff --git a/Cargo.lock b/Cargo.lock index 384770403b9e..0f4f44041571 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -22,7 +22,7 @@ dependencies = [ "forest_json_utils", "forest_vm", "ipld_blockstore", - "libp2p 0.35.1", + "libp2p", "serde", ] @@ -47,18 +47,16 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331" dependencies = [ - "generic-array 0.14.4", + "generic-array", ] [[package]] -name = "aes" -version = "0.5.0" +name = "aead" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd2bc6d3f370b5666245ff421e231cba4353df936e26986d2918e61a8fd6aef6" +checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877" dependencies = [ - "aes-soft 0.5.0", - "aesni 0.8.0", - "block-cipher", + "generic-array", ] [[package]] @@ -67,22 +65,21 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "884391ef1066acaa41e766ba8f596341b96e93ce34f9a43e7d24bf0a0eaf0561" dependencies = [ - "aes-soft 0.6.4", - "aesni 0.10.0", - "cipher", + "aes-soft", + "aesni", + "cipher 0.2.5", ] [[package]] -name = "aes-gcm" -version = "0.7.0" +name = "aes" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0301c9e9c443494d970a07885e8cf3e587bae8356a1d5abd0999068413f7205f" +checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" dependencies = [ - "aead", - "aes 0.5.0", - "block-cipher", - "ghash", - "subtle 2.4.1", + "cfg-if 1.0.0", + "cipher 0.3.0", + "cpufeatures 0.2.1", + "opaque-debug", ] [[package]] @@ -91,23 +88,26 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5278b5fabbb9bd46e24aa69b2fdea62c99088e0a950a9be40e3e0101298f88da" dependencies = [ - "aead", + "aead 0.3.2", "aes 0.6.0", - "cipher", - "ctr", - "ghash", - "subtle 2.4.1", + "cipher 0.2.5", + "ctr 0.6.0", + "ghash 0.3.1", + "subtle", ] [[package]] -name = "aes-soft" -version = "0.5.0" +name = "aes-gcm" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63dd91889c49327ad7ef3b500fd1109dbd3c509a03db0d4a9ce413b79f575cb6" +checksum = "df5f85a83a7d8b0442b6aa7b504b8212c1733da07b98aae43d4bc21b2cb3cdf6" dependencies = [ - "block-cipher", - "byteorder 1.4.3", - "opaque-debug 0.3.0", + "aead 0.4.3", + "aes 0.7.5", + "cipher 0.3.0", + "ctr 0.8.0", + "ghash 0.4.4", + "subtle", ] [[package]] @@ -116,18 +116,8 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be14c7498ea50828a38d0e24a765ed2effe92a705885b57d029cd67d45744072" dependencies = [ - "cipher", - "opaque-debug 0.3.0", -] - -[[package]] -name = "aesni" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6fe808308bb07d393e2ea47780043ec47683fcf19cf5efc8ca51c50cc8c68a" -dependencies = [ - "block-cipher", - "opaque-debug 0.3.0", + "cipher 0.2.5", + "opaque-debug", ] [[package]] @@ -136,8 +126,8 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ea2e11f5e94c2f7d386164cc2aa1f97823fed6f259e486940a71c174dd01b0ce" dependencies = [ - "cipher", - "opaque-debug 0.3.0", + "cipher 0.2.5", + "opaque-debug", ] [[package]] @@ -167,6 +157,17 @@ dependencies = [ "version_check", ] +[[package]] +name = "ahash" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "991984e3fd003e7ba02eb724f87a0f997b78677c46c0e91f8424ad7394c9886a" +dependencies = [ + "getrandom 0.2.3", + "once_cell", + "version_check", +] + [[package]] name = "aho-corasick" version = "0.7.18" @@ -214,22 +215,9 @@ checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" [[package]] name = "asn1_der" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fce6b6a0ffdafebd82c87e79e3f40e8d2c523e5fea5566ff6b90509bf98d638" -dependencies = [ - "asn1_der_derive", -] - -[[package]] -name = "asn1_der_derive" -version = "0.1.2" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d0864d84b8e07b145449be9a8537db86bf9de5ce03b913214694643b4743502" -dependencies = [ - "quote 1.0.9", - "syn 1.0.73", -] +checksum = "e22d1f4b888c298a027c99dc9048015fac177587de20fc30232a057dfbe24a21" [[package]] name = "async-attributes" @@ -416,7 +404,7 @@ dependencies = [ "rand 0.7.3", "serde", "serde_json", - "sha2 0.9.5", + "sha2", ] [[package]] @@ -462,6 +450,20 @@ dependencies = [ "wasm-bindgen-futures", ] +[[package]] +name = "async-std-resolver" +version = "0.20.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed4e2c3da14d8ad45acb1e3191db7a918e9505b6f155b218e70a7c9a1a48c638" +dependencies = [ + "async-std", + "async-trait", + "futures-io", + "futures-util", + "pin-utils", + "trust-dns-resolver", +] + [[package]] name = "async-task" version = "4.0.3" @@ -606,7 +608,7 @@ dependencies = [ "hex", "serde", "serde_json", - "sha2 0.9.5", + "sha2", "surf", ] @@ -622,7 +624,7 @@ dependencies = [ "blstrs 0.3.0", "byteorder 1.4.3", "crossbeam-channel", - "digest 0.9.0", + "digest", "fff 0.3.1", "groupy 0.4.1", "itertools 0.9.0", @@ -635,11 +637,17 @@ dependencies = [ "rayon", "rustc-hash", "serde", - "sha2 0.9.5", + "sha2", "thiserror", "yastl", ] +[[package]] +name = "bimap" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50ae17cabbc8a38a1e3e4c1a6a664e9a09672dc14d0896fa8d865d3a5a446b07" + [[package]] name = "bincode" version = "1.3.3" @@ -697,8 +705,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "10a5720225ef5daecf08657f23791354e1685a8c91a4c60c7f3d3b2892f978f4" dependencies = [ "crypto-mac 0.8.0", - "digest 0.9.0", - "opaque-debug 0.3.0", + "digest", + "opaque-debug", ] [[package]] @@ -735,19 +743,7 @@ dependencies = [ "cfg-if 0.1.10", "constant_time_eq", "crypto-mac 0.8.0", - "digest 0.9.0", -] - -[[package]] -name = "block-buffer" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" -dependencies = [ - "block-padding 0.1.5", - "byte-tools", - "byteorder 1.4.3", - "generic-array 0.12.4", + "digest", ] [[package]] @@ -756,17 +752,8 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" dependencies = [ - "block-padding 0.2.1", - "generic-array 0.14.4", -] - -[[package]] -name = "block-cipher" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f337a3e6da609650eb74e02bc9fac7b735049f7623ab12f2e4c719316fcc7e80" -dependencies = [ - "generic-array 0.14.4", + "block-padding", + "generic-array", ] [[package]] @@ -775,17 +762,8 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57a0e8073e8baa88212fb5823574c02ebccb395136ba9a164ab89379ec6072f0" dependencies = [ - "block-padding 0.2.1", - "cipher", -] - -[[package]] -name = "block-padding" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" -dependencies = [ - "byte-tools", + "block-padding", + "cipher 0.2.5", ] [[package]] @@ -821,7 +799,7 @@ dependencies = [ "hkdf", "paired", "rand_core 0.5.1", - "sha2 0.9.5", + "sha2", "thiserror", ] @@ -902,12 +880,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65c1bf4a04a88c54f589125563643d773f3254b5c38571395e2b591c693bbc81" -[[package]] -name = "byte-tools" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" - [[package]] name = "byte-unit" version = "4.0.12" @@ -988,24 +960,26 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chacha20" -version = "0.5.0" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "244fbce0d47e97e8ef2f63b81d5e05882cb518c68531eb33194990d7b7e85845" +checksum = "f08493fa7707effc63254c66c6ea908675912493cd67952eda23c09fae2610b1" dependencies = [ - "stream-cipher", + "cfg-if 1.0.0", + "cipher 0.3.0", + "cpufeatures 0.2.1", "zeroize", ] [[package]] name = "chacha20poly1305" -version = "0.6.0" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bf18d374d66df0c05cdddd528a7db98f78c28e2519b120855c4f84c5027b1f5" +checksum = "b6547abe025f4027edacd9edaa357aded014eecec42a5070d9b885c3c334aba2" dependencies = [ - "aead", + "aead 0.4.3", "chacha20", + "cipher 0.3.0", "poly1305", - "stream-cipher", "zeroize", ] @@ -1038,8 +1012,8 @@ dependencies = [ "lazy_static", "lockfree", "log", - "lru", - "multihash", + "lru 0.6.5", + "multihash 0.13.2", "networks", "num-traits", "serde", @@ -1083,9 +1057,9 @@ dependencies = [ "ipld_blockstore", "ipld_hamt 2.0.0", "lazy_static", - "libp2p 0.35.1", + "libp2p", "log", - "lru", + "lru 0.6.5", "message_pool", "networks", "num-traits", @@ -1122,7 +1096,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff0e3bc0b6446b3f9663c1a6aba6ef06c5aeaa1bc92bd18077be337198ab9768" dependencies = [ "multibase 0.8.0", - "multihash", + "multihash 0.13.2", "unsigned-varint 0.5.1", ] @@ -1132,7 +1106,16 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801" dependencies = [ - "generic-array 0.14.4", + "generic-array", +] + +[[package]] +name = "cipher" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" +dependencies = [ + "generic-array", ] [[package]] @@ -1266,7 +1249,7 @@ dependencies = [ "hmac 0.10.1", "percent-encoding", "rand 0.8.4", - "sha2 0.9.5", + "sha2", "time 0.2.27", "version_check", ] @@ -1280,6 +1263,15 @@ dependencies = [ "libc", ] +[[package]] +name = "cpufeatures" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95059428f66df56b63431fdb4e1947ed2190586af5c5a8a8b71122bdf5a7f469" +dependencies = [ + "libc", +] + [[package]] name = "cpuid-bool" version = "0.1.2" @@ -1411,24 +1403,14 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" -[[package]] -name = "crypto-mac" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" -dependencies = [ - "generic-array 0.12.4", - "subtle 1.0.0", -] - [[package]] name = "crypto-mac" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" dependencies = [ - "generic-array 0.14.4", - "subtle 2.4.1", + "generic-array", + "subtle", ] [[package]] @@ -1437,8 +1419,8 @@ version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bff07008ec701e8028e2ceb8f83f0e4274ee62bd2dbdc4fefff2e9a91824081a" dependencies = [ - "generic-array 0.14.4", - "subtle 2.4.1", + "generic-array", + "subtle", ] [[package]] @@ -1498,7 +1480,16 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fb4a30d54f7443bf3d6191dcd486aca19e67cb3c49fa7a06a319966346707e7f" dependencies = [ - "cipher", + "cipher 0.2.5", +] + +[[package]] +name = "ctr" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea" +dependencies = [ + "cipher 0.3.0", ] [[package]] @@ -1511,6 +1502,17 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "cuckoofilter" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b810a8449931679f64cd7eef1bbd0fa315801b6d5d9cdc1ace2804d6529eee18" +dependencies = [ + "byteorder 1.4.3", + "fnv", + "rand 0.7.3", +] + [[package]] name = "curl" version = "0.4.38" @@ -1549,9 +1551,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "639891fde0dbea823fc3d798a0fdf9d2f9440a42d64a78ab3488b0ca025117b3" dependencies = [ "byteorder 1.4.3", - "digest 0.9.0", + "digest", "rand_core 0.5.1", - "subtle 2.4.1", + "subtle", "zeroize", ] @@ -1657,22 +1659,13 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198" -[[package]] -name = "digest" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" -dependencies = [ - "generic-array 0.12.4", -] - [[package]] name = "digest" version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" dependencies = [ - "generic-array 0.14.4", + "generic-array", ] [[package]] @@ -1711,6 +1704,12 @@ dependencies = [ "quick-error", ] +[[package]] +name = "dtoa" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0" + [[package]] name = "ed25519" version = "1.1.1" @@ -1730,7 +1729,7 @@ dependencies = [ "ed25519", "rand 0.7.3", "serde", - "sha2 0.9.5", + "sha2", "zeroize", ] @@ -1749,6 +1748,18 @@ dependencies = [ "cfg-if 1.0.0", ] +[[package]] +name = "enum-as-inner" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c5f0096a91d210159eceb2ff5e1c4da18388a170e1e3ce948aac9c8fdbbf595" +dependencies = [ + "heck", + "proc-macro2 1.0.27", + "quote 1.0.9", + "syn 1.0.73", +] + [[package]] name = "env_logger" version = "0.7.1" @@ -1929,14 +1940,14 @@ dependencies = [ "anyhow", "bellperson", "fff 0.3.1", - "generic-array 0.14.4", + "generic-array", "hex", "lazy_static", "merkletree", "neptune", "rand 0.7.3", "serde", - "sha2 0.9.5", + "sha2", ] [[package]] @@ -1957,7 +1968,7 @@ dependencies = [ "fil_logger", "filecoin-hashers", "fr32", - "generic-array 0.14.4", + "generic-array", "groupy 0.4.1", "hex", "itertools 0.9.0", @@ -1971,7 +1982,7 @@ dependencies = [ "rayon", "serde", "serde_json", - "sha2 0.9.5", + "sha2", "storage-proofs-core", "storage-proofs-porep", "storage-proofs-post", @@ -2000,6 +2011,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" +[[package]] +name = "fixedbitset" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "398ea4fabe40b9b0d885340a2a991a44c8a645624075ad966d21f88688e2b69e" + [[package]] name = "flate2" version = "1.0.20" @@ -2083,7 +2100,7 @@ dependencies = [ "ipld_blockstore", "jsonrpc-v2", "key_management", - "libp2p 0.35.1", + "libp2p", "log", "message_pool", "metrics", @@ -2274,7 +2291,7 @@ dependencies = [ "ipld_blockstore", "ipld_hamt 2.0.0", "lazy_static", - "libp2p 0.35.1", + "libp2p", "log", "num-derive", "num-traits", @@ -2348,7 +2365,7 @@ dependencies = [ "once_cell", "serde", "serde_json", - "sha2 0.9.5", + "sha2", "test_utils", "thiserror", ] @@ -2376,10 +2393,10 @@ dependencies = [ "cs_serde_bytes", "cs_serde_cbor", "forest_json_utils", - "generic-array 0.14.4", + "generic-array", "integer-encoding 3.0.2", "multibase 0.9.1", - "multihash", + "multihash 0.13.2", "serde", "serde_json", ] @@ -2392,7 +2409,7 @@ dependencies = [ "bls-signatures", "forest_address", "forest_encoding", - "libsecp256k1 0.6.0", + "libsecp256k1", "num-derive", "num-traits", "rand 0.7.3", @@ -2487,10 +2504,10 @@ dependencies = [ "git-version", "ipld_blockstore", "lazy_static", - "libp2p 0.35.1", + "libp2p", "libp2p-bitswap", "log", - "multihash", + "multihash 0.13.2", "networks", "serde", "smallvec", @@ -2747,15 +2764,6 @@ dependencies = [ "byteorder 1.4.3", ] -[[package]] -name = "generic-array" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd" -dependencies = [ - "typenum", -] - [[package]] name = "generic-array" version = "0.14.4" @@ -2815,8 +2823,18 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97304e4cd182c3846f7575ced3890c53012ce534ad9114046b0a9e00bb30a375" dependencies = [ - "opaque-debug 0.3.0", - "polyval", + "opaque-debug", + "polyval 0.4.5", +] + +[[package]] +name = "ghash" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1583cc1656d7839fd3732b80cf4f38850336cdb9b8ded1cd399ca62958de3c99" +dependencies = [ + "opaque-debug", + "polyval 0.5.3", ] [[package]] @@ -2921,6 +2939,9 @@ name = "hashbrown" version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" +dependencies = [ + "ahash 0.7.5", +] [[package]] name = "heck" @@ -2958,20 +2979,10 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "51ab2f639c231793c5f6114bdb9bbe50a7dbbfcd7c7c6bd8475dec2d991e964f" dependencies = [ - "digest 0.9.0", + "digest", "hmac 0.10.1", ] -[[package]] -name = "hmac" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dcb5e64cda4c23119ab41ba960d1e170a774c8e4b9d9e6a9bc18aabf5e59695" -dependencies = [ - "crypto-mac 0.7.0", - "digest 0.8.1", -] - [[package]] name = "hmac" version = "0.8.1" @@ -2979,7 +2990,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" dependencies = [ "crypto-mac 0.8.0", - "digest 0.9.0", + "digest", ] [[package]] @@ -2989,29 +3000,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1441c6b1e930e2817404b5046f1f989899143a12bf92de603b69f4e0aee1e15" dependencies = [ "crypto-mac 0.10.1", - "digest 0.9.0", + "digest", ] [[package]] name = "hmac-drbg" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6e570451493f10f6581b48cdd530413b63ea9e780f544bfd3bdcaa0d89d1a7b" +checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" dependencies = [ - "digest 0.8.1", - "generic-array 0.12.4", - "hmac 0.7.1", + "digest", + "generic-array", + "hmac 0.8.1", ] [[package]] -name = "hmac-drbg" -version = "0.3.0" +name = "hostname" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" +checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" dependencies = [ - "digest 0.9.0", - "generic-array 0.14.4", - "hmac 0.8.1", + "libc", + "match_cfg", + "winapi 0.3.9", ] [[package]] @@ -3117,9 +3128,9 @@ dependencies = [ [[package]] name = "if-watch" -version = "0.1.8" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97b8538953a3f0d0d3868f0a706eb4273535e10d72acb5c82c1c23ae48835c85" +checksum = "ae8ab7f67bad3240049cb24fb9cb0b4c2c6af4c245840917fbbdededeee91179" dependencies = [ "async-io", "futures", @@ -3214,6 +3225,18 @@ dependencies = [ "state_tree", ] +[[package]] +name = "ipconfig" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7e2f18aece9709094573a9f24f483c4f65caa4298e2f7ae1b71cc65d853fad7" +dependencies = [ + "socket2 0.3.19", + "widestring", + "winapi 0.3.9", + "winreg", +] + [[package]] name = "ipld_amt" version = "0.2.1" @@ -3292,7 +3315,7 @@ dependencies = [ "ipld_blockstore", "lazycell", "serde", - "sha2 0.9.5", + "sha2", "thiserror", ] @@ -3312,7 +3335,7 @@ dependencies = [ "ipld_blockstore", "once_cell", "serde", - "sha2 0.9.5", + "sha2", "thiserror", ] @@ -3332,7 +3355,7 @@ dependencies = [ "ipld_blockstore", "once_cell", "serde", - "sha2 0.9.5", + "sha2", "thiserror", "unsigned-varint 0.6.0", ] @@ -3353,7 +3376,7 @@ dependencies = [ "ipld_blockstore", "once_cell", "serde", - "sha2 0.9.5", + "sha2", "thiserror", ] @@ -3505,7 +3528,7 @@ dependencies = [ "forest_address", "forest_crypto", "forest_encoding", - "libsecp256k1 0.6.0", + "libsecp256k1", "log", "rand 0.7.3", "serde", @@ -3558,9 +3581,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.98" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790" +checksum = "dd8f7255a17a627354f321ef0055d63b898c6fb27eff628af4d1b66b7331edf6" [[package]] name = "libloading" @@ -3590,50 +3613,39 @@ dependencies = [ [[package]] name = "libp2p" -version = "0.34.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5133112ce42be9482f6a87be92a605dd6bbc9e93c297aee77d172ff06908f3a" -dependencies = [ - "atomic", - "bytes 1.0.1", - "futures", - "lazy_static", - "libp2p-core", - "libp2p-core-derive", - "libp2p-swarm", - "parity-multiaddr", - "parking_lot", - "pin-project 1.0.7", - "smallvec", - "wasm-timer", -] - -[[package]] -name = "libp2p" -version = "0.35.1" +version = "0.40.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc225a49973cf9ab10d0cdd6a4b8f0cda299df9b760824bbb623f15f8f0c95a" +checksum = "8f428eafa931a28f3aaac8d35d03df815f4dca34b7333b12db2f04ae729a7bee" dependencies = [ "atomic", "bytes 1.0.1", "futures", "lazy_static", "libp2p-core", + "libp2p-deflate", "libp2p-dns", + "libp2p-floodsub", "libp2p-gossipsub", "libp2p-identify", "libp2p-kad", "libp2p-mdns", + "libp2p-metrics", "libp2p-mplex", "libp2p-noise", "libp2p-ping", + "libp2p-plaintext", + "libp2p-pnet", + "libp2p-relay", + "libp2p-rendezvous", "libp2p-request-response", "libp2p-swarm", "libp2p-swarm-derive", "libp2p-tcp", + "libp2p-uds", + "libp2p-wasm-ext", "libp2p-websocket", "libp2p-yamux", - "parity-multiaddr", + "multiaddr", "parking_lot", "pin-project 1.0.7", "smallvec", @@ -3643,15 +3655,15 @@ dependencies = [ [[package]] name = "libp2p-bitswap" version = "0.6.1" -source = "git+https://github.com/ChainSafe/libp2p-bitswap?rev=1ee048077cfdfc0a3bb16b236c0c308b1c4b52fa#1ee048077cfdfc0a3bb16b236c0c308b1c4b52fa" +source = "git+https://github.com/ChainSafe/libp2p-bitswap?rev=8d3913ea7fc1e693776c83eecc7a9675c3426446#8d3913ea7fc1e693776c83eecc7a9675c3426446" dependencies = [ "async-std", "fnv", "futures", - "libp2p 0.34.0", + "libp2p", "log", - "prost 0.7.0", - "prost-build 0.6.1", + "prost 0.8.0", + "prost-build 0.8.0", "thiserror", "tiny-cid", "tiny-multihash", @@ -3660,9 +3672,9 @@ dependencies = [ [[package]] name = "libp2p-core" -version = "0.27.1" +version = "0.30.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a2d56aadc2c2bf22cd7797f86e56a65b5b3994a0136b65be3106938acae7a26" +checksum = "79b64b3e139714a65dbae2462e77fe7e46de160a9bd10d973b383313a1054a47" dependencies = [ "asn1_der", "bs58", @@ -3672,19 +3684,19 @@ dependencies = [ "futures", "futures-timer", "lazy_static", - "libsecp256k1 0.3.5", + "libsecp256k1", "log", - "multihash", + "multiaddr", + "multihash 0.14.0", "multistream-select", - "parity-multiaddr", "parking_lot", "pin-project 1.0.7", - "prost 0.7.0", - "prost-build 0.7.0", + "prost 0.9.0", + "prost-build 0.9.0", "rand 0.7.3", "ring", "rw-stream-sink", - "sha2 0.9.5", + "sha2", "smallvec", "thiserror", "unsigned-varint 0.7.0", @@ -3693,31 +3705,53 @@ dependencies = [ ] [[package]] -name = "libp2p-core-derive" -version = "0.21.0" +name = "libp2p-deflate" +version = "0.30.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4bc40943156e42138d22ed3c57ff0e1a147237742715937622a99b10fbe0156" +checksum = "1ca0b876d0629bd9aa2dbb2b370d602581b2d732e2b965534208b25c378319f6" dependencies = [ - "quote 1.0.9", - "syn 1.0.73", + "flate2", + "futures", + "libp2p-core", ] [[package]] name = "libp2p-dns" -version = "0.27.0" +version = "0.30.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a3756d04f91224c95ca24d2894e6b180f5465f1ed0f03d070f77bfd74c527b9" +dependencies = [ + "async-std-resolver", + "futures", + "libp2p-core", + "log", + "smallvec", + "trust-dns-resolver", +] + +[[package]] +name = "libp2p-floodsub" +version = "0.31.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5153b6db68fd4baa3b304e377db744dd8fea8ff4e4504509ee636abcde88d3e3" +checksum = "ea3b04ed3ff6c94d0cac858e1dd2c79e214cc6269b0e61d1ff57c6daaa1be904" dependencies = [ + "cuckoofilter", + "fnv", "futures", "libp2p-core", + "libp2p-swarm", "log", + "prost 0.9.0", + "prost-build 0.9.0", + "rand 0.7.3", + "smallvec", ] [[package]] name = "libp2p-gossipsub" -version = "0.28.0" +version = "0.33.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "502dc5fcbfec4aa1c63ef3f7307ffe20e90c1a1387bf23ed0bec087f2dde58a1" +checksum = "d02524892b942932f1aa59f729ecc1781ed0680379e6752d5e6e373791f4bd16" dependencies = [ "asynchronous-codec", "base64 0.13.0", @@ -3729,11 +3763,11 @@ dependencies = [ "libp2p-core", "libp2p-swarm", "log", - "prost 0.7.0", - "prost-build 0.7.0", + "prost 0.9.0", + "prost-build 0.9.0", "rand 0.7.3", "regex", - "sha2 0.9.5", + "sha2", "smallvec", "unsigned-varint 0.7.0", "wasm-timer", @@ -3741,25 +3775,26 @@ dependencies = [ [[package]] name = "libp2p-identify" -version = "0.27.0" +version = "0.31.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b40fb36a059b7a8cce1514bd8b546fa612e006c9937caa7f5950cb20021fe91e" +checksum = "f5171764e0957b37a8ba85cbd146b7acde0479d9fa5f293658e470c443171bd3" dependencies = [ "futures", "libp2p-core", "libp2p-swarm", "log", - "prost 0.7.0", - "prost-build 0.7.0", + "lru 0.6.5", + "prost 0.9.0", + "prost-build 0.9.0", "smallvec", "wasm-timer", ] [[package]] name = "libp2p-kad" -version = "0.28.1" +version = "0.32.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf3da6c9acbcc05f93235d201d7d45ef4e8b88a45d8836f98becd8b4d443f066" +checksum = "9e1ef3be40e0b26c24ba27fabf30fec1b464d64d16e0e71a5b33bb4bd2772db4" dependencies = [ "arrayvec", "asynchronous-codec", @@ -3770,10 +3805,10 @@ dependencies = [ "libp2p-core", "libp2p-swarm", "log", - "prost 0.7.0", - "prost-build 0.7.0", + "prost 0.9.0", + "prost-build 0.9.0", "rand 0.7.3", - "sha2 0.9.5", + "sha2", "smallvec", "uint", "unsigned-varint 0.7.0", @@ -3783,9 +3818,9 @@ dependencies = [ [[package]] name = "libp2p-mdns" -version = "0.28.1" +version = "0.32.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e9e6374814d1b118d97ccabdfc975c8910bd16dc38a8bc058eeb08bf2080fe1" +checksum = "0e0b09025310a86ffc63d92f26b86d15599c984c708f39feb01c6e970d4309f1" dependencies = [ "async-io", "data-encoding", @@ -3796,17 +3831,31 @@ dependencies = [ "libp2p-core", "libp2p-swarm", "log", - "rand 0.7.3", + "rand 0.8.4", "smallvec", - "socket2 0.3.19", + "socket2 0.4.0", "void", ] +[[package]] +name = "libp2p-metrics" +version = "0.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20d8a654f4b4da33d2dd1fa4e060c7ac09e34b01882b08aa114176a40ec371c6" +dependencies = [ + "libp2p-core", + "libp2p-identify", + "libp2p-kad", + "libp2p-ping", + "libp2p-swarm", + "open-metrics-client", +] + [[package]] name = "libp2p-mplex" -version = "0.27.1" +version = "0.30.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350ce8b3923594aedabd5d6e3f875d058435052a29c3f32df378bc70d10be464" +checksum = "c7f221b185fa4e0b49510699e886072a646e31214d1b76d03d3220f5cd48f603" dependencies = [ "asynchronous-codec", "bytes 1.0.1", @@ -3822,9 +3871,9 @@ dependencies = [ [[package]] name = "libp2p-noise" -version = "0.29.0" +version = "0.33.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4aca322b52a0c5136142a7c3971446fb1e9964923a526c9cc6ef3b7c94e57778" +checksum = "8ce91ef34c441d507745b137d51f00a49fb83a3229ec560ecb1c0fe7fde5a65b" dependencies = [ "bytes 1.0.1", "curve25519-dalek", @@ -3832,10 +3881,10 @@ dependencies = [ "lazy_static", "libp2p-core", "log", - "prost 0.7.0", - "prost-build 0.7.0", - "rand 0.7.3", - "sha2 0.9.5", + "prost 0.9.0", + "prost-build 0.9.0", + "rand 0.8.4", + "sha2", "snow", "static_assertions", "x25519-dalek", @@ -3844,9 +3893,9 @@ dependencies = [ [[package]] name = "libp2p-ping" -version = "0.27.0" +version = "0.31.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f3813276d0708c8db0f500d8beda1bda9ad955723b9cb272c41f4727256f73c" +checksum = "9bff0999bc990d3f176e812b7d25e593cafb36b70a77db1cb3abde2fda542ca5" dependencies = [ "futures", "libp2p-core", @@ -3858,34 +3907,109 @@ dependencies = [ ] [[package]] -name = "libp2p-request-response" -version = "0.9.1" +name = "libp2p-plaintext" +version = "0.30.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10e5552827c33d8326502682da73a0ba4bfa40c1b55b216af3c303f32169dd89" +checksum = "364eb2b647652682f5e629fabf5d401f870e0fcee7a63c7333f4c185829bb491" dependencies = [ - "async-trait", + "asynchronous-codec", "bytes 1.0.1", "futures", "libp2p-core", - "libp2p-swarm", "log", - "lru", - "minicbor", - "rand 0.7.3", - "smallvec", + "prost 0.9.0", + "prost-build 0.9.0", "unsigned-varint 0.7.0", - "wasm-timer", + "void", ] [[package]] -name = "libp2p-swarm" -version = "0.27.2" +name = "libp2p-pnet" +version = "0.22.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7955b973e1fd2bd61ffd43ce261c1223f61f4aacd5bae362a924993f9a25fd98" +checksum = "015a7bff2a2e5622efd75cec30dd61205c1f29590d9faedb921b355afc0e94df" dependencies = [ - "either", "futures", - "libp2p-core", + "log", + "pin-project 1.0.7", + "rand 0.7.3", + "salsa20", + "sha3", +] + +[[package]] +name = "libp2p-relay" +version = "0.4.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3150ebdb83d65e2663e5378d012ceac2393ea6a92c9fa34ed786f92a1917a65b" +dependencies = [ + "asynchronous-codec", + "bytes 1.0.1", + "futures", + "futures-timer", + "libp2p-core", + "libp2p-swarm", + "log", + "pin-project 1.0.7", + "prost 0.9.0", + "prost-build 0.9.0", + "rand 0.7.3", + "smallvec", + "unsigned-varint 0.7.0", + "void", + "wasm-timer", +] + +[[package]] +name = "libp2p-rendezvous" +version = "0.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c050a515b297f82d3699522787eb0d69595d186a9b1b88d4059ad433e4c0496" +dependencies = [ + "asynchronous-codec", + "bimap", + "futures", + "libp2p-core", + "libp2p-swarm", + "log", + "prost 0.9.0", + "prost-build 0.9.0", + "rand 0.8.4", + "sha2", + "thiserror", + "unsigned-varint 0.7.0", + "void", + "wasm-timer", +] + +[[package]] +name = "libp2p-request-response" +version = "0.13.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10e0e9c3519e8fdc23f146ac9ba1b346ba7c175c93ef09945a7ebd309653fa05" +dependencies = [ + "async-trait", + "bytes 1.0.1", + "futures", + "libp2p-core", + "libp2p-swarm", + "log", + "lru 0.7.0", + "rand 0.7.3", + "smallvec", + "unsigned-varint 0.7.0", + "wasm-timer", +] + +[[package]] +name = "libp2p-swarm" +version = "0.31.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ebaa726a322c375a745bf2b1043edd56ccf8f4b0ca512f7b10f80a7a8de7120" +dependencies = [ + "either", + "futures", + "libp2p-core", "log", "rand 0.7.3", "smallvec", @@ -3895,9 +4019,9 @@ dependencies = [ [[package]] name = "libp2p-swarm-derive" -version = "0.22.0" +version = "0.25.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c564ebaa36a64839f51eaddb0243aaaa29ce64affb56129193cc3248b72af273" +checksum = "0a4d34b88c742b903813bb1fc5b87cc42f9da29314c9eba35abb2eb5d31a0588" dependencies = [ "quote 1.0.9", "syn 1.0.73", @@ -3905,9 +4029,9 @@ dependencies = [ [[package]] name = "libp2p-tcp" -version = "0.27.1" +version = "0.30.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88a5aef80e519a6cb8e2663605142f97baaaea1a252eecbf8756184765f7471b" +checksum = "0431b74198d05004a706b78fd5f7d217d15fbacd2b8e4d116ade24d5510992b3" dependencies = [ "async-io", "futures", @@ -3917,14 +4041,40 @@ dependencies = [ "libc", "libp2p-core", "log", - "socket2 0.3.19", + "socket2 0.4.0", +] + +[[package]] +name = "libp2p-uds" +version = "0.30.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad64777bf52a1e325de44b74e7a3e4278b52c8ef40c8d8aff9dc80fd1dd351de" +dependencies = [ + "async-std", + "futures", + "libp2p-core", + "log", +] + +[[package]] +name = "libp2p-wasm-ext" +version = "0.30.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87c721571ab627ad4c584543bafb18783bc296f11490cdfd68531da73cf9a69b" +dependencies = [ + "futures", + "js-sys", + "libp2p-core", + "parity-send-wrapper", + "wasm-bindgen", + "wasm-bindgen-futures", ] [[package]] name = "libp2p-websocket" -version = "0.28.0" +version = "0.31.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3b1c6a3431045da8b925ed83384e4c5163e14b990572307fca9c507435d4d22" +checksum = "262e768479476a4b8ac4eb2714a4cdcaf642edf3a515ba10f30751dbd0c4353c" dependencies = [ "either", "futures", @@ -3940,9 +4090,9 @@ dependencies = [ [[package]] name = "libp2p-yamux" -version = "0.30.1" +version = "0.34.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4819358c542a86ff95f6ae691efb4b94ddaf477079b01a686f5705b79bfc232a" +checksum = "f2569b1509317a854e124c4e9266415195def3184c865423e01c39ed0cf07351" dependencies = [ "futures", "libp2p-core", @@ -3963,22 +4113,6 @@ dependencies = [ "libc", ] -[[package]] -name = "libsecp256k1" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fc1e2c808481a63dc6da2074752fdd4336a3c8fcc68b83db6f1fd5224ae7962" -dependencies = [ - "arrayref", - "crunchy", - "digest 0.8.1", - "hmac-drbg 0.2.0", - "rand 0.7.3", - "sha2 0.8.2", - "subtle 2.4.1", - "typenum", -] - [[package]] name = "libsecp256k1" version = "0.6.0" @@ -3987,14 +4121,14 @@ checksum = "c9d220bc1feda2ac231cb78c3d26f27676b8cf82c96971f7aeef3d0cf2797c73" dependencies = [ "arrayref", "base64 0.12.3", - "digest 0.9.0", - "hmac-drbg 0.3.0", + "digest", + "hmac-drbg", "libsecp256k1-core", "libsecp256k1-gen-ecmult", "libsecp256k1-gen-genmult", "rand 0.7.3", "serde", - "sha2 0.9.5", + "sha2", "typenum", ] @@ -4005,8 +4139,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0f6ab710cec28cef759c5f18671a27dae2a5f952cdaaee1d8e2908cb2478a80" dependencies = [ "crunchy", - "digest 0.9.0", - "subtle 2.4.1", + "digest", + "subtle", ] [[package]] @@ -4051,6 +4185,12 @@ dependencies = [ "vcpkg", ] +[[package]] +name = "linked-hash-map" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3" + [[package]] name = "lock_api" version = "0.4.4" @@ -4088,6 +4228,24 @@ dependencies = [ "hashbrown 0.9.1", ] +[[package]] +name = "lru" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c748cfe47cb8da225c37595b3108bea1c198c84aaae8ea0ba76d01dda9fc803" +dependencies = [ + "hashbrown 0.11.2", +] + +[[package]] +name = "lru-cache" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" +dependencies = [ + "linked-hash-map", +] + [[package]] name = "mapr" version = "0.8.0" @@ -4098,6 +4256,12 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "match_cfg" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" + [[package]] name = "matches" version = "0.1.8" @@ -4180,9 +4344,9 @@ dependencies = [ "interpreter", "ipld_blockstore", "key_management", - "libsecp256k1 0.6.0", + "libsecp256k1", "log", - "lru", + "lru 0.6.5", "networks", "num-rational 0.3.2", "num-traits", @@ -4224,26 +4388,6 @@ dependencies = [ "unicase", ] -[[package]] -name = "minicbor" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c2b2c73f9640fccab53947e2b3474d5071fcbc8f82cac51ddf6c8041a30a9ea" -dependencies = [ - "minicbor-derive", -] - -[[package]] -name = "minicbor-derive" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f2b9e8883d58e34b18facd16c4564a77ea50fce028ad3d0ee6753440e37acc8" -dependencies = [ - "proc-macro2 1.0.27", - "quote 1.0.9", - "syn 1.0.73", -] - [[package]] name = "miniz_oxide" version = "0.4.4" @@ -4254,6 +4398,24 @@ dependencies = [ "autocfg", ] +[[package]] +name = "multiaddr" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48ee4ea82141951ac6379f964f71b20876d43712bea8faf6dd1a375e08a46499" +dependencies = [ + "arrayref", + "bs58", + "byteorder 1.4.3", + "data-encoding", + "multihash 0.14.0", + "percent-encoding", + "serde", + "static_assertions", + "unsigned-varint 0.7.0", + "url", +] + [[package]] name = "multibase" version = "0.8.0" @@ -4283,14 +4445,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4dac63698b887d2d929306ea48b63760431ff8a24fac40ddb22f9c7f49fb7cab" dependencies = [ "blake2b_simd", - "digest 0.9.0", - "generic-array 0.14.4", + "digest", + "generic-array", "multihash-derive", "serde", - "sha2 0.9.5", + "sha2", "unsigned-varint 0.5.1", ] +[[package]] +name = "multihash" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "752a61cd890ff691b4411423d23816d5866dd5621e4d1c5687a53b94b5a979d8" +dependencies = [ + "digest", + "generic-array", + "multihash-derive", + "sha2", + "unsigned-varint 0.7.0", +] + [[package]] name = "multihash-derive" version = "0.7.2" @@ -4313,9 +4488,9 @@ checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" [[package]] name = "multistream-select" -version = "0.10.2" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d91ec0a2440aaff5f78ec35631a7027d50386c6163aa975f7caa0d5da4b6ff8" +checksum = "56a336acba8bc87c8876f6425407dbbe6c417bf478b22015f8fb0994ef3bc0ab" dependencies = [ "bytes 1.0.1", "futures", @@ -4365,7 +4540,7 @@ dependencies = [ "byteorder 1.4.3", "ff-cl-gen", "fff 0.3.1", - "generic-array 0.14.4", + "generic-array", "itertools 0.8.2", "lazy_static", "log", @@ -4398,14 +4573,15 @@ dependencies = [ [[package]] name = "nix" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a" +checksum = "f5e06129fb611568ef4e868c14b326274959aa70ff7776e9d55323531c374945" dependencies = [ "bitflags", "cc", "cfg-if 1.0.0", "libc", + "memoffset", ] [[package]] @@ -4555,15 +4731,32 @@ checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575" [[package]] name = "opaque-debug" -version = "0.2.3" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" +checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] -name = "opaque-debug" -version = "0.3.0" +name = "open-metrics-client" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" +checksum = "7337d80c23c2d8b1349563981bc4fb531220733743ba8115454a67b181173f0d" +dependencies = [ + "dtoa", + "itoa", + "open-metrics-client-derive-text-encode", + "owning_ref", +] + +[[package]] +name = "open-metrics-client-derive-text-encode" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a15c83b586f00268c619c1cb3340ec1a6f59dd9ba1d9833a273a68e6d5cd8ffc" +dependencies = [ + "proc-macro2 1.0.27", + "quote 1.0.9", + "syn 1.0.73", +] [[package]] name = "openssl-probe" @@ -4599,6 +4792,15 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "30fceb411f9a12ff9222c5f824026be368ff15dc2f13468d850c7d3f502205d6" +[[package]] +name = "owning_ref" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ff55baddef9e4ad00f88b6c743a2a8062d4c6ade126c2a528644b8e444d52ce" +dependencies = [ + "stable_deref_trait", +] + [[package]] name = "paired" version = "0.21.0" @@ -4607,7 +4809,7 @@ checksum = "42fc2daf8d5a8e22a9833f798e72c0d6862b5f0288f0a2d289b37cd03fa5e283" dependencies = [ "blake2b_simd", "byteorder 1.4.3", - "digest 0.9.0", + "digest", "fff 0.2.3", "groupy 0.3.1", "hkdf", @@ -4634,22 +4836,10 @@ dependencies = [ ] [[package]] -name = "parity-multiaddr" -version = "0.11.2" +name = "parity-send-wrapper" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58341485071825827b7f03cf7efd1cb21e6a709bea778fb50227fd45d2f361b4" -dependencies = [ - "arrayref", - "bs58", - "byteorder 1.4.3", - "data-encoding", - "multihash", - "percent-encoding", - "serde", - "static_assertions", - "unsigned-varint 0.7.0", - "url", -] +checksum = "aa9777aa91b8ad9dd5aaa04a9b6bcb02c7f1deb952fca5a66034d5e63afc5c6f" [[package]] name = "parking" @@ -4738,7 +4928,17 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "467d164a6de56270bd7c4d070df81d07beace25012d5103ced4e9ff08d6afdb7" dependencies = [ - "fixedbitset", + "fixedbitset 0.2.0", + "indexmap", +] + +[[package]] +name = "petgraph" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a13a2fa9d0b63e5f22328828741e523766fff0ee9e779316902290dff3f824f" +dependencies = [ + "fixedbitset 0.4.0", "indexmap", ] @@ -4849,11 +5049,12 @@ dependencies = [ [[package]] name = "poly1305" -version = "0.6.2" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b7456bc1ad2d4cf82b3a016be4c2ac48daf11bf990c1603ebd447fe6f30fca8" +checksum = "048aeb476be11a4b6ca432ca569e375810de9294ae78f4774e78ea98a9246ede" dependencies = [ - "cpuid-bool 0.2.0", + "cpufeatures 0.2.1", + "opaque-debug", "universal-hash", ] @@ -4864,7 +5065,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eebcc4aa140b9abd2bc40d9c3f7ccec842679cd79045ac3a7ac698c1a064b7cd" dependencies = [ "cpuid-bool 0.2.0", - "opaque-debug 0.3.0", + "opaque-debug", + "universal-hash", +] + +[[package]] +name = "polyval" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1" +dependencies = [ + "cfg-if 1.0.0", + "cpufeatures 0.2.1", + "opaque-debug", "universal-hash", ] @@ -5014,68 +5227,70 @@ dependencies = [ [[package]] name = "prost" -version = "0.6.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce49aefe0a6144a45de32927c77bd2859a5f7677b55f220ae5b744e87389c212" +checksum = "de5e2533f59d08fcf364fd374ebda0692a70bd6d7e66ef97f306f45c6c5d8020" dependencies = [ - "bytes 0.5.6", - "prost-derive 0.6.1", + "bytes 1.0.1", + "prost-derive 0.8.0", ] [[package]] name = "prost" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e6984d2f1a23009bd270b8bb56d0926810a3d483f59c987d77969e9d8e840b2" +checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001" dependencies = [ "bytes 1.0.1", - "prost-derive 0.7.0", + "prost-derive 0.9.0", ] [[package]] name = "prost-build" -version = "0.6.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b10678c913ecbd69350e8535c3aef91a8676c0773fc1d7b95cdd196d7f2f26" +checksum = "355f634b43cdd80724ee7848f95770e7e70eefa6dcf14fea676216573b8fd603" dependencies = [ - "bytes 0.5.6", + "bytes 1.0.1", "heck", - "itertools 0.8.2", + "itertools 0.10.1", "log", "multimap", - "petgraph", - "prost 0.6.1", - "prost-types 0.6.1", + "petgraph 0.5.1", + "prost 0.8.0", + "prost-types 0.8.0", "tempfile", - "which 3.1.1", + "which", ] [[package]] name = "prost-build" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32d3ebd75ac2679c2af3a92246639f9fcc8a442ee420719cc4fe195b98dd5fa3" +checksum = "62941722fb675d463659e49c4f3fe1fe792ff24fe5bbaa9c08cd3b98a1c354f5" dependencies = [ "bytes 1.0.1", "heck", - "itertools 0.9.0", + "itertools 0.10.1", + "lazy_static", "log", "multimap", - "petgraph", - "prost 0.7.0", - "prost-types 0.7.0", + "petgraph 0.6.0", + "prost 0.9.0", + "prost-types 0.9.0", + "regex", "tempfile", - "which 4.1.0", + "which", ] [[package]] name = "prost-derive" -version = "0.6.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "537aa19b95acde10a12fec4301466386f757403de4cd4e5b4fa78fb5ecb18f72" +checksum = "600d2f334aa05acb02a755e217ef1ab6dea4d51b58b7846588b747edec04efba" dependencies = [ "anyhow", - "itertools 0.8.2", + "itertools 0.10.1", "proc-macro2 1.0.27", "quote 1.0.9", "syn 1.0.73", @@ -5083,12 +5298,12 @@ dependencies = [ [[package]] name = "prost-derive" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "169a15f3008ecb5160cba7d37bcd690a7601b6d30cfb87a117d45e59d52af5d4" +checksum = "f9cc1a3263e07e0bf68e96268f37665207b49560d98739662cdfaae215c720fe" dependencies = [ "anyhow", - "itertools 0.9.0", + "itertools 0.10.1", "proc-macro2 1.0.27", "quote 1.0.9", "syn 1.0.73", @@ -5096,22 +5311,22 @@ dependencies = [ [[package]] name = "prost-types" -version = "0.6.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1834f67c0697c001304b75be76f67add9c89742eda3a085ad8ee0bb38c3417aa" +checksum = "603bbd6394701d13f3f25aada59c7de9d35a6a5887cfc156181234a44002771b" dependencies = [ - "bytes 0.5.6", - "prost 0.6.1", + "bytes 1.0.1", + "prost 0.8.0", ] [[package]] name = "prost-types" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b518d7cdd93dab1d1122cf07fa9a60771836c668dde9d9e2a139f957f0d9f1bb" +checksum = "534b7a0e836e3c482d2693070f982e39e7611da9695d4d1f5a4b186b51faef0a" dependencies = [ "bytes 1.0.1", - "prost 0.7.0", + "prost 0.9.0", ] [[package]] @@ -5390,6 +5605,16 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "resolv-conf" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" +dependencies = [ + "hostname", + "quick-error", +] + [[package]] name = "ring" version = "0.16.20" @@ -5504,7 +5729,7 @@ dependencies = [ "ipld_blockstore", "jsonrpc-v2", "key_management", - "libp2p 0.35.1", + "libp2p", "message_pool", "once_cell", "serde", @@ -5567,6 +5792,15 @@ dependencies = [ "semver 0.9.0", ] +[[package]] +name = "rustc_version" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" +dependencies = [ + "semver 0.11.0", +] + [[package]] name = "rustc_version" version = "0.4.0" @@ -5606,6 +5840,15 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" +[[package]] +name = "salsa20" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c0fbb5f676da676c260ba276a8f43a8dc67cf02d1438423aeb1c677a7212686" +dependencies = [ + "cipher 0.3.0", +] + [[package]] name = "same-file" version = "1.0.6" @@ -5803,11 +6046,11 @@ version = "0.9.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a0c8611594e2ab4ebbf06ec7cbbf0a99450b8570e96cbf5188b5d5f6ef18d81" dependencies = [ - "block-buffer 0.9.0", + "block-buffer", "cfg-if 1.0.0", - "cpufeatures", - "digest 0.9.0", - "opaque-debug 0.3.0", + "cpufeatures 0.1.5", + "digest", + "opaque-debug", ] [[package]] @@ -5816,29 +6059,17 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" -[[package]] -name = "sha2" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69" -dependencies = [ - "block-buffer 0.7.3", - "digest 0.8.1", - "fake-simd", - "opaque-debug 0.2.3", -] - [[package]] name = "sha2" version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b362ae5752fd2137731f9fa25fd4d9058af34666ca1966fb969119cc35719f12" dependencies = [ - "block-buffer 0.9.0", + "block-buffer", "cfg-if 1.0.0", - "cpufeatures", - "digest 0.9.0", - "opaque-debug 0.3.0", + "cpufeatures 0.1.5", + "digest", + "opaque-debug", "sha2-asm", ] @@ -5857,13 +6088,13 @@ version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb6909ab9d47f7fc10071094faf29333aa9d08fb3bdcd445dddbcb4d21ed8003" dependencies = [ - "block-buffer 0.9.0", + "block-buffer", "byteorder 1.4.3", "cpuid-bool 0.1.2", - "digest 0.9.0", + "digest", "fake-simd", "lazy_static", - "opaque-debug 0.3.0", + "opaque-debug", "sha2-asm", ] @@ -5873,10 +6104,10 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f81199417d4e5de3f04b1e871023acea7389672c4135918f05aa9cbf2f2fa809" dependencies = [ - "block-buffer 0.9.0", - "digest 0.9.0", + "block-buffer", + "digest", "keccak", - "opaque-debug 0.3.0", + "opaque-debug", ] [[package]] @@ -5992,19 +6223,19 @@ checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e" [[package]] name = "snow" -version = "0.7.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "795dd7aeeee24468e5a32661f6d27f7b5cbed802031b2d7640c7b10f8fb2dd50" +checksum = "6142f7c25e94f6fd25a32c3348ec230df9109b463f59c8c7acc4bd34936babb7" dependencies = [ - "aes-gcm 0.7.0", + "aes-gcm 0.9.4", "blake2", "chacha20poly1305", - "rand 0.7.3", - "rand_core 0.5.1", + "rand 0.8.4", + "rand_core 0.6.3", "ring", - "rustc_version 0.2.3", - "sha2 0.9.5", - "subtle 2.4.1", + "rustc_version 0.3.3", + "sha2", + "subtle", "x25519-dalek", ] @@ -6043,17 +6274,17 @@ dependencies = [ [[package]] name = "soketto" -version = "0.4.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5c71ed3d54db0a699f4948e1bb3e45b450fa31fe602621dee6680361d569c88" +checksum = "083624472e8817d44d02c0e55df043737ff11f279af924abdf93845717c2b75c" dependencies = [ - "base64 0.12.3", - "bytes 0.5.6", + "base64 0.13.0", + "bytes 1.0.1", "flate2", "futures", "httparse", "log", - "rand 0.7.3", + "rand 0.8.4", "sha-1", ] @@ -6154,7 +6385,7 @@ dependencies = [ "forest_vm", "futures", "ipld_blockstore", - "libp2p 0.35.1", + "libp2p", "log", "num_cpus", "rayon", @@ -6286,7 +6517,7 @@ dependencies = [ "filecoin-hashers", "fr32", "fs2", - "generic-array 0.14.4", + "generic-array", "hex", "itertools 0.9.0", "lazy_static", @@ -6301,7 +6532,7 @@ dependencies = [ "semver 0.11.0", "serde", "serde_json", - "sha2 0.9.5", + "sha2", "tempfile", "thiserror", "toml", @@ -6319,12 +6550,12 @@ dependencies = [ "byte-slice-cast", "byteorder 1.4.3", "crossbeam", - "digest 0.9.0", + "digest", "fdlimit", "fff 0.3.1", "filecoin-hashers", "fr32", - "generic-array 0.14.4", + "generic-array", "hex", "lazy_static", "libc", @@ -6340,7 +6571,7 @@ dependencies = [ "rayon", "serde", "serde_json", - "sha2 0.9.5", + "sha2", "sha2raw", "storage-proofs-core", "yastl", @@ -6361,7 +6592,7 @@ dependencies = [ "fff 0.3.1", "filecoin-hashers", "fr32", - "generic-array 0.14.4", + "generic-array", "hex", "log", "merkletree", @@ -6370,20 +6601,10 @@ dependencies = [ "rand 0.7.3", "rayon", "serde", - "sha2 0.9.5", + "sha2", "storage-proofs-core", ] -[[package]] -name = "stream-cipher" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c80e15f898d8d8f25db24c253ea615cc14acf418ff307822995814e7d42cfa89" -dependencies = [ - "block-cipher", - "generic-array 0.14.4", -] - [[package]] name = "strobe-rs" version = "0.5.4" @@ -6392,7 +6613,7 @@ checksum = "1a9baee171ea889cfe5333700f0948777b483db8dc805c5c519ffe92e7714783" dependencies = [ "bitflags", "byteorder 1.4.3", - "subtle 2.4.1", + "subtle", "tiny-keccak", ] @@ -6432,12 +6653,6 @@ dependencies = [ "syn 1.0.73", ] -[[package]] -name = "subtle" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" - [[package]] name = "subtle" version = "2.4.1" @@ -6718,10 +6933,10 @@ checksum = "632824c586db700f0fab27c2cca5b6bd7bf8e49b1f8ddce77f736c9fbe9401f2" dependencies = [ "blake2b_simd", "blake2s_simd", - "digest 0.9.0", - "generic-array 0.14.4", + "digest", + "generic-array", "sha-1", - "sha2 0.9.5", + "sha2", "sha3", "strobe-rs", "tiny-multihash-derive", @@ -6830,6 +7045,49 @@ dependencies = [ "tracing", ] +[[package]] +name = "trust-dns-proto" +version = "0.20.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad0d7f5db438199a6e2609debe3f69f808d074e0a2888ee0bccb45fe234d03f4" +dependencies = [ + "async-trait", + "cfg-if 1.0.0", + "data-encoding", + "enum-as-inner", + "futures-channel", + "futures-io", + "futures-util", + "idna", + "ipnet", + "lazy_static", + "log", + "rand 0.8.4", + "smallvec", + "thiserror", + "tinyvec", + "url", +] + +[[package]] +name = "trust-dns-resolver" +version = "0.20.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ad17b608a64bd0735e67bde16b0636f8aa8591f831a25d18443ed00a699770" +dependencies = [ + "cfg-if 1.0.0", + "futures-util", + "ipconfig", + "lazy_static", + "log", + "lru-cache", + "parking_lot", + "resolv-conf", + "smallvec", + "thiserror", + "trust-dns-proto", +] + [[package]] name = "tungstenite" version = "0.13.0" @@ -6931,8 +7189,8 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" dependencies = [ - "generic-array 0.14.4", - "subtle 2.4.1", + "generic-array", + "subtle", ] [[package]] @@ -7196,15 +7454,6 @@ dependencies = [ "cc", ] -[[package]] -name = "which" -version = "3.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d011071ae14a2f6671d0b74080ae0cd8ebf3a6f8c9589a2cd45f23126fe29724" -dependencies = [ - "libc", -] - [[package]] name = "which" version = "4.1.0" @@ -7215,6 +7464,12 @@ dependencies = [ "libc", ] +[[package]] +name = "widestring" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c168940144dd21fd8046987c16a46a33d5fc84eec29ef9dcddc2ac9e31526b7c" + [[package]] name = "winapi" version = "0.2.8" @@ -7258,6 +7513,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "winreg" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9" +dependencies = [ + "winapi 0.3.9", +] + [[package]] name = "x25519-dalek" version = "1.1.1" @@ -7271,15 +7535,15 @@ dependencies = [ [[package]] name = "yamux" -version = "0.8.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cc7bd8c983209ed5d527f44b01c41b7dc146fd960c61cf9e1d25399841dc271" +checksum = "e7d9028f208dd5e63c614be69f115c1b53cacc1111437d4c765185856666c107" dependencies = [ "futures", "log", "nohash-hasher", "parking_lot", - "rand 0.7.3", + "rand 0.8.4", "static_assertions", ] @@ -7301,18 +7565,18 @@ dependencies = [ [[package]] name = "zeroize" -version = "1.4.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eeafe61337cb2c879d328b74aa6cd9d794592c82da6be559fdf11493f02a2d18" +checksum = "4756f7db3f7b5574938c3eb1c117038b8e07f95ee6718c0efad4ac21508f1efd" dependencies = [ "zeroize_derive", ] [[package]] name = "zeroize_derive" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2c1e130bebaeab2f23886bf9acbaca14b092408c452543c857f66399cd6dab1" +checksum = "bdff2024a851a322b08f179173ae2ba620445aef1e838f0c196820eade4ae0c7" dependencies = [ "proc-macro2 1.0.27", "quote 1.0.9", diff --git a/README.md b/README.md index 97fbd33e1aa7..042e0ab46dd9 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ Our crates: | `vm` | State transition and actors, message and address definitions | ## Dependencies -rustc >= 1.46.0 +rustc >= 1.55.0 ## Usage ```bash diff --git a/blockchain/chain_sync/Cargo.toml b/blockchain/chain_sync/Cargo.toml index ea2b7918fc38..64ccd7038e86 100644 --- a/blockchain/chain_sync/Cargo.toml +++ b/blockchain/chain_sync/Cargo.toml @@ -13,7 +13,7 @@ blocks = { package = "forest_blocks", path = "../blocks", features = ["json"] } beacon = { path = "../beacon" } db = { package = "forest_db", version = "0.1" } encoding = { package = "forest_encoding", version = "0.2.1" } -libp2p = { version = "0.35", default-features = false } +libp2p = { version = "0.40.0-rc.1", default-features = false } cid = { package = "forest_cid", version = "0.3" } ipld_blockstore = "0.1" chain = { path = "../chain" } diff --git a/forest/Cargo.toml b/forest/Cargo.toml index 4effb94d7f13..6711f76bbf1b 100644 --- a/forest/Cargo.toml +++ b/forest/Cargo.toml @@ -12,7 +12,7 @@ base64 = "0.13" forest_libp2p = { path = "../node/forest_libp2p" } utils = { path = "../node/utils" } db = { package = "forest_db", version = "0.1" } -libp2p = { version = "0.35", default-features = false, features = ["identify"] } +libp2p = { version = "0.40.0-rc.1", default-features = false, features = ["identify"] } futures = "0.3.5" log = "0.4.8" async-log = "2.0.0" diff --git a/ipld/graphsync/Cargo.toml b/ipld/graphsync/Cargo.toml index f961d04458c8..32b875da2dc2 100644 --- a/ipld/graphsync/Cargo.toml +++ b/ipld/graphsync/Cargo.toml @@ -10,7 +10,7 @@ cid = { package = "forest_cid", version = "0.3" } forest_ipld = "0.1.1" fnv = "1.0.6" encoding = { package = "forest_encoding", version = "0.2.1" } -libp2p = { version = "0.35", default-features = false } +libp2p = { version = "0.40.0-rc.1", default-features = false } futures = "0.3.5" futures-util = "0.3.5" futures_codec = "0.4.0" diff --git a/node/forest_libp2p/Cargo.toml b/node/forest_libp2p/Cargo.toml index 41b8063db6f8..6bbba5da13e0 100644 --- a/node/forest_libp2p/Cargo.toml +++ b/node/forest_libp2p/Cargo.toml @@ -7,7 +7,7 @@ edition = "2018" [dependencies] utils = { path = "../utils" } networks = { path = "../../types/networks" } -libp2p = { version = "0.35", default-features = false, features = [ +libp2p = { version = "0.40.0-rc.1" , default-features = false, features = [ "gossipsub", "kad", "identify", @@ -16,7 +16,7 @@ libp2p = { version = "0.35", default-features = false, features = [ "noise", "yamux", "tcp-async-io", - "dns", + "dns-async-std", "mplex", "request-response", "websocket" @@ -40,7 +40,7 @@ clock = { package = "fil_clock", path = "../clock" } db = { package = "forest_db", version = "0.1" } forest_car = { path = "../../ipld/car" } num-bigint = { path = "../../utils/bigint", package = "forest_bigint" } -libp2p-bitswap = { git = "https://github.com/ChainSafe/libp2p-bitswap", rev = "1ee048077cfdfc0a3bb16b236c0c308b1c4b52fa" } +libp2p-bitswap = { git = "https://github.com/ChainSafe/libp2p-bitswap", rev = "8d3913ea7fc1e693776c83eecc7a9675c3426446" } tiny-cid = "0.2.0" ipld_blockstore = "0.1" async-trait = "0.1" diff --git a/node/forest_libp2p/src/behaviour.rs b/node/forest_libp2p/src/behaviour.rs index db32390d7ef6..1c8b84d75477 100644 --- a/node/forest_libp2p/src/behaviour.rs +++ b/node/forest_libp2p/src/behaviour.rs @@ -19,16 +19,14 @@ use forest_encoding::blake2b_256; use futures::channel::oneshot::{self, Sender as OneShotSender}; use futures::{prelude::*, stream::FuturesUnordered}; use git_version::git_version; -use libp2p::identify::{Identify, IdentifyEvent}; -use libp2p::ping::{ - handler::{PingFailure, PingSuccess}, - Ping, PingEvent, -}; +use libp2p::ping::{Ping, PingEvent}; use libp2p::request_response::{ ProtocolSupport, RequestId, RequestResponse, RequestResponseConfig, RequestResponseEvent, RequestResponseMessage, ResponseChannel, }; -use libp2p::swarm::{NetworkBehaviourAction, NetworkBehaviourEventProcess, PollParameters}; +use libp2p::swarm::{ + NetworkBehaviour, NetworkBehaviourAction, NetworkBehaviourEventProcess, PollParameters, +}; use libp2p::NetworkBehaviour; use libp2p::{core::identity::Keypair, kad::QueryId}; use libp2p::{core::PeerId, gossipsub::GossipsubMessage}; @@ -40,6 +38,10 @@ use libp2p::{ }, Multiaddr, }; +use libp2p::{ + identify::{Identify, IdentifyConfig, IdentifyEvent}, + ping::{PingFailure, PingSuccess}, +}; use libp2p_bitswap::{Bitswap, BitswapEvent, Priority}; use log::{debug, trace, warn}; use std::collections::HashSet; @@ -59,7 +61,11 @@ lazy_static! { /// Libp2p behaviour for the Forest node. This handles all sub protocols needed for a Filecoin node. #[derive(NetworkBehaviour)] -#[behaviour(out_event = "ForestBehaviourEvent", poll_method = "poll")] +#[behaviour( + out_event = "ForestBehaviourEvent", + poll_method = "poll", + event_process = true +)] pub(crate) struct ForestBehaviour { gossipsub: Gossipsub, discovery: DiscoveryBehaviour, @@ -188,22 +194,25 @@ impl NetworkBehaviourEventProcess for ForestBehaviour { impl NetworkBehaviourEventProcess for ForestBehaviour { fn inject_event(&mut self, event: PingEvent) { match event.result { - Result::Ok(PingSuccess::Ping { rtt }) => { + Ok(PingSuccess::Ping { rtt }) => { trace!( "PingSuccess::Ping rtt to {} is {} ms", event.peer.to_base58(), rtt.as_millis() ); } - Result::Ok(PingSuccess::Pong) => { + Ok(PingSuccess::Pong) => { trace!("PingSuccess::Pong from {}", event.peer.to_base58()); } - Result::Err(PingFailure::Timeout) => { + Err(PingFailure::Timeout) => { debug!("PingFailure::Timeout {}", event.peer.to_base58()); } - Result::Err(PingFailure::Other { error }) => { + Err(PingFailure::Other { error }) => { debug!("PingFailure::Other {}: {}", event.peer.to_base58(), error); } + Err(PingFailure::Unsupported) => { + debug!("PingFailure::Unsupported {}", event.peer.to_base58()); + } } } } @@ -211,19 +220,16 @@ impl NetworkBehaviourEventProcess for ForestBehaviour { impl NetworkBehaviourEventProcess for ForestBehaviour { fn inject_event(&mut self, event: IdentifyEvent) { match event { - IdentifyEvent::Received { - peer_id, - info, - observed_addr, - } => { + IdentifyEvent::Received { peer_id, info } => { trace!("Identified Peer {}", peer_id); trace!("protocol_version {}", info.protocol_version); trace!("agent_version {}", info.agent_version); trace!("listening_ addresses {:?}", info.listen_addrs); - trace!("observed_address {}", observed_addr); + trace!("observed_address {}", info.observed_addr); trace!("protocols {:?}", info.protocols); } IdentifyEvent::Sent { .. } => (), + IdentifyEvent::Pushed { .. } => (), IdentifyEvent::Error { .. } => (), } } @@ -394,11 +400,16 @@ impl NetworkBehaviourEventProcess( + fn poll( &mut self, cx: &mut Context, _: &mut impl PollParameters, - ) -> Poll> { + ) -> Poll< + NetworkBehaviourAction< + ::OutEvent, + ::ProtocolsHandler, + >, + > { // Poll to see if any response is ready to be sent back. while let Poll::Ready(Some(outcome)) = self.cx_pending_responses.poll_next_unpin(cx) { let RequestProcessingOutcome { @@ -410,7 +421,6 @@ impl ForestBehaviour { // later on reported as a `InboundFailure::Omission`. None => break, }; - if self .chain_exchange .send_response(inner_channel, response) @@ -470,11 +480,7 @@ impl ForestBehaviour { gossipsub, discovery: discovery_config.finish(), ping: Ping::default(), - identify: Identify::new( - "ipfs/0.1.0".into(), - format!("forest-{}-{}", *VERSION, *CURRENT_COMMIT), - local_key.public(), - ), + identify: Identify::new(IdentifyConfig::new("ipfs/0.1.0".into(), local_key.public())), bitswap, hello: RequestResponse::new(HelloCodec::default(), hp, req_res_config.clone()), chain_exchange: RequestResponse::new(ChainExchangeCodec::default(), cp, req_res_config), diff --git a/node/forest_libp2p/src/discovery.rs b/node/forest_libp2p/src/discovery.rs index b0277171edc6..3e2c7c467efd 100644 --- a/node/forest_libp2p/src/discovery.rs +++ b/node/forest_libp2p/src/discovery.rs @@ -4,6 +4,7 @@ use async_std::stream::{self, Interval}; use async_std::task; use futures::prelude::*; +use libp2p::swarm::DialError; use libp2p::{ core::{ connection::{ConnectionId, ListenerId}, @@ -56,7 +57,7 @@ impl<'a> DiscoveryConfig<'a> { /// Create a default configuration with the given public key. pub fn new(local_public_key: PublicKey, network_name: &'a str) -> Self { DiscoveryConfig { - local_peer_id: local_public_key.into_peer_id(), + local_peer_id: local_public_key.to_peer_id(), user_defined: Vec::new(), discovery_max: std::u64::MAX, enable_mdns: false, @@ -143,7 +144,9 @@ impl<'a> DiscoveryConfig<'a> { let mdns_opt = if enable_mdns { Some(task::block_on(async { - Mdns::new().await.expect("Could not start mDNS") + Mdns::new(Default::default()) + .await + .expect("Could not start mDNS") })) } else { None @@ -246,11 +249,12 @@ impl NetworkBehaviour for DiscoveryBehaviour { peer_id: &PeerId, conn: &ConnectionId, endpoint: &ConnectedPoint, + failed_addresses: Option<&Vec>, ) { self.num_connections += 1; self.kademlia - .inject_connection_established(peer_id, conn, endpoint) + .inject_connection_established(peer_id, conn, endpoint, failed_addresses) } fn inject_connected(&mut self, peer_id: &PeerId) { @@ -268,11 +272,12 @@ impl NetworkBehaviour for DiscoveryBehaviour { peer_id: &PeerId, conn: &ConnectionId, endpoint: &ConnectedPoint, + handler: ::Handler, ) { self.num_connections -= 1; self.kademlia - .inject_connection_closed(peer_id, conn, endpoint) + .inject_connection_closed(peer_id, conn, endpoint, handler) } fn inject_disconnected(&mut self, peer_id: &PeerId) { @@ -283,16 +288,6 @@ impl NetworkBehaviour for DiscoveryBehaviour { self.kademlia.inject_disconnected(peer_id) } - fn inject_addr_reach_failure( - &mut self, - peer_id: Option<&PeerId>, - addr: &Multiaddr, - error: &dyn std::error::Error, - ) { - self.kademlia - .inject_addr_reach_failure(peer_id, addr, error) - } - fn inject_event( &mut self, peer_id: PeerId, @@ -309,16 +304,21 @@ impl NetworkBehaviour for DiscoveryBehaviour { self.kademlia.inject_new_external_addr(addr) } - fn inject_expired_listen_addr(&mut self, addr: &Multiaddr) { - self.kademlia.inject_expired_listen_addr(addr); + fn inject_expired_listen_addr(&mut self, id: ListenerId, addr: &Multiaddr) { + self.kademlia.inject_expired_listen_addr(id, addr); } - fn inject_dial_failure(&mut self, peer_id: &PeerId) { - self.kademlia.inject_dial_failure(peer_id) + fn inject_dial_failure( + &mut self, + peer_id: Option, + handler: Self::ProtocolsHandler, + err: &DialError, + ) { + self.kademlia.inject_dial_failure(peer_id, handler, err) } - fn inject_new_listen_addr(&mut self, addr: &Multiaddr) { - self.kademlia.inject_new_listen_addr(addr) + fn inject_new_listen_addr(&mut self, id: ListenerId, addr: &Multiaddr) { + self.kademlia.inject_new_listen_addr(id, addr) } fn inject_listener_error(&mut self, id: ListenerId, err: &(dyn std::error::Error + 'static)) { @@ -330,16 +330,11 @@ impl NetworkBehaviour for DiscoveryBehaviour { } #[allow(clippy::type_complexity)] - fn poll( - &mut self, - cx: &mut Context, - params: &mut impl PollParameters, - ) -> Poll< - NetworkBehaviourAction< - <::Handler as ProtocolsHandler>::InEvent, - Self::OutEvent, - >, - >{ + fn poll( + &mut self, + cx: &mut Context, + params: &mut impl PollParameters, + ) -> Poll> { // Immediately process the content of `discovered`. if let Some(ev) = self.pending_events.pop_front() { return Poll::Ready(NetworkBehaviourAction::GenerateEvent(ev)); @@ -367,44 +362,59 @@ impl NetworkBehaviour for DiscoveryBehaviour { } // Poll Kademlia. - if let Some(kademlia) = self.kademlia.as_mut() { - while let Poll::Ready(ev) = kademlia.poll(cx, params) { - match ev { - NetworkBehaviourAction::GenerateEvent(ev) => match ev { - // Adding to Kademlia buckets is automatic with our config, - // no need to do manually. - KademliaEvent::RoutingUpdated { .. } => {} - KademliaEvent::RoutablePeer { .. } => {} - KademliaEvent::PendingRoutablePeer { .. } => { - // Intentionally ignore - } - other => { - debug!("Libp2p => Unhandled Kademlia event: {:?}", other) - } - }, - NetworkBehaviourAction::DialAddress { address } => { - return Poll::Ready(NetworkBehaviourAction::DialAddress { address }) + while let Poll::Ready(ev) = self.kademlia.poll(cx, params) { + match ev { + NetworkBehaviourAction::GenerateEvent(ev) => match ev { + // Adding to Kademlia buckets is automatic with our config, + // no need to do manually. + KademliaEvent::RoutingUpdated { .. } => {} + KademliaEvent::RoutablePeer { .. } => {} + KademliaEvent::PendingRoutablePeer { .. } => { + // Intentionally ignore } - NetworkBehaviourAction::DialPeer { peer_id, condition } => { - return Poll::Ready(NetworkBehaviourAction::DialPeer { peer_id, condition }) + other => { + debug!("Libp2p => Unhandled Kademlia event: {:?}", other) } - NetworkBehaviourAction::NotifyHandler { + }, + NetworkBehaviourAction::DialAddress { address, handler } => { + return Poll::Ready(NetworkBehaviourAction::DialAddress { address, handler }) + } + NetworkBehaviourAction::DialPeer { + peer_id, + condition, + handler, + } => { + return Poll::Ready(NetworkBehaviourAction::DialPeer { + peer_id, + condition, + handler, + }) + } + NetworkBehaviourAction::NotifyHandler { + peer_id, + handler, + event, + } => { + return Poll::Ready(NetworkBehaviourAction::NotifyHandler { peer_id, handler, event, - } => { - return Poll::Ready(NetworkBehaviourAction::NotifyHandler { - peer_id, - handler, - event, - }) - } - NetworkBehaviourAction::ReportObservedAddr { address, score } => { - return Poll::Ready(NetworkBehaviourAction::ReportObservedAddr { - address, - score, - }) - } + }) + } + NetworkBehaviourAction::ReportObservedAddr { address, score } => { + return Poll::Ready(NetworkBehaviourAction::ReportObservedAddr { + address, + score, + }) + } + NetworkBehaviourAction::CloseConnection { + peer_id, + connection, + } => { + return Poll::Ready(NetworkBehaviourAction::CloseConnection { + peer_id, + connection, + }) } } } @@ -430,12 +440,8 @@ impl NetworkBehaviour for DiscoveryBehaviour { } MdnsEvent::Expired(_) => {} }, - NetworkBehaviourAction::DialAddress { address } => { - return Poll::Ready(NetworkBehaviourAction::DialAddress { address }) - } - NetworkBehaviourAction::DialPeer { peer_id, condition } => { - return Poll::Ready(NetworkBehaviourAction::DialPeer { peer_id, condition }) - } + NetworkBehaviourAction::DialAddress { .. } => {} + NetworkBehaviourAction::DialPeer { .. } => {} // Nothing to notify handler NetworkBehaviourAction::NotifyHandler { event, .. } => match event {}, NetworkBehaviourAction::ReportObservedAddr { address, score } => { @@ -444,6 +450,15 @@ impl NetworkBehaviour for DiscoveryBehaviour { score, }) } + NetworkBehaviourAction::CloseConnection { + peer_id, + connection, + } => { + return Poll::Ready(NetworkBehaviourAction::CloseConnection { + peer_id, + connection, + }) + } } } diff --git a/node/forest_libp2p/src/service.rs b/node/forest_libp2p/src/service.rs index 65f385ba5821..798aee5add46 100644 --- a/node/forest_libp2p/src/service.rs +++ b/node/forest_libp2p/src/service.rs @@ -23,7 +23,9 @@ use ipld_blockstore::BlockStore; pub use libp2p::gossipsub::IdentTopic; pub use libp2p::gossipsub::Topic; use libp2p::multiaddr::Protocol; +use libp2p::multihash::Multihash; use libp2p::request_response::ResponseChannel; +use libp2p::swarm::SwarmEvent; use libp2p::{ core, core::connection::ConnectionLimits, @@ -34,7 +36,6 @@ use libp2p::{ }; use libp2p::{core::Multiaddr, swarm::SwarmBuilder}; use log::{debug, error, info, trace, warn}; -use multihash::Multihash; use std::collections::HashMap; use std::path::Path; use std::sync::Arc; @@ -163,11 +164,11 @@ where // Subscribe to gossipsub topics with the network name suffix for topic in PUBSUB_TOPICS.iter() { let t = Topic::new(format!("{}/{}", topic, network_name)); - swarm.subscribe(&t).unwrap(); + swarm.behaviour_mut().subscribe(&t).unwrap(); } // Bootstrap with Kademlia - if let Err(e) = swarm.bootstrap() { + if let Err(e) = swarm.behaviour_mut().bootstrap() { warn!("Failed to bootstrap with Kademlia: {}", e); } @@ -199,19 +200,19 @@ where swarm_event = swarm_stream.next() => match swarm_event { // outbound events Some(event) => match event { - ForestBehaviourEvent::PeerConnected(peer_id) => { + SwarmEvent::Behaviour(ForestBehaviourEvent::PeerConnected(peer_id)) => { debug!("Peer connected, {:?}", peer_id); emit_event(&self.network_sender_out, NetworkEvent::PeerConnected(peer_id)).await; } - ForestBehaviourEvent::PeerDisconnected(peer_id) => { + SwarmEvent::Behaviour(ForestBehaviourEvent::PeerDisconnected(peer_id)) => { emit_event(&self.network_sender_out, NetworkEvent::PeerDisconnected(peer_id)).await; } - ForestBehaviourEvent::GossipMessage { + SwarmEvent::Behaviour(ForestBehaviourEvent::GossipMessage { source, topic, message, - } => { + }) => { trace!("Got a Gossip Message from {:?}", source); let topic = topic.as_str(); if topic == pubsub_block_str { @@ -242,14 +243,14 @@ where warn!("Getting gossip messages from unknown topic: {}", topic); } } - ForestBehaviourEvent::HelloRequest { request, peer } => { + SwarmEvent::Behaviour(ForestBehaviourEvent::HelloRequest { request, peer } )=> { debug!("Received hello request (peer_id: {:?})", peer); emit_event(&self.network_sender_out, NetworkEvent::HelloRequest { request, source: peer, }).await; } - ForestBehaviourEvent::ChainExchangeRequest { channel, peer, request } => { + SwarmEvent::Behaviour(ForestBehaviourEvent::ChainExchangeRequest { channel, peer, request }) => { debug!("Received chain_exchange request (peer_id: {:?})", peer); let db = self.cs.clone(); @@ -257,7 +258,7 @@ where channel.send(make_chain_exchange_response(db.as_ref(), &request).await) }); } - ForestBehaviourEvent::BitswapReceivedBlock(_peer_id, cid, block) => { + SwarmEvent::Behaviour(ForestBehaviourEvent::BitswapReceivedBlock(_peer_id, cid, block)) => { let res: Result<_, String> = self.cs.blockstore().put_raw(block.into(), Blake2b256).map_err(|e| e.to_string()); match res { Ok(actual_cid) => { @@ -280,9 +281,9 @@ where } } }, - ForestBehaviourEvent::BitswapReceivedWant(peer_id, cid,) => match self.cs.blockstore().get(&cid) { + SwarmEvent::Behaviour(ForestBehaviourEvent::BitswapReceivedWant(peer_id, cid,)) => match self.cs.blockstore().get(&cid) { Ok(Some(data)) => { - match swarm_stream.get_mut().send_block(&peer_id, cid, data) { + match swarm_stream.get_mut().behaviour_mut().send_block(&peer_id, cid, data) { Ok(_) => { trace!("Sent bitswap message successfully"); }, @@ -298,6 +299,9 @@ where trace!("Failed to get data: {}", e.to_string()); } }, + _ => { + continue; + } } None => { break; } }, @@ -305,18 +309,18 @@ where // Inbound messages Some(message) => match message { NetworkMessage::PubsubMessage { topic, message } => { - if let Err(e) = swarm_stream.get_mut().publish(topic, message) { + if let Err(e) = swarm_stream.get_mut().behaviour_mut().publish(topic, message) { warn!("Failed to send gossipsub message: {:?}", e); } } NetworkMessage::HelloRequest { peer_id, request, response_channel } => { - swarm_stream.get_mut().send_hello_request(&peer_id, request, response_channel); + swarm_stream.get_mut().behaviour_mut().send_hello_request(&peer_id, request, response_channel); } NetworkMessage::ChainExchangeRequest { peer_id, request, response_channel } => { - swarm_stream.get_mut().send_chain_exchange_request(&peer_id, request, response_channel); + swarm_stream.get_mut().behaviour_mut().send_chain_exchange_request(&peer_id, request, response_channel); } NetworkMessage::BitswapRequest { cid, response_channel } => { - if let Err(e) = swarm_stream.get_mut().want_block(cid, 1000) { + if let Err(e) = swarm_stream.get_mut().behaviour_mut().want_block(cid, 1000) { warn!("Failed to send a bitswap want_block: {}", e.to_string()); } else if let Some(chans) = self.bitswap_response_channels.get_mut(&cid) { chans.push(response_channel); @@ -335,7 +339,7 @@ where } } NetRPCMethods::NetPeers(response_channel) => { - let peer_addresses: &HashMap> = swarm_stream.get_mut().peer_addresses(); + let peer_addresses: &HashMap> = swarm_stream.get_mut().behaviour_mut().peer_addresses(); if response_channel.send(peer_addresses.to_owned()).is_err() { warn!("Failed to get Libp2p peers"); @@ -372,7 +376,7 @@ where }, interval_event = interval.next() => if interval_event.is_some() { // Print peer count on an interval. - info!("Peers connected: {}", swarm_stream.get_mut().peers().len()); + info!("Peers connected: {}", swarm_stream.get_mut().behaviour_mut().peers().len()); } }; } @@ -399,8 +403,7 @@ async fn emit_event(sender: &Sender, event: NetworkEvent) { pub fn build_transport(local_key: Keypair) -> Boxed<(PeerId, StreamMuxerBox)> { let transport = libp2p::tcp::TcpConfig::new().nodelay(true); let transport = libp2p::websocket::WsConfig::new(transport.clone()).or_transport(transport); - let transport = libp2p::dns::DnsConfig::new(transport).unwrap(); - + let transport = async_std::task::block_on(libp2p::dns::DnsConfig::system(transport)).unwrap(); let auth_config = { let dh_keys = noise::Keypair::::new() .into_authentic(&local_key) diff --git a/node/rpc-api/Cargo.toml b/node/rpc-api/Cargo.toml index 1cd59d6ff198..eccafe69517f 100644 --- a/node/rpc-api/Cargo.toml +++ b/node/rpc-api/Cargo.toml @@ -31,7 +31,7 @@ async-std = { version = "1.9", features = ["attributes"] } once_cell = "1.7.2" serde = { version = "1.0.101", default-features = false, features = ["derive"] } serde_json = "1.0" -libp2p = { version = "0.35", default-features = false } +libp2p = { version = "0.40.0-rc.1", default-features = false } [dependencies.jsonrpc-v2] version = "0.10.1" diff --git a/vm/actor/Cargo.toml b/vm/actor/Cargo.toml index 547dc4364fb0..47ada59ed0c6 100644 --- a/vm/actor/Cargo.toml +++ b/vm/actor/Cargo.toml @@ -39,7 +39,7 @@ indexmap = { version = "1.7.0", features = ["serde-1"] } derive_builder = "0.9" db = { package = "forest_db", version = "0.1" } hex = "0.4.2" -libp2p = { version = "0.35", default-features = false } +libp2p = { version = "0.40.0-rc.1", default-features = false } [features] devnet = [] diff --git a/vm/actor_interface/Cargo.toml b/vm/actor_interface/Cargo.toml index f4187f561bd8..d1cc5b0e93b2 100644 --- a/vm/actor_interface/Cargo.toml +++ b/vm/actor_interface/Cargo.toml @@ -19,7 +19,7 @@ serde = { version = "1.0", features = ["derive"] } cid = { package = "forest_cid", version = "0.3", features = ["json"] } clock = { package = "fil_clock", version = "0.1" } encoding = { package = "forest_encoding", version = "0.2.1" } -libp2p = { version = "0.35", default-features = false } +libp2p = { version = "0.40.0-rc.1", default-features = false } forest_bitfield = "0.1" num-bigint = { version = "0.1.1", package = "forest_bigint", features = ["json"] } forest_hash_utils = "0.1" diff --git a/vm/state_migration/Cargo.toml b/vm/state_migration/Cargo.toml index c4030e5f4c77..a933a605d12d 100644 --- a/vm/state_migration/Cargo.toml +++ b/vm/state_migration/Cargo.toml @@ -13,7 +13,7 @@ serde = { version = "1.0", features = ["derive"] } cid = { package = "forest_cid", version = "0.3", features = ["json"] } clock = { package = "fil_clock", version = "0.1" } encoding = { package = "forest_encoding", version = "0.2.1" } -libp2p = { version = "0.35", default-features = false } +libp2p = { version = "0.40.0-rc.1", default-features = false } forest_bitfield = "0.1" num-bigint = { version = "0.1.1", package = "forest_bigint", features = ["json"] } forest_hash_utils = "0.1"