* 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
* Disable/delete two outdated tests
* Bump eth1 default vote warn to error
* Delete outdated eth1 test
Co-authored-by: Pawan Dhananjay <pawandhananjay@gmail.com>
* Update to spec v0.9.0
* Update to v0.9.1
* Bump spec tags for v0.9.1
* Formatting, fix CI failures
* Resolve accidental KeyPair merge conflict
* Document new BeaconState functions
* Fix incorrect cache drops in `advance_caches`
* Update fork choice for v0.9.1
* Clean up some FIXMEs
* Fix a few docs/logs
* Add valid_deposit test and build_with_deposit method
* Insert_deposit takes a num_deposit param
* Deposit with spec.max_effective_balance
* Copy int_to_bytes32 implem from beacon_chain_builder
* Add debug information to insert_deposit
* Remove length-proof assertion
* Insert_deposit displays error
* Batch deposits now pass tests
* Optimize insert_deposit
* Rename insert_deposits and set num_deposits to 2 in valid_deposit test
* update test_utils to pass tests
* fix typo in test_utils
* update cast in test_utils
* Add DepositCountInvalid tests
* Add tests for bad deposit signature
* Add tests and test utils in test_builder
* Return error instead of ok on bad signature
* Update DepositTestTask enum
* Add comment about manually setting deposit_count and deposit_index
* add badblsbytes test
* add bad_index var for clarity ; remove underflow test
* cargo fmt
* Add insert 3 exits tests
* Add validator_unknwon test
* Add far_future_epoch test and already exited
* Add MaxVoluntaryExits + 1 test
* Add exit_already_initiated test
* Add exit_not_active test
* Add too_young_to_leave test
* Cargo fmt
* Confirm already_anitiated test
* Fix typo in enum variant
* Adjust some tests to return ok(()) and revert changes for early return in per_block_processing.rs
* cargo fmt
* Adjust AlreadyIniated test to expect Ok(()) and revert changes in per_block_processing.rs
* Remove extraneous newline
* Add insert_valid_attester_slashing
* Initial cargo fmt
* Add NotSlashable test
* Cargo fmt
* Remove AttestationDataIdentical
* Make test_task pass through reference ; fix max_attester_slashing_plus_one test
* Initial cargo fmt
* Add InvalidIndexedAttestation1 and 2
* Add comments
* Add ProposalsIdenticalTest
* Add ProposalsIdentical test
* Cargo fmt
* Add ProposerUnknown test
* Add ProposalEpochMismatch test
* Add BadProposal1Signature and Badproposal2Signature tests
* Add ProposerNotSlashable test
* Derive PartialEq and use if instead of match
* Merge attestation tests
* Remove useless AlreadyInitiated variant in beacon_state
* Remove MaxOperations plus one tests for each operation
* Clean comments
* add IncludedTooLate and BadTargetEpoch tests
* Update AttestationDataBuilder call in operation_pool testing
* Cargo fmt
* Remove BadIndex enum variant, unused in the code
* Cargo fmt
* Cargo fmt updated
* simply increment deposit_count instead of hardsetting deposit_index in insert_deposits
* Fix bad_merkle_proof when calling insert_deposits
* Change into_iter to iter
* Fix clippy 'easy' warnings
* Clippy eth2/utils
* Add struct NetworkInfo
* Clippy for types, utils, and beacon_node/store/src/iters.rs
* Cargo fmt
* Change foo to my_foo
* Remove complex signature
* suppress clippy warning for unit_value in benches
* Use enumerate instead of iterating over range
* Allow trivially_copy_pass_by_ref in serde_utils
* Add basic block processing benches
* Start reviving state processing benches
* Fix old block builders
* Add optimization for faster pubkey add
* Tidy benches, add another
* Add extra block processing bench
* Start working on faster BLS scheme
* Add partially complete sig verify optimization
* Add .gitignore to state processing
* Add progress on faster signature verification
* Fix SignatureSet for fake_crypto
* Tidy attester slashings sig set
* Tidy bulk signature verifier
* Refactor signature sets to be cleaner
* Start threading SignatureStrategy through code
* Add (empty) test dir
* Move BenchingBlockBuilder
* Add initial block signature verification tests
* Add tests for bulk signature verification
* Start threading SignatureStrategy in block proc.
* Refactor per_block_processing errors
* Use sig set tuples instead of lists of two
* Remove dead code
* Thread VerifySignatures through per_block_processing
* Add bulk signature verification
* Introduce parallel bulk signature verification
* Expand state processing benches
* Fix additional compile errors
* Fix issue where par iter chunks is 0
* Update milagro_bls dep
* Remove debugs, code fragment in beacon chain
* Tidy, add comments to block sig verifier
* Fix various PR comments
* Add block_root option to per_block_processing
* Fix comment in block signature verifier
* Fix comments from PR review
* Remove old comment
* Fix comment