Commit Graph

604 Commits

Author SHA1 Message Date
Paul Hauner
b978db23fc Merge new beacon block, Rust 2018 2018-12-25 19:00:41 +11:00
Paul Hauner
e635423eac Fix clippy lint in ssz 2018-12-25 18:34:45 +11:00
Paul Hauner
a7756ea4b5 Remove old chain state transition code 2018-12-25 18:22:46 +11:00
Paul Hauner
f140e2938f Update beacon_block_store for new block struct 2018-12-25 10:38:40 +11:00
Paul Hauner
b95395d1e1 Rename types::random types::test_utils 2018-12-25 10:36:49 +11:00
Paul Hauner
91dea4bf29 Merge Rust 2018 updates 2018-12-24 10:03:56 +11:00
Paul Hauner
a42d931d66 Remove state-transition crate 2018-12-24 10:00:52 +11:00
Paul Hauner
6f039e6e6a Add ssz enc/dec for beacon block 2018-12-23 23:41:22 +11:00
Paul Hauner
368a218af4 Add types, more ssz testing for existing types 2018-12-21 15:44:11 +11:00
Paul Hauner
2c04d343e9 Merge pull request #127 from drozdziak1/122-rust-2018
2018-ify everything
2018-12-21 15:26:39 +11:00
Stan Drozd
dcf9f2244a Add 'edition = "2018"' to every Cargo.toml 2018-12-19 16:38:59 +01:00
Stan Drozd
e502872083 cargo-fix the whole workspace into Rust 2018 2018-12-19 16:07:01 +01:00
Paul Hauner
c9f82f8a1d Implement ssz enc/decode for beaconblock
Not yet fully tested
2018-12-19 17:56:09 +11:00
Paul Hauner
459be0b4b6 Merge pull request #109 from ralexstokes/update-hash-function
Updates the hash function used to Keccak-256

Closes #111
2018-12-19 17:11:47 +11:00
Paul Hauner
1ffdcd363d Update README.md 2018-12-19 12:54:31 +11:00
Paul Hauner
0260564c15 Begin implementing new types 2018-12-18 18:09:21 +11:00
Paul Hauner
be4c6701ac Remove SSZ helpers 2018-12-18 18:08:51 +11:00
Paul Hauner
7f00f167e3 Fix error in agg sig newtype 2018-12-18 17:55:21 +11:00
Paul Hauner
92ed2ffc22 Update Attestation to use new bls structs 2018-12-18 17:30:34 +11:00
Paul Hauner
f046a326b8 Implement "newtype" wrappers for BLS structs 2018-12-18 17:04:54 +11:00
Alex Stokes
bd3d388b92 Use resize instead of extend which fits this use much better 2018-12-17 17:16:25 -08:00
Paul Hauner
5c3ee698a7 Add issue link to vec_shuffle/src/lib.rs 2018-12-17 09:14:54 +11:00
Alex Stokes
914760e19f update expected hash 2018-12-13 07:04:50 -08:00
Paul Hauner
7ced7aee89 Merge pull request #118 from ralexstokes/validator-status-typing
Validator status typing
2018-12-13 18:08:06 +11:00
Paul Hauner
fdca969868 Merge pull request #119 from ralexstokes/remove-active-validators-crate
Remove active validators crate
2018-12-13 17:46:01 +11:00
Paul Hauner
01f3b2f0c1 Update BeaconChain w/ new genesis code 2018-12-13 17:33:53 +11:00
Paul Hauner
493a16ac18 Update attestation_validator for spec updates 2018-12-13 17:33:16 +11:00
Paul Hauner
96c2012434 Add canonical_hash method to BeaconState 2018-12-13 17:32:48 +11:00
Paul Hauner
220a5bad76 Add clone method to some types 2018-12-13 17:32:17 +11:00
Alex Stokes
9b59acb95b remove file lost in merge 2018-12-12 21:58:21 -08:00
Alex Stokes
e339d4bd71 update hash usage to get tests passing 2018-12-12 21:56:28 -08:00
Alex Stokes
c700d014db update function we removed so test compiles 2018-12-12 21:54:05 -08:00
Alex Stokes
cc7982b277 Fixes a bug that was not returning the hash
The way this library works is that it is demand-driven, not
supply-driven; i.e. it will only fill as many bytes as you provide in a
given slice. The prior implementation was a vector of length 0 so the
backing slice requested no bytes.
2018-12-12 21:54:05 -08:00
Alex Stokes
97bd323a52 Updates the hash function used to Keccak-256 2018-12-12 21:54:04 -08:00
Paul Hauner
06e1ee0e5f Add extra params to ChainSpec 2018-12-13 16:01:04 +11:00
Alex Stokes
de54d40841 fix build by patching up import and usage 2018-12-12 19:29:28 -08:00
Alex Stokes
7d77ebd1b5 remove active-validators crate from deps desc 2018-12-12 19:24:15 -08:00
Alex Stokes
ca3aa82f4e rustfmt changes 2018-12-12 19:22:52 -08:00
Alex Stokes
5eabdad0dc remove active_validators crate 2018-12-12 19:22:44 -08:00
Alex Stokes
1ff47720f1 Clean up representation of ValidatorStatus 2018-12-12 19:05:32 -08:00
Paul Hauner
4f0a223579 Change some ShardAndCommittee -> ShardCommittee 2018-12-13 12:28:37 +11:00
Paul Hauner
6847e68c5e Move genesis code into its own crate 2018-12-13 12:27:45 +11:00
Paul Hauner
bf49c881d5 Introduce un-tested BeaconState genesis code. 2018-12-12 18:36:12 +11:00
Paul Hauner
56dc73fbd1 Update some shard u16 to u64
This is pretty hacky, is just serving my purpose for `BeaconChain`.
These structs will need to be fully updated to the latest spec.
2018-12-12 18:35:31 +11:00
Paul Hauner
92786520e4 Update (hacky) validator induction and shuffling.
This allows the `BeaconChain` struct to be updated but it doesn't bring
these functions in line with the spec.
2018-12-12 18:32:19 +11:00
Paul Hauner
c944c435e2 Update CrosslinkRecord to latest spec
Addresses #100
2018-12-12 18:30:20 +11:00
Paul Hauner
89bea5b5e8 Update BeaconState rename ShardCommittee
Both structs are now consistent with the spec.

Addresses #100
2018-12-12 18:25:21 +11:00
Paul Hauner
7808835f1c Merge pull request #112 from sigp/issue/101/ChainSpec
Add `ChainSpec` structure.
2018-12-12 16:27:16 +11:00
Paul Hauner
211d3961a0 Add ChainSpec structure.
It includes all constants from the
[Constants](https://github.com/ethereum/eth2.0-specs/blob/master/specs/core/0_beacon-chain.md#attestation)
section in the spec, except for things that are clearly enums.

My reasoning is that these enums are not so much "chain specification"
and this struct should be reserved for items that "configure" the chain.
2018-12-12 16:08:01 +11:00
Paul Hauner
bea166389b Merge pull request #110 from sigp/attestation-rename
Rename `AttestationRecord` -> `Attestation`

Closes #82
2018-12-12 14:13:42 +11:00