vbuterin
2a91b43eaf
Remove shard block chunking
...
Only store a 32 byte root for every shard block
Rationale: originally, I added shard block chunking (store 4 chunks for every shard block instead of one root) to facilitate construction of data availability roots. However, it turns out that there is an easier technique. Set the width of the data availability rectangle's rows to be 1/4 the max size of a shard block, so each block would fill multiple rows. Then, non-full blocks will generally create lots of zero rows. For example if the block bodies are `31415926535` and `897932` with a max size of 24 bytes, the rows might look like this:
```
31415926
53500000
00000000
89793200
00000000
00000000
```
Zero rows would extend rightward to complete zero rows, and when extending downward we can count the number of zero rows, and reduce the number of extra rows that we make, so we only make a new row for every nonzero row in the original data. This way we get only a close-to-optimal ~4-5x blowup in the data even if the data has zero rows in the middle.
2020-01-28 17:31:51 -07:00
Danny Ryan
7b76808a1c
Merge pull request #1600 from ethereum/master
...
Backport BLS test gen fix to dev
2020-01-27 19:07:12 -07:00
protolambda
e118045a59
update remerkleable dependency
2020-01-28 02:31:39 +01:00
Danny Ryan
3daca54a21
Merge pull request #1599 from ethereum/fix-fast-aggregate-bls-test
...
Fix fast_aggregate_verify BLS tests
2020-01-27 17:51:33 -07:00
Ben Edgington
b67aeee855
Fix fast_aggregate_verify BLS tests
2020-01-27 17:39:50 -07:00
protolambda
7848500ea9
spec packaging; implement review suggestions from hww
2020-01-25 22:10:03 +01:00
protolambda
675d404c38
Package eth2spec for tooling and experimentation
...
See tests/core/pyspec/README.md for usage description.
This commit:
- refactors config loading to be part of the pyspec package
- updates requirements and main files to use new config loading
- cleans up the build script
- converts the build script to a distutil command
- runs pyspec build as part of build package command
- provides pyspecdev command to get editable spec python files
2020-01-25 01:57:11 +01:00
Diederik Loerakker
247a4eeab1
Merge pull request #1552 from ethereum/tree-based-ssz
...
Tree based spec SSZ implementation - remerkleable
2020-01-25 01:00:58 +01:00
protolambda
d9f62f9303
Remerkleable - merkle tree based ssz for better and faster spec
2020-01-25 00:43:43 +01:00
Diederik Loerakker
8e5c1763ba
Merge pull request #1594 from ethereum/master-copy
...
Backport v0.10.1 to dev
2020-01-24 21:56:49 +01:00
Danny Ryan
67a4d5e659
Merge branch 'dev' into master-copy
2020-01-24 13:49:22 -07:00
Danny Ryan
b74dd67fcf
Merge pull request #1589 from ethereum/v010x
...
Release `v0.10.1` to `master`
2020-01-23 13:17:31 -07:00
Jim McDonald
d4ae00819a
Fix for increased seconds per slot
2020-01-23 13:08:52 -07:00
Danny Ryan
6a26b76858
Merge pull request #1504 from ethereum/phase1rebase
...
Phase 1 rebase
2020-01-23 12:09:17 -07:00
Danny Ryan
161c0a8bc1
remove unused code from bls generator file
2020-01-23 11:35:59 -07:00
protolambda
86b699bfd1
Merge branch 'dev' into phase1rebase
2020-01-23 19:24:03 +01:00
Diederik Loerakker
88026a8550
Merge pull request #1587 from ethereum/deposit-contract-test-pin
...
Deposit contract testing cleanup, manage python versions.
2020-01-23 19:11:09 +01:00
Danny Ryan
ec00f6d9ea
Merge pull request #1575 from ethereum/broken-gens
...
Fix broken test generators
2020-01-23 10:36:53 -07:00
Danny Ryan
67763ae0e0
PR feedback
2020-01-23 10:32:12 -07:00
Danny Ryan
3b2c723ba5
Merge pull request #1590 from ethereum/port-minor-changes-from-dev
...
Port minor changes from dev for v0.10.1
2020-01-23 09:57:50 -07:00
Jim McDonald
de1bb7bde1
Update for renamed constant
2020-01-23 09:55:04 -07:00
Hsiao-Wei Wang
a13271af41
Fix BLS API description
2020-01-23 09:52:40 -07:00
Ben Edgington
f8250b6a1a
Correct typo in heading level
2020-01-23 09:51:58 -07:00
Chih Cheng Liang
14cfc66c33
Fix p2p interface indentation
2020-01-23 09:51:38 -07:00
Danny Ryan
3b80e12fc3
only expose BLS tests for the used APIs
2020-01-22 17:56:50 -07:00
Danny Ryan
eed3f6053d
Merge pull request #1580 from ethereum/fork-choice-fix-1574
...
Fork choice fix issue 1574
2020-01-22 16:56:00 -07:00
Danny Ryan
d672c47aba
Merge pull request #1579 from ethereum/epochs-in-fork-choice
...
Properly handle skip slots in fork choice
2020-01-22 16:55:15 -07:00
Diederik Loerakker
4e8cf252b7
Merge pull request #1588 from mcdee/cfix
...
Fix `SLOTS_PER_ETH1_VOTING_PERIOD` constant with incorrect name
2020-01-23 00:33:27 +01:00
Diederik Loerakker
9f5f501e5b
Merge pull request #1586 from ethereum/fix-default-compute-domain
...
fix default value in compute_domain
2020-01-23 00:29:28 +01:00
Jim McDonald
ebac603745
Update for renamed constant
2020-01-22 22:23:36 +00:00
Danny Ryan
fe103394db
Merge pull request #1583 from sigp/kirk-baird-patch-02
...
Update BLS Link
2020-01-22 14:57:36 -07:00
Danny Ryan
b357e43aab
clarifying comment on call to get_ancestor in on_block
2020-01-22 14:31:23 -07:00
Danny Ryan
83bea50772
Merge pull request #1581 from ethereum/exit-queue-default-fix
...
Exit queue epoch fix
2020-01-22 14:27:34 -07:00
protolambda
01f7c6c1e2
separate deposit contract compiler and tester, pin compiler to python 3.7. Upgrade others to 3.8
2020-01-22 19:41:19 +01:00
Danny Ryan
e821476c07
explicitly use Optiona type for fork_version in compute_domain
...
Co-Authored-By: Carl Beekhuizen <carl@ethereum.org>
2020-01-22 11:38:50 -07:00
Danny Ryan
dd9325d9fa
G2Basic to G2ProofOfPossession for private_to_public_key bls test generator
...
Co-Authored-By: Carl Beekhuizen <carl@ethereum.org>
2020-01-22 11:32:25 -07:00
Danny Ryan
cf18b040b4
fix default value in compute_domain
2020-01-22 07:24:15 -07:00
Kirk Baird
601701241c
Update link
...
Signed-off-by: Kirk Baird <baird.k@outlook.com>
2020-01-22 11:04:45 +11:00
Danny Ryan
f012844493
Add additional bls tests for IETF standards to bls gens
2020-01-21 11:19:31 -07:00
Danny Ryan
2015433fa1
revert exit queue epoch issue introduced in v0.10.0. add test to catch subtlety
2020-01-20 20:03:38 -07:00
Danny Ryan
00d3fb4fe6
fix issue 1574 by ensuring that justified checkpoint in store updates when finalized updates if needbe
2020-01-20 18:50:50 -07:00
Danny Ryan
e98c1b4154
don't consider blocks with slots earlier than finalized in on_block fork choice (optimization)
2020-01-20 18:10:39 -07:00
Danny Ryan
f1697d03e7
fix corner case to properly handle skipped slots in get_ancestor
2020-01-20 17:49:09 -07:00
Danny Ryan
2a0f680769
fix ssz_generic test generator
2020-01-16 11:15:44 -07:00
Danny Ryan
6e73df0692
fix broken bls generators
2020-01-16 11:09:58 -07:00
Danny Ryan
7a412534d9
remove test_shard_blocks (outdated) and reduce PERSISTENT_COMMITTEE_PERIOD in minimal config
2020-01-15 18:17:07 -07:00
Danny Ryan
c0b69e531f
cycle through committee indexes instead of through active shards when forming crosslinks
2020-01-15 17:43:11 -07:00
Danny Ryan
3c07b2c954
Make phase 0 fork choice more modular to more easily adopt for slight modifications in phase 1
2020-01-15 16:40:50 -07:00
Danny Ryan
08621a7973
Merge pull request #1567 from ethereum/fix_bls_api
...
[Minor] fix BLS API description
2020-01-15 14:21:15 -07:00
Danny Ryan
1756348e8d
Merge pull request #1569 from ChihChengLiang/minor-fix-indentation
...
[Minor] Fix p2p interface table level
2020-01-15 14:19:42 -07:00