Commit Graph

577 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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