Georgios Konstantopoulos
4d718bbf33
s/foundry-rs/paradigmxyz
2022-12-07 00:00:45 -08:00
Matthias Seitz
f65969e90f
perf(net): exclude bootnodes from update stream ( #319 )
2022-12-06 18:02:04 -08:00
Matthias Seitz
5300c83a50
feat(net): send full transactions to fraction of all peers ( #272 )
...
* refactor(net): use shared objects on a per peer basis
* feat(net): send full transactions to fraction of all peers
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com >
2022-12-02 04:21:23 -08:00
Matthias Seitz
04105ec82b
test: add mainnet connection test ( #306 )
2022-12-01 17:59:52 +01:00
Matthias Seitz
a0c35f1f48
refactor: replace reverse with HeadersDirection ( #305 )
2022-12-01 17:59:33 +01:00
Matthias Seitz
3355b0c605
test(net): add e2e request body test ( #304 )
...
* test(net): add e2e request body test
* test(net): add e2e request header test
2022-12-01 15:35:14 +01:00
Matthias Seitz
480097a7ca
feat(net): add eth request handler ( #293 )
...
* feat(net): add block request manager
* refactor: change ommers type to Header
* feat: impl handlers
* rename to EthRequestHandler
* impl checks
* fix: skip as step
* chore: rustfmt
2022-11-30 21:19:50 +01:00
Matthias Seitz
7879389059
chore(net): deny unused and cleanup ( #289 )
2022-11-29 20:57:40 +01:00
Matthias Seitz
97ea20e9d5
feat(net): add swarm mermaid diagram ( #288 )
2022-11-29 20:15:17 +01:00
Matthias Seitz
e53ed8ffc2
refactor(net): use shared objects on a per peer basis ( #270 )
2022-11-29 11:43:45 +01:00
Matthias Seitz
b5300aafec
feat(net): add request timeout ( #273 )
2022-11-28 14:41:39 -08:00
Matthias Seitz
0e436ae543
feat(net): add missing report on bad response ( #271 )
2022-11-27 23:33:04 -08:00
Matthias Seitz
b02a5c4bbf
perf(net): import loop order in transactions manager ( #269 )
2022-11-26 10:44:30 -08:00
Matthias Seitz
7db61eeadb
misc(net): discovery docs and renames ( #268 )
2022-11-26 14:46:57 +01:00
Matthias Seitz
a744676302
misc(net): add peers commands ( #267 )
2022-11-26 14:46:49 +01:00
Matthias Seitz
fd840e1c66
refactor: bodies client API ( #257 )
...
* refactor: bodies client API
* chore: fix errors
2022-11-26 10:04:42 +01:00
Matthias Seitz
6232505b94
fix(net): substract from correct var ( #262 )
2022-11-26 00:35:51 +01:00
Matthias Seitz
b6d9fe87b9
feat(net): propagate new transactions ( #256 )
2022-11-25 22:13:20 +01:00
Matthias Seitz
37809ce774
feat(net): add session limits ( #253 )
2022-11-25 18:56:49 +01:00
Matthias Seitz
fb2861f112
feat(net): integrate HeadersClient ( #251 )
...
* refactor: headers client
* chore: rustfmt
* chore(clippy): make clippy happy
* feat(net): integrate HeadersClient
* fix: parse td as U256 with from_little_endian
* conflicts
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com >
2022-11-25 14:26:43 +01:00
Matthias Seitz
2e3c220104
fix: fix flaky test ( #250 )
2022-11-24 13:26:22 -08:00
Matthias Seitz
f4dbeddc97
refactor: rename FetchClient and move to submodule ( #245 )
...
* refactor: rename FetchClient and move to submodule
* chore(clippy): make clippy happy
2022-11-24 11:43:05 +01:00
Matthias Seitz
8966daad9d
feat(net): reputation system and peer reporting ( #239 )
...
* refactor: move to module
* feat(net): reputation system and peer reporting
* be specific in test
* use saturating sub
2022-11-24 10:14:50 +01:00
Matthias Seitz
0f45f16455
test(net): add Testnet implementation for testing ( #232 )
...
* test(net): add Testnet implementation for testing
* test(net): add testnet type and test
2022-11-22 19:33:01 -05:00
Matthias Seitz
46e4ad9744
test(net): add active session tests ( #230 )
...
* test(net): add active session tests
* more tests
2022-11-22 00:22:43 -05:00
Matthias Seitz
f7c6ae5858
feat(net): impl active session ( #219 )
...
* feat(net): impl active stream
* rename fields
* work on active
* feat(net): add disconnect function
* more work on active session
* feat(net): add broadcast message variants
* feat: impl session future
* misc: refactor
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com >
2022-11-21 11:31:03 +01:00
Matthias Seitz
b4098b9558
chore(net): add disconnect reason ( #222 )
2022-11-17 15:48:50 +01:00
Georgios Konstantopoulos
331a2dbe8f
fix(net): add None disconnect reason on PoS p2p violation
2022-11-16 12:16:28 -08:00
Matthias Seitz
ee7140f91e
refactor(net): add dedicated transaction event channel ( #214 )
2022-11-16 21:06:53 +01:00
Matthias Seitz
09ba65fa75
feat(net): add NetworkMode to enforce POS rules ( #215 )
2022-11-16 11:42:58 -08:00
Matthias Seitz
3ffc0da7c8
feat(net): add disconnect reason ( #218 )
2022-11-16 11:11:34 -08:00
Matthias Seitz
6b336c62fb
feat: add blog propagation handlers ( #205 )
2022-11-15 23:33:03 +01:00
Matthias Seitz
f8fddcdfa4
feat(p2p): integrate txpool in p2p ( #208 )
2022-11-15 22:27:41 +01:00
Matthias Seitz
b60ced1de1
feat: add missing message handling ( #200 )
...
* feat: add missing message handling
* refactor: new block message handling
* feat: add events and commands for transaction handling
* more work in transactions
* chore: silence warnings
2022-11-15 10:34:28 +01:00
Dan Cline
f1e6639374
feat(net): authenticate sessions ( #178 )
...
* Switch stream type of ActiveSession to EthStream
* Start `StatusBuilder` for initializing the `Status` message required
for the handshake
* Add `Hardfork` for `Status` default forkid
* Add `MAINNET_GENESIS` constant
* finish `StatusBuilder`
* initialize eth streams in session
* add status, hello, and fork filter to session manager
* fix status builder example
* add status and hello to network config
* will probably remove
* removing status and hello from networkconfig
* move forkid to primitives
* change imports for forkid
* add hardfork to primitives
* remove hardfork and forkid from eth-wire
* fix remaining eth-wire forkid references
* put mainnet genesis in constants, remove NodeId
* replace NodeId with PeerId
* the only NodeId remaining is inherited from enr
* PeerId still needs to be documented
* also run cargo fmt
* replace loop with iter().any()
* ignore missing docs for hardforks
* use correct PeerId for Discv4::bind example test
* document PeerId as secp256k1 public key
* cargo fmt
* temporarily allow too_many_arguments
* the authenticate and start_pending_incoming_session methods have many
arguments, we can reconsider the lint or fix the methods at a later
point
2022-11-14 12:03:05 -05:00
Matthias Seitz
5ca2cab97f
refactor: move RequestError from network to interfaces p2p ( #197 )
2022-11-13 09:46:38 +01:00
Matthias Seitz
139efee599
feat(net): impl peer management ( #194 )
2022-11-12 08:41:15 +01:00
Matthias Seitz
c43d752929
feat(net): more request handling ( #186 )
...
* feat(net): more request handling
* rm uneccessary checks
* rm box
2022-11-10 21:24:47 +01:00
Matthias Seitz
836ad6aaee
feat(net): add request/response message types ( #176 )
...
* feat(net): add request/response message types
* chore: rustfmt
2022-11-08 17:52:17 +01:00
Matthias Seitz
1408309b74
feat(net): add active session type ( #169 )
...
* refactor(net): unify capability types
* refactor(net): unify capability types
* feat(net): add active session type
2022-11-07 23:15:38 +01:00
Matthias Seitz
5721262740
refactor(net): unify capability types ( #168 )
...
* refactor(net): unify capability types
* refactor(net): unify capability types
2022-11-07 18:04:17 +01:00
Matthias Seitz
b7cdfbf4f9
feat(net): network scaffolding ( #110 )
...
* feat(net): network scaffolding
2022-11-07 09:27:08 +01:00