Commit Graph

86 Commits

Author SHA1 Message Date
Alex Stokes
4d3d351b67
Adds a std::default::Default implementation for ValidatorRecord
Updates the test generation so that it uses sane values for some marker values
like `FAR_FUTURE_SLOT`
2019-01-16 19:22:08 -08:00
Alex Stokes
a2b23d6ae2
run cargo fmt 2019-01-10 14:57:34 -06:00
Paul Hauner
f01aac5ffa
Merge branch 'master' into chain-update 2019-01-09 10:11:41 +11:00
Paul Hauner
3876e29f6e
Fix clippy lints 2019-01-04 18:30:24 +11:00
Stan Drozd
a8a36fef74
vec_shuffle: Add a keccak testsuite
This refreshes the vec shuffle testsuite with a freshly generated
keccak-based variety
2019-01-01 16:55:23 +01:00
Paul Hauner
31c78b7718
Rename slot-clock -> slock_clock 2018-12-30 13:02:44 +11:00
Paul Hauner
4757b35ed2
Wrap BLS keypair, pubkey and privkey in newtypes 2018-12-29 14:33:35 +11:00
Paul Hauner
e4e729d309
Add newtype for bls::PublicKey 2018-12-28 19:45:59 +11:00
Paul Hauner
e6977b5f4b
Impl ssz Enc/Decode on Address. Decode on Vec<T> 2018-12-28 19:39:44 +11:00
Paul Hauner
d9c472ec37
Run rustfmt on ssz 2018-12-28 19:39:25 +11:00
Paul Hauner
d0422eed05
Add new ssz error type 2018-12-28 19:38:59 +11:00
Paul Hauner
926bdcde34
Merge branch 'master' into issue/96/beacon-block-update 2018-12-26 09:03:04 +11:00
Paul Hauner
c64d2bfce9
Merge pull request #125 from sigp/newtype-bls
Wrap Signature and AggregateSignature in a newtype
2018-12-26 08:56:10 +11:00
Paul Hauner
4330acdd96
Tidy up var name in BLS 2018-12-26 08:54:26 +11:00
Paul Hauner
810156a0fb
Remove Default impls for BLS newtypes 2018-12-26 08:46:37 +11:00
Paul Hauner
e635423eac
Fix clippy lint in ssz 2018-12-25 18:34:45 +11:00
Paul Hauner
91dea4bf29
Merge Rust 2018 updates 2018-12-24 10:03:56 +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
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
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
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
e339d4bd71
update hash usage to get tests passing 2018-12-12 21:56:28 -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
5eabdad0dc
remove active_validators crate 2018-12-12 19:22:44 -08: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
4fdc2e4ac6
Merge branch 'master' into attestation-update 2018-12-12 09:45:14 +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
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
bedc1abec0
Add failing boolean bitfield test 2018-12-03 17:13:39 +11:00
mjkeating
d6bf1a6119 removed unnecessary call to saturated_sub() in vec_shuffle 2018-11-23 19:29:03 -08:00
Paul Hauner
f65888226a Add some extra tests for boolean-bitfield 2018-11-22 14:18:08 -08:00
Alex Stokes
57dcad149f Fixes bug with ssz encoding of BooleanBitfield 2018-11-20 12:40:13 -08:00
Alex Stokes
031b7bf225 Add method to calculate the underlying number of bytes
Required for part of attestation validation logic
2018-11-20 12:40:13 -08:00
Alex Stokes
72cf7ad1bd Begin updating tests to reflect changes to bitfield 2018-11-20 12:40:13 -08:00
Alex Stokes
832d1bd295 Update bitfield to expand size when writing out-of-bounds 2018-11-20 12:38:23 -08:00
Alex Stokes
37b05e1a5b get tests passing (except one) 2018-11-20 12:38:23 -08:00
Alex Stokes
a9decd3aed Simplifies the boolean-bitfield implementation to use bit-vec crate 2018-11-20 12:34:28 -08:00
Paul Hauner
900ffac5e0
Run rustfmt globally.
Using `$ cargo fmt` in the root. Closes #68.
2018-11-04 15:35:55 +01:00
Paul Hauner
46da9b670f
Add untested minimum viable block processing 2018-10-30 15:49:32 +01:00
Paul Hauner
b2495cbcff
Fix clippy lints 2018-10-24 15:40:09 +02:00