Commit Graph

350 Commits

Author SHA1 Message Date
Age Manning
52b31b2009
Implement initial pubsub message handling 2019-03-25 23:02:51 +11:00
Age Manning
05369df7e8
Add PubsubMessage and publish function to behaviour 2019-03-25 22:00:11 +11:00
Age Manning
214fb5b8ff
Merge RPC branch 2019-03-25 21:31:49 +11:00
Paul Hauner
098e63ac32
Move gossip structs into behaviour 2019-03-25 18:59:50 +11:00
Luke Anderson
c7ba3faae0
Merge branch 'validator_client' of github.com:sigp/lighthouse into validator_client 2019-03-25 18:32:42 +11:00
Luke Anderson
4cdeb6abe5
Progress towards validator signing attestations.
- Added a 'beacon_attester' RPC endpoint, so the BeaconNode can supply attestation data.
 - Renamed 'attestation_data' to just 'attestation' throughout (except where it is actually just the data structure).
2019-03-25 18:32:27 +11:00
Age Manning
02039be400
Fix merge conflicts 2019-03-25 17:46:08 +11:00
Luke Anderson
2f49289c28
Merged master and fixed merge conflicts with Config updates. 2019-03-25 17:03:17 +11:00
Age Manning
ca9af49d4e
Adds error handling to validator client service 2019-03-25 16:50:15 +11:00
Paul Hauner
32a025bdf7
Introduced RequestId newtype 2019-03-25 16:48:44 +11:00
Paul Hauner
ebb9ced0a4
Improve peer status handling 2019-03-25 15:30:46 +11:00
Paul Hauner
708d9b5674
Add basic Gossip sync handlers 2019-03-25 14:27:20 +11:00
Paul Hauner
267477ffc2
Fix typo from previous commit 2019-03-24 18:37:23 +11:00
Paul Hauner
755a09d164
Move ImportQueue into own file 2019-03-24 18:34:44 +11:00
Paul Hauner
ee07efb9e9
Add comments to SimpleSync 2019-03-24 18:31:03 +11:00
Paul Hauner
07b6f70842
Ignore syncing tests (they run too long) 2019-03-24 17:58:30 +11:00
Paul Hauner
796b68dc04
Implement Goodbye and BeaconState msg handlers 2019-03-24 17:51:32 +11:00
Paul Hauner
f918f42b28
Merge branch 'master' into paul-sync 2019-03-24 16:36:18 +11:00
Paul Hauner
3dc5595a6f
Fix last errors stopping full chain sync 2019-03-24 16:35:07 +11:00
Paul Hauner
1ea9959632
Fix bug with block processing in sync 2019-03-24 15:18:21 +11:00
Paul Hauner
5f4f67f46f
Swap ImportQueue from a Map to a Vec
There's an edge case where different blocks can have the same block
body.
2019-03-24 14:22:12 +11:00
Paul Hauner
15f853416b
Add more detail to sync logs 2019-03-24 13:59:27 +11:00
Paul Hauner
840738ea12
Tidy logging, fix bug with stale time in queue 2019-03-24 13:06:17 +11:00
Paul Hauner
6b39c693af
Extend syncing 2019-03-24 12:50:23 +11:00
Paul Hauner
3eae7b3fc5
Add skip slot support to BeaconChain fns 2019-03-24 12:49:59 +11:00
Paul Hauner
a57a7c2394
Implement block imports for sync 2019-03-23 18:48:09 +11:00
Paul Hauner
4b5b5851a6
Allow sync to to request block bodies. 2019-03-23 13:23:44 +11:00
Age Manning
17cd5bb991
Adds genesis time to node info. Closes #256 2019-03-22 23:01:10 +11:00
Age Manning
a1a5f29caa
Fix registering of node service 2019-03-22 16:56:54 +11:00
Age Manning
a4cfe68272
Thread beacon node RPC server 2019-03-22 16:46:52 +11:00
Paul Hauner
96ba1c8f77
Implement get_block_roots for syncing 2019-03-22 14:20:49 +11:00
Age Manning
858cf4f1f4
Add beacon_chain trait for gRPC server 2019-03-22 13:51:17 +11:00
Age Manning
ee6a0ccb92
Initial build of server-side BeaconNodeService RPC 2019-03-22 13:37:24 +11:00
Age Manning
844fdc0fb9
Rename network_id to chain_id 2019-03-22 12:39:45 +11:00
Paul Hauner
f96a3282b5
Pass first sync test 2019-03-22 11:39:16 +11:00
Paul Hauner
4fc6e435d2
Add type alias to test_harness 2019-03-22 11:38:57 +11:00
Paul Hauner
7a75ee3d19
Merge branch 'master' into paul-sync 2019-03-22 07:11:04 +11:00
Paul Hauner
f3c81cda99
Implement hello responses. 2019-03-21 18:21:50 +11:00
Paul Hauner
430702b38d
Clean println's out of state processing 2019-03-21 18:21:26 +11:00
Paul Hauner
ca18d4390a
Add first changes to syncing logic
- Adds testing framework
- Breaks out new `NetworkContext` object
2019-03-21 17:17:01 +11:00
Age Manning
84f0ad2ae7
Add Ping protocol to lighthouse 2019-03-21 13:42:02 +11:00
Age Manning
7f976124df
Add logging to libp2p behaviour 2019-03-21 13:34:37 +11:00
Age Manning
71dca8af36
Correct user agent string 2019-03-21 13:28:34 +11:00
Age Manning
13ac5b1d25
Tidy network poll and implement Identify 2019-03-21 13:15:14 +11:00
Age Manning
35815ce786
Cleans up swarm poll and adds identify behaviour 2019-03-21 12:57:41 +11:00
Age Manning
67a3dfe052
Remove node private key from config 2019-03-21 12:45:23 +11:00
Age Manning
7ec37939c8
Adds Identify protocol and cleans up network config 2019-03-21 12:41:05 +11:00
Age Manning
437a0505c9
Implement encodeable on all RPC methods 2019-03-21 11:25:22 +11:00
Age Manning
950186eca7
Implement BeaconChainState RPC method 2019-03-21 11:18:47 +11:00
Age Manning
3063d5eac9
Implement BeaconBlockBodies RPC method 2019-03-21 11:16:09 +11:00
Age Manning
56cd77ead8
Implement BeaconBlockHeaders RPC method 2019-03-21 11:05:26 +11:00
Age Manning
766a79adfa
Implement BeaconBlockRoots RPC method 2019-03-21 11:02:52 +11:00
Age Manning
a14426349a
Implement Goodbye RPC call 2019-03-21 10:53:29 +11:00
Age Manning
3aa2b376bb
Increase RPC read/write limit to 4M 2019-03-21 10:43:21 +11:00
Age Manning
e080f63811
Rename libp2p to eth2-libp2p 2019-03-20 15:09:24 +11:00
Age Manning
7c7f81d188
Fix issue with merging v0.5.0 2019-03-20 14:36:09 +11:00
Age Manning
4310f35b73
Merge branch 'master' into network-server 2019-03-20 14:31:35 +11:00
Age Manning
4105b869e1
Fix all matches relating to new RPC methods 2019-03-20 10:54:19 +11:00
Paul Hauner
84f373fcc2
Fix clippy lints 2019-03-20 10:51:53 +11:00
Age Manning
9db36f15bf
Tidy RPC Methods 2019-03-20 10:47:05 +11:00
Age Manning
ae1a7a2a25
Implement BeaconChainState RPC method 2019-03-20 10:43:40 +11:00
Age Manning
fd04431d54
Implement BeaconBlockBody RPC method 2019-03-20 10:36:37 +11:00
Age Manning
8fa70f64ec
Implement BeaconBlockHeaders RPC method 2019-03-20 10:28:05 +11:00
Age Manning
450b2cfb81
Rename RequestBeaconBlockRoots to BeaconBlockRoots for consistency 2019-03-20 10:19:45 +11:00
Age Manning
8acfb260d1
Implement RequestBeaconBlockRoots RPC method 2019-03-20 10:18:04 +11:00
Age Manning
0e8b174770
Implement Goodbye libp2p rpc request 2019-03-20 10:05:17 +11:00
Age Manning
d229bc9ccb
Stub possible fields in HandlerMessage 2019-03-20 10:02:26 +11:00
Age Manning
4be2eeb792
Correct cli rpc parameters 2019-03-20 09:58:31 +11:00
Age Manning
037c3b8307
Update config and cli for rpc 2019-03-20 00:01:31 +11:00
Age Manning
d2f12b7c18
Add standard RPC service 2019-03-19 23:47:58 +11:00
Age Manning
4b57d32b60
Apply clippy suggestions 2019-03-19 23:20:39 +11:00
Age Manning
e7f87112fb
Tidy networking crates 2019-03-19 22:53:51 +11:00
Age Manning
dc014d07bc
Enable syncing state when new peer connects 2019-03-19 22:32:56 +11:00
Age Manning
0a8b0069dc
Add peer validation and successful handshake 2019-03-19 22:18:01 +11:00
Age Manning
b30d72501c
Add logger to sync module 2019-03-19 21:55:57 +11:00
Age Manning
6e10ce93d4
Tidy message handler 2019-03-19 21:44:52 +11:00
Age Manning
c0bc45f1f3
Implement node connection validation structure 2019-03-19 18:28:42 +11:00
Age Manning
752c784534
Initial handling of RPC HELLO requests 2019-03-19 14:40:08 +11:00
Age Manning
5ae8079b44
Basic node handshake 2019-03-19 13:25:25 +11:00
Age Manning
67c09021f0
Initial handling RPC responses 2019-03-19 13:03:12 +11:00
Age Manning
2657dc1465
Builds RPC infrastructure to handle RPC responses 2019-03-19 12:47:36 +11:00
Age Manning
31333e8f8e
Add send rpc in message handler 2019-03-19 12:19:07 +11:00
Age Manning
495348f934
Adds RPC request send framework in message handler 2019-03-19 11:25:42 +11:00
Age Manning
dfdec78a7a
Implements hello generation in sync module 2019-03-19 00:26:15 +11:00
Age Manning
41abdb7599
Remove sync crate, move into network crate 2019-03-19 00:05:06 +11:00
Age Manning
8ec0688cb9
Implements RPC call functionality 2019-03-18 23:34:44 +11:00
Age Manning
0625bb6b03
Add network channel into message handler 2019-03-18 23:18:25 +11:00
Age Manning
6a89da43b7
Cleanup network shutdown messages 2019-03-18 18:22:01 +11:00
Age Manning
66f09e1b8e
Updates network branch to v0.5.0 2019-03-18 18:17:37 +11:00
Paul Hauner
71d95ee9db
Add new field to test_harness YAML, remove prints 2019-03-18 18:08:53 +11:00
Age Manning
2d52d2954d
Modify testnet spec to have few validators 2019-03-18 17:45:40 +11:00
Age Manning
6b5debe654
Organize beacon_chain typing
- Implements ClientTypes
- New network BeaconChain type for the networking service
2019-03-18 17:38:23 +11:00
Paul Hauner
edeace9e75
Fix issues with building on genesis block 2019-03-18 16:53:59 +11:00
Age Manning
bbad4bfa19
Starts initialisation of beacon chain in the client 2019-03-18 16:16:54 +11:00
Age Manning
2e0c8e2e47
Handle peer dials and propagate to message handler 2019-03-17 23:14:28 +11:00
Paul Hauner
816c2c651b
Modify genesis processing process.
- Removed BeaconStateBuilder
- Added genesis code to `state_processing`.
2019-03-17 23:11:07 +11:00
Age Manning
9803ab30f2
Propagate RPC through network service.
- Basic network message handler threading
- Correct references
2019-03-17 21:49:56 +11:00
Paul Hauner
f71cab8ba2
Ensure project tests compile on v0.5.0 2019-03-17 19:28:29 +11:00
Paul Hauner
446ff0c27e
Ensure test_harness crate compiles under v0.5.0 2019-03-17 19:19:52 +11:00
Paul Hauner
6df5eee7f4
Update beacon_chain crate with v0.5.0 updates 2019-03-17 18:10:20 +11:00