Common utilities for Ethereum https://nimbus.status.im
Go to file
Adam Spitz 58284ffeda
Attempt to connect to many peers concurrently, not in sequence. (#575)
The old code, which did it in sequence, made it take a very long
time to accumulate peers in the peer pool, particularly because
occasionally a connection-attempt would hang for a couple of minutes
before timing out.
2023-01-04 05:56:23 -05:00
.github/workflows fix openssl problem in ci (#533) 2022-09-05 17:00:05 +07:00
doc Fix some typos (#557) 2022-11-16 17:44:00 +01:00
eth Attempt to connect to many peers concurrently, not in sequence. (#575) 2023-01-04 05:56:23 -05:00
tests kvstore: return bool from del, add clear (#574) 2023-01-03 16:38:27 +01:00
.appveyor.yml Remove portal wire code which was moved to nimbus-eth1 repo (#370) 2021-07-09 22:14:31 +02:00
.gitignore use bearssl rng throughout (#265) 2020-07-07 10:56:26 +02:00
.travis.yml Remove portal wire code which was moved to nimbus-eth1 repo (#370) 2021-07-09 22:14:31 +02:00
LICENSE-APACHEv2 Moved eth-common to eth 2019-02-05 12:10:36 +02:00
LICENSE-MIT Moved eth-common to eth 2019-02-05 12:10:36 +02:00
README.md move rocksdb to nimbus-eth1 (#460) 2022-04-04 13:46:57 +02:00
eth.nimble Default compile all tests and binaries with TRACE log level (#549) 2022-11-10 09:01:58 +01:00
nim.cfg move -d:nimRawSetjmp to nim.cfg (#513) 2022-06-21 16:25:42 +02:00

README.md

eth - Eth Common Library

License: Apache License: MIT Stability: experimental Github action

Introduction

Ethereum-related utilities written in Nim. Includes things like Bloom filters, private/public key utilities, RLP, devp2p, and more.

Docs

Prerequisites

  • Nim & Nimble

Building & Testing

# Install required modules
nimble install
# Run full test suite
nimble test

You can also run specific parts of the test suite, e.g.:

# Test p2p functionality
nimble test_p2p
# Test rlp functionality
nimble test_rlp

Fuzzing

Next to the test suite, there are also several fuzzing test cases available. How these can be run is explained in the fuzzing readme.

License

Licensed and distributed under either of

or

at your option. This file may not be copied, modified, or distributed except according to those terms.