nim-eth/eth/p2p/discoveryv5
Jacek Sieka 6bd6bae86c
Align core types with execution spec (#733)
Since these types were written, we've gained an executable spec:

https://github.com/ethereum/execution-specs

This PR aligns some of the types we use with this spec to simplify
comparisons and cross-referencing.

Using a `distinct` type is a tradeoff between nim ergonomics, type
safety and the ability to work around nim quirks and stdlib weaknesses.

In particular, it allows us to overload common functions such as `hash`
with correct and performant versions as well as maintain control over
string conversions etc at the cost of a little bit of ceremony when
instantiating them.

Apart from distinct byte types, `Hash32`, is introduced in lieu of the
existing `Hash256`, again aligning this commonly used type with the spec
which picks bytes rather than bits in the name.
2024-09-29 10:52:19 +02:00
..
encoding.nim Align core types with execution spec (#733) 2024-09-29 10:52:19 +02:00
enr.nim Align core types with execution spec (#733) 2024-09-29 10:52:19 +02:00
hkdf.nim Remove all Defect raises to avoid unnecessary warnings (#607) 2023-05-10 15:50:04 +02:00
ip_vote.nim Use results.Opt instead of option in discv5, utp and nat (#705) 2024-06-18 18:09:27 +02:00
lru.nim Use results.Opt instead of option in discv5, utp and nat (#705) 2024-06-18 18:09:27 +02:00
messages.nim Rework of ENR decoding code (#709) 2024-06-27 15:15:23 +02:00
messages_encoding.nim Rework of ENR decoding code (#709) 2024-06-27 15:15:23 +02:00
node.nim Align core types with execution spec (#733) 2024-09-29 10:52:19 +02:00
nodes_verification.nim Update discv5 to use non deprecated ENR calls and simplify code (#710) 2024-06-27 16:18:21 +02:00
protocol.nim Align core types with execution spec (#733) 2024-09-29 10:52:19 +02:00
random2.nim Remove all Defect raises to avoid unnecessary warnings (#607) 2023-05-10 15:50:04 +02:00
routing_table.nim Fix ImplicitDefaultValue warnings + replace some obsolete inits (#697) 2024-06-10 21:19:25 +02:00
sessions.nim Use results.Opt instead of option in discv5, utp and nat (#705) 2024-06-18 18:09:27 +02:00