From 35f173f2270e9bc2bfff317059c8edc6a91d76a4 Mon Sep 17 00:00:00 2001 From: Cayman Date: Fri, 20 Jan 2023 15:28:10 -0500 Subject: [PATCH 1/4] WIP --- packages/beacon-node/package.json | 14 +- packages/cli/package.json | 2 +- packages/reqresp/package.json | 2 +- yarn.lock | 440 ++++++++++++++++-------------- 4 files changed, 251 insertions(+), 207 deletions(-) diff --git a/packages/beacon-node/package.json b/packages/beacon-node/package.json index b52d5c2b5fb6..0784e7759ad2 100644 --- a/packages/beacon-node/package.json +++ b/packages/beacon-node/package.json @@ -96,21 +96,21 @@ "@chainsafe/as-sha256": "^0.3.1", "@chainsafe/bls": "7.1.1", "@chainsafe/discv5": "^1.4.0", - "@chainsafe/libp2p-gossipsub": "^5.3.0", - "@chainsafe/libp2p-noise": "^10.2.0", + "@chainsafe/libp2p-gossipsub": "^6.1.0", + "@chainsafe/libp2p-noise": "^11.0.0", "@chainsafe/persistent-merkle-tree": "^0.4.2", "@chainsafe/snappy-stream": "^5.1.2", "@chainsafe/ssz": "^0.9.2", "@chainsafe/threads": "^1.10.0", "@ethersproject/abi": "^5.0.0", - "@libp2p/bootstrap": "^5.0.0", + "@libp2p/bootstrap": "^6.0.0", "@libp2p/interface-connection": "^3.0.2", "@libp2p/interface-connection-manager": "^1.3.0", - "@libp2p/interface-peer-id": "^1.0.5", + "@libp2p/interface-peer-id": "^2.0.1", "@libp2p/interface-pubsub": "^3.0.0", - "@libp2p/mdns": "^5.1.0", + "@libp2p/mdns": "^6.0.0", "@libp2p/mplex": "^7.1.0", - "@libp2p/peer-id-factory": "^1.0.19", + "@libp2p/peer-id-factory": "^2.0.1", "@libp2p/prometheus-metrics": "^1.1.2", "@libp2p/tcp": "^6.0.4", "@lodestar/api": "^1.3.0", @@ -139,7 +139,7 @@ "it-all": "^2.0.0", "it-pipe": "^2.0.5", "jwt-simple": "0.5.6", - "libp2p": "0.41.0", + "libp2p": "0.42.2", "prom-client": "^14.1.0", "prometheus-gc-stats": "^0.6.3", "snappyjs": "^0.7.0", diff --git a/packages/cli/package.json b/packages/cli/package.json index 0e539658f214..b41af48316bd 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -60,7 +60,7 @@ "@chainsafe/blst": "^0.2.8", "@chainsafe/discv5": "^1.4.0", "@chainsafe/ssz": "^0.9.2", - "@libp2p/peer-id-factory": "^1.0.19", + "@libp2p/peer-id-factory": "^2.0.1", "@lodestar/api": "^1.3.0", "@lodestar/beacon-node": "^1.3.0", "@lodestar/config": "^1.3.0", diff --git a/packages/reqresp/package.json b/packages/reqresp/package.json index e89c29b96d68..fa6af0587f11 100644 --- a/packages/reqresp/package.json +++ b/packages/reqresp/package.json @@ -58,7 +58,7 @@ "dependencies": { "@chainsafe/snappy-stream": "^5.1.2", "@libp2p/interface-connection": "^3.0.2", - "@libp2p/interface-peer-id": "^1.0.4", + "@libp2p/interface-peer-id": "^2.0.1", "@lodestar/config": "^1.3.0", "@lodestar/params": "^1.3.0", "@lodestar/types": "^1.3.0", diff --git a/yarn.lock b/yarn.lock index 876b408a3bd6..846c5c13a48c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -524,49 +524,48 @@ resolved "https://registry.yarnpkg.com/@chainsafe/is-ip/-/is-ip-2.0.1.tgz#62cb285669d91f88fd9fa285048dde3882f0993b" integrity sha512-nqSJ8u2a1Rv9FYbyI8qpDhTYujaKEyLknNrTejLYoSWmdeg+2WB7R6BZqPZYfrJzDxVi3rl6ZQuoaEvpKRZWgQ== -"@chainsafe/libp2p-gossipsub@^5.3.0": - version "5.4.1" - resolved "https://registry.yarnpkg.com/@chainsafe/libp2p-gossipsub/-/libp2p-gossipsub-5.4.1.tgz#bbf79de028757f3adbcff5c3a209bbe2f1714535" - integrity sha512-lcqtG74lwQevxC/OTZHZzszb8HS91VkmJxTyndQUu9a6AXBok2a95lyWCK2l8/VPLg0JxIpwYgUCHTTTExDK/A== +"@chainsafe/libp2p-gossipsub@^6.1.0": + version "6.1.0" + resolved "https://registry.yarnpkg.com/@chainsafe/libp2p-gossipsub/-/libp2p-gossipsub-6.1.0.tgz#70b34bb507d365ebc9dcd64071ccb0f4452a57f5" + integrity sha512-+zIPRGf2T+Qd+Hef/XbJx66FL+hbmth9sk6sr3PvQ2eolHGFwPwxSeM7fVdGWoZ7sMndUoGKUNPmO2GzbPsVQg== dependencies: "@libp2p/crypto" "^1.0.3" "@libp2p/interface-connection" "^3.0.1" "@libp2p/interface-connection-manager" "^1.3.0" "@libp2p/interface-keys" "^1.0.3" - "@libp2p/interface-peer-id" "^1.0.4" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-peer-store" "^1.2.2" "@libp2p/interface-pubsub" "^3.0.0" "@libp2p/interface-registrar" "^2.0.3" - "@libp2p/interfaces" "^3.0.3" + "@libp2p/interfaces" "^3.2.0" "@libp2p/logger" "^2.0.0" - "@libp2p/peer-id" "^1.1.15" - "@libp2p/peer-record" "^4.0.1" - "@libp2p/pubsub" "^5.0.0" - "@libp2p/topology" "^3.0.0" + "@libp2p/peer-id" "^2.0.0" + "@libp2p/peer-record" "^5.0.0" + "@libp2p/pubsub" "^6.0.0" + "@libp2p/topology" "^4.0.0" "@multiformats/multiaddr" "^11.0.0" abortable-iterator "^4.0.2" denque "^1.5.0" - err-code "^3.0.1" it-length-prefixed "^8.0.2" it-pipe "^2.0.4" it-pushable "^3.1.0" - multiformats "^10.0.0" + multiformats "^11.0.0" protobufjs "^6.11.2" uint8arraylist "^2.3.2" uint8arrays "^4.0.2" -"@chainsafe/libp2p-noise@^10.2.0": - version "10.2.0" - resolved "https://registry.yarnpkg.com/@chainsafe/libp2p-noise/-/libp2p-noise-10.2.0.tgz#809f7fff8685a1687958fc8f36d314e1d097b6ad" - integrity sha512-nXw09UwSE5JCiB5Dte6j0b0Qe+KbtepJvaPz/f5JyxcoyUfLE/t7XWRZAZmcuWBeVWWpOItnK5WmW8uocoiwCQ== +"@chainsafe/libp2p-noise@^11.0.0": + version "11.0.0" + resolved "https://registry.yarnpkg.com/@chainsafe/libp2p-noise/-/libp2p-noise-11.0.0.tgz#ecfc82230f0fa73be3ed92add4b09424d9d1e280" + integrity sha512-NEl5aIv6muz9OL+dsa3INEU89JX0NViBxOy7NwwG8eNRPUDHo5E3ZTMSHXQpVx1K/ofoNS4ANO9xwezY6ss5GA== dependencies: "@libp2p/crypto" "^1.0.0" "@libp2p/interface-connection-encrypter" "^3.0.0" "@libp2p/interface-keys" "^1.0.2" "@libp2p/interface-metrics" "^4.0.2" - "@libp2p/interface-peer-id" "^1.0.2" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/logger" "^2.0.0" - "@libp2p/peer-id" "^1.1.8" + "@libp2p/peer-id" "^2.0.0" "@stablelib/chacha20poly1305" "^1.0.1" "@stablelib/hkdf" "^1.0.1" "@stablelib/sha256" "^1.0.1" @@ -1817,33 +1816,33 @@ npmlog "^6.0.2" write-file-atomic "^4.0.1" -"@libp2p/bootstrap@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@libp2p/bootstrap/-/bootstrap-5.0.0.tgz#ebb921ef59a017886fc2ebd804a4e03dfc39e336" - integrity sha512-3r20rD2coW0k6j7C7EBfRPh3vaUKVKcTmMksesn7ybcNezu8ziEHxZx93BBwnw8sy+ZwSfnUsK/vOtiGWJPAhw== +"@libp2p/bootstrap@^6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@libp2p/bootstrap/-/bootstrap-6.0.0.tgz#091a302220bcdf991289a282ef0d5b433ea41ed5" + integrity sha512-AoBojVr9w2n08TVQ7ZWh1QFrg44esglfC5dFl7H+K9DU2HlhYR7LgqxbyXJ+uJOxziTqID/NpNnfiGovcX+48Q== dependencies: "@libp2p/interface-peer-discovery" "^1.0.1" - "@libp2p/interface-peer-info" "^1.0.3" + "@libp2p/interface-peer-info" "^1.0.7" "@libp2p/interface-peer-store" "^1.2.2" "@libp2p/interfaces" "^3.0.3" "@libp2p/logger" "^2.0.1" - "@libp2p/peer-id" "^1.1.15" + "@libp2p/peer-id" "^2.0.0" "@multiformats/mafmt" "^11.0.3" "@multiformats/multiaddr" "^11.0.0" -"@libp2p/crypto@^1.0.0", "@libp2p/crypto@^1.0.3", "@libp2p/crypto@^1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@libp2p/crypto/-/crypto-1.0.4.tgz#b7639599db8ad7518c5be1c9c7b70b40dd0fb12f" - integrity sha512-3hHZvqi+vI8YoTHE+0u8nA5SYGPLZRLMvbgXQoAn0IyPjez66Taaxym/3p3Duf9QkFlvJu95nzpNzv0OdHs9Yw== +"@libp2p/crypto@^1.0.0", "@libp2p/crypto@^1.0.11", "@libp2p/crypto@^1.0.3", "@libp2p/crypto@^1.0.4": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@libp2p/crypto/-/crypto-1.0.11.tgz#c930c64abb189654cf8294d36fe9c23a62ceb4ea" + integrity sha512-DWiG/0fKIDnkhTF3HoCu2OzkuKXysR/UKGdM9JZkT6F9jS9rwZYEwmacs4ybw1qyufyH+pMXV3/vuUu2Q/UxLw== dependencies: "@libp2p/interface-keys" "^1.0.2" "@noble/ed25519" "^1.6.0" "@noble/secp256k1" "^1.5.4" err-code "^3.0.1" - multiformats "^9.4.5" + multiformats "^11.0.0" node-forge "^1.1.0" - protons-runtime "^3.1.0" - uint8arrays "^3.0.0" + protons-runtime "^4.0.1" + uint8arrays "^4.0.2" "@libp2p/interface-address-manager@^2.0.0": version "2.0.0" @@ -1854,60 +1853,87 @@ "@multiformats/multiaddr" "^11.0.0" "@libp2p/interface-connection-encrypter@^3.0.0", "@libp2p/interface-connection-encrypter@^3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@libp2p/interface-connection-encrypter/-/interface-connection-encrypter-3.0.1.tgz#5a68ce162930b756e8177a88cb807d2937799d32" - integrity sha512-KZ/4vuLokv2fNCnEAM5S91t8v5lMWXdYa26v/iGLqLgiH5MXmIGOgLLGdboXNMYM2ZYYCBgEpSHv+ZRbfO524Q== + version "3.0.6" + resolved "https://registry.yarnpkg.com/@libp2p/interface-connection-encrypter/-/interface-connection-encrypter-3.0.6.tgz#1f7c7428d5905b390cfc5390e72bd02829213d31" + integrity sha512-LwyYBN/aSa3IPCe7gBxffx/vaC0rFxAXlCbx4QGaWGtg6qK80Ouj89LEDWb3HkMbecNVWaV4TEqJIM5WnAAx1Q== dependencies: - "@libp2p/interface-peer-id" "^1.0.0" + "@libp2p/interface-peer-id" "^2.0.0" it-stream-types "^1.0.4" - uint8arraylist "^2.1.1" + uint8arraylist "^2.1.2" "@libp2p/interface-connection-manager@^1.1.1", "@libp2p/interface-connection-manager@^1.3.0": - version "1.3.4" - resolved "https://registry.yarnpkg.com/@libp2p/interface-connection-manager/-/interface-connection-manager-1.3.4.tgz#a4a8f2dff80485c50eba511dd841c0ac16e6f806" - integrity sha512-ahTnhKqjRpUEtKcozAg/VuQ1GzArVF6PREW4lypWKlMzJDD/WJSmO5RlmIF123qnUqiYYH+1M+ONwLapUAIDjw== + version "1.3.7" + resolved "https://registry.yarnpkg.com/@libp2p/interface-connection-manager/-/interface-connection-manager-1.3.7.tgz#110a3ea0a8e63461e159df7182e6246625e92bd5" + integrity sha512-GyRa7FXtwjbch4ucFa/jj6vcaQT2RyhUbH3q0tIOTzjntABTMzQrhn3BWOGU5deRp2K7cVOB/OzrdhHdGUxYQA== dependencies: "@libp2p/interface-connection" "^3.0.0" - "@libp2p/interface-peer-id" "^1.0.0" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interfaces" "^3.0.0" "@multiformats/multiaddr" "^11.0.0" "@libp2p/interface-connection@^3.0.0", "@libp2p/interface-connection@^3.0.1", "@libp2p/interface-connection@^3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@libp2p/interface-connection/-/interface-connection-3.0.2.tgz#3a2c939b44558b41faa605644b50d6122fc8f59a" - integrity sha512-38R2GQ6BCOtwMi5uWU5MLr+xfEpRmVK9gqOp7jNx+6T7TVn8ji4725XLXNfpzprbOrzZkqf2iER84s8+yX4pMA== + version "3.0.8" + resolved "https://registry.yarnpkg.com/@libp2p/interface-connection/-/interface-connection-3.0.8.tgz#2c17bcdc53c6951d96a8430bb7dad1cb064cf184" + integrity sha512-JiI9xVPkiSgW9hkvHWA4e599OLPNSACrpgtx6UffHG9N+Jpt0IOmM4iLic8bSIYkZJBOQFG1Sv/gVNB98Uq0Nw== dependencies: - "@libp2p/interface-peer-id" "^1.0.0" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interfaces" "^3.0.0" "@multiformats/multiaddr" "^11.0.0" it-stream-types "^1.0.4" - uint8arraylist "^2.1.1" + uint8arraylist "^2.1.2" -"@libp2p/interface-content-routing@^1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@libp2p/interface-content-routing/-/interface-content-routing-1.0.2.tgz#783721ac67463b10fd8b5c0b60f75f886642fbdf" - integrity sha512-Ue1X8XrZ4ymTMQk/GWom/EKfPB5Lu7zy33ohjSix26Da/HbBvkXBdnYGDj485vxSOZGZRqeBhh21nCVjD/yLyg== +"@libp2p/interface-content-routing@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-content-routing/-/interface-content-routing-2.0.1.tgz#e050dc42adc3e9b4f1666eafa889c88f892ba1c4" + integrity sha512-M3rYXMhH+102qyZzc0GzkKq10x100nWVXGns2qtN3O82Hy/6FxXdgLUGIGWMdCj/7ilaVAuTwx8V3+DGmDIiMw== dependencies: "@libp2p/interface-peer-info" "^1.0.0" "@libp2p/interfaces" "^3.0.0" - multiformats "^9.6.3" + multiformats "^11.0.0" -"@libp2p/interface-dht@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@libp2p/interface-dht/-/interface-dht-1.0.1.tgz#1388c74da1261f2a3212fa8a7d2ca4559688b3cd" - integrity sha512-EToxQznHUnD9frWoHwq8DUaOa7RZ2qoo6beb1aWdQrEJsEdUBi62FHh9qrLkrL+E4W3rkl2+WrhSP6/iHxZZwQ== +"@libp2p/interface-dht@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-dht/-/interface-dht-2.0.1.tgz#b41901d193081b6e51a2dd55e7338ed03a2bdd07" + integrity sha512-+yEbt+1hMTR1bITzYyE771jEujimPXqDyFm8T1a8slMpeOD9z5wmLfuCWif8oGZJzXX5YqldWwSwytJQgWXL9g== dependencies: "@libp2p/interface-peer-discovery" "^1.0.0" - "@libp2p/interface-peer-id" "^1.0.0" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-peer-info" "^1.0.0" "@libp2p/interfaces" "^3.0.0" - multiformats "^9.6.3" + multiformats "^11.0.0" + +"@libp2p/interface-keychain@^2.0.0": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@libp2p/interface-keychain/-/interface-keychain-2.0.3.tgz#3cbdb251b9e9c496976d337a62d2e6d5b7415035" + integrity sha512-qtSUww/lpnrDHYMAOGDz5KLuTrHNM15kyuLqop96uN22V7PDizvkHY4EgtqWKgPLoNyeEnMwfUSBOQbXcWuVUA== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + multiformats "^11.0.0" "@libp2p/interface-keys@^1.0.2", "@libp2p/interface-keys@^1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@libp2p/interface-keys/-/interface-keys-1.0.3.tgz#251abb2f0fe084e35e16ba782d64c7e4dfb24470" integrity sha512-K8/HlRl/swbVTWuGHNHF28EytszYfUhKgUHfv8CdbMk9ZA/bgO4uU+d9rcrg/Dhw3511U3aRz2bwl2psn6rJfg== +"@libp2p/interface-libp2p@^1.0.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-libp2p/-/interface-libp2p-1.1.1.tgz#0e75af940dcc0f48c6abd677902d3eafc69ac7e8" + integrity sha512-cELZZv/tzFxbUzL3Jvbk+AM2J6kDhIUNBIMMMLuR3LIHfmVJkh31G3ChLUZuKhBwB8wXJ1Ssev3fk1tfz/5DWA== + dependencies: + "@libp2p/interface-connection" "^3.0.0" + "@libp2p/interface-content-routing" "^2.0.0" + "@libp2p/interface-dht" "^2.0.0" + "@libp2p/interface-keychain" "^2.0.0" + "@libp2p/interface-metrics" "^4.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-peer-info" "^1.0.0" + "@libp2p/interface-peer-routing" "^1.0.0" + "@libp2p/interface-peer-store" "^1.0.0" + "@libp2p/interface-pubsub" "^3.0.0" + "@libp2p/interface-registrar" "^2.0.0" + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^11.0.0" + "@libp2p/interface-metrics@^4.0.0", "@libp2p/interface-metrics@^4.0.2": version "4.0.2" resolved "https://registry.yarnpkg.com/@libp2p/interface-metrics/-/interface-metrics-4.0.2.tgz#329a1602f7844f6a9cf441439001f8e8f8e7dafc" @@ -1923,67 +1949,74 @@ "@libp2p/interface-peer-info" "^1.0.0" "@libp2p/interfaces" "^3.0.0" -"@libp2p/interface-peer-id@^1.0.0", "@libp2p/interface-peer-id@^1.0.2", "@libp2p/interface-peer-id@^1.0.4", "@libp2p/interface-peer-id@^1.0.5": +"@libp2p/interface-peer-id@^1.0.0", "@libp2p/interface-peer-id@^1.0.2": version "1.0.5" resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-id/-/interface-peer-id-1.0.5.tgz#df424cc5475ecc3d060a8ef34526fdf8ec096c4f" integrity sha512-K7TJTmtPWfIrH4NS5y+dvAwQltoga+ScGgjs+ZGKz07uHzoPUeE/OpXxs5Msdela6hp+dP1Ha7bZmA/Njbq5bg== dependencies: multiformats "^10.0.0" -"@libp2p/interface-peer-info@^1.0.0", "@libp2p/interface-peer-info@^1.0.1", "@libp2p/interface-peer-info@^1.0.3": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-info/-/interface-peer-info-1.0.3.tgz#b2da9487adfa1da779dc6982a6843352d8a4f22b" - integrity sha512-QKybxfp/NmDGDMkgf/CTt4fU03ajZnldHr9TYg5wMkJrnVaaHbhDTYBg5YWt+iOH1mgR89/dpKv/Na0ZE5sPIA== +"@libp2p/interface-peer-id@^2.0.0", "@libp2p/interface-peer-id@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-id/-/interface-peer-id-2.0.1.tgz#445632909d44a8ae2c736bb2aa98c8bf757e8c62" + integrity sha512-k01hKHTAZWMOiBC+yyFsmBguEMvhPkXnQtqLtFqga2fVZu8Zve7zFAtQYLhQjeJ4/apeFtO6ddTS8mCE6hl4OA== dependencies: - "@libp2p/interface-peer-id" "^1.0.0" + multiformats "^11.0.0" + +"@libp2p/interface-peer-info@^1.0.0", "@libp2p/interface-peer-info@^1.0.1", "@libp2p/interface-peer-info@^1.0.3", "@libp2p/interface-peer-info@^1.0.7": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-info/-/interface-peer-info-1.0.8.tgz#8380e9e40d0ec2c8be8e1a43e8a82ae97a0687c4" + integrity sha512-LRvZt/9bZFYW7seAwuSg2hZuPl+FRTAsij5HtyvVwmpfVxipm6yQrKjQ+LiK/SZhIDVsSJ+UjF0mluJj+jeAzQ== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" "@multiformats/multiaddr" "^11.0.0" -"@libp2p/interface-peer-routing@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-routing/-/interface-peer-routing-1.0.1.tgz#047a3034601e70d0138ffcbd28e3db2b88ced0ee" - integrity sha512-MKx2g0mIUI6qNuLv3xApKXR2ZrO9CUTT9ZPL0gvRlhpFCXovEkdWJ1h8KnmkR7tGPxKHt2bsCCJ8gqUaFeNstA== +"@libp2p/interface-peer-routing@^1.0.0", "@libp2p/interface-peer-routing@^1.0.1": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-routing/-/interface-peer-routing-1.0.7.tgz#043a3341ecb640f6ee36fe600788f7fdcce5bfd0" + integrity sha512-0zxOOmKD6nA3LaArcP9UdRO4vJzEyoRtE34vvQP41UxjcSTaj4em5Fl4Q0RuOMXYPtRp+LdXRYbjJgCSeQoxwA== dependencies: - "@libp2p/interface-peer-id" "^1.0.0" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-peer-info" "^1.0.0" "@libp2p/interfaces" "^3.0.0" -"@libp2p/interface-peer-store@^1.2.1", "@libp2p/interface-peer-store@^1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-store/-/interface-peer-store-1.2.2.tgz#738c47daacab0bb809f3701fc52a177ed5528f94" - integrity sha512-ZjE9AkDtjz4R+SppCgZ66oko7Z9pDsdFk1lbba0hTPA2i0uuWdTYep7bZ3RvKot0Q2UrWg8ySL/30pW+Wp70sA== +"@libp2p/interface-peer-store@^1.0.0", "@libp2p/interface-peer-store@^1.2.1", "@libp2p/interface-peer-store@^1.2.2": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-store/-/interface-peer-store-1.2.8.tgz#d36ca696cf4ac377dbdd13b132a378f161e64ad3" + integrity sha512-FM9VLmpg9CUBKZ2RW+J7RrQfQVMksLiC8oqENqHgb/VkPJY3kafbn7HIi0NcK6H/H5VcwBIhL15SUJk66O1K6g== dependencies: - "@libp2p/interface-peer-id" "^1.0.0" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-peer-info" "^1.0.0" "@libp2p/interface-record" "^2.0.0" "@libp2p/interfaces" "^3.0.0" "@multiformats/multiaddr" "^11.0.0" "@libp2p/interface-pubsub@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@libp2p/interface-pubsub/-/interface-pubsub-3.0.0.tgz#c25683178dd1ed7f7c07b2e59c0c8cbf36af83f5" - integrity sha512-3ziZ/mNdCRlfdzSetu38nNbQU6u/rtpQtgI4S4iaSW7MTyivKscWDEPCo5DkF9Uck25hNCbYHhOyKDBoIMdr6Q== + version "3.0.6" + resolved "https://registry.yarnpkg.com/@libp2p/interface-pubsub/-/interface-pubsub-3.0.6.tgz#416f52d44ebc7e62e6b5caf086aff3e429e4a950" + integrity sha512-c1aVHAhxmEh9IpLBgJyCsMscVDl7YUeP1Iq6ILEQoWiPJhNpQqdfmqyk7ZfrzuBU19VFe1EqH0bLuLDbtfysTQ== dependencies: "@libp2p/interface-connection" "^3.0.0" - "@libp2p/interface-peer-id" "^1.0.0" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interfaces" "^3.0.0" it-pushable "^3.0.0" - uint8arraylist "^2.0.0" + uint8arraylist "^2.1.2" "@libp2p/interface-record@^2.0.0", "@libp2p/interface-record@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@libp2p/interface-record/-/interface-record-2.0.1.tgz#2b6de7c3deb3420be80df6a0485dc318d231773d" - integrity sha512-RqF5jKukI8v3Q8MZb4d8/UVjg0OXbl0R8ErWi/LKf+uklA8kTA7rT4FQXFUBycxrkFmEu/tJnW+R1/4fwRwZVg== + version "2.0.6" + resolved "https://registry.yarnpkg.com/@libp2p/interface-record/-/interface-record-2.0.6.tgz#44597e144bc3e9960cc64f8c5fcd9822ea3e283f" + integrity sha512-4EtDkY3sbYapWM8++gVHlv31HZXoLmj9I7CRXUKXzFkVE0GLK/A8jYWl7K0lmf2juPjeYm2eHITeA9/wAtIS3w== dependencies: - "@libp2p/interface-peer-id" "^1.0.0" - uint8arraylist "^2.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + uint8arraylist "^2.1.2" "@libp2p/interface-registrar@^2.0.0", "@libp2p/interface-registrar@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@libp2p/interface-registrar/-/interface-registrar-2.0.3.tgz#71208405caa9c7d36748de75e202aef8535c435e" - integrity sha512-YA/A+o+166/+noXxMFXvZdg9soZSZX2EPOlUwnGXZWR7J5B2sxyP76QxHWXL5npsEMj7suP+Rjb/GJYGz7rDyg== + version "2.0.8" + resolved "https://registry.yarnpkg.com/@libp2p/interface-registrar/-/interface-registrar-2.0.8.tgz#81038a9a814a20dba1d75ba66a45a33b98bd0a98" + integrity sha512-WbnXB09QF41zZzNgDUAZrRMilqgB7wBMTsSvql8xdDcws+jbaX4wE0iEpRXg1hyd0pz4mooIcMRaH1NiEQ5D8w== dependencies: "@libp2p/interface-connection" "^3.0.0" - "@libp2p/interface-peer-id" "^1.0.0" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-stream-muxer@^3.0.0": version "3.0.0" @@ -2005,36 +2038,47 @@ "@multiformats/multiaddr" "^11.0.0" it-stream-types "^1.0.4" -"@libp2p/interfaces@^3.0.0", "@libp2p/interfaces@^3.0.2", "@libp2p/interfaces@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@libp2p/interfaces/-/interfaces-3.0.3.tgz#b657e73a5ece0e2b18c6db04d7defe66fbd2a735" - integrity sha512-8IIxw7TKpaYTtVfZN3jePLlm/E/VzqPpqerN+jhA+1s86akRSeyxVBYi3W9SWDSf0oIauHJSDE8KNxLceAfeag== +"@libp2p/interface-transport@^2.1.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-transport/-/interface-transport-2.1.1.tgz#e463f30b272494c177d3a0bd494545616fd7b624" + integrity sha512-xDM/s8iPN/XfNqD9qNelibRMPKkhOLinXwQeNtoTZjarq+Cg6rtO6/5WBG/49hyI3+r+5jd2eykjPGQbb86NFQ== + dependencies: + "@libp2p/interface-connection" "^3.0.0" + "@libp2p/interface-stream-muxer" "^3.0.0" + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^11.0.0" + it-stream-types "^1.0.4" -"@libp2p/logger@^2.0.0", "@libp2p/logger@^2.0.1", "@libp2p/logger@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@libp2p/logger/-/logger-2.0.2.tgz#15b62cbe65b613956d4f5f8372fc608a003b96ab" - integrity sha512-7XuYoKuce7wTUkVSpll3A/BVlnCVV2kQEfgHtNe8fK8miXCDJFKYm/DhCP1/ZOFs/TrkVt7F/TFJwQ9tlOj3rw== +"@libp2p/interfaces@^3.0.0", "@libp2p/interfaces@^3.0.2", "@libp2p/interfaces@^3.0.3", "@libp2p/interfaces@^3.2.0": + version "3.3.1" + resolved "https://registry.yarnpkg.com/@libp2p/interfaces/-/interfaces-3.3.1.tgz#519c77c030b10d776250bbebf65990af53ccb2ee" + integrity sha512-3N+goQt74SmaVOjwpwMPKLNgh1uDQGw8GD12c40Kc86WOq0qvpm3NfACW+H8Su2X6KmWjCSMzk9JWs9+8FtUfg== + +"@libp2p/logger@^2.0.0", "@libp2p/logger@^2.0.1", "@libp2p/logger@^2.0.2", "@libp2p/logger@^2.0.5": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@libp2p/logger/-/logger-2.0.5.tgz#cf0ee695ba21471fd085a7fda3e534e03946ad20" + integrity sha512-WEhxsc7+gsfuTcljI4vSgW/H2f18aBaC+JiO01FcX841Wxe9szjzHdBLDh9eqygUlzoK0LEeIBfctN7ibzus5A== dependencies: - "@libp2p/interface-peer-id" "^1.0.2" + "@libp2p/interface-peer-id" "^2.0.0" debug "^4.3.3" interface-datastore "^7.0.0" - multiformats "^10.0.0" + multiformats "^11.0.0" -"@libp2p/mdns@^5.1.0": - version "5.1.0" - resolved "https://registry.yarnpkg.com/@libp2p/mdns/-/mdns-5.1.0.tgz#56ab7c6633a9119ef875de8997f338cf5e9bba00" - integrity sha512-kKCnZ9T2IDZoGWWHTmqDj2nGub6mtA3sHcKmojssljiG6KAL5gxr6/9lW3kb6R598b+RMrl7xl2r8pSQRl0O3g== +"@libp2p/mdns@^6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@libp2p/mdns/-/mdns-6.0.0.tgz#dc68881a58c0ce5e4cc3490c0c9d74d1e1b88936" + integrity sha512-k5Gi0IrPi3roPHF71xlq9x69TxqjMNZ+JiM7hFV0kjRYmaLqYQ+dOTLJLUd5ZfnrxIe8KkapFw3zwKne4Dw4rA== dependencies: "@libp2p/interface-peer-discovery" "^1.0.1" - "@libp2p/interface-peer-id" "^1.0.4" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-peer-info" "^1.0.3" "@libp2p/interfaces" "^3.0.3" "@libp2p/logger" "^2.0.1" - "@libp2p/peer-id" "^1.1.15" + "@libp2p/peer-id" "^2.0.0" "@multiformats/multiaddr" "^11.0.0" "@types/multicast-dns" "^7.2.1" multicast-dns "^7.2.0" - multiformats "^10.0.0" + multiformats "^11.0.0" "@libp2p/mplex@^7.1.0": version "7.1.0" @@ -2077,48 +2121,58 @@ uint8arraylist "^2.3.1" uint8arrays "^4.0.2" -"@libp2p/peer-collections@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@libp2p/peer-collections/-/peer-collections-2.0.0.tgz#ae1db935dfbf0e4df2f0644c55b449f34b6dcf0e" - integrity sha512-A074sSs0Kv3g/1gaf3ZvMc05sLmho3c3uJtkep4L3cgHokMW0pF+3YovU5KvdgBCB8GEepXiUvYsdPYzehVl7A== +"@libp2p/peer-collections@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@libp2p/peer-collections/-/peer-collections-3.0.0.tgz#dd1eeb5f562d857f23dbe95b13d595b13c273d04" + integrity sha512-rVhfDmkVzfBVR4scAfaKb05htZENx01PYt2USi1EnODyoo2c2U2W5tfOfyaKI/4D+ayQDOjT27G0ZCyAgwkYGw== dependencies: - "@libp2p/interface-peer-id" "^1.0.4" - "@libp2p/peer-id" "^1.1.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/peer-id" "^2.0.0" -"@libp2p/peer-id-factory@^1.0.18", "@libp2p/peer-id-factory@^1.0.19": - version "1.0.20" - resolved "https://registry.yarnpkg.com/@libp2p/peer-id-factory/-/peer-id-factory-1.0.20.tgz#751d7dc99a4bae1513fc2602a13532c342f83d68" - integrity sha512-+fHhbmDK9Ws6Dmj2ZmfrQouQTZEbTS3FCi3nUDJnnjIS95+radaP085IVkNJYJeeWpxJV90D4EUwtoy83PaoCw== +"@libp2p/peer-id-factory@^2.0.0", "@libp2p/peer-id-factory@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@libp2p/peer-id-factory/-/peer-id-factory-2.0.1.tgz#36d92e0ae55f039812224c7dcf42e16aa3bab039" + integrity sha512-CRJmqwNQhDC51sQ9lf6EqEY8HuywwymMVffL2kIYI5ts5k+6gvIXzoSxLf3V3o+OxcroXG4KG0uGxxAi5DUXSA== dependencies: "@libp2p/crypto" "^1.0.0" "@libp2p/interface-keys" "^1.0.2" - "@libp2p/interface-peer-id" "^1.0.0" - "@libp2p/peer-id" "^1.0.0" - multiformats "^10.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/peer-id" "^2.0.0" + multiformats "^11.0.0" protons-runtime "^4.0.1" uint8arraylist "^2.0.0" uint8arrays "^4.0.2" -"@libp2p/peer-id@^1.0.0", "@libp2p/peer-id@^1.1.0", "@libp2p/peer-id@^1.1.13", "@libp2p/peer-id@^1.1.15", "@libp2p/peer-id@^1.1.8": - version "1.1.16" - resolved "https://registry.yarnpkg.com/@libp2p/peer-id/-/peer-id-1.1.16.tgz#36461ce565371d9e897b49c38013f2ae9f200f38" - integrity sha512-frt4wRNme5fR8sFl6LLL22brfEIDR09ewE4ICaRzYC32wvI9LK4oXfMOytpW7YUX1nH/r5mOcJgmZaDW0y6nZQ== +"@libp2p/peer-id@^1.1.13": + version "1.1.18" + resolved "https://registry.yarnpkg.com/@libp2p/peer-id/-/peer-id-1.1.18.tgz#f176d7150930d365201b13b97f17c10796afa910" + integrity sha512-Zh3gzbrQZKDMLpoJAJB8gdGtyYFSBKV0dU5vflQ18/7MJDJmjsgKO+sJTYi72yN5sWREs1eGKMhxLo+N1ust5w== dependencies: "@libp2p/interface-peer-id" "^1.0.0" err-code "^3.0.1" multiformats "^10.0.0" uint8arrays "^4.0.2" -"@libp2p/peer-record@^4.0.1", "@libp2p/peer-record@^4.0.3": - version "4.0.5" - resolved "https://registry.yarnpkg.com/@libp2p/peer-record/-/peer-record-4.0.5.tgz#e83ae0b9ef0d31c4c884599198c47763734a0a4c" - integrity sha512-o4v6N5B0hsx94TnSkLD7v8GmyQ/pNJbhy+pY8YDsmPhcwAGTnpRdlxWZraMBz8ut+vGoD7E34IdMMgJX/tgAJA== +"@libp2p/peer-id@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@libp2p/peer-id/-/peer-id-2.0.1.tgz#1cfa5a51a3adcf91489d88c5b75d3cf6f03e2ab4" + integrity sha512-uGIR4rS+j+IzzIu0kih4MonZEfRmjGNfXaSPMIFOeMxZItZT6TIpxoVNYxHl4YtneSFKzlLnf9yx9EhRcyfy8Q== dependencies: - "@libp2p/crypto" "^1.0.0" - "@libp2p/interface-peer-id" "^1.0.2" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interfaces" "^3.2.0" + multiformats "^11.0.0" + uint8arrays "^4.0.2" + +"@libp2p/peer-record@^5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@libp2p/peer-record/-/peer-record-5.0.0.tgz#c4d472a5b7fc7e728636e114928dace3a1f12cc9" + integrity sha512-qGaqYQSRqI/vol1NEMR9Z3ncLjIkyIF0o/CQYXzXCDjA91i9+0iMjXGgIgBLn3bfA1b9pHuz4HvwjgYUKMYOkQ== + dependencies: + "@libp2p/crypto" "^1.0.11" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-record" "^2.0.1" - "@libp2p/logger" "^2.0.0" - "@libp2p/peer-id" "^1.1.13" + "@libp2p/logger" "^2.0.5" + "@libp2p/peer-id" "^2.0.0" "@libp2p/utils" "^3.0.0" "@multiformats/multiaddr" "^11.0.0" err-code "^3.0.1" @@ -2128,26 +2182,26 @@ it-foreach "^1.0.0" it-map "^2.0.0" it-pipe "^2.0.3" - multiformats "^10.0.0" + multiformats "^11.0.0" protons-runtime "^4.0.1" uint8-varint "^1.0.2" uint8arraylist "^2.1.0" uint8arrays "^4.0.2" varint "^6.0.0" -"@libp2p/peer-store@^5.0.0": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@libp2p/peer-store/-/peer-store-5.0.1.tgz#cd4dbc26bd0ef3ed43c1a7c120f3ec750e343b33" - integrity sha512-TeHxy5Qv+KzajbEZH1wdE6ubk8G7IUyU+Dyl4W06unZpxq6rD+OTnCkvYuEdglROUxmvSBEkFqJnxV6xgVBWJA== +"@libp2p/peer-store@^6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@libp2p/peer-store/-/peer-store-6.0.0.tgz#28461ffc018f491d9b7313e284ba582fe75a116c" + integrity sha512-7GSqRYkJR3E0Vo96XH84X6KNPdwOE1t6jb7jegYzvzKDZMFaceJUZg9om3+ZHCUbethnYuqsY7j0c7OHCB40nA== dependencies: - "@libp2p/interface-peer-id" "^1.0.4" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-peer-info" "^1.0.3" "@libp2p/interface-peer-store" "^1.2.2" "@libp2p/interface-record" "^2.0.1" "@libp2p/interfaces" "^3.0.3" "@libp2p/logger" "^2.0.0" - "@libp2p/peer-id" "^1.1.15" - "@libp2p/peer-record" "^4.0.3" + "@libp2p/peer-id" "^2.0.0" + "@libp2p/peer-record" "^5.0.0" "@multiformats/multiaddr" "^11.0.0" err-code "^3.0.1" interface-datastore "^7.0.0" @@ -2157,7 +2211,7 @@ it-map "^2.0.0" it-pipe "^2.0.3" mortice "^3.0.0" - multiformats "^10.0.0" + multiformats "^11.0.0" protons-runtime "^4.0.1" uint8arraylist "^2.1.1" uint8arrays "^4.0.2" @@ -2173,28 +2227,28 @@ it-foreach "^1.0.0" it-stream-types "^1.0.4" -"@libp2p/pubsub@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@libp2p/pubsub/-/pubsub-5.0.0.tgz#4c2ed7ae7c17f567c0341bd5ca81d2480f88c669" - integrity sha512-E391cFkWDFG7SnE4aoG5y8eRr5OkUWEarWbWkGjnzt2IYSO5wj3K9XKn9U8DDg4Fskl1KQAQDZayS8crMxyHAA== +"@libp2p/pubsub@^6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@libp2p/pubsub/-/pubsub-6.0.0.tgz#8072ff511e901e5c0bb4226fa14f9529315af01d" + integrity sha512-WWViQ+fEL3JWt415UznUR6wQCm+UCi65SNQWQoTRYaCM2DYVCrIRfGpmFWAyKPCr76L6UesucIkZHuyh2c3xNA== dependencies: "@libp2p/crypto" "^1.0.0" "@libp2p/interface-connection" "^3.0.1" - "@libp2p/interface-peer-id" "^1.0.2" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-pubsub" "^3.0.0" "@libp2p/interface-registrar" "^2.0.0" "@libp2p/interfaces" "^3.0.2" "@libp2p/logger" "^2.0.0" - "@libp2p/peer-collections" "^2.0.0" - "@libp2p/peer-id" "^1.1.0" - "@libp2p/topology" "^3.0.0" + "@libp2p/peer-collections" "^3.0.0" + "@libp2p/peer-id" "^2.0.0" + "@libp2p/topology" "^4.0.0" "@multiformats/multiaddr" "^11.0.0" abortable-iterator "^4.0.2" err-code "^3.0.1" it-length-prefixed "^8.0.2" it-pipe "^2.0.3" it-pushable "^3.0.0" - multiformats "^10.0.0" + multiformats "^11.0.0" p-queue "^7.2.0" uint8arraylist "^2.0.0" uint8arrays "^4.0.2" @@ -2216,15 +2270,14 @@ err-code "^3.0.1" stream-to-it "^0.2.2" -"@libp2p/topology@^3.0.0": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@libp2p/topology/-/topology-3.0.2.tgz#b3c8dffd01d2ce222e867412f6898af9bd08e8fb" - integrity sha512-RDMmA8Us5uxl7sSWGoTIYyzdthjs6xQD1P/vBQPHlqTAjpjPWuCY019cbqK8lP1JCldCB/n2ljSxDJs1J4cweQ== +"@libp2p/topology@^4.0.0": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@libp2p/topology/-/topology-4.0.1.tgz#8efab229ed32d30cfa6c4a371e8022011c0ff6f9" + integrity sha512-wcToZU3o55nTPuN+yEpAublGzomGfxEAu8snaGeZS0f6ObzaQXqPgZvD5qpiQ8yOOVjR+IiNEjZJiuqNShHnaA== dependencies: - "@libp2p/interface-peer-id" "^1.0.4" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-registrar" "^2.0.3" "@libp2p/logger" "^2.0.1" - err-code "^3.0.1" it-all "^2.0.0" "@libp2p/tracked-map@^3.0.0": @@ -7781,6 +7834,11 @@ ip-regex@^4.0.0, ip-regex@^4.3.0: resolved "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz" integrity sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q== +ip-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-5.0.0.tgz#cd313b2ae9c80c07bd3851e12bf4fa4dc5480632" + integrity sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw== + ip@^1.1.5: version "1.1.8" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48" @@ -8707,10 +8765,10 @@ libnpmpublish@^6.0.4: semver "^7.3.7" ssri "^9.0.0" -libp2p@0.41.0: - version "0.41.0" - resolved "https://registry.yarnpkg.com/libp2p/-/libp2p-0.41.0.tgz#3fc5da1efbbdfd955d9cd8478963eb0a7712c76e" - integrity sha512-0H0MKpsKBxqzILLR7aPksxNNhhjKx+xtaw37xZ1DO6mbcXmFo0imvQ/IeSNM9NKQ1qqrstnaxYPfBAvZBYq4Bg== +libp2p@0.42.2: + version "0.42.2" + resolved "https://registry.yarnpkg.com/libp2p/-/libp2p-0.42.2.tgz#093b694b550508fadd8d3bcbd5d42cc984409d0f" + integrity sha512-arTOCJEEmAFw5HjlXdULVAFs7Y/dWZmgX/qN4SzuxtSkB0pa+fqn/DIbIfpBi2BuY+QozvnARPF1xJtSdqfqJQ== dependencies: "@achingbrain/nat-port-mapper" "^1.0.3" "@libp2p/crypto" "^1.0.4" @@ -8718,26 +8776,27 @@ libp2p@0.41.0: "@libp2p/interface-connection" "^3.0.2" "@libp2p/interface-connection-encrypter" "^3.0.1" "@libp2p/interface-connection-manager" "^1.1.1" - "@libp2p/interface-content-routing" "^1.0.2" - "@libp2p/interface-dht" "^1.0.1" + "@libp2p/interface-content-routing" "^2.0.0" + "@libp2p/interface-dht" "^2.0.0" + "@libp2p/interface-libp2p" "^1.0.0" "@libp2p/interface-metrics" "^4.0.0" "@libp2p/interface-peer-discovery" "^1.0.1" - "@libp2p/interface-peer-id" "^1.0.4" + "@libp2p/interface-peer-id" "^2.0.0" "@libp2p/interface-peer-info" "^1.0.3" "@libp2p/interface-peer-routing" "^1.0.1" "@libp2p/interface-peer-store" "^1.2.2" "@libp2p/interface-pubsub" "^3.0.0" "@libp2p/interface-registrar" "^2.0.3" "@libp2p/interface-stream-muxer" "^3.0.0" - "@libp2p/interface-transport" "^2.0.0" + "@libp2p/interface-transport" "^2.1.0" "@libp2p/interfaces" "^3.0.3" "@libp2p/logger" "^2.0.1" "@libp2p/multistream-select" "^3.0.0" - "@libp2p/peer-collections" "^2.0.0" - "@libp2p/peer-id" "^1.1.15" - "@libp2p/peer-id-factory" "^1.0.18" - "@libp2p/peer-record" "^4.0.3" - "@libp2p/peer-store" "^5.0.0" + "@libp2p/peer-collections" "^3.0.0" + "@libp2p/peer-id" "^2.0.0" + "@libp2p/peer-id-factory" "^2.0.0" + "@libp2p/peer-record" "^5.0.0" + "@libp2p/peer-store" "^6.0.0" "@libp2p/tracked-map" "^3.0.0" "@libp2p/utils" "^3.0.2" "@multiformats/mafmt" "^11.0.2" @@ -8763,12 +8822,12 @@ libp2p@0.41.0: it-sort "^2.0.0" it-stream-types "^1.0.4" merge-options "^3.0.4" - multiformats "^10.0.0" + multiformats "^11.0.0" node-forge "^1.3.1" p-fifo "^1.0.0" p-retry "^5.0.0" p-settle "^5.0.0" - private-ip "^2.3.3" + private-ip "^3.0.0" protons-runtime "^4.0.1" rate-limiter-flexible "^2.3.11" retimer "^3.0.0" @@ -9514,16 +9573,16 @@ multiformats@^10.0.0: resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-10.0.2.tgz#e549ae833dac77edb534bece4adf1d1a214879f0" integrity sha512-nJEHLFOYhO4L+aNApHhCnWqa31FyqAHv9Q77AhmwU3KsM2f1j7tuJpCk5ByZ33smzycNCpSG5klNIejIyfFx2A== -multiformats@^9.4.2, multiformats@^9.4.5: +multiformats@^11.0.0: + version "11.0.1" + resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-11.0.1.tgz#ba58c3f69f032ab67dab4b48cc70f01ac2ca07fe" + integrity sha512-atWruyH34YiknSdL5yeIir00EDlJRpHzELYQxG7Iy29eCyL+VrZHpPrX5yqlik3jnuqpLpRKVZ0SGVb9UzKaSA== + +multiformats@^9.4.2: version "9.9.0" resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-9.9.0.tgz#c68354e7d21037a8f1f8833c8ccd68618e8f1d37" integrity sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg== -multiformats@^9.6.3: - version "9.7.0" - resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-9.7.0.tgz#845799e8df70fbb6b15922500e45cb87cf12f7e5" - integrity sha512-uv/tcgwk0yN4DStopnBN4GTgvaAlYdy6KnZpuzEPFOYQd71DYFJjs0MN1ERElAflrZaYyGBWXyGxL5GgrxIx0Q== - multimatch@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" @@ -10699,14 +10758,14 @@ private-ip@^2.1.1: is-ip "^3.1.0" netmask "^2.0.2" -private-ip@^2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/private-ip/-/private-ip-2.3.3.tgz#1e80ff8443e5ac78f555631aec3ea6ff027fa6aa" - integrity sha512-5zyFfekIVUOTVbL92hc8LJOtE/gyGHeREHkJ2yTyByP8Q2YZVoBqLg3EfYLeF0oVvGqtaEX2t2Qovja0/gStXw== +private-ip@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/private-ip/-/private-ip-3.0.0.tgz#a65d10e2db06f6bb2f97f716f1a8976a3460a4a6" + integrity sha512-HkMBs4nMtrP+cvcw0bDi2BAZIGgiKI4Zq8Oc+dMqNBpHS8iGL4+WO/pRtc8Bwnv9rjnV0QwMDwEBymFtqv7Kww== dependencies: - ip-regex "^4.3.0" + "@chainsafe/is-ip" "^2.0.1" + ip-regex "^5.0.0" ipaddr.js "^2.0.1" - is-ip "^3.1.0" netmask "^2.0.2" proc-log@^2.0.0, proc-log@^2.0.1: @@ -10842,14 +10901,6 @@ protocols@^2.0.0, protocols@^2.0.1: resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86" integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q== -protons-runtime@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/protons-runtime/-/protons-runtime-3.1.0.tgz#500918da4a2d97aa28007f30c3f2f7021e05c0b2" - integrity sha512-S1iSPQC0McdHKJRi0XcATBkWgwWPx46UDfrnshYDXBvGHSYqkFtn4MQ8Gatf67w7FzFtHivA+Hb0ZPq56upG8w== - dependencies: - protobufjs "^7.0.0" - uint8arraylist "^2.3.2" - protons-runtime@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/protons-runtime/-/protons-runtime-4.0.1.tgz#bcea3667b6263680e70e2da102f91b3513075374" @@ -12676,17 +12727,10 @@ uint8-varint@^1.0.1, uint8-varint@^1.0.2: longbits "^1.1.0" uint8arraylist "^2.0.0" -uint8arraylist@^2.0.0, uint8arraylist@^2.1.0, uint8arraylist@^2.1.1, uint8arraylist@^2.3.1, uint8arraylist@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/uint8arraylist/-/uint8arraylist-2.3.2.tgz#d301f6cb570828b456ef09655c0a4d3b0929ef06" - integrity sha512-4ybc/jixmtGhUrebJ0bzB95TjEbskWxBKBRrAozw7P6WcAcZdPMYSLdDuNoEEGo/Cwe+0TNic9CXzWUWzy1quw== - dependencies: - uint8arrays "^3.1.0" - -uint8arraylist@^2.4.1: - version "2.4.2" - resolved "https://registry.yarnpkg.com/uint8arraylist/-/uint8arraylist-2.4.2.tgz#e8e15e57e6930411564d2e49b8e9f7875d451c23" - integrity sha512-7fN4/+WJX/iIfZs8td5PCH9Jf78bhvk3Ab+xkLHLapfEnm9UHUATPLOEWCgjRTBwWPFWAsqjSrNEQf8yllDMGA== +uint8arraylist@^2.0.0, uint8arraylist@^2.1.0, uint8arraylist@^2.1.1, uint8arraylist@^2.1.2, uint8arraylist@^2.3.1, uint8arraylist@^2.3.2, uint8arraylist@^2.4.1: + version "2.4.3" + resolved "https://registry.yarnpkg.com/uint8arraylist/-/uint8arraylist-2.4.3.tgz#1148aa979b407d382e4eb8d9c8f2b4bf3f5910d5" + integrity sha512-oEVZr4/GrH87K0kjNce6z8pSCzLEPqHNLNR5sj8cJOySrTP8Vb/pMIbZKLJGhQKxm1TiZ31atNrpn820Pyqpow== dependencies: uint8arrays "^4.0.2" From 8ff1cc72c154c770e2a3d2826d6bc6d136c5fafc Mon Sep 17 00:00:00 2001 From: Cayman Date: Fri, 20 Jan 2023 18:08:46 -0500 Subject: [PATCH 2/4] Fix type errors --- packages/beacon-node/package.json | 3 +- .../src/network/gossip/gossipsub.ts | 2 +- packages/beacon-node/src/network/interface.ts | 5 +++ packages/beacon-node/src/network/network.ts | 3 +- .../beacon-node/src/network/nodejs/bundle.ts | 7 ++-- .../beacon-node/src/network/nodejs/util.ts | 2 +- .../beacon-node/src/network/peers/discover.ts | 2 +- .../src/network/peers/peerManager.ts | 2 +- .../peers/utils/getConnectedPeerIds.ts | 2 +- packages/beacon-node/src/network/util.ts | 2 +- packages/beacon-node/src/node/nodejs.ts | 3 +- packages/beacon-node/test/utils/network.ts | 2 +- packages/cli/package.json | 2 +- yarn.lock | 33 +++++-------------- 14 files changed, 29 insertions(+), 41 deletions(-) diff --git a/packages/beacon-node/package.json b/packages/beacon-node/package.json index d357fba98807..e8897b32a6dd 100644 --- a/packages/beacon-node/package.json +++ b/packages/beacon-node/package.json @@ -95,7 +95,7 @@ "@chainsafe/as-chacha20poly1305": "^0.1.0", "@chainsafe/as-sha256": "^0.3.1", "@chainsafe/bls": "7.1.1", - "@chainsafe/discv5": "^2.0.0", + "@chainsafe/discv5": "^2.1.0", "@chainsafe/libp2p-gossipsub": "^6.1.0", "@chainsafe/libp2p-noise": "^11.0.0", "@chainsafe/persistent-merkle-tree": "^0.4.2", @@ -108,6 +108,7 @@ "@libp2p/interface-connection-manager": "^1.3.0", "@libp2p/interface-peer-id": "^2.0.1", "@libp2p/interface-pubsub": "^3.0.0", + "@libp2p/interface-registrar": "^2.0.8", "@libp2p/mdns": "^6.0.0", "@libp2p/mplex": "^7.1.0", "@libp2p/peer-id-factory": "^2.0.1", diff --git a/packages/beacon-node/src/network/gossip/gossipsub.ts b/packages/beacon-node/src/network/gossip/gossipsub.ts index e2b88ef8ae3a..bc9306864cf7 100644 --- a/packages/beacon-node/src/network/gossip/gossipsub.ts +++ b/packages/beacon-node/src/network/gossip/gossipsub.ts @@ -1,5 +1,4 @@ /* eslint-disable @typescript-eslint/naming-convention */ -import {Libp2p} from "libp2p"; import {GossipSub, GossipsubEvents} from "@chainsafe/libp2p-gossipsub"; import {SignaturePolicy, TopicStr} from "@chainsafe/libp2p-gossipsub/types"; import {PeerScore, PeerScoreParams} from "@chainsafe/libp2p-gossipsub/score"; @@ -15,6 +14,7 @@ import {Eth2Context} from "../../chain/index.js"; import {PeersData} from "../peers/peersData.js"; import {ClientKind} from "../peers/client.js"; import {GOSSIP_MAX_SIZE, GOSSIP_MAX_SIZE_BELLATRIX} from "../../constants/network.js"; +import {Libp2p} from "../interface.js"; import { GossipJobQueues, GossipTopic, diff --git a/packages/beacon-node/src/network/interface.ts b/packages/beacon-node/src/network/interface.ts index 17fb3efe9149..9698a6368673 100644 --- a/packages/beacon-node/src/network/interface.ts +++ b/packages/beacon-node/src/network/interface.ts @@ -1,6 +1,9 @@ +import {Libp2p as ILibp2p} from "libp2p"; import {Connection} from "@libp2p/interface-connection"; +import {Registrar} from "@libp2p/interface-registrar"; import {Multiaddr} from "@multiformats/multiaddr"; import {PeerId} from "@libp2p/interface-peer-id"; +import {ConnectionManager} from "@libp2p/interface-connection-manager"; import {ENR} from "@chainsafe/discv5"; import {phase0} from "@lodestar/types"; import {BlockInput} from "../chain/blocks/types.js"; @@ -63,3 +66,5 @@ export interface INetwork { export type PeerDirection = Connection["stat"]["direction"]; export type PeerStatus = Connection["stat"]["status"]; + +export type Libp2p = ILibp2p & {connectionManager: ConnectionManager; registrar: Registrar}; diff --git a/packages/beacon-node/src/network/network.ts b/packages/beacon-node/src/network/network.ts index 8af68ffd9139..927c6e7e2426 100644 --- a/packages/beacon-node/src/network/network.ts +++ b/packages/beacon-node/src/network/network.ts @@ -1,4 +1,3 @@ -import {Libp2p} from "libp2p"; import {DefaultConnectionManager} from "libp2p/connection-manager"; import {Connection} from "@libp2p/interface-connection"; import {PeerId} from "@libp2p/interface-peer-id"; @@ -14,7 +13,7 @@ import {IMetrics} from "../metrics/index.js"; import {ChainEvent, IBeaconChain, IBeaconClock} from "../chain/index.js"; import {BlockInput, BlockInputType, getBlockInput} from "../chain/blocks/types.js"; import {INetworkOptions} from "./options.js"; -import {INetwork} from "./interface.js"; +import {INetwork, Libp2p} from "./interface.js"; import {ReqRespBeaconNode, ReqRespHandlers, doBeaconBlocksMaybeBlobsByRange} from "./reqresp/index.js"; import { Eth2Gossipsub, diff --git a/packages/beacon-node/src/network/nodejs/bundle.ts b/packages/beacon-node/src/network/nodejs/bundle.ts index 3b7abdd97dd4..1258716ec92e 100644 --- a/packages/beacon-node/src/network/nodejs/bundle.ts +++ b/packages/beacon-node/src/network/nodejs/bundle.ts @@ -1,4 +1,4 @@ -import {createLibp2p, Libp2p} from "libp2p"; +import {createLibp2p} from "libp2p"; import {tcp} from "@libp2p/tcp"; import {mplex} from "@libp2p/mplex"; import {bootstrap} from "@libp2p/bootstrap"; @@ -9,6 +9,7 @@ import type {PeerDiscovery} from "@libp2p/interface-peer-discovery"; import type {Components} from "libp2p/components"; import {prometheusMetrics} from "@libp2p/prometheus-metrics"; import {Registry} from "prom-client"; +import {Libp2p} from "../interface.js"; import {createNoise} from "./noise.js"; export interface ILibp2pOptions { @@ -40,7 +41,7 @@ export async function createNodejsLibp2p(options: ILibp2pOptions): Promise Date: Sat, 21 Jan 2023 00:37:42 -0500 Subject: [PATCH 3/4] Remove latency monitor code --- packages/beacon-node/src/network/network.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/packages/beacon-node/src/network/network.ts b/packages/beacon-node/src/network/network.ts index 927c6e7e2426..04bdae9b7fa4 100644 --- a/packages/beacon-node/src/network/network.ts +++ b/packages/beacon-node/src/network/network.ts @@ -146,9 +146,6 @@ export class Network implements INetwork { async start(): Promise { await this.libp2p.start(); - // Stop latency monitor since we handle disconnects here and don't want additional load on the event loop - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call - ((this.libp2p.connectionManager as unknown) as DefaultConnectionManager)["latencyMonitor"].stop(); // Network spec decides version changes based on clock fork, not head fork const forkCurrentSlot = this.config.getForkName(this.clock.currentSlot); From c7d713aa35c7eba6203b326c56fe2dfb7f644e30 Mon Sep 17 00:00:00 2001 From: Tuyen Nguyen Date: Sat, 21 Jan 2023 14:03:58 +0700 Subject: [PATCH 4/4] Fix lint --- packages/beacon-node/src/network/network.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/beacon-node/src/network/network.ts b/packages/beacon-node/src/network/network.ts index 04bdae9b7fa4..728564ca2eb2 100644 --- a/packages/beacon-node/src/network/network.ts +++ b/packages/beacon-node/src/network/network.ts @@ -1,4 +1,3 @@ -import {DefaultConnectionManager} from "libp2p/connection-manager"; import {Connection} from "@libp2p/interface-connection"; import {PeerId} from "@libp2p/interface-peer-id"; import {Multiaddr} from "@multiformats/multiaddr";