*: Update to next libp2p version 0.24.0 (#6891)

* *: Update to next libp2p version (likely v0.24.0)

* Revert "*: Update to next libp2p version (likely v0.24.0)"

This reverts commit ffe1545aba6c2557a2843579de331f3fc1c60743.

* */Cargo.toml: Update to libp2p v0.24.0

* client/network/src/service: Handle ConnectionClosed returning Option

* Cargo.*: Test kad usize conversion

* Revert "Cargo.*: Test kad usize conversion"

This reverts commit ad317879782f982cb4a4c76029a72b5b97e82bec.

* Cargo.lock: Update to libp2p-kad v0.22.1

* client/cli/Cargo.toml: Update to libp2p 0.24.0
This commit is contained in:
Max Inden
2020-08-21 08:25:23 +02:00
committed by GitHub
parent 09662dc873
commit 69e349bd51
12 changed files with 103 additions and 131 deletions
+81 -110
View File
@@ -2285,6 +2285,12 @@ dependencies = [
"proc-macro-hack",
]
[[package]]
name = "hex_fmt"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b07f60793ff0a4d9cef0f18e63b5357e06209987153a64648c972c1e5aff336f"
[[package]]
name = "hmac"
version = "0.7.1"
@@ -2885,10 +2891,11 @@ checksum = "c7d73b3f436185384286bd8098d17ec07c9a7d2388a6599f824d8502b529702a"
[[package]]
name = "libp2p"
version = "0.22.0"
version = "0.24.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0306a49ee6a89468f96089906f36b0eef82c988dcfc8acf3e2dcd6ad1c859f85"
checksum = "76c101edbb9c06955fd4085b77d2abc31cf3650134d77068b35c44967756ada8"
dependencies = [
"atomic",
"bytes 0.5.6",
"futures 0.3.5",
"lazy_static",
@@ -2902,7 +2909,7 @@ dependencies = [
"libp2p-kad",
"libp2p-mdns",
"libp2p-mplex",
"libp2p-noise 0.21.0",
"libp2p-noise",
"libp2p-ping",
"libp2p-plaintext",
"libp2p-pnet",
@@ -2922,44 +2929,11 @@ dependencies = [
"wasm-timer",
]
[[package]]
name = "libp2p"
version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b1ebb6c031584a5af181fe3a1e4b074af5d0b1a3b31663200f0251f4bcff6b5c"
dependencies = [
"atomic",
"bytes 0.5.6",
"futures 0.3.5",
"lazy_static",
"libp2p-core",
"libp2p-core-derive",
"libp2p-dns",
"libp2p-identify",
"libp2p-kad",
"libp2p-mdns",
"libp2p-mplex",
"libp2p-noise 0.22.0",
"libp2p-ping",
"libp2p-secio",
"libp2p-swarm",
"libp2p-tcp",
"libp2p-wasm-ext",
"libp2p-websocket",
"libp2p-yamux",
"multihash",
"parity-multiaddr",
"parking_lot 0.10.2",
"pin-project",
"smallvec 1.4.1",
"wasm-timer",
]
[[package]]
name = "libp2p-core"
version = "0.20.1"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a694fd76d7c33a45a0e6e1525e9b9b5d11127c9c94e560ac0f8abba54ed80af"
checksum = "17cea54ea4a846a7c47e4347db0fc7a4129dcb0fb57f07f57e473820edbfcbde"
dependencies = [
"asn1_der",
"bs58",
@@ -2991,9 +2965,9 @@ dependencies = [
[[package]]
name = "libp2p-core-derive"
version = "0.20.1"
version = "0.20.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "515c4a7cba5d321bb88ed3ed803997bdd5634ce35c9c5e8e9ace9c512e57eceb"
checksum = "f753d9324cd3ec14bf04b8a8cd0d269c87f294153d6bf2a84497a63a5ad22213"
dependencies = [
"quote",
"syn",
@@ -3001,9 +2975,9 @@ dependencies = [
[[package]]
name = "libp2p-deflate"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "abeff37fa533fead23fc71b14ed0a2aced36c0c65c3d0078aff07821fb71029e"
checksum = "bc6174d6addc9cc5fd84af7099480774035dd1a7cdf48dd31b23dea45cf57638"
dependencies = [
"flate2",
"futures 0.3.5",
@@ -3012,9 +2986,9 @@ dependencies = [
[[package]]
name = "libp2p-dns"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f751924b6b98e350005e0b87a822beb246792a3fb878c684e088f866158120ac"
checksum = "fce8769cfe677a567d2677dc02a9e5be27a24acf1ff78a59cef425caae009a6a"
dependencies = [
"futures 0.3.5",
"libp2p-core",
@@ -3023,9 +2997,9 @@ dependencies = [
[[package]]
name = "libp2p-floodsub"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "02d4f310a02441b681075037ffb41649ee8836619559311b801ef3d5cdbe14cf"
checksum = "2f2342965ac7ea4b85f4df5288089796421f9297ba4020dc9692f4ef728590dc"
dependencies = [
"cuckoofilter",
"fnv",
@@ -3040,9 +3014,9 @@ dependencies = [
[[package]]
name = "libp2p-gossipsub"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a70f76b6c53ae9c97c234498c799802e43f91766bcf4a2a1f94f9339617d713b"
checksum = "0828b4f0c76c2edc68da574e391ce981bac5316d65785cddfe8c273d4c9bd4bb"
dependencies = [
"base64 0.11.0",
"byteorder 1.3.4",
@@ -3050,10 +3024,11 @@ dependencies = [
"fnv",
"futures 0.3.5",
"futures_codec",
"hex_fmt",
"libp2p-core",
"libp2p-swarm",
"log",
"lru 0.4.3",
"lru_time_cache",
"prost",
"prost-build",
"rand 0.7.3",
@@ -3065,9 +3040,9 @@ dependencies = [
[[package]]
name = "libp2p-identify"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "912c00a7bf67e0e765daf0cc37e08f675ea26aba3d6d1fbfaee81f19a4c23049"
checksum = "41efcb5b521b65d2c45432a244ce6427cdd3649228cd192f397d1fa67682aef2"
dependencies = [
"futures 0.3.5",
"libp2p-core",
@@ -3081,9 +3056,9 @@ dependencies = [
[[package]]
name = "libp2p-kad"
version = "0.21.0"
version = "0.22.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "44ed3a4c8111c570ab2bffb30c6353178d7603ce3787e3c5f2493c8d3d16d1f0"
checksum = "ca9b4ccc868863317af3f65eb241811ceadd971d133183040140f5496037e0ae"
dependencies = [
"arrayvec 0.5.1",
"bytes 0.5.6",
@@ -3108,9 +3083,9 @@ dependencies = [
[[package]]
name = "libp2p-mdns"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cd004c668160fd922f7268b2cd1e4550ff69165d9c744e9eb5770086eb753d02"
checksum = "d4fe5614c2c5af74ef5870aad0fce73c9e4707716c4ee7cdf06cf9a0376d3815"
dependencies = [
"async-std",
"data-encoding",
@@ -3130,9 +3105,9 @@ dependencies = [
[[package]]
name = "libp2p-mplex"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "14ae0ffacd30f073f96cd518b2c9cd2cb18ac27c3d136a4b23cf1af99f33e541"
checksum = "df9e79541e71590846f773efce1b6d0538804992ee54ff2f407e05d63a9ddc23"
dependencies = [
"bytes 0.5.6",
"fnv",
@@ -3146,31 +3121,9 @@ dependencies = [
[[package]]
name = "libp2p-noise"
version = "0.21.0"
version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8f353f8966bbaaf7456535fffd3f366f153148773a0cf04b2ec3860955cb720e"
dependencies = [
"bytes 0.5.6",
"curve25519-dalek",
"futures 0.3.5",
"lazy_static",
"libp2p-core",
"log",
"prost",
"prost-build",
"rand 0.7.3",
"sha2 0.8.2",
"snow",
"static_assertions",
"x25519-dalek",
"zeroize",
]
[[package]]
name = "libp2p-noise"
version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e594f2de0c23c2b7ad14802c991a2e68e95315c6a6c7715e53801506f20135d"
checksum = "0beba6459d06153f5f8e23da3df1d2183798b1f457c7c9468ff99760bcbcc60b"
dependencies = [
"bytes 0.5.6",
"curve25519-dalek",
@@ -3190,9 +3143,9 @@ dependencies = [
[[package]]
name = "libp2p-ping"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "70130cf130e4ba6dc177366e72dd9f86f9e3588fa1a0c4145247e676f16affad"
checksum = "670261ef938567b614746b078e049b03b55617538a8d415071c518f97532d043"
dependencies = [
"futures 0.3.5",
"libp2p-core",
@@ -3205,9 +3158,9 @@ dependencies = [
[[package]]
name = "libp2p-plaintext"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53f0308a97f6fdd37a2bc388070e471c3ce9d92aa45c99d75c87c2dc5d5cac96"
checksum = "b3a61dfd53d1264ddff1206e4827193efaa72bab27782dfcd63c0dec120a1875"
dependencies = [
"bytes 0.5.6",
"futures 0.3.5",
@@ -3237,23 +3190,26 @@ dependencies = [
[[package]]
name = "libp2p-request-response"
version = "0.1.1"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6f48682b48a96545a323edd150c1d64fc1e250240bba02866e9f902e3dc032a9"
checksum = "4af0de0e56a11d46c5191a61019733b5618dc955c0a36f82866bb6d5d81a7f8f"
dependencies = [
"async-trait",
"futures 0.3.5",
"libp2p-core",
"libp2p-swarm",
"log",
"lru 0.6.0",
"rand 0.7.3",
"smallvec 1.4.1",
"wasm-timer",
]
[[package]]
name = "libp2p-secio"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ff43513c383f7cdab2736eb98465fc4c5dd5d1988df89749dc8a68950349d56"
checksum = "a04b320cc0394554e8d0adca21f4efd9f8c2da4930211d92e411a19a4dfd769e"
dependencies = [
"aes-ctr",
"ctr",
@@ -3281,9 +3237,9 @@ dependencies = [
[[package]]
name = "libp2p-swarm"
version = "0.20.1"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f88d5e2a090a2aadf042cd33484e2f015c6dab212567406a59deece5dedbd133"
checksum = "57e4a7e64156e9d1a2daae36b5d791f057b9c53c9364a8e75f7f9848b54f9d68"
dependencies = [
"futures 0.3.5",
"libp2p-core",
@@ -3296,9 +3252,9 @@ dependencies = [
[[package]]
name = "libp2p-tcp"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b1fa2bbad054020cb875546a577a66a65a5bf42eff55ed5265f92ffee3cc052"
checksum = "f0f65400ccfbbf9a356733bceca6c519c9db0deb5fbcc0b81f89837c4cd53997"
dependencies = [
"async-std",
"futures 0.3.5",
@@ -3312,9 +3268,9 @@ dependencies = [
[[package]]
name = "libp2p-uds"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b9db9fce9e3588c3118475d9ca761c5c133b639a624a7341e2a61e4b28c376b8"
checksum = "95bc8b0ca1dda4cccb1bb156d47a32e45cfa447ef18f737209f014a63f94a4a2"
dependencies = [
"async-std",
"futures 0.3.5",
@@ -3324,9 +3280,9 @@ dependencies = [
[[package]]
name = "libp2p-wasm-ext"
version = "0.20.1"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0feb99e32fea20ffb1bbf56a6fb2614bff7325ff44a515728385170b3420d2c3"
checksum = "0f2f7b06d80d036ac5763a811185b7fe6951ad71c00544b17cc378a9069bb7c2"
dependencies = [
"futures 0.3.5",
"js-sys",
@@ -3338,9 +3294,9 @@ dependencies = [
[[package]]
name = "libp2p-websocket"
version = "0.21.1"
version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "046a5201f6e471f22b22b394e4d084269ed1e28cf7300f7b49874385db84c7bd"
checksum = "a5b350db65cf0a7c83a539a596ea261caae1552c0df2245df0f916ed2fd04572"
dependencies = [
"async-tls",
"either",
@@ -3358,9 +3314,9 @@ dependencies = [
[[package]]
name = "libp2p-yamux"
version = "0.20.0"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "46ae9bf2f7d8a4be9c7e9b61df9de9dc1bd66419d669098f22f81f8d9571029a"
checksum = "b3969ead4ce530efb6f304623924245caf410f3b0b0139bd7007f205933788aa"
dependencies = [
"futures 0.3.5",
"libp2p-core",
@@ -3498,6 +3454,21 @@ dependencies = [
"hashbrown 0.6.3",
]
[[package]]
name = "lru"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "111b945ac72ec09eb7bc62a0fbdc3cc6e80555a7245f52a69d3921a75b53b153"
dependencies = [
"hashbrown 0.8.1",
]
[[package]]
name = "lru_time_cache"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "adb241df5c4caeb888755363fc95f8a896618dc0d435e9e775f7930cb099beab"
[[package]]
name = "mach"
version = "0.3.2"
@@ -3812,7 +3783,7 @@ dependencies = [
"futures 0.3.5",
"futures-timer 3.0.2",
"jsonrpc-core",
"libp2p 0.23.0",
"libp2p",
"node-cli",
"sc-rpc-api",
"serde",
@@ -6386,7 +6357,7 @@ dependencies = [
"env_logger",
"futures 0.3.5",
"futures-timer 3.0.2",
"libp2p 0.23.0",
"libp2p",
"log",
"parity-scale-codec",
"prost",
@@ -6490,7 +6461,7 @@ dependencies = [
"futures 0.3.5",
"hex",
"lazy_static",
"libp2p 0.22.0",
"libp2p",
"log",
"names",
"nix",
@@ -7056,7 +7027,7 @@ dependencies = [
"futures_codec",
"hex",
"ip_network",
"libp2p 0.23.0",
"libp2p",
"linked-hash-map",
"linked_hash_set",
"log",
@@ -7103,7 +7074,7 @@ dependencies = [
"async-std",
"futures 0.3.5",
"futures-timer 3.0.2",
"libp2p 0.23.0",
"libp2p",
"log",
"lru 0.4.3",
"quickcheck",
@@ -7121,7 +7092,7 @@ dependencies = [
"env_logger",
"futures 0.3.5",
"futures-timer 3.0.2",
"libp2p 0.23.0",
"libp2p",
"log",
"parking_lot 0.10.2",
"rand 0.7.3",
@@ -7178,7 +7149,7 @@ name = "sc-peerset"
version = "2.0.0-rc6"
dependencies = [
"futures 0.3.5",
"libp2p 0.23.0",
"libp2p",
"log",
"rand 0.7.3",
"serde_json",
@@ -7406,7 +7377,7 @@ version = "2.0.0-rc6"
dependencies = [
"futures 0.3.5",
"futures-timer 3.0.2",
"libp2p 0.23.0",
"libp2p",
"log",
"parking_lot 0.10.2",
"pin-project",
@@ -8075,7 +8046,7 @@ dependencies = [
"derive_more",
"futures 0.3.5",
"futures-timer 3.0.2",
"libp2p 0.23.0",
"libp2p",
"log",
"parity-scale-codec",
"parking_lot 0.10.2",
@@ -8,7 +8,7 @@ license = "Apache-2.0"
[dependencies]
futures-timer = "3.0.2"
libp2p = { version = "0.23.0", default-features = false }
libp2p = { version = "0.24.0", default-features = false }
jsonrpc-core = "14.2.0"
serde = "1.0.106"
serde_json = "1.0.48"
@@ -21,7 +21,7 @@ codec = { package = "parity-scale-codec", default-features = false, version = "1
derive_more = "0.99.2"
futures = "0.3.4"
futures-timer = "3.0.1"
libp2p = { version = "0.23.0", default-features = false, features = ["kad"] }
libp2p = { version = "0.24.0", default-features = false, features = ["kad"] }
log = "0.4.8"
prometheus-endpoint = { package = "substrate-prometheus-endpoint", path = "../../utils/prometheus", version = "0.8.0-rc6"}
prost = "0.6.1"
+1 -1
View File
@@ -23,7 +23,7 @@ lazy_static = "1.4.0"
tokio = { version = "0.2.21", features = [ "signal", "rt-core", "rt-threaded", "blocking" ] }
futures = "0.3.4"
fdlimit = "0.1.4"
libp2p = "0.22"
libp2p = "0.24.0"
parity-scale-codec = "1.3.0"
hex = "0.4.2"
rand = "0.7.3"
+1 -1
View File
@@ -16,7 +16,7 @@ targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
futures = "0.3.4"
futures-timer = "3.0.1"
libp2p = { version = "0.23.0", default-features = false }
libp2p = { version = "0.24.0", default-features = false }
log = "0.4.8"
lru = "0.4.3"
sc-network = { version = "0.8.0-rc6", path = "../network" }
+3 -3
View File
@@ -62,14 +62,14 @@ wasm-timer = "0.2"
zeroize = "1.0.0"
[dependencies.libp2p]
version = "0.23.0"
version = "0.24.0"
default-features = false
features = ["identify", "kad", "mdns", "mplex", "noise", "ping", "tcp-async-std", "websocket", "yamux"]
features = ["identify", "kad", "mdns-async-std", "mplex", "noise", "ping", "tcp-async-std", "websocket", "yamux"]
[dev-dependencies]
assert_matches = "1.3"
env_logger = "0.7.0"
libp2p = { version = "0.23.0", default-features = false, features = ["secio"] }
libp2p = { version = "0.24.0", default-features = false, features = ["secio"] }
quickcheck = "0.9.0"
rand = "0.7.2"
sp-keyring = { version = "2.0.0-rc6", path = "../../primitives/keyring" }
+10 -9
View File
@@ -1633,18 +1633,19 @@ impl<B: BlockT + 'static, H: ExHashT> Future for NetworkWorker<B, H> {
ConnectedPoint::Listener { .. } => "in",
};
let reason = match cause {
ConnectionError::IO(_) => "transport-error",
ConnectionError::Handler(NodeHandlerWrapperError::Handler(EitherError::A(EitherError::A(
Some(ConnectionError::IO(_)) => "transport-error",
Some(ConnectionError::Handler(NodeHandlerWrapperError::Handler(EitherError::A(EitherError::A(
EitherError::A(EitherError::A(EitherError::B(
EitherError::A(PingFailure::Timeout)))))))) => "ping-timeout",
ConnectionError::Handler(NodeHandlerWrapperError::Handler(EitherError::A(EitherError::A(
EitherError::A(PingFailure::Timeout))))))))) => "ping-timeout",
Some(ConnectionError::Handler(NodeHandlerWrapperError::Handler(EitherError::A(EitherError::A(
EitherError::A(EitherError::A(EitherError::A(
NotifsHandlerError::Legacy(LegacyConnectionKillError)))))))) => "force-closed",
ConnectionError::Handler(NodeHandlerWrapperError::Handler(EitherError::A(EitherError::A(
NotifsHandlerError::Legacy(LegacyConnectionKillError))))))))) => "force-closed",
Some(ConnectionError::Handler(NodeHandlerWrapperError::Handler(EitherError::A(EitherError::A(
EitherError::A(EitherError::A(EitherError::A(
NotifsHandlerError::SyncNotificationsClogged))))))) => "sync-notifications-clogged",
ConnectionError::Handler(NodeHandlerWrapperError::Handler(_)) => "protocol-error",
ConnectionError::Handler(NodeHandlerWrapperError::KeepAliveTimeout) => "keep-alive-timeout",
NotifsHandlerError::SyncNotificationsClogged)))))))) => "sync-notifications-clogged",
Some(ConnectionError::Handler(NodeHandlerWrapperError::Handler(_))) => "protocol-error",
Some(ConnectionError::Handler(NodeHandlerWrapperError::KeepAliveTimeout)) => "keep-alive-timeout",
None => "actively-closed",
};
metrics.connections_closed_total.with_label_values(&[direction, reason]).inc();
+1 -1
View File
@@ -19,7 +19,7 @@ parking_lot = "0.10.0"
futures = "0.3.4"
futures-timer = "3.0.1"
rand = "0.7.2"
libp2p = { version = "0.23.0", default-features = false }
libp2p = { version = "0.24.0", default-features = false }
sp-consensus = { version = "0.8.0-rc6", path = "../../../primitives/consensus/common" }
sc-consensus = { version = "0.8.0-rc6", path = "../../../client/consensus/common" }
sc-client-api = { version = "2.0.0-rc6", path = "../../api" }
+1 -1
View File
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
futures = "0.3.4"
libp2p = { version = "0.23.0", default-features = false }
libp2p = { version = "0.24.0", default-features = false }
sp-utils = { version = "2.0.0-rc6", path = "../../primitives/utils"}
log = "0.4.8"
serde_json = "1.0.41"
+1 -1
View File
@@ -18,7 +18,7 @@ parking_lot = "0.10.0"
futures = "0.3.4"
futures-timer = "3.0.1"
wasm-timer = "0.2.0"
libp2p = { version = "0.23.0", default-features = false, features = ["dns", "tcp-async-std", "wasm-ext", "websocket"] }
libp2p = { version = "0.24.0", default-features = false, features = ["dns", "tcp-async-std", "wasm-ext", "websocket"] }
log = "0.4.8"
pin-project = "0.4.6"
rand = "0.7.2"
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
derive_more = "0.99.2"
libp2p = { version = "0.23.0", default-features = false }
libp2p = { version = "0.24.0", default-features = false }
log = "0.4.8"
sp-core = { path= "../../core", version = "2.0.0-rc6"}
sp-inherents = { version = "2.0.0-rc6", path = "../../inherents" }
+1 -1
View File
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
futures = { version = "0.3", features = ["compat"] }
futures01 = { package = "futures", version = "0.1.29" }
log = "0.4.8"
libp2p-wasm-ext = { version = "0.20", features = ["websocket"] }
libp2p-wasm-ext = { version = "0.21", features = ["websocket"] }
console_error_panic_hook = "0.1.6"
console_log = "0.1.2"
js-sys = "0.3.34"