Commit Graph

563 Commits

Author SHA1 Message Date
Paul Hauner
06e1ee0e5f Add extra params to ChainSpec 2018-12-13 16:01:04 +11: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
Paul Hauner
4d0641636e Rename AttestationRecord -> Attestation 2018-12-12 12:16:11 +11:00
Paul Hauner
7259e1d7b6 Merge pull request #85 from sigp/attestation-update
Update `AttestationRecord` as per spec
2018-12-12 09:59:15 +11:00
Paul Hauner
4fdc2e4ac6 Merge branch 'master' into attestation-update 2018-12-12 09:45:14 +11:00
Paul Hauner
fb03b0a649 Merge branch 'master' into attestation-update 2018-12-12 09:42:12 +11:00
Paul Hauner
f29d7961fd Merge pull request #87 from ralexstokes/fix-boolean-bitfield-serde-bug
Fix boolean bitfield serde bug
2018-12-12 09:36:54 +11:00
Alex Stokes
6c2c42e6b7 Adds custom std::cmp::PartialEq impl
Two bitfields now match if they contain the same information.

There were some discrepancies before when comparing fields with the same
bits set but came from different sources, e.g. off the wire vs created
in memory, due to the existence of unset bits in the high byte.
2018-12-10 20:34:35 -08:00
Alex Stokes
1ffd9e10b3 Fixes bug with attestation validation that arose from change to API 2018-12-10 20:33:43 -08:00
Alex Stokes
4d43de1cea rustfmt edits 2018-12-10 20:32:44 -08:00
Paul Hauner
3ae82c0710 Strip out anitquated parts of chain crate 2018-12-10 10:48:02 +11:00
Paul Hauner
7ea701aa30 Remove old block processing code 2018-12-10 09:54:25 +11:00
Paul Hauner
a35a28f522 Remove old validation crate 2018-12-10 09:48:41 +11:00
Paul Hauner
0f9482f9d1 Complete attestation_validation, bar tests 2018-12-10 09:33:57 +11:00
Paul Hauner
a8bfa4d733 Add more attestation validation tests 2018-12-07 08:59:05 +11:00
Paul Hauner
2d2da001b9 Implement tests for attestation validation 2018-12-06 19:50:33 +11:00
Paul Hauner
36bda7502b Implement signature verification test 2018-12-06 18:41:22 +11:00
Paul Hauner
3533b8b892 Add untested attestation validation logic 2018-12-06 18:16:03 +11:00
Paul Hauner
86e5ce9ed8 Merge pull request #90 from sigp/travis-fix
[WIP] Make travis run all tests
2018-12-06 10:58:51 +11:00
Paul Hauner
050364cf9a Add --all scripts to travis.yml 2018-12-06 10:05:03 +11:00
Paul Hauner
77ac5f77bb Merge pull request #71 from g-r-a-n-t/stores-test-improvements
Stores test improvements
2018-12-05 16:50:25 +11:00
Paul Hauner
4f3f8d6e79 Merge pull request #89 from sigp/beacon-state-pub-fields
Make all BeaconState fields public
2018-12-05 16:27:27 +11:00
Paul Hauner
d4b6d81c9d Merge branch 'beacon-state-pub-fields' into attestation-update 2018-12-05 09:46:50 +11:00
Paul Hauner
140df1a689 Make all BeaconState fields public (doh!) 2018-12-05 09:45:03 +11:00
Alex Stokes
564f13be5f fixes bug with serialization logic for boolean bitfield
should match the python impl
2018-12-03 20:46:11 -08:00
Paul Hauner
e0360edde0 Update ssz_utils for new AttestationRecord. 2018-12-04 14:50:47 +11:00
Paul Hauner
6e0daec1da Update AttestationData struct 2018-12-04 14:50:32 +11:00
Paul Hauner
bedc1abec0 Add failing boolean bitfield test 2018-12-03 17:13:39 +11:00
Paul Hauner
b6d820b427 Merge pull request #61 from aj07/patch-1
updated readme

Closes #47
2018-12-03 16:31:50 +11:00
Paul Hauner
1e3fd1ff80 Add ssz encode/decode for AttestationData 2018-12-03 16:19:31 +11:00
Paul Hauner
25364c337e Merge pull request #84 from sigp/state-update
Update `BeaconState` object

Closes #83
2018-12-03 15:23:14 +11:00
Paul Hauner
430bc224a4 Update BeaconState object
Also adds the following structs:

- AttestationData
- ForkData
- PendingAttestationRecord

The `AttestationRecord` object has _not_ been updated.
2018-12-03 14:29:05 +11:00
Grant Wuerker
f64aa9e192 more validator tests 2018-12-02 19:21:17 -06:00
Grant Wuerker
7dd16215f4 Merge branch 'master' into stores-test-improvements 2018-11-29 20:39:58 -06:00
Paul Hauner
54db7b5272 Merge pull request #76 from sigp/state-merge
Add new `State` type and dependant types

Closes #73
2018-11-27 15:10:06 +11:00
Luke Anderson
763badc3dc Update README.md
Done

Co-Authored-By: aj07 <aj07@users.noreply.github.com>
2018-11-25 16:31:38 +05:30
Luke Anderson
546b341cdf Update README.md
Done

Co-Authored-By: aj07 <aj07@users.noreply.github.com>
2018-11-25 16:31:22 +05:30
Luke Anderson
3d0a56a02b Update README.md
Done

Co-Authored-By: aj07 <aj07@users.noreply.github.com>
2018-11-25 16:31:07 +05:30
Luke Anderson
e5c793a01a Update README.md
Co-Authored-By: aj07 <aj07@users.noreply.github.com>
2018-11-25 16:30:48 +05:30
Paul Hauner
3ed4de65d2 Add new State type and dependant types 2018-11-25 15:39:50 +11:00
Paul Hauner
ba548e49a5 Merge pull request #72 from mjkeating/remove_saturated_sub
removed unnecessary call to saturated_sub() in vec_shuffle
2018-11-24 15:05:40 +11:00