Commit Graph

1146 Commits

Author SHA1 Message Date
Age Manning
c68e678cac Update all crates versions 2020-05-06 21:23:50 +10:00
Age Manning
040beb78f4 Merge latest master 2020-05-06 14:06:54 +10:00
Age Manning
4afcf721b9 Protect against timing underflows (#1111) 2020-05-06 13:55:18 +10:00
Raw Pong Ghmoa
fcccf63d29 beacon/eth1: degrade log to debug level (#1105) 2020-05-06 08:54:37 +10:00
Pawan Dhananjay
c444a47f3c Fix the fallback transport construction (#1102) 2020-05-05 19:35:37 +10:00
Age Manning
1ccf83b574 Network service additions 2020-05-04 18:34:01 +10:00
Age Manning
35838dbfbe Update RPC to master libp2p 2020-05-04 18:08:48 +10:00
Age Manning
a43381e3d5 RPC handler to stable futures 2020-05-04 17:35:41 +10:00
Age Manning
0d4ee680b5 Merge latest master 2020-05-04 15:43:49 +10:00
Pawan Dhananjay
36f213c092 Dns discovery (#1015)
* Add cli flag and parse dns address

* Fail if enr udp port isn't set

* Improve docs and address parsing

* address review comments

* Remove debug statements

* Add requires condition for enr-address

* Return address in error
2020-05-03 23:18:19 +10:00
divma
b4a1a2e483 Better handling of RPC errors and RPC conn with the PeerManager (#1047) 2020-05-03 23:17:12 +10:00
Age Manning
a4034e8ae3 Update behaviour 2020-05-01 23:05:49 +10:00
Age Manning
f3e707c3db Further progress towards porting eth2-libp2p adds caching to discovery 2020-05-01 22:53:33 +10:00
Age Manning
9e6ae448a6 Finished first round of fighting RPC types 2020-05-01 20:05:03 +10:00
Age Manning
08838fca23 Partial eth2-libp2p stable future upgrade 2020-04-30 23:09:48 +10:00
Age Manning
522d0e1201 Updated all crates in eth2-libp2p 2020-04-30 21:31:12 +10:00
Paul Hauner
b6c027b9ec Follow distance fix (#1082)
* Ensure eth1 follow distance is respected

* Add more info! logs for eth1

* Improve builder log

* Fix timestamp
2020-04-30 17:14:57 +10:00
Age Manning
e0723dfc3b Correctly notify delay queues (#1087) 2020-04-30 17:12:26 +10:00
pawanjay176
655e255f76 Merge branch 'upstream/stable-futures' into master-sf 2020-04-30 12:03:01 +05:30
pawanjay176
2390b013ac Merge branch 'master' into master-sf 2020-04-30 11:53:32 +05:30
Raw Pong Ghmoa
f4ac0422e2 beacon/notifier: display block information for current slot (#1084) 2020-04-30 16:20:54 +10:00
Paul Hauner
8bf0ef8d30 Add more detail to bad hardcoded dir warning (#1069) 2020-04-30 16:19:15 +10:00
Pawan Dhananjay
85baec87f5 Port websockets, timer and notifier to stable futures (#1035)
* Fix lcli

* Port timer to stable futures

* Fix timer

* Port websocket_server to stable futures

* Port notifier to stable futures

* Add TODOS

* Port remote_beacon_node to stable futures
2020-04-30 15:49:05 +10:00
realbigsean
dea01be00e Improve aggregate validator logic (#1020)
* track whether we have aggregate validator subscriptions to exact subnets, so we know whether or not to drop incoming attestations

* fix is aggregator check

* fix CI

Co-authored-by: Age Manning <Age@AgeManning.com>
2020-04-30 15:39:10 +10:00
Age Manning
78a08ec1e6 Remove padding from gossipsub ids (#1083) 2020-04-30 15:33:53 +10:00
pawanjay176
5fa6b8d5e3 protocol.rs compiles 2020-04-29 20:10:23 +05:30
Paul Hauner
7f2121205a Ensure genesis is not triggered too early (#1052) 2020-04-29 11:37:14 +10:00
pawanjay176
5ae53c9699 Non rpc stuff compiles 2020-04-28 20:30:29 +05:30
pawanjay176
47124ca404 Fix lcli merge conflicts 2020-04-28 18:26:17 +05:30
pawanjay176
19436d4ad7 Merge branch 'master' into master-sf 2020-04-28 18:19:33 +05:30
Justin
41208d79b1 Add missing TODO (#1079) 2020-04-28 21:58:21 +10:00
Kirk Baird
1abb54dabd Milagro BLS update (#985)
* Start updating types

* WIP

* Signature hacking

* Existing EF tests passing with fake_crypto

* Updates

* Delete outdated API spec

* The refactor continues

* It compiles

* WIP test fixes

* All release tests passing bar genesis state parsing

* Update and test YamlConfig

* Update to spec v0.10 compatible BLS

* Updates to BLS EF tests

* Add EF test for AggregateVerify

And delete unused hash2curve tests for uncompressed points

* Update EF tests to v0.10.1

* Use optional block root correctly in block proc

* Use genesis fork in deposit domain. All tests pass

* Cargo fmt

* Fast aggregate verify test

* Update REST API docs

* Cargo fmt

* Fix unused import

* Bump spec tags to v0.10.1

* Add `seconds_per_eth1_block` to chainspec

* Update to timestamp based eth1 voting scheme

* Return None from `get_votes_to_consider` if block cache is empty

* Handle overflows in `is_candidate_block`

* Revert to failing tests

* Fix eth1 data sets test

* Choose default vote according to spec

* Fix collect_valid_votes tests

* Fix `get_votes_to_consider` to choose all eligible blocks

* Uncomment winning_vote tests

* Add comments; remove unused code

* Reduce seconds_per_eth1_block for simulation

* Addressed review comments

* Add test for default vote case

* Fix logs

* Remove unused functions

* Meter default eth1 votes

* Fix comments

* Address review comments; remove unused dependency

* Add first attempt at attestation proc. re-write

* Add version 2 of attestation processing

* Minor fixes

* Add validator pubkey cache

* Make get_indexed_attestation take a committee

* Link signature processing into new attn verification

* First working version

* Ensure pubkey cache is updated

* Add more metrics, slight optimizations

* Clone committee cache during attestation processing

* Update shuffling cache during block processing

* Remove old commented-out code

* Fix shuffling cache insert bug

* Used indexed attestation in fork choice

* Restructure attn processing, add metrics

* Add more detailed metrics

* Tidy, fix failing tests

* Fix failing tests, tidy

* Disable/delete two outdated tests

* Add new Pubkeys struct to signature_sets

* Refactor with functional approach

* Update beacon chain

* Remove decompressed member from pubkey bytes

* Add hashmap for indices lookup

* Change `get_attesting_indices` to use Vec

* Fix failing test

* Tidy

* Add pubkey cache persistence file

* Add more comments

* Integrate persistence file into builder

* Add pubkey cache tests

* Add data_dir to beacon chain builder

* Remove Option in pubkey cache persistence file

* Ensure consistency between datadir/data_dir

* Fix failing network test

* Tidy

* Fix todos

* Improve tests

* Split up block processing metrics

* Tidy

* Refactor get_pubkey_from_state

* Remove commented-out code

* Add BeaconChain::validator_pubkey

* Update milagro_bls

Signed-off-by: Kirk Baird <baird.k@outlook.com>

* Cargo fmt

Signed-off-by: Kirk Baird <baird.k@outlook.com>

* Use Option::filter

* Remove Box

* Comment out tests that fail due to hard-coded

* Fix fake crypto

Signed-off-by: Kirk Baird <baird.k@outlook.com>

* Fix Cow::Borrowed

Signed-off-by: Kirk Baird <baird.k@outlook.com>

* Cargo fmt

Signed-off-by: Kirk Baird <baird.k@outlook.com>

Co-authored-by: Michael Sproul <michael@sigmaprime.io>
Co-authored-by: Michael Sproul <micsproul@gmail.com>
Co-authored-by: pawan <pawandhananjay@gmail.com>
Co-authored-by: Paul Hauner <paul@paulhauner.com>
2020-04-28 13:15:46 +10:00
Age Manning
500f6b53d1 Testnet corrections (#1050)
* Correct RPC ping request

* Add attestation verification

* Add discv5 bug fixes

* Reduce gossipsub heartbeat and update metadata

* Handle known chain of advanced peer
2020-04-27 14:18:30 +10:00
divma
fa8154e3da Ensure batches align to epoch boundaries (#1021)
* Ensure batches align to epoch boundaries

* Clean up range_sync logs
2020-04-27 14:18:09 +10:00
Paul Hauner
30e8e8a337 Add feature flag for writing ssz pre/post to disk (#1046) 2020-04-24 11:57:39 +10:00
Age Manning
79cc9473c1 Sync and multi-client updates (#1044)
* Update finalized/head sync logic

* Correct sync logging

* Handle status during sync gracefully
2020-04-23 19:01:29 +10:00
Age Manning
0b82e9f8a9 Update Syncing logic (#1042)
* Prevent duplicate parent block lookups

* Updates logic for handling re-status'd peers

* Allow block lookup if the block is close to head

* Correct ordering of sync logs

* Remove comments in block processer, clean up sim
2020-04-22 23:58:10 +10:00
Paul Hauner
aacec7a4a7 Skip an already finalized block in a segment (#1041) 2020-04-22 23:06:16 +10:00
divma
2469bde6b1 Add chain_id in range syncing to avoid wrong dispatching of batch results (#1037) 2020-04-22 21:17:56 +10:00
Paul Hauner
018a666731 Address clippy arith lints (#1038) 2020-04-22 14:46:19 +10:00
Age Manning
ca538e887e Cleanup v0.2.0 2020-04-22 01:31:07 +10:00
Age Manning
dfecca72ef Updates the grafiti tag to v0.2.0 2020-04-22 01:07:38 +10:00
Age Manning
9e416a9bcd Merge latest master 2020-04-22 01:05:46 +10:00
pawan
1bc75986ac Add TODOS 2020-04-21 20:06:27 +05:30
Age Manning
20b6baf11f Sync corrections (#1034)
* Correct status re-request logic improve logging

* Prevent multiple dials of the same peer

* Discovery to obey max peers when connecting to new peers
2020-04-22 00:29:19 +10:00
Age Manning
9e42a851e4 Adds peers and connected_peers to lighthouse http API (#1030) 2020-04-21 23:27:49 +10:00
pawan
3075b3c61c Port notifier to stable futures 2020-04-21 18:23:07 +05:30
pawan
d0b478f994 Port websocket_server to stable futures 2020-04-21 14:34:10 +05:30
pawan
1fa6b49136 Fix timer 2020-04-21 01:56:03 +05:30
pawan
1475302c44 Port timer to stable futures 2020-04-20 19:53:10 +05:30