Commit Graph

510 Commits

Author SHA1 Message Date
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
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
bedc1abec0 Add failing boolean bitfield test 2018-12-03 17:13:39 +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
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
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
mjkeating
d6bf1a6119 removed unnecessary call to saturated_sub() in vec_shuffle 2018-11-23 19:29:03 -08:00
Paul Hauner
7995200903 Merge pull request #62 from ralexstokes/master
Simplifies the boolean-bitfield implementation to use `bit-vec` crate
2018-11-23 09:44:07 +11:00
Paul Hauner
f65888226a Add some extra tests for boolean-bitfield 2018-11-22 14:18:08 -08:00
Alex Stokes
a695382260 Run cargo fmt that got clobbered in merge 2018-11-20 12:54:35 -08:00
Alex Stokes
11cdf66079 Remove warning about unused import 2018-11-20 12:51:51 -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
Age Manning
2e2a1faff4 Merge pull request #69 from sigp/rustfmt
Run rustfmt globally.
2018-11-14 18:12:21 +02:00
Paul Hauner
900ffac5e0 Run rustfmt globally.
Using `$ cargo fmt` in the root. Closes #68.
2018-11-04 15:35:55 +01:00
Age Manning
7cc2800916 Merge pull request #66 from sigp/chain
Implement core chain logic
2018-11-04 13:16:04 +01:00
Paul Hauner
8e2a30f0ec Merge pull request #67 from johnomarkid/master
Added three more Rust learning resources that I've been using.
2018-11-03 13:23:13 +01:00
John Omar
4d58d454b9 Added three more Rust learning resources that I've been using. 2018-11-02 14:13:32 -07:00
Age Manning
96c54352f2 Merge pull request #64 from sigp/db-delete
Add delete method to ClientDB
2018-10-31 12:49:57 +01:00
Age Manning
5a098a413d Merge pull request #65 from sigp/serenity-rebrand
Switch "Ethereum 2.0" to "Ethereum Serentity"
2018-10-31 12:47:02 +01:00
Paul Hauner
c7b6d12e5a Switch "Ethereum 2.0" to "Ethereum Serentity"
Sorry Shasper
2018-10-31 12:37:23 +01:00
Paul Hauner
46da9b670f Add untested minimum viable block processing 2018-10-30 15:49:32 +01:00
Paul Hauner
365e4aad2d Add delete method to ClientDB 2018-10-29 20:33:33 +01:00
Paul Hauner
e27c4106e9 Add delete method to ClientDB 2018-10-29 20:28:50 +01:00
Age Manning
77189c7960 Merge pull request #63 from sigp/genesis
[BLOCKED] Add genesis and "chain" concept
2018-10-28 08:09:05 +01:00
Paul Hauner
96359cb151 Merge branch 'master' into genesis 2018-10-27 18:13:49 +02:00
Age Manning
91876fb9ef Merge pull request #55 from sigp/validator_induction
[BLOCKED] Validator induction
2018-10-26 10:03:06 +02:00
Age Manning
05f011d214 Merge pull request #56 from sigp/validator_record_update
Validator record update
2018-10-26 09:56:23 +02:00
Age Manning
9bd092e419 Merge pull request #60 from sigp/shuffle_underflow
Fix underflow in shuffle with empty list
2018-10-26 09:53:09 +02:00
Paul Hauner
7f21fd325e Add initial works on extending the chain 2018-10-25 10:14:43 +02:00
Paul Hauner
b2495cbcff Fix clippy lints 2018-10-24 15:40:09 +02:00
Paul Hauner
28ffb037cc Merge branch 'master' into genesis 2018-10-24 15:26:27 +02:00
Paul Hauner
e2c264de96 Merge pull request #58 from g-r-a-n-t/clippy-warnings
Clippy warnings
2018-10-24 15:25:14 +02:00
Paul Hauner
98076d6439 Add test for utils/active-validators 2018-10-24 15:22:39 +02:00
Grant Wuerker
625fc4c9b9 mutable iterator in encode_length 2018-10-24 07:56:58 -05:00
Paul Hauner
b17a15a378 Rename block preprocessing 2018-10-24 14:48:35 +02:00
Paul Hauner
e48e423b30 Update and add tests for chain maps 2018-10-24 14:48:20 +02:00
Paul Hauner
68e4c47cd3 Add slot-clock 2018-10-24 13:16:09 +02:00
Paul Hauner
58c6465f44 Ensure genesis inducts all validators as active 2018-10-24 10:15:59 +02:00
Paul Hauner
896810fb9f Add status to validator induction.
Allows for inducting validators with a specific status.
2018-10-24 10:13:47 +02:00
Grant Wuerker
4c272d7f0a suppressed unknown lint warning in test 2018-10-23 19:34:47 -05:00
Paul Hauner
a170bfe4fc Add untested validator change code 2018-10-23 23:45:54 +02:00