diff --git a/codexdht.nimble b/codexdht.nimble index 03de482..91de6a8 100644 --- a/codexdht.nimble +++ b/codexdht.nimble @@ -16,7 +16,7 @@ requires "chronicles >= 0.10.2 & < 0.11.0" requires "chronos >= 4.0.3 & < 4.1.0" requires "libp2p >= 1.5.0 & < 2.0.0" requires "metrics >= 0.1.0 & < 0.2.0" -requires "stew >= 0.2.0 & < 0.3.0" +requires "stew >= 0.2.0" requires "stint >= 0.8.1 & < 0.9.0" requires "https://github.com/codex-storage/nim-datastore >= 0.2.0 & < 0.3.0" requires "questionable >= 0.10.15 & < 0.11.0" diff --git a/codexdht/private/eth/p2p/discoveryv5/crypto.nim b/codexdht/private/eth/p2p/discoveryv5/crypto.nim index 2ba3939..e147de7 100644 --- a/codexdht/private/eth/p2p/discoveryv5/crypto.nim +++ b/codexdht/private/eth/p2p/discoveryv5/crypto.nim @@ -1,7 +1,8 @@ import std/sugar, libp2p/crypto/[crypto, secp], - stew/[byteutils, objects, results, ptrops] + stew/[byteutils, objects, ptrops], + results # from secp256k1 import ecdh, SkEcdhSecretSize, toRaw, SkSecretKey, SkPublicKey import secp256k1 diff --git a/codexdht/private/eth/p2p/discoveryv5/encoding.nim b/codexdht/private/eth/p2p/discoveryv5/encoding.nim index 2cb7962..f99e727 100644 --- a/codexdht/private/eth/p2p/discoveryv5/encoding.nim +++ b/codexdht/private/eth/p2p/discoveryv5/encoding.nim @@ -18,13 +18,14 @@ import stew/endians2, bearssl/rand, chronicles, - stew/[results, byteutils], + stew/[byteutils], stint, libp2p/crypto/crypto as libp2p_crypto, libp2p/crypto/secp, libp2p/signed_envelope, metrics, nimcrypto, + results, "."/[messages, messages_encoding, node, spr, hkdf, sessions], "."/crypto diff --git a/codexdht/private/eth/p2p/discoveryv5/node.nim b/codexdht/private/eth/p2p/discoveryv5/node.nim index cda6bc2..5310d0e 100644 --- a/codexdht/private/eth/p2p/discoveryv5/node.nim +++ b/codexdht/private/eth/p2p/discoveryv5/node.nim @@ -88,7 +88,9 @@ func newNode*(r: SignedPeerRecord): Result[Node, cstring] = nodeId = ? pk.get().toNodeId() if r.ip.isSome() and r.udp.isSome(): - let a = Address(ip: ipv4(r.ip.get()), port: Port(r.udp.get())) + let a = Address( + ip: IpAddress(family: IPv4, address_v4: r.ip.get()), port: Port(r.udp.get()) + ) ok(Node( id: nodeId, diff --git a/codexdht/private/eth/p2p/discoveryv5/nodes_verification.nim b/codexdht/private/eth/p2p/discoveryv5/nodes_verification.nim index bd2dbd0..ccabb77 100644 --- a/codexdht/private/eth/p2p/discoveryv5/nodes_verification.nim +++ b/codexdht/private/eth/p2p/discoveryv5/nodes_verification.nim @@ -1,8 +1,8 @@ {.push raises: [].} import - std/[sets, options], - stew/results, stew/shims/net, chronicles, chronos, + std/[net, sets, options], + results, chronicles, chronos, "."/[node, spr, routing_table] logScope: diff --git a/codexdht/private/eth/p2p/discoveryv5/protocol.nim b/codexdht/private/eth/p2p/discoveryv5/protocol.nim index 0089d12..27c7b14 100644 --- a/codexdht/private/eth/p2p/discoveryv5/protocol.nim +++ b/codexdht/private/eth/p2p/discoveryv5/protocol.nim @@ -74,15 +74,15 @@ {.push raises: [].} import - std/[tables, sets, options, math, sequtils, algorithm, strutils], - stew/shims/net as stewNet, + std/[net, tables, sets, options, math, sequtils, algorithm, strutils], json_serialization/std/net, - stew/[base64, endians2, results], + stew/[base64, endians2], pkg/[chronicles, chronicles/chronos_tools], pkg/chronos, pkg/stint, pkg/bearssl/rand, - pkg/metrics + pkg/metrics, + pkg/results import "."/[ messages, diff --git a/codexdht/private/eth/p2p/discoveryv5/providers/manager.nim b/codexdht/private/eth/p2p/discoveryv5/providers/manager.nim index 7eb33b1..f317cd8 100644 --- a/codexdht/private/eth/p2p/discoveryv5/providers/manager.nim +++ b/codexdht/private/eth/p2p/discoveryv5/providers/manager.nim @@ -14,7 +14,6 @@ import pkg/datastore import pkg/chronos import pkg/libp2p import pkg/chronicles -import pkg/stew/results as rs import pkg/stew/byteutils import pkg/questionable import pkg/questionable/results diff --git a/codexdht/private/eth/p2p/discoveryv5/routing_table.nim b/codexdht/private/eth/p2p/discoveryv5/routing_table.nim index e270315..2d4e855 100644 --- a/codexdht/private/eth/p2p/discoveryv5/routing_table.nim +++ b/codexdht/private/eth/p2p/discoveryv5/routing_table.nim @@ -8,8 +8,8 @@ {.push raises: [].} import - std/[algorithm, times, sequtils, bitops, sets, options, tables], - stint, chronicles, metrics, bearssl/rand, chronos, stew/shims/net as stewNet, + std/[algorithm, net, times, sequtils, bitops, sets, options, tables], + stint, chronicles, metrics, bearssl/rand, chronos, "."/[node, random2, spr] export options diff --git a/codexdht/private/eth/p2p/discoveryv5/sessions.nim b/codexdht/private/eth/p2p/discoveryv5/sessions.nim index ee770bb..0b23f29 100644 --- a/codexdht/private/eth/p2p/discoveryv5/sessions.nim +++ b/codexdht/private/eth/p2p/discoveryv5/sessions.nim @@ -19,8 +19,8 @@ {.push raises: [].} import - std/options, - stint, stew/endians2, stew/shims/net, + std/[net, options], + stint, stew/endians2, node, lru export lru diff --git a/codexdht/private/eth/p2p/discoveryv5/spr.nim b/codexdht/private/eth/p2p/discoveryv5/spr.nim index 351b8a7..0d95138 100644 --- a/codexdht/private/eth/p2p/discoveryv5/spr.nim +++ b/codexdht/private/eth/p2p/discoveryv5/spr.nim @@ -6,10 +6,10 @@ # import chronicles, - std/[options, strutils, sugar], - pkg/stew/[results, byteutils, arrayops], + results, + std/[net, options, strutils, sugar], + pkg/stew/[byteutils, arrayops], stew/endians2, - stew/shims/net, stew/base64, libp2p/crypto/crypto, libp2p/crypto/secp, @@ -122,9 +122,13 @@ proc update*( .mapErr((e: string) => e.cstring) existingIp = if existingNetProtoFam == MultiCodec.codec("ip6"): - ipv6 array[16, byte].initCopyFrom(existingNetProtoAddr) + IpAddress( + family: IPv6, address_v6: array[16, byte].initCopyFrom(existingNetProtoAddr) + ) else: - ipv4 array[4, byte].initCopyFrom(existingNetProtoAddr) + IpAddress( + family: IPv4, address_v4: array[4, byte].initCopyFrom(existingNetProtoAddr) + ) ipAddr = ip.get(existingIp) diff --git a/codexdht/private/eth/p2p/discoveryv5/transport.nim b/codexdht/private/eth/p2p/discoveryv5/transport.nim index e1dac60..d7cac5d 100644 --- a/codexdht/private/eth/p2p/discoveryv5/transport.nim +++ b/codexdht/private/eth/p2p/discoveryv5/transport.nim @@ -6,13 +6,12 @@ # Everything below the handling of ordinary messages import - std/[tables, options, sets], + std/[net, tables, options, sets], bearssl/rand, chronos, chronicles, metrics, libp2p/crypto/crypto, - stew/shims/net, "."/[node, encoding, sessions] const