5057e8ec0a
feat(p2p): refactor downloaders and add peer id to the result ( #410 )
...
* feat(p2p): refactor downloaders and add peer id to the result
* rm unused import
* fix tests
* clean up deps
* Update crates/interfaces/src/p2p/error.rs
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
* add split fn
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
2022-12-13 17:14:45 +01:00
705e6f79dc
feat(p2p): remove p2p crate ( #397 )
2022-12-13 08:28:38 +01:00
e014eaad33
feat(db): Refactor storage libraries ( #371 )
2022-12-09 23:14:07 -08:00
f489ec51f0
feat: add TaskManager and Executor types ( #357 )
2022-12-08 09:15:48 -08:00
89ffaf541b
feat: add tracing crate ( #236 )
2022-11-22 20:48:32 +01:00
92a7818512
feat: bodies stage ( #190 )
...
* chore: clean up `.gitignore`
* fix: make RO cursors `Send + Sync`
* feat(wip): bodies stage
* driveby: improve docs
* chore: don't panic if we're the first stage
* chore: use `Vec` for ommers
* feat: error handling in bodies downloader
* chore: remove stale comment
* chore: pascal-case stage id
* refactor: remove unused new fns
* refactor: distinguish downloaders with prefix
* refactor: move downloader errs to own module
* refactor: `stream_bodies` -> `bodies_stream`
* test: fix borked imports in header stage
* test: clean up header tests
* test: add basic body stage tests
* test: add 2 more body stage test skeletons
* test: move generator test utils to own module
* refactor: move proof functions to primitives crate
* feat: add block generator test utils
* test: more body stage tests
* chore: fix typo (`Cannonical*` -> `Canonical`)
* docs: document `bodies_to_download`
* test: more body stage tests
* test: more body stage tests
* refactor: clean up body stage tests a bit
* test: fix broken tests
* refactor: clean up body stage tests
* test: more body stage tests
2022-11-15 08:49:11 +01:00
fd6a7cb628
WIP: feat: ipc support ( #144 )
...
* feat: ipc support
* copy futures
* feat: port ipc implementation
* cleanup
* add test
* fix clippy
* add request test
2022-11-10 19:47:00 +01:00
b7cdfbf4f9
feat(net): network scaffolding ( #110 )
...
* feat(net): network scaffolding
2022-11-07 09:27:08 +01:00
ac2f3fcd8a
feat: Consensus crate and verification functions. ( #152 )
...
* wip executor
* wip
* Cleanup added some checks and structure to executor
* adding additional block/header checks
* add basefee calculation and check
* some cleanup
* Sanity check test
* Test for sanity check
* move verification to consensus crate
* cleanup
* Better Error handling
2022-11-02 12:59:51 +01:00
ce64fefd78
feat(net): add discv4 crate ( #113 )
...
* port kad
* feat: port kad bucket
* feat: add discv4
* chore: rustfmt
* cargo update
* just reuse discv5 table
* test: add rlp tests
* message encoding
* feat: impl codec roundtrip testing
* more work in message handling
* implement ping
* feat: impl commands
* cleanup
* more cleanup
* trim config
* more docs
* feat: implement recursive lookup
* docs
* cleanup config
* feat: implement update stream
* chore: config cleanup
* docs: add crate docs
* feat: more testing
* fix deny
* clarify ring
* docs: more docs
* use discv5 master
* docs: address review and add comments
* update readme
* rustmft
* chore(clippy): make clippy happy
2022-10-25 14:23:24 +02:00
5c55c57c5e
feat(db): switch to reth-libmdbx-rs, bump reth-mdbx-sys to 0.12.1 ( #133 )
...
* feat(db): Add mdbx-rs apache licenced code 55e234
* feat(db): replace mdbx with reth-mdbx, metadata changes
* chore(db): bump mdbx-sys to 0.12.1
2022-10-25 02:50:02 -07:00
15bd88e637
headers(part2) - feat: add Downloader trait and test utils ( #118 )
...
* feat(interfaces): implement header client traits
* feat: add downloader trait implementer
* feat: use explicit error type instead of ok(false)
* feat: add constructor to HeaderLocked
* test: scaffold mock consensus, downloader and headersclient helpers
* test: implement test consensus
* test: implement test headers client
* refactor: cleanup download headers
* chore: fix lint
* s/test_utils/test_helpers
* headers(part 3) feat: implement Linear downloader (#119 )
* feat: add headers downloaders crate
* feat: more scaffolding
* interfaces: generalize retryable erros
* feat: implement linear downloader
* fix linear downloader tests & add builder
* extend & reverse
* feat: linear downloader generics behind arc and reversed return order (#120 )
* put client & consensus behind arc and return headers in rev
* cleanup
Co-authored-by: Roman Krasiuk <rokrassyuk@gmail.com >
* extract test_utils
* cargo fmt
Co-authored-by: Roman Krasiuk <rokrassyuk@gmail.com >
2022-10-24 04:56:43 -07:00
5dfe5ac29b
feat(net): add Framed ECIES implementation ( #80 )
...
* feat(net): add ecies crate
* cargo fmt
* add hex-literal and proptest to dev-dependencies
* adds std feature to reth-rlp
* document util
* document more
* chore: allow missing docs in ecies/algorith.rs
* feat(ecies): improve error handling
remove anyhow and strictly type all errors
* refactor(ecies): movem ingress/egress to lib.rs
* chore(ecies): allow missing docs in mac
* chore(ecies): cleanup utils
* refactor(ecies): move ECIES Codec to separate file
* refactor(ecies): rename proto to stream
* add test scaffold
* implement server/client read/write test
* chore: clippy / fmt
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com >
2022-10-15 18:20:17 -07:00
92e64ed71f
include apache licenced fastrlp as reth-rlp ( #63 )
...
* include apache licenced fastrlp as reth-rlp
* fmt
* Include LICENCE and README for reth-rlp
2022-10-14 12:43:21 +02:00
ae5935e6b2
feat: reth binary and parsing of eth chain tests ( #38 )
...
* Scaffolding for reth test binary. wip for blockchain tests
* wip models for chain json tests
* reth binary and chain test
* fmt,clippy
* Update bin/reth/src/lib.rs
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
* Update bin/reth/src/lib.rs
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
* Update bin/reth/src/test_eth_chain/mod.rs
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
* Update bin/reth/src/test_eth_chain/mod.rs
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
* Update bin/reth/src/test_eth_chain/mod.rs
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
* Update bin/reth/src/test_eth_chain/models.rs
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
* Update bin/reth/src/test_eth_chain/models.rs
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
* Update bin/reth/src/test_eth_chain/mod.rs
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
* Update bin/reth/src/test_eth_chain/runner.rs
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
* Move JsonU256 to primitives
* fmt
* Use eyre
* nits
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
2022-10-12 17:43:01 +02:00
d7c8b70cc3
feat: add eth-wire ( #20 )
2022-10-10 09:46:02 -07:00
791ee2839f
feat(txpool): initial sketch ( #7 )
2022-10-07 22:00:19 +02:00
074f452275
Small skeleton for executor abstraction ( #14 )
2022-10-06 16:01:23 +02:00
bc30cbce61
Skeleton primitives and interface crate ( #13 )
...
* wip interface primitives
* wip
* Integrate it inside rpc- crates
* fmt
* move tx to mod.rs
* Add interfaces, executor to toml
* Added nits, comments fix
2022-10-06 14:48:57 +02:00
849e8ae518
feat: add db crate ( #9 )
2022-10-03 16:13:42 +02:00
eeda03a3f3
feat: add missing eth_ functions
2022-10-03 15:06:58 +02:00
7c35e68f8e
Merge branch 'master' into matt/rpc-support
2022-10-03 14:56:38 +02:00
6868dda544
feat: basic staged sync crate ( #6 )
...
* feat: basic staged sync crate
* refactor: rename to `reth-stages`
* feat: remove eyre
* feat: impl `Error` for `StageError`
* chore: bump cargo lock
* chore: nits
* docs: clarify unwind
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com >
2022-10-03 14:40:50 +02:00
5e0315cce0
move crates into net
2022-10-03 13:40:26 +02:00
2717dd643a
feat(rpc): add rpc crates
2022-09-30 20:20:07 +02:00
6ff7cf5a74
feat: add p2p crate ( #4 )
...
* feat: add p2p crate
* move p2p to net subfolder
* add lib.rs and Cargo.toml to net
* remove net crate, use explicit names in workspace
2022-09-30 09:27:52 -07:00
4dc32e9f76
feat: add core crate ( #3 )
...
* feat: add core crate
* rename primitives
* Update crates/primitives/Cargo.toml
-.-
Co-authored-by: rakita <rakita@users.noreply.github.com >
Co-authored-by: rakita <rakita@users.noreply.github.com >
2022-09-27 10:19:01 -07:00
57a2b2d1d4
feat: add crate template
2022-09-22 20:16:15 +02:00
978527367f
chore: init
2022-09-19 19:25:12 +02:00