Use the latest Chronos and Libp2p

This commit is contained in:
Zahary Karadjov 2020-03-24 18:06:36 +02:00 committed by zah
parent b80a5b90df
commit 86a3bea1ec
4 changed files with 11 additions and 8 deletions

View File

@ -828,7 +828,7 @@ proc p2pProtocolBackendImpl*(p: P2PProtocol): Backend =
proc setupNat(conf: BeaconNodeConf): tuple[ip: IpAddress,
tcpPort: Port,
udpPort: Port] =
udpPort: Port] {.gcsafe.} =
# defaults
result.ip = globalListeningAddr
result.tcpPort = conf.tcpPort
@ -857,9 +857,12 @@ proc setupNat(conf: BeaconNodeConf): tuple[ip: IpAddress,
let extIP = getExternalIP(nat)
if extIP.isSome:
result.ip = extIP.get()
let extPorts = redirectPorts(tcpPort = result.tcpPort,
udpPort = result.udpPort,
description = clientId)
# TODO redirectPorts in considered a gcsafety violation
# because it obtains the address of a non-gcsafe proc?
let extPorts = ({.gcsafe.}:
redirectPorts(tcpPort = result.tcpPort,
udpPort = result.udpPort,
description = clientId))
if extPorts.isSome:
(result.tcpPort, result.udpPort) = extPorts.get()
@ -893,7 +896,7 @@ proc getPersistentNetKeys*(conf: BeaconNodeConf): KeyPair =
KeyPair(seckey: privKey, pubkey: privKey.getKey())
proc createEth2Node*(conf: BeaconNodeConf): Future[Eth2Node] {.async.} =
proc createEth2Node*(conf: BeaconNodeConf): Future[Eth2Node] {.async, gcsafe.} =
var
(extIp, extTcpPort, _) = setupNat(conf)
hostAddress = tcpEndPoint(conf.libp2pAddress, conf.tcpPort)

2
vendor/nim-chronos vendored

@ -1 +1 @@
Subproject commit 7ed9f1431a0a8262f988553e9927676cad54e470
Subproject commit f3827a13d12f27e20874df81dc99b55e5dc78244

2
vendor/nim-libp2p vendored

@ -1 +1 @@
Subproject commit 0a3e4a764b718d13fc330f228fce60ed265cfde2
Subproject commit a2acdd7933ff411bb6f4133d90bb46caec6127dc

2
vendor/nim-metrics vendored

@ -1 +1 @@
Subproject commit ab1d8891ef11e4c310c071213bd67aa5ac4b421d
Subproject commit 19c87b7dc91dfbc0b6823a3d2996869397dd34e6