mjkeating
be2c82a732
updated with latest spec changes
2018-12-12 13:48:54 -08:00
mjkeating
1e4e92bf2e
removed a debugging println statement
2018-12-12 09:23:53 -08:00
mjkeating
c961c87307
fixed tree_hash() for Vec<T> and a couple of other issues
2018-12-12 09:23:53 -08:00
mjkeating
68629acebe
Added tree_hash impl for Vec and Hashtable (list and container); plus various cleanup code
2018-12-12 09:23:53 -08:00
mjkeating
f11c619ef5
WIP for tree_hash
2018-12-12 09:23:53 -08:00
mjkeating
fbb05946dd
tree_hash WIP
2018-12-12 09:23:53 -08:00
Paul Hauner
7fa9c90d62
Add some extra tests for boolean-bitfield
2018-12-12 09:23:53 -08:00
Alex Stokes
db4c4bf223
Run cargo fmt
that got clobbered in merge
2018-12-12 09:23:53 -08:00
Alex Stokes
9021227c1c
Remove warning about unused import
2018-12-12 09:23:53 -08:00
Alex Stokes
8c78dde43b
Fixes bug with ssz
encoding of BooleanBitfield
2018-12-12 09:23:53 -08:00
Alex Stokes
38d9d7ac92
Add method to calculate the underlying number of bytes
...
Required for part of attestation validation logic
2018-12-12 09:23:53 -08:00
Alex Stokes
f611602235
Begin updating tests to reflect changes to bitfield
2018-12-12 09:23:53 -08:00
Alex Stokes
b1f8046563
Update bitfield to expand size when writing out-of-bounds
2018-12-12 09:23:53 -08:00
Alex Stokes
2defe8e4ee
get tests passing (except one)
2018-12-12 09:23:53 -08:00
Alex Stokes
3a26f73cf2
Simplifies the boolean-bitfield implementation to use bit-vec
crate
2018-12-12 09:23:53 -08: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
Alex Stokes
fa3d9bdb07
begin the transition to using ValidatorStatus as a distinct type
2018-12-11 15:17:55 -08:00
Alex Stokes
d3681e876a
add method to determine validator status
2018-12-11 15:16:25 -08: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
Grant Wuerker
1d48aa280b
test passing in validator_record.rs
2018-12-09 22:22:08 -06:00
Grant Wuerker
c63ef6d032
ValidatorRecord initialization updated to reflect struct
2018-12-09 22:13:57 -06: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
mjkeating
fbf7f0d537
removed a debugging println statement
2018-12-09 14:43:41 -08:00
Paul Hauner
0f9482f9d1
Complete attestation_validation, bar tests
2018-12-10 09:33:57 +11:00
mjkeating
a3b22cf6a4
fixed tree_hash() for Vec<T> and a couple of other issues
2018-12-09 10:14:09 -08:00
Grant Wuerker
0627b658f1
struct updated accoding to spec
2018-12-08 21:11:10 -06:00
mjkeating
bfcce4fe47
Added tree_hash impl for Vec and Hashtable (list and container); plus various cleanup code
2018-12-08 15:25:59 -08: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