* Implement basic tree hash caching
* Use spaces to indent top-level Cargo.toml
* Optimize BLS tree hash by hashing bytes directly
* Implement tree hash caching for validator registry
* Persist BeaconState tree hash cache to disk
* Address Paul's review comments
* Prototype for far_right push
* Add push method and tests
* Modify beacon_chain_builder for interop to use push instead of create
* Add Push method to MerkleTree
* Cargo fmt
* Remove redundant tests
* Fix typo
* Rename push to push_leaf
* Fix clippy warnings
* Add DepthTooSmall enum variant
* Avoid cloning in MerkleTree::push_leaf
* Add quickcheck test for push_leaf
* Cargo fmt updated
* Return err instead of using unwrap()
* Use enumerate instead of hard indexing
* Use if let and return string on error
* Fix typo in deposit_leave
* Fix cargo fmt
* Prototype for far_right push
* Add push method and tests
* Modify beacon_chain_builder for interop to use push instead of create
* Add Push method to MerkleTree
* Cargo fmt
* Remove redundant tests
* Fix typo
* Rename push to push_leaf
* Fix clippy warnings
* Add DepthTooSmall enum variant
* Avoid cloning in MerkleTree::push_leaf
* Add quickcheck test for push_leaf
* Cargo fmt updated
* Return err instead of using unwrap()
* Use enumerate instead of hard indexing
* Use if let and return string on error
* Fix typo in deposit_leave
* 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
- A processing error of a validator's block or attestation should not prevent publishing. Now a 202 error is returned, to indicate that it has not been processed, but has still been published.
- Added a publish_attestation function to the API, handling POST requests for /beacon/validator/attestation.
- Removed all unused imports
- Fixed random compiler errors
- Removed all of the 'sucess_response' helpers.
- Enabled all of the API endpoints again, wrapping in 'into_boxfut'
- Tidied up /metrics endpoint
- Added a 'body_text' part to ResponseBuilder, mainly for the Prometheus /metrics endpoint
- Cleaned up the unnecessary helpers::* imports, to be more explicit.
- Wrapped endpoint functions in new into_boxfut function
- Undid changes to Network API service, now returning ApiResult again.
- Cleaning up of functions, and removal of success_response functions in updated endpoints.
- A bunch of other clean-ups.
- Adding try_future! macros where necessary
- Returning ApiResult and mapping it to future instead
- Upgrading POST publish block to return a future directly
- Added SSZ encode for HeadResponse
- Converted all of the /beacon/ endpoints to return BoxFut instead of ApiResult
- Wrapped all of the '?'s in a new macro try_future!()
- Copied the try macro to try_future, so that a boxed future can easily be returned.
- Replaced all of the response serializations to use the new success_response
- Cleaned up imports
- Moved ApiError and such to it's own error.rs
- Obsoleted 'success_response' in favour of new async regular and json only flavours
- Made ApiError work async and be derived from hyper errors
- Added a check to ensure an error is thrown if a non-json encoding is requested on a json-only function
- Made all the individual service functions return futures (only node and network for now)
- Added a /beacon/validators function, to list all validators active in a particular epoch
- Moved 'get_genesis_state' function, to align with router.
- Added content-type for error responses
- Tried adding a cache update call to fix issue getting validator duties (this is WIP)
- Fixed function re-names
- Updated the function which gets the beacon_chain from the request, and makes sure caches are updated.
- Updated this api-alignment branch with the new code from interop branch.
- Made /beacon/state return the current 'head' state when no parameters are provided.
- Added some of the YAML api spec stuff to the /beacon/state endpoint in the rest_api spec.