Darren Langley
7b937ce901
merged master
2019-05-16 22:45:32 +10:00
Paul Hauner
86c3dad3e7
Add progress on epoch cache testing
2019-05-16 17:54:45 +10:00
Paul Hauner
944ac73ef9
Add progress on epoch caching
2019-05-16 16:54:11 +10:00
Michael Sproul
0885d56b36
spec: v0.6.1 scaffold for updated epoch cache
2019-05-15 17:20:04 +10:00
Michael Sproul
137afa9131
state_processing: nicer attestation swap
2019-05-15 17:14:07 +10:00
Michael Sproul
e4bbcd333a
state_processing: delete get_attestation_participants
2019-05-15 13:18:15 +10:00
Paul Hauner
8484cbf6ec
Add custom serde deser to block_body.graffiti
2019-05-15 13:11:47 +10:00
Paul Hauner
519ee81c68
Merge branch '368' into ef-tests
2019-05-15 12:33:40 +10:00
Michael Sproul
3a0f00215d
spec: ensure types up to date with v0.6.1
2019-05-15 11:48:09 +10:00
Michael Sproul
9f6b7eb757
Merge remote-tracking branch 'origin/sos' into spec-0.6
2019-05-15 11:09:00 +10:00
Paul Hauner
4b753015d8
Remove commented-out code
2019-05-15 10:40:30 +10:00
Paul Hauner
9f42d4d764
Extend ssz-static testing
2019-05-15 09:50:05 +10:00
Paul Hauner
b6d8db3f72
Add serde transparent flag to fixed_len_vec
2019-05-15 07:55:03 +10:00
Paul Hauner
d73e068686
Add additional fake_crypto objects
2019-05-14 22:09:57 +10:00
Paul Hauner
d1a6ac3a28
Make tests generic across an EthSpec
2019-05-14 17:40:17 +10:00
Paul Hauner
f4ec8b3e84
Merge branch '368' into ef-tests
2019-05-14 17:18:55 +10:00
Michael Sproul
c568dd01fe
types: del SlashableAttestation, fix fork defaults
2019-05-14 16:37:19 +10:00
Michael Sproul
2727590762
spec: confirm default 0 val for latest_start_shard
2019-05-14 15:49:58 +10:00
Michael Sproul
45506ded5d
spec: implement get_epoch_start_shard v0.6.1
2019-05-14 15:37:40 +10:00
Michael Sproul
79de966d3a
spec: top-level per-epoch processing v0.6.1
2019-05-14 15:00:18 +10:00
Michael Sproul
894ecdd4ea
state_processing: process_slashings v0.6.1
2019-05-14 12:56:15 +10:00
Michael Sproul
e80264b8c8
Merge remote-tracking branch 'origin/master' into spec-0.6
2019-05-14 12:09:59 +10:00
Paul Hauner
cf509bea9b
Improve ef_tests crate
2019-05-13 22:10:23 +10:00
Michael Sproul
13ec3d125e
WIP trash changes
2019-05-13 17:32:06 +10:00
Michael Sproul
ac51d7be3b
WIP beacon state changes
2019-05-13 17:31:47 +10:00
Michael Sproul
2751be9a05
state_processing: verify_deposit v0.6.0
2019-05-13 17:28:37 +10:00
Michael Sproul
4f138fa3fe
state_processing: IndexedAttestation rename
2019-05-13 17:28:04 +10:00
Michael Sproul
92e88b1b75
spec: apply_rewards tweaks
2019-05-13 17:18:42 +10:00
Michael Sproul
fd56c8fa04
state_processing: winning_root v0.6.1
2019-05-13 17:18:21 +10:00
Michael Sproul
ca73fb72da
state_processing: get_attesting_indices
2019-05-13 17:15:30 +10:00
Michael Sproul
240e269f2f
types: more v0.6.1 updates
2019-05-13 17:13:56 +10:00
Paul Hauner
8222ac17cf
Merge branch 'master' into sos
2019-05-13 15:17:56 +10:00
Paul Hauner
bf23a5b7b0
Merge pull request #369 from sigp/fixed-vec
...
Implement fixed-length lists for BeaconState
2019-05-13 15:16:03 +10:00
Paul Hauner
a0148b5aae
Rename SSZ traits (Encodable -> Encode)
2019-05-13 15:12:19 +10:00
Paul Hauner
fcabef91da
Use E
for EthSpec
trait, instead of B
2019-05-13 14:44:43 +10:00
Paul Hauner
afa8fff31a
Remove old tree_hash_vector
file
2019-05-13 14:14:40 +10:00
Paul Hauner
94ab2479fe
Add docs to SSZ
2019-05-13 14:13:15 +10:00
Paul Hauner
16a8cdb714
Add tests for excess bytes in SSZ
2019-05-13 13:51:58 +10:00
Paul Hauner
9ccaec5b91
Move SSZ macros into own file
2019-05-13 12:33:59 +10:00
Paul Hauner
9f62f261c4
Run cargofmt --all
2019-05-13 12:29:26 +10:00
Paul Hauner
03fee2fb97
Fix SSZ for bls fake_crypto features
2019-05-13 12:23:06 +10:00
Paul Hauner
eb62b5842d
Update beacon node crates for new SSZ
2019-05-13 12:07:32 +10:00
Paul Hauner
d9bfbc2657
Add macros for easy SSZ impl via From trait
2019-05-13 09:25:37 +10:00
Paul Hauner
f96a6268e5
Remove old dbg! statements from tests
2019-05-12 09:34:01 +10:00
Paul Hauner
349d33052b
Fix SSZ encode impl for fixed_len_vec
2019-05-12 09:33:47 +10:00
Paul Hauner
02afc6ef24
Tidy ssz decoding code
2019-05-11 22:52:24 +10:00
Paul Hauner
fc2a406edf
Fix bug in ssz decoding
2019-05-11 22:25:28 +10:00
Paul Hauner
96aeac333a
Add tests for fixed_len_vec ssz
2019-05-11 19:09:51 +10:00
Paul Hauner
1f7b7ec498
Add tests for SSZ offset attacks
2019-05-11 19:09:27 +10:00
Paul Hauner
2313de9b6e
Fix types ssz macro
2019-05-10 16:41:52 +10:00
Paul Hauner
1e2bf03d5e
Update ssz impl for fixed_len_vec
2019-05-10 16:37:56 +10:00
Paul Hauner
3cd112d42d
Encapsulate ssz
vec decoding in public fn
2019-05-10 16:37:00 +10:00
Paul Hauner
3ef46c03d1
Merge branch 'fixed-vec' into sos
2019-05-10 15:27:21 +10:00
Paul Hauner
ce8ebeccbc
Rename BeaconStateTypes
to EthSpec
2019-05-10 14:47:09 +10:00
Luke Anderson
93a4bef41c
Very small wording/typo fixes for docs.
2019-05-10 13:49:01 +10:00
Paul Hauner
3be80ba9a9
Marginally improve cached_tree_hash
docs
2019-05-10 13:29:43 +10:00
Paul Hauner
75b310a078
Add convenience methods to BeaconStateTypes
2019-05-10 11:23:19 +10:00
Paul Hauner
59883603ac
Remove state_processing
tests, update travis
2019-05-10 10:28:18 +10:00
Paul Hauner
3115bf7d36
Fix operation_pool
release-only tests
2019-05-10 09:45:28 +10:00
Paul Hauner
be9f8aa0bf
Fix fork_choice
release-only tests
2019-05-10 09:45:08 +10:00
Paul Hauner
77c4b6eafe
Add progress on op pool test fixes
2019-05-09 18:56:41 +10:00
Paul Hauner
2a938f2fd5
Fix clippy lints
2019-05-09 13:35:00 +10:00
Paul Hauner
49c92ef167
Remove attester, block_producer & test_harness
2019-05-09 11:48:14 +10:00
Paul Hauner
4c0c93f0c9
Update beacon_node
to work w/ BeaconStateTypes
2019-05-09 09:40:32 +10:00
Paul Hauner
42b7aa89d4
Update network
and rpc
to BeaconStateTypes
2019-05-08 19:38:18 +10:00
Paul Hauner
51dc97ee42
Allow fork_choice
and beacon_chain
to compile
2019-05-08 18:18:17 +10:00
Paul Hauner
9fd8af8428
Update operations_pool
for new BeaconStateTypes
2019-05-08 17:07:26 +10:00
Paul Hauner
6ea538938b
Fix state_processing
under new BeaconStateTypes
2019-05-08 16:35:22 +10:00
Paul Hauner
81c1dcceec
Add spec
fn to BeaconStateTypes
2019-05-08 16:29:27 +10:00
Paul Hauner
8cefd20e9d
Add progress on state_processing fixed-len update
2019-05-08 15:36:02 +10:00
Paul Hauner
7a67d34293
Add FewValidatorsBeaconState
for testing
2019-05-08 13:26:19 +10:00
Paul Hauner
5ba069c774
Implement new BeaconStateTypes
trait in types
2019-05-08 13:08:37 +10:00
Luke Anderson
ce8a31f0ee
Igoring state_transition_tests_small and test_read_yaml because they are failing to download the correct files.
2019-05-08 01:34:15 +10:00
Paul Hauner
009d05cafd
Implement basic FixedLenVec
2019-05-07 18:42:41 +10:00
Michael Sproul
eda8ec8c55
spec: registry updates v0.6.1
2019-05-07 18:27:58 +10:00
Michael Sproul
5394726caf
spec: initiate_validator_exit v0.6.1
...
Added a new field `exit_cache` to the BeaconState, which caches
the number of validators exiting at each epoch.
2019-05-07 18:27:58 +10:00
Michael Sproul
5c03f7b06c
spec: update chain spec for v0.6.1
2019-05-07 18:27:43 +10:00
Michael Sproul
839ef0119b
spec: justification and finalization v0.6.1
2019-05-07 18:27:36 +10:00
Michael Sproul
ed00ad9d00
spec: get_crosslink_deltas to v0.6.1
2019-05-07 18:27:36 +10:00
Michael Sproul
caff553af9
spec: update reward processing to v0.6.1 + bugfix
...
Two bugs fixed by this commit:
* Reward proposers rather than attesters in `get_proposer_deltas`
* Prevent double-counting of validator balances towards the total when
computing validator statuses
2019-05-07 18:27:25 +10:00
Michael Sproul
1ad0024045
spec v0.6.0: update types
2019-05-07 18:27:24 +10:00
Michael Sproul
7dda85e87e
hashing: Keccak -> SHA256
2019-05-07 18:27:24 +10:00
Paul Hauner
e13bc5cd19
Merge pull request #346 from sigp/testnet-key-load
...
Added deterministic keypair generation
2019-05-07 16:10:26 +10:00
Paul Hauner
759d0250c5
Clean out some occurances of SszStream
2019-05-06 19:50:05 +10:00
Paul Hauner
5550d14d62
Upgrade BLS to new SSZ
2019-05-06 15:03:20 +10:00
Paul Hauner
ebbeb03349
Update boolean bitfield to new SSZ
2019-05-06 13:25:11 +10:00
Paul Hauner
1f098ecbde
Remove antiquated test vectors
2019-05-06 11:52:46 +10:00
Paul Hauner
c31ef5cf7f
Remove old code, fix bug with MAX_LENGTH_VALUE
2019-05-06 11:51:50 +10:00
Paul Hauner
9d27f67643
Tidy SSZ decode impls
2019-05-06 11:36:00 +10:00
Luke Anderson
934cb5af5f
Merge branch 'master' into testnet-key-load
2019-05-06 11:13:16 +10:00
Paul Hauner
96ef8e7073
Tidy SSZ encode impls
2019-05-06 10:26:49 +10:00
Paul Hauner
56fe63f78d
Improve allocations for SszEncoder
2019-05-06 09:58:31 +10:00
Paul Hauner
480c5ff160
Update SszEncoder
2019-05-06 09:26:58 +10:00
Paul Hauner
aeb17c73f6
Add SszEncoder
2019-05-06 09:01:28 +10:00
Paul Hauner
daf6912d18
Begin refactor for less allocation
2019-05-06 08:47:49 +10:00
Paul Hauner
acf854f558
Add profiling tools, examples
2019-05-05 15:32:09 +10:00
Paul Hauner
fd5f914c3c
Fix failing decode test
2019-05-05 12:47:57 +10:00
Paul Hauner
c5f00d1666
Update SSZ derive macro, create failing test
2019-05-05 12:11:25 +10:00
Paul Hauner
b5d9157722
Add tests for derived encoding
2019-05-04 18:06:01 +10:00
Paul Hauner
0bd5119f19
Replace ssz
with ssz2
, adapt ssz_derive
2019-05-04 14:11:48 +10:00
Paul Hauner
7096d56749
Add working decoder example
2019-05-03 17:50:29 +10:00
Paul Hauner
0c0edb0653
Add ssz examples, decoder struct
2019-05-03 17:39:51 +10:00
Paul Hauner
7865f0de89
Tidy encode impl tests
2019-05-03 16:21:18 +10:00
Paul Hauner
80ef379202
Improve docs, cover a bunch of invalid inputs
2019-05-03 15:43:10 +10:00
Paul Hauner
90d8afd64b
Simplify SOS vec decoding
2019-05-03 14:16:36 +10:00
Paul Hauner
6d721813f1
Fix failing SOS nested vec tests
2019-05-03 13:43:52 +10:00
Paul Hauner
9943e70cb9
Fix failing SOS tests, add new failing tests
2019-05-03 13:14:26 +10:00
Paul Hauner
3f9430ddff
Add partial progress on sos
2019-05-03 11:05:51 +10:00
Paul Hauner
c5acbd978f
Start works on SOS-SSZ
2019-05-01 17:51:07 +10:00
Johns Beharry
06362d32d3
chore(hashing/merkle_root): remove semi colon on returns
...
Signed-off-by: Johns Beharry <johns@peakshift.com>
2019-04-30 08:24:28 +03:00
Johns Beharry
725401d2e1
test(hashing/merkle_root): write test for empty vector and odd leaf count
...
Signed-off-by: Johns Beharry <johns@peakshift.com>
2019-04-30 08:24:27 +03:00
Johns Beharry
8429f3bff1
chore(hashing): update comments of fn merkle_root
...
Signed-off-by: Johns Beharry <johns@peakshift.com>
2019-04-30 08:24:27 +03:00
Johns Beharry
9fbacbf967
chore(merkle_root): move function into lib.rs
...
Signed-off-by: Johns Beharry <johns@peakshift.com>
2019-04-30 08:24:27 +03:00
Johns Beharry
5f9e93d338
chore(merkle_root): split function to it's own file
...
Signed-off-by: Johns Beharry <johns@peakshift.com>
2019-04-30 08:24:26 +03:00
Johns Beharry
80ac60cc0e
feat(merkle_root): calculate merkle root from leaves
...
Signed-off-by: Johns Beharry <johns@peakshift.com>
2019-04-30 08:24:26 +03:00
Johns Beharry
af87fbf203
feat(merkle_root): hash vector of leafs to get merkle_root
...
Signed-off-by: Johns Beharry <johns@peakshift.com>
2019-04-30 08:24:26 +03:00
Paul Hauner
84d72cfed6
Tidy and add docs for cached tree hash
2019-04-29 17:46:01 +10:00
Paul Hauner
f622aa0b65
Add doc comments to vec impl
2019-04-29 15:45:02 +10:00
Paul Hauner
f20314bd87
Fix clippy lints, impl treehash for slices
2019-04-29 15:32:41 +10:00
Paul Hauner
240d1e197a
Ignore clippy range_plus_one
lints
2019-04-29 14:24:57 +10:00
Paul Hauner
a90bbbfd82
Address various clippy lints, improve comments
2019-04-29 14:04:52 +10:00
Paul Hauner
52695c29e8
Improve cached hash testing in types
2019-04-29 10:57:39 +10:00
Paul Hauner
fbf8fad4f1
Add counter-resets to reset_modifications
2019-04-29 10:57:19 +10:00
Paul Hauner
0599d3f1f8
Remove redundant type param fom CachedTreeHash
2019-04-29 07:48:48 +10:00
Paul Hauner
6258abfa9f
Tidy per_slot_processing fn
2019-04-29 07:34:01 +10:00
Paul Hauner
68b36787e2
Move leaf node creation into separate fn
2019-04-28 20:30:48 +10:00
Paul Hauner
58308e3dc5
Modify example execution counts
2019-04-28 19:10:59 +10:00
Paul Hauner
a4559e798d
Add benches, examples for cached hashing.
...
Ignore flamegraph files
2019-04-28 11:38:32 +10:00
Paul Hauner
4dd1239b24
Add caching to state transition
2019-04-28 11:33:48 +10:00
Paul Hauner
c58723350c
Improve cached hashing performance
2019-04-28 11:33:29 +10:00
Paul Hauner
89d64b007f
Run cargofmt --all
2019-04-27 19:04:26 +10:00
Paul Hauner
6c9be1a73c
Add tree hash cache as field to BeaconState
.
2019-04-27 19:02:52 +10:00
Paul Hauner
b70ebd09ea
Increase detail of cached hashing testing
2019-04-27 16:33:31 +10:00
Paul Hauner
80fa5d08c5
Fix bug with cached tree hash, passes tests
2019-04-27 16:24:29 +10:00
Paul Hauner
b86e118062
Add specific failing cache test
2019-04-26 18:19:13 +10:00
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