812 Commits

Author SHA1 Message Date
Dustin Brody
2591be8796 re-organize/shuffle proposer_slashing operations test runner for easy consistency-with-alphabetical-GitHub checking 2020-01-30 12:42:21 +00:00
Dustin Brody
9748b2606e update attestations and voluntary exit operations test to 0.10.1 2020-01-30 11:19:48 +00:00
Dustin Brody
45dd12cf3f update process_deposit() to actually check is_valid_merkle_branch() unless skipValidation specified 2020-01-30 09:31:08 +00:00
cheatfate
98dc701473 Add PeerPool.addPeer async version and tests. 2020-01-29 15:28:41 +00:00
cheatfate
8b229d68ad Add testutil and timedTest. 2020-01-29 15:28:41 +00:00
cheatfate
3b809616ec Add SyncManager tests to test suite. 2020-01-29 15:28:41 +00:00
cheatfate
db20fc1172 Fix SyncQueue push(data) bug.
Rename lastSlot to HeadSlot.
Add failure test.
2020-01-29 15:28:41 +00:00
cheatfate
73dc72583f Initial commit. 2020-01-29 15:28:41 +00:00
Zahary Karadjov
1f1a244f3f Implement more checks and wire up the invalid SSZ tests 2020-01-29 10:10:28 +02:00
Zahary Karadjov
28de477f9e Apply review suggestions 2020-01-27 20:02:09 +02:00
Zahary Karadjov
f30604db28 cp -l is not portable enough (not working on macOS) 2020-01-27 20:02:09 +02:00
Zahary Karadjov
81f031ea1b Allow mixing daemon and native libp2p builds in local sim 2020-01-27 20:02:09 +02:00
Zahary Karadjov
84c238ca8b Add Tmux support for the local network sim
To use tmux, just set the USE_TMUX env variable to 'yes' or '1'
2020-01-27 20:02:09 +02:00
Dustin Brody
dab107fa1e more 0.10.1 updates 2020-01-27 12:50:54 +00:00
Mamy Ratsimbazafy
1ba2cebd85 v0.10.1 (test vectors + unchanged parts) (#696)
* update to 0.10.1

* SSZ Generic and nbench uses the v0.10.1 fixtures

* Tests + spec links: v0.10.0 -> v0.10.1

* Add v0.10.1 TODO in get_latest_attesting_balance (forkchoice)

* SSZ Bytes are now ByteList

* Remove nim-result submodules that was leftover/added by mistake in the branch
2020-01-27 10:56:32 +00:00
Jacek Sieka
270c25c8b8
drop rlpx support (#679) 2020-01-24 09:32:52 +01:00
Jacek Sieka
d9c98b15c8 fix block pool finalization point init 2020-01-23 14:34:58 +02:00
Jacek Sieka
95437e103a disable state pruning
* fix crash when state root is present but state is missing
* fix state root removal when state is removed
* fix block pool initialization which needs tail state
* remove tail block pruning
  * incomplete - fork states are not pruned
  * incomplete - fork blocks are not pruned
  * incomplete - empty slot states are not pruned
  * unknown - tail/finalized block on empty slot might be incorrect
2020-01-22 19:45:38 +02:00
Jacek Sieka
6cfa28e1f5 fix finalization cleanup
* add block pool finalization test
2020-01-21 15:53:53 +02:00
Jacek Sieka
7a8054d36d clean up block pool
* remove BlockPool.blocksBySlot (unused)
* simplify head pruning condition
* add head list smoke tests
* additional logging
2020-01-21 00:54:23 +02:00
Jacek Sieka
2a67ac3c05 trie -> kv store
* simplify data storage to key-value, tries are not relevant for NBC
* locked-down version of lmdb dependency
* easier to build / maintain on various platforms
2020-01-20 13:39:37 +00:00
Jacek Sieka
860be026e1 fix block pool init head selection
the head state is not necessarily saved in the database, so we need to
make sure we update things to the correct place
2020-01-15 12:17:49 +00:00
Dustin Brody
8eaebf7163 update to spec version 0.10.0 2020-01-14 18:17:16 +00:00
Dustin Brody
8090a15cc2 fix UnusedImport warning 2020-01-07 18:06:20 +00:00
Jacek Sieka
148527c716 slot fixes
* fix slot time navigation, add tests
* skip block proposal if head is more recent already - shouldn't happen
* use correct head when attesting to previous blocks
* log slot start/end processing
2019-12-23 17:56:56 +00:00
Dustin Brody
46de726e3d mark all compatible 0.9.3 functions and data structures as 0.9.4 2019-12-20 17:24:42 +00:00
Dustin Brody
3e7d56a66f update test suite to 0.9.4 vectors 2019-12-20 16:37:36 +00:00
Mamy Ratsimbazafy
106352aff3
Nbench - Flexible benchmarking of Nimbus internals (#641)
* nbench PoC

* Remove the yaml files from the example scenarios

* update README with current status

* Add an alternative implementation that uses defer

* Forgot to add the old proc body

* slots-processing

* allow benching state_transition failures

* Add Attestations processing (workaround confutils bug:
- https://github.com/status-im/nim-confutils/issues/10
- https://github.com/status-im/nim-confutils/issues/11
- https://github.com/status-im/nim-confutils/issues/12

* Add CLI command in the readme

* Filter report and add notes about CPU cycles

* Report averages

* Add debugecho style time/cycle print

* Report when we skip BLS and state root verification

* Update to 0.9.3

* Generalize scenario parsing

* Support all block processing scenarios

* parallel bench runner PoC

* gitBetter load issues reporting (the load issues were invalid signature and expected to fail)
2019-12-20 17:14:43 +01:00
Dustin Brody
417f96213d fix genesis interop by fixing deposit signature handling; add TRACE-level compilation to CI 2019-12-20 15:26:48 +00:00
Jacek Sieka
746659bdc6
bump stew, fix warnings (#655) 2019-12-20 14:25:33 +01:00
Jacek Sieka
07c37517ea disable block/attestation pool tests in mainnet 2019-12-19 16:17:45 +00:00
Jacek Sieka
b994da78a7 Move some attestation/block logic out of beacon node
* state data cache in block pool
* keep head state around
* more attestation logic in attestation pool
* first fork choice tests (!)
* fix fork choice (it's still likely broken / out of date)
2019-12-19 16:17:45 +00:00
Dustin Brody
ea4afd7454 mark 19 more 0.9.2-compatible entities as 0.9.3-compatible 2019-12-19 11:46:30 +00:00
Dustin Brody
27bf8908a9 mark a couple dozen functions and data structures as 0.9.3; fix TRACE-level compiling; stop downloading 0.9.2 test vectors; update cosmetic/display spec versions in test suite 2019-12-17 16:51:46 +00:00
Dustin Brody
c824416f56 initial 0.9.3 spec update 2019-12-17 00:06:03 +02:00
Jacek Sieka
c66ca39cee update heads when adding resolved blocks 2019-12-16 12:18:08 +02:00
Mamy André-Ratsimbazafy
eeadafa46b
Test vector 0.9.3 2019-12-13 09:45:12 +01:00
Zahary Karadjov
889031453f The beacon node can be compiled with the LibP2P native back-end
This hasn't been tested yet even in local sim.
2019-12-10 15:02:16 +02:00
Zahary Karadjov
8ab0248209
Revert "tighten a few imports"
This reverts commit b24a9200d91b185bf44ec556f553e5cb8a856280.
2019-12-10 02:18:47 +02:00
Jacek Sieka
b24a9200d9 tighten a few imports 2019-12-09 12:58:28 +00:00
Dustin Brody
eef040954c remove unused hasSigningRoot(...); stop running time-consuming-but-stubbed-out tests; add timing for peer connection tests 2019-12-06 16:48:32 +00:00
Dustin Brody
570de0839d measure/find slow tests (#624) 2019-12-05 11:27:00 +01:00
Dustin Brody
c762c0232d render get_beacon_proposer_index(...) return value an option and remove overly aggressive assertion formerly causing crashes when missing validators (#617)
* render get_beacon_proposer_index(...) return value an option and remove overly aggressive assertion formerly causing crashes when missing validators

* follow addBlock(...) after refactoring

* [skip ci] fix typo
2019-12-04 11:49:59 +01:00
Dustin Brody
6b56e19572 initial refactor of testutil to delineate between less and more expensive dependencies; make now-monotonic timing available across test suite, not just in state_sim 2019-12-04 00:34:43 +02:00
Jacek Sieka
afc0686b36 save ssz dummps during processing (#471) 2019-12-03 11:32:27 +00:00
Ștefan Talpalaru
84c189fd1b Nim 1.0.4 (#604)
* Nim 1.0.4

* Azure: try to fix cache key

* mock_validator_keys.nim: fix index out of bounds

* Travis: make Nim building verbose
2019-11-29 10:17:18 +01:00
Jacek Sieka
2a728d9468 fix stack overflow in isAncestor recursion 2019-11-28 17:36:07 +02:00
Dustin Brody
8f2e523d26 remove a few hints and warnings (#603) 2019-11-28 13:50:19 +01:00
Dustin Brody
45b7595ba1 state_sim optimizations (#597)
* switch out quadratically scaling and wasteful attestation in state_sim to attest only to exactly the correct slots; avoid pointless committee index interconversion for 9-10x increase in state_sim speed at d:release, 60k validators, and validate=off

* remove debugechos
2019-11-27 23:48:12 +01:00
cheatfate
fa22ba22b9 PeerPool initial commit. 2019-11-26 17:16:55 +00:00