Paul Hauner
0f3b74b20e
Update TestRandom
to vary list length
2019-04-26 18:10:06 +10:00
Paul Hauner
a425beb42a
Fix chunk index bug with structs
2019-04-26 17:39:38 +10:00
Paul Hauner
d3309b9f7e
Fix bug with bitfield tree hash caching
2019-04-26 17:27:39 +10:00
Paul Hauner
dddcc91ef3
Fix bug with shrinking list.
2019-04-26 16:56:01 +10:00
Paul Hauner
f65e981f6f
Begin implementing cached hashing in types
2019-04-26 15:24:18 +10:00
Paul Hauner
ecff8f0007
Update CachedTreeHash
trait to return schema
2019-04-26 12:27:04 +10:00
Paul Hauner
8976e652d2
Introduce BTreeSchema
2019-04-26 11:55:26 +10:00
Paul Hauner
794b48078c
Remove num_items
from BTreeOverlay
2019-04-26 11:39:33 +10:00
Paul Hauner
15f81c0907
Implement CachedTreeHash for TreeHashVector
2019-04-26 11:15:17 +10:00
Paul Hauner
f1d8224d89
Further tidy tree_hash
crate.
2019-04-26 10:37:50 +10:00
Paul Hauner
b213a5ade4
Create cached_tree_hash
crate.
2019-04-26 09:55:03 +10:00
Paul Hauner
827e1c62d9
Add extra tests, all passing
2019-04-25 12:11:31 +10:00
Paul Hauner
58b69e9ba6
Add comma to readme
2019-04-24 18:30:59 +10:00
Paul Hauner
1f6a54c2ba
Update readme
2019-04-24 18:27:03 +10:00
Paul Hauner
cab5e59a6f
Rename CachedTreeHash
trait, add readme
2019-04-24 18:23:58 +10:00
Paul Hauner
7563755b15
Fix mix-in-length issue
2019-04-24 18:14:00 +10:00
Paul Hauner
e12fa58e6e
Fix failing test, add hacky fix
2019-04-24 14:56:39 +10:00
Paul Hauner
e19abee7f9
Fix bug with num_nodes/num_chunks
2019-04-24 10:17:05 +10:00
Paul Hauner
a84a063c25
Update depth variable
2019-04-24 09:29:32 +10:00
Paul Hauner
ec43a4085c
Introduce failing test
2019-04-22 21:31:39 +10:00
Paul Hauner
2f69185ccb
Fix tree hash bug
2019-04-22 16:58:40 +10:00
Paul Hauner
7c64a5a21b
Add tests, fix bugs
2019-04-22 16:09:29 +10:00
Paul Hauner
2c12aabf04
Implement further cache tests and bug fixes
2019-04-22 09:20:13 +10:00
Paul Hauner
4aeadfa60f
Remove "old" item requirement from treehash
2019-04-21 12:12:47 +10:00
Darren Langley
f616c6cf61
Merge remote-tracking branch 'upstream/master' into block-processing-tests
2019-04-19 07:11:45 +10:00
Darren Langley
773227d627
removed printlns
2019-04-19 07:09:20 +10:00
Darren Langley
010d319fdf
invalid randao signature test implemented
2019-04-18 07:00:40 +10:00
Paul Hauner
2527252248
Merge branch 'master' into 0.5.1-tests
2019-04-17 21:21:07 +10:00
Michael Sproul
b201c52140
state transition tests: use TreeHashVector
2019-04-17 18:07:28 +10:00
Michael Sproul
332795e8b7
Revert "questionable patch for TreeHashVector"
...
This reverts commit 701cc00d08
.
2019-04-17 18:00:14 +10:00
Paul Hauner
745d360566
Store state roots during slot processing
2019-04-17 17:17:43 +10:00
Paul Hauner
343909ef31
Fix boolean-bitfield serialization
2019-04-17 17:17:07 +10:00
Paul Hauner
bf1a93f444
Allocate correctly for tree hash
2019-04-17 14:00:00 +10:00
Paul Hauner
c3779caede
Add extra info to block proc. error message
2019-04-17 13:59:40 +10:00
Michael Sproul
f592183aa9
Fix signed_root vs tree_hash_root in per_slot
2019-04-17 12:00:24 +10:00
Michael Sproul
701cc00d08
questionable patch for TreeHashVector
2019-04-17 12:00:23 +10:00
Michael Sproul
d95ae95ce8
spec: update tags to v0.5.1
2019-04-17 12:00:23 +10:00
Michael Sproul
2914d77cd3
spec: update to v0.5.1
2019-04-17 12:00:23 +10:00
Michael Sproul
4f63c89bb6
jenkins: run all state tests
2019-04-17 12:00:23 +10:00
Michael Sproul
a19f8580f5
travis: state transition tests
2019-04-17 12:00:23 +10:00
Michael Sproul
32547373e5
spec: simplify cache_state
...
The `latest_block_root` input argument was unnecessary as we were always setting it to something
almost equivalent to `state.latest_block_root` anyway, and more importantly, it was messing up the
caching of the state root. Previously it was possible for the function to update the state's latest
block root, and then hash the outdated block root that was passed in as an argument.
2019-04-17 12:00:23 +10:00
Michael Sproul
b801303374
spec: fix shuffle direction in get_crosslink_committees_at_slot
2019-04-17 12:00:22 +10:00
Michael Sproul
19fad1012f
state transitions tests: check more fields
2019-04-17 12:00:22 +10:00
Michael Sproul
b21cc64949
state transition tests: check expected state
2019-04-17 12:00:22 +10:00
Michael Sproul
71a0fed8eb
testing: add a fake_crypto
feature
2019-04-17 12:00:22 +10:00
Michael Sproul
300fcd6ec3
state transition test progress
2019-04-17 12:00:22 +10:00
Michael Sproul
0a02567440
bitfield: fix bit ordering issue with YAML parsing
2019-04-17 12:00:22 +10:00
Michael Sproul
8da8730dca
spec: check ProposalSlashing epochs, not slots
...
As per v0.5.{0,1} of the spec, we only need to check that the epochs of two proposal slashings are
equal, not their slots.
2019-04-17 12:00:21 +10:00
Paul Hauner
10a5d2657c
Encode bitfield as list not vector
2019-04-17 11:57:57 +10:00
Paul Hauner
ea8d5a3db9
Ensure deposit uses correct list type
2019-04-17 11:57:34 +10:00
Paul Hauner
10eeced227
Remove SSZ dep from tree_hash
2019-04-17 11:18:00 +10:00
Paul Hauner
af39f096e7
Add vector type to tree hashing
2019-04-17 10:58:03 +10:00
Paul Hauner
49d066015b
Make genesis beacon state return a beacon state
2019-04-17 10:33:31 +10:00
Paul Hauner
f69b56ad60
Add new tree_hash
crate project wide.
2019-04-16 14:25:43 +10:00
Paul Hauner
b8c4c3308a
Update types
to new tree_hash crate
2019-04-16 14:14:38 +10:00
Paul Hauner
3eaa06d758
Remove tree hashing from ssz crate
2019-04-16 12:29:39 +10:00
Age Manning
b71cc32311
Merge pull request #349 from sigp/faster-travis
...
Move some long-running tests to release-only
2019-04-16 11:25:40 +10:00
Paul Hauner
024b9e315a
Add signed_root to tree_hash crate
2019-04-16 11:14:28 +10:00
Paul Hauner
d840d6e2d4
Merge branch 'master' into simple-cached-tree-hash
2019-04-16 10:55:27 +10:00
Paul Hauner
8a1bde3e2f
Update naming for tree_hash fns/structs/traits
2019-04-16 10:48:33 +10:00
Paul Hauner
d311b48a9f
Unify tree hash methods
2019-04-16 09:34:23 +10:00
Paul Hauner
93f3fc858d
Add uncached tree hashing
2019-04-16 09:14:33 +10:00
Sean Yu
8cb6368fe6
Adding a #[signed_root(skip_hashing)] macro
...
Lets the user annotate fields of a struct to skip for signed root
hashing.
Also added tests in a `eth2/utils/tests` crate, so that we can test
whether these derived macros work as intended.
2019-04-15 09:40:45 -07:00
Paul Hauner
2be05a466f
Add tree_hash_derive crate
2019-04-15 15:45:05 +10:00
Paul Hauner
354f823c16
Tidy tree hash cache, add new trait
2019-04-15 15:13:02 +10:00
Paul Hauner
8e5b79452a
Further tidy cached tree hash
2019-04-15 12:01:12 +10:00
Paul Hauner
c18cdf2abf
Remove num_bytes method
2019-04-15 11:55:56 +10:00
Paul Hauner
cb9b59b93d
Remove panics from packed_encoding
2019-04-15 11:49:50 +10:00
Paul Hauner
e6c33e1b60
Remove child_nodes method from CachedTreeHash
2019-04-15 11:44:44 +10:00
Paul Hauner
c87a0fc588
Tidy CachedTreeHash trait
2019-04-15 11:37:29 +10:00
Paul Hauner
0b5c10212d
Move tree_hash from ssz into own crate
2019-04-15 11:14:30 +10:00
Darren Langley
d76246e600
invalid block signature test
2019-04-15 10:38:13 +10:00
Paul Hauner
89bc15f77e
Move some long-running tests to release-only
2019-04-15 09:59:35 +10:00
Paul Hauner
7132ee59c0
Rename OffsetHandler -> BTreeOverlay
2019-04-15 09:06:19 +10:00
Paul Hauner
ab78a15313
Add mix-in-len to cached tree hash
2019-04-14 21:39:36 +10:00
Paul Hauner
0632a00a48
Fix failing test for shrinking vec of structs
2019-04-14 18:50:12 +10:00
Paul Hauner
da74c4ce74
Add tree shrinking for u64 vec
2019-04-14 16:50:00 +10:00
Paul Hauner
9bc0519092
Add tree shrink fn
2019-04-14 16:31:47 +10:00
Paul Hauner
582f465ffd
Add test for growing vec of structs
2019-04-14 14:20:33 +10:00
Paul Hauner
737e6b9a86
Fix failing tree hash test
2019-04-14 13:54:04 +10:00
Paul Hauner
e038bd18b5
Add failing test for grow merkle tree
2019-04-14 10:34:54 +10:00
Paul Hauner
1ce1fce03c
Fix failing grow tree test
2019-04-13 17:28:27 +10:00
Paul Hauner
42d6a39832
Refactor TreeHashCache splice method
2019-04-13 13:18:18 +10:00
Paul Hauner
0420607ff1
Tidy, remove debug prints
2019-04-13 13:02:41 +10:00
Paul Hauner
0b186f772f
Refactor resize functions for clarity
2019-04-13 12:12:56 +10:00
Paul Hauner
75177837d0
Add first pass of grow cache algo
2019-04-13 09:42:43 +10:00
Paul Hauner
a124042e30
Start implementing grow merkle fn
2019-04-13 09:11:19 +10:00
Paul Hauner
d79616fee6
Fix failing struct vec vectors
2019-04-12 16:52:11 +10:00
Paul Hauner
48cf75e394
Add failing test for extending struct list
2019-04-12 15:05:26 +10:00
Paul Hauner
55ee8e20ae
Add more passing tests for vec hash caching
2019-04-11 17:40:11 +10:00
Paul Hauner
0bdd61e564
Fix failing vec hashing test
2019-04-11 17:21:57 +10:00
Paul Hauner
0c0eebd774
Add progress on variable list hashing
2019-04-11 12:57:36 +10:00
Darren Langley
bb0500f11d
process_block_header tests
2019-04-10 21:58:27 +10:00
Darren Langley
f9c1800c00
process_block_header tests
2019-04-10 21:56:31 +10:00
Darren Langley
8366352aaa
mapped out invalid states... 59
2019-04-10 21:07:56 +10:00
Darren Langley
e1c08b1d02
mapped out invalid states... 59
2019-04-10 21:06:25 +10:00
Paul Hauner
e5783d43a9
First passing vec modified cache test
2019-04-10 16:59:14 +10:00
Paul Hauner
56fe15625b
Allow for building cached vec
2019-04-10 15:47:42 +10:00
Darren Langley
3e030c78a8
copied builder and setup tests
2019-04-10 14:42:31 +10:00
Paul Hauner
19465268ec
Merge branch 'master' into simple-cached-tree-hash
2019-04-08 19:50:55 +10:00
Luke Anderson
3ad40dac9b
Fixed *all* cargo fmt
2019-04-08 15:39:26 +10:00
Luke Anderson
177a351462
Added deterministic keypair generation.
...
- The Account Manager has a new subcommand, allowing generation of deterministic keys given a particular validator index.
- Split functionality in generate_deterministic_keypair function
- Fixed up READMEs to reflect new functionality & correct naming.
2019-04-08 15:02:11 +10:00
Paul Hauner
914e0cf1fc
Skip long-running tests in debug
2019-04-03 17:27:32 +11:00
Paul Hauner
1913be0c6f
Fix clippy lints
2019-04-03 16:23:09 +11:00
Paul Hauner
1d34e2b2a5
Fix bug in bitfield.
2019-04-02 15:34:18 +11:00
Paul Hauner
f61db9cac8
Fix merge conflict in bls
...
Issue came about from Michael and Kirk doing simultaneous work.
2019-04-02 15:33:38 +11:00
Paul Hauner
3a42d7fa6e
Disable some blop pool tests during debug
2019-04-02 15:33:18 +11:00
Paul Hauner
38f2cb9555
Run rustfmt
2019-04-02 14:30:32 +11:00
Paul Hauner
3fe7dd80e2
Merge branch 'validator-enhancements' into testnet-client
2019-04-02 14:29:43 +11:00
Paul Hauner
e53e23175a
Merge pull request #330 from sigp/state-transition-tests
...
[WIP] State transition tests
2019-04-02 14:01:23 +11:00
Paul Hauner
206f651895
Merge pull request #293 from michaelsproul/operation-pool
...
Implement Operation Pool
2019-04-02 13:53:22 +11:00
Age Manning
3f160d3b99
Correct bootnodes cli parameter
2019-04-01 16:29:11 +11:00
Michael Sproul
ddd9654f70
op-pool: fix bug in attestation_score
...
The attestation scoring function was looking only at the previous epoch, but
should really look at whichever epoch is appropriate for a given attestation.
We also avoid including attestations that don't pay us any reward, as they
simply bloat the chain.
2019-04-01 13:50:09 +11:00
Paul Hauner
9a0ebac687
Merge branch 'validator-enhancements' into paul-gossip-test
2019-03-31 17:47:35 +11:00
Paul Hauner
a93f898946
Improve gossipsub block processing
2019-03-31 17:27:04 +11:00
Age Manning
e0b5e74e7c
Removes further unneccessary debug output
2019-03-31 15:48:11 +11:00
Age Manning
b5ae39dda0
Merge remote-tracking branch 'origin/paul-gossip-test' into validator-enhancements
2019-03-31 15:36:39 +11:00
Paul Hauner
bd860eb3e1
Fixes bug in epoch processing.
...
- Was using the wrong slot to determine relative epoch.
- Added a non-related test I build during the search
2019-03-31 15:30:09 +11:00
Age Manning
33473892f2
Validator client fixes. Hack fix for genesis start time
2019-03-31 14:26:58 +11:00
Age Manning
b4c21ccca3
Merge remote-tracking branch 'origin/paul-gossip-test' into validator-enhancements
2019-03-31 13:58:38 +11:00
Paul Hauner
b26f1f8e1c
Add build_all_caches
method to BeaconState
...
Also adds a few more cache builds in BeaconChain.
2019-03-31 13:42:49 +11:00
Age Manning
77fb738c78
Merge latest gossip branch
2019-03-31 11:02:57 +11:00
Paul Hauner
d2b5cf5a32
Improve queueing in SimpleSync
2019-03-31 09:44:58 +11:00
Age Manning
4fb95d06d1
Correct cache race condition
2019-03-31 00:08:55 +11:00
Age Manning
fc5142c09a
Registers the attester service to the beacon node RPC client
2019-03-30 19:32:32 +11:00
Paul Hauner
c2b6f949c0
Restrict blop pool from re-including attestations
2019-03-30 18:25:32 +11:00
Age Manning
a952acb86f
Add committee_len to attestation data
2019-03-30 17:20:33 +11:00
Paul Hauner
ed6d0b46d0
Add committee len to AttesterDuties
2019-03-30 17:16:04 +11:00
Age Manning
bb8938c564
Use AttestationDuty in epoch duties
2019-03-30 17:14:38 +11:00
Paul Hauner
dbcc88ad67
Ensure BitVec is initialized using a multiple of 8
...
I found it was panic-ing when supplied a non-power-of-zero len.
2019-03-30 17:13:23 +11:00
Age Manning
bc305cacc2
Merge branch 'blop-pool' into validator-enhancements
2019-03-30 16:16:30 +11:00
Paul Hauner
397e104f9b
Implement Attestation
building in test harness
2019-03-30 16:02:09 +11:00
Age Manning
6e254551af
Implement produce beacon block on gRPC beacon node server
2019-03-30 15:58:31 +11:00
Age Manning
d3a6d73153
Implements Signer generic for validator client and epoch duties
2019-03-30 14:27:37 +11:00
Age Manning
ba771282fa
Merges in validator client branch
2019-03-30 13:17:24 +11:00
Paul Hauner
cd9494181c
Push RwLock down into OperationPool
...
There used to be one massive lock on `BeaconChain.op_pool`, however that
would cause unnecessary blocking.
2019-03-30 12:26:25 +11:00
Paul Hauner
46a978a5a9
Implement op pool for all ops execpt attestations
2019-03-29 18:30:03 +11:00
Paul Hauner
dd2351020c
Impl add_aggregate
for FakeAggSig
2019-03-29 17:58:02 +11:00
Paul Hauner
b5f176a152
Merge branch 'master' into blop-pool
2019-03-29 17:49:33 +11:00
Paul Hauner
fc17d5fea4
Fix failing tree hash tests
2019-03-29 14:37:27 +11:00
Paul Hauner
e0104e6199
Move offset_handler construction into self
2019-03-29 13:04:01 +11:00
Kirk Baird
c1d7e26cac
Merge branch 'yaml-test-downloads' into state-transition-tests
2019-03-29 11:48:26 +11:00
Kirk Baird
023b4e8c92
Merge master and remove ssz length encoding from FakeBLS
2019-03-29 11:47:22 +11:00
Paul Hauner
267c978abb
Tidy cache hash API
2019-03-29 02:36:34 +11:00
Age Manning
68b33620c2
Implement Display and clean validator output
2019-03-29 02:23:03 +11:00
Paul Hauner
7b05c506df
Add new build method for cached hashes
2019-03-29 00:47:42 +11:00
Age Manning
1e760d6719
Add Display for PublicKey
2019-03-29 00:43:53 +11:00
Paul Hauner
40bfd5a6c7
Add offset manager method to cache hash trait
2019-03-28 23:58:27 +11:00
Paul Hauner
2dcf1c857c
Fix failing cache hashing test
2019-03-28 23:21:24 +11:00
Luke Anderson
87acaac8a0
Ran cargo fmt.
2019-03-28 21:01:47 +11:00