Commit Graph

2589 Commits

Author SHA1 Message Date
Paul Hauner
177df12149
Testnet stability (#451)
* Change reduced tree for adding weightless node

* Add more comments for reduced tree fork choice

* Small refactor on reduced tree for readability

* Move test_harness forking logic into itself

* Add new `AncestorIter` trait to store

* Add unfinished tests to fork choice

* Make `beacon_state.genesis_block_root` public

* Add failing lmd_ghost fork choice tests

* Extend fork_choice tests, create failing test

* Implement Debug for generic ReducedTree

* Add lazy_static to fork choice tests

* Add verify_integrity fn to reduced tree

* Fix bugs in reduced tree

* Ensure all reduced tree tests verify integrity

* Slightly alter reduce tree test params

* Add (failing) reduced tree test

* Fix bug in fork choice

Iter ancestors was not working well with skip slots

* Put maximum depth for common ancestor search

Ensures that we don't search back past the finalized root.

* Add basic finalization tests for reduced tree

* Change fork choice to use beacon_block_root

Previously it was using target_root, which was wrong

* Change reduced tree for adding weightless node

* Add more comments for reduced tree fork choice

* Small refactor on reduced tree for readability

* Move test_harness forking logic into itself

* Add new `AncestorIter` trait to store

* Add unfinished tests to fork choice

* Make `beacon_state.genesis_block_root` public

* Add failing lmd_ghost fork choice tests

* Extend fork_choice tests, create failing test

* Implement Debug for generic ReducedTree

* Add lazy_static to fork choice tests

* Add verify_integrity fn to reduced tree

* Fix bugs in reduced tree

* Ensure all reduced tree tests verify integrity

* Slightly alter reduce tree test params

* Add (failing) reduced tree test

* Fix bug in fork choice

Iter ancestors was not working well with skip slots

* Put maximum depth for common ancestor search

Ensures that we don't search back past the finalized root.

* Add basic finalization tests for reduced tree

* Add network dir CLI flag

* Simplify "NewSlot" log message

* Rename network-dir CLI flag

* Change fork choice to use beacon_block_root

Previously it was using target_root, which was wrong

* Update db dir size for metrics

* Change slog to use `FullFormat` logging

* Update some comments and log formatting

* Add prom gauge for best block root

* Only add known target blocks to fork choice

* Add finalized and justified root prom metrics

* Add CLI flag for setting log level

* Add logger to beacon chain

* Add debug-level CLI flag to validator

* Allow block processing if fork choice fails

* Create warn log when there's low libp2p peer count

* Minor change to logging

* Make ancestor iter return option

* Disable fork choice test when !debug_assertions

* Fix type, removed code fragment

* Tidy some borrow-checker evading

* Lower reduced tree random test iterations
2019-07-29 13:45:45 +10:00
John Adler
1b26a36ebc Verify transfer now checks for amount + fees. (#457) 2019-07-29 12:17:04 +10:00
Paul Hauner
7458022fcf
Fork choice bug fixes (#449)
* Change reduced tree for adding weightless node

* Add more comments for reduced tree fork choice

* Small refactor on reduced tree for readability

* Move test_harness forking logic into itself

* Add new `AncestorIter` trait to store

* Add unfinished tests to fork choice

* Make `beacon_state.genesis_block_root` public

* Add failing lmd_ghost fork choice tests

* Extend fork_choice tests, create failing test

* Implement Debug for generic ReducedTree

* Add lazy_static to fork choice tests

* Add verify_integrity fn to reduced tree

* Fix bugs in reduced tree

* Ensure all reduced tree tests verify integrity

* Slightly alter reduce tree test params

* Add (failing) reduced tree test

* Fix bug in fork choice

Iter ancestors was not working well with skip slots

* Put maximum depth for common ancestor search

Ensures that we don't search back past the finalized root.

* Add basic finalization tests for reduced tree

* Change fork choice to use beacon_block_root

Previously it was using target_root, which was wrong

* Make ancestor iter return option

* Disable fork choice test when !debug_assertions

* Fix type, removed code fragment

* Tidy some borrow-checker evading

* Lower reduced tree random test iterations
2019-07-29 12:08:52 +10:00
Luke Anderson
6de9e5bd6f Spec. for REST API (#455)
* A first run at fleshing full REST API spec.
 - Added a new REST OpenAPI YAML specification to the docs folder, starting from the minimal validator spec.
 - Added a bunch of additional endpoints, including network information and beacon chain information.
 - Current yaml file has not been checked for syntax or any correctness.

* Fixed REST OpenAPI Spec.
 - Updated spelling mistakes, indentation, and incorrect fields.

* Added block_discovery endpoint to REST API spec.

* Added /node/stats endpoint
 - /node/stats endpoint provides information about the running process
 - Added some extra TODOs as reminders.

* Added missing Attestations to REST spec.
 - Added ability to get attestations and pending attestations from chain data.
 - Moved the Attestaion object into its own schema, with reference.
2019-07-29 10:01:56 +10:00
Pawan Dhananjay
db094022b9 Remove unused dependencies (#456) 2019-07-29 09:55:57 +10:00
Age Manning
3752a8f860
Merge pull request #459 from adlerjohn/adlerjohn-dev-env-setup-submodules
Fix submodule init command in docs to also update
2019-07-27 11:18:39 +10:00
Age Manning
d17bd68898
Merge pull request #462 from adlerjohn/adlerjohn-fix-typos
Fix lots of typos
2019-07-27 11:16:16 +10:00
John Adler
fec7168512
Fix lots of typos. 2019-07-26 15:26:06 -04:00
John Adler
69ad55af19
Fix submodule init command to also update. 2019-07-26 13:31:31 -04:00
Age Manning
b5af73d056
Merge pull request #441 from sigp/rpc-update
RPC Rewrite
2019-07-24 20:08:16 +10:00
Age Manning
ae96325c81
Allows Libp2p service to be read outside network thread 2019-07-24 17:45:31 +10:00
Age Manning
7d38cba252
Remove encoding error and redundant code 2019-07-24 15:17:44 +10:00
Age Manning
89ff7fb6b8
Complete initial testing of new RPC 2019-07-23 22:45:42 +10:00
Age Manning
491dca09e5
Merge #443 2019-07-23 09:18:18 +10:00
Maximilian Ehlers
57c065e915 Update installation.md (#448) 2019-07-22 19:12:13 +10:00
Age Manning
b350a78fec
Update RPC. WIP 2019-07-22 14:13:18 +10:00
b-m-f
e9671084af
Saves ENR to disk on every address update
Signed-off-by: b-m-f <max@ehlers.berlin>
2019-07-18 16:48:04 +01:00
Age Manning
b2a1b20e24
Merge latest master 2019-07-16 23:26:31 +10:00
Age Manning
414d41cb57
Shift changes into message handler and simple sync for rpc-rewrite 2019-07-16 22:32:37 +10:00
Luke Schoen
bbde06eb9f docs: Fix readme typos (#439) 2019-07-16 17:40:53 +10:00
Kirk Baird
0513559252 Fix syncing bugs by recursively attempting to process parents in the … (#429)
* Fix syncing bugs by recursively attempting to process parents in the import queue, change BlockRootsIterator

* Swap from crossbeam channel to tokio mpsc

* Recursion fix

* Remove exess block processing

* Fix network lag, correct attestation topic

* Correct network poll logic

* Overhaul of SimpleSync and modify BlockRootsIterator to return start_slot

* Fix bug in tests relating to StateRootsIterator

* Remove old, commented-out heartbeat code.

* Tidy docs on import queue enum

* Change source logging msg in simple sync

* Rename function parameter in simple sync

* Use `BestBlockRootsIterator` in `reduced_tree`

* Update comments for `BestBlockRootsIterator`

* Fix duplicate dep in cargo.toml
2019-07-16 17:28:15 +10:00
Paul Hauner
88c6d15c32
Padding efficent merkle root algo (#436)
* Add initial work on padding efficent merkle roots

* Improve merklize_padded

* Improve tree_hash crate -- fix bugs, docs

* Update codebase for tree_hash API change

* Remove dbg statements, fix import error

* Fix clippy lints, doc error

* Tidy tree hash comments

* Increase tree_hash max tree height

* Fix PR review comments

* Fix typos

* Fix cache access off-by-one in tree hash

* Set max tree depth to 48 (from 64)
2019-07-16 14:40:56 +10:00
Age Manning
704263e35f
Clean up Protocol types 2019-07-15 18:41:05 +10:00
Age Manning
15c99b5f37
RPC Update. WIP 2019-07-15 17:07:23 +10:00
Age Manning
15cdd2afb9
Initial codec module 2019-07-13 18:57:18 +10:00
Age Manning
d84780a339
Initial base codec 2019-07-13 18:35:33 +10:00
Paul Hauner
af499c0b8c
Merge pull request #428 from jzaki/update-install-notes
Update installation notes to include git-lfs step.
2019-07-12 22:47:46 +10:00
Paul Hauner
fcd3da81bf
Merge pull request #426 from sigp/ssz-types
Add ssz_types crate
2019-07-11 16:53:32 +10:00
Age Manning
0292679f27
Improved error handling. Switching to codecs for easier encoding support 2019-07-11 15:11:31 +10:00
Paul Hauner
561cec0bf6
Move many bitfield Options to Results 2019-07-11 13:19:38 +10:00
Paul Hauner
61406b34bc
Resolve issues raised from @michaelsproul review 2019-07-11 12:45:34 +10:00
Paul Hauner
2c1afcc2d6
Rename marker structs for Bitfield 2019-07-11 12:40:37 +10:00
Paul Hauner
08868a6e7a
Merge pull request #425 from sigp/ssz-v0.8
Changes for publishing ssz to crates.io
2019-07-11 09:22:07 +10:00
jzaki
1d1ae5c075 Update instructions 2019-07-10 13:15:38 +10:00
Kirk Baird
e66ef32a9d
Merge pull request #414 from sigp/cli-logging-2
Add CLI Flag for logging to JSON file
2019-07-10 11:45:31 +10:00
Kirk Baird
08069704c1
Add cli flag for logging to JSON file 2019-07-10 10:27:44 +10:00
Paul Hauner
5e1a2ebf25
Uncomment broken tree hash impl for variable list 2019-07-09 20:30:29 +10:00
Paul Hauner
bb3b3fd8b9
Fix bug around single-byte for 0-bits 2019-07-09 20:29:10 +10:00
Paul Hauner
daa8916e6b
Add comments after self-review 2019-07-09 20:28:19 +10:00
Paul Hauner
090133b088
Add more comments to bitfield 2019-07-09 17:31:34 +10:00
Paul Hauner
734aa3b8bd
Satisfy clippy lint in SSZ 2019-07-09 17:01:37 +10:00
Paul Hauner
7283fdff15
Fix clippy lints in ssz_types 2019-07-09 16:58:53 +10:00
Paul Hauner
57cc946018
Add bitvector tests 2019-07-09 16:37:09 +10:00
Paul Hauner
000d941e2e
Add tests for BitList 2019-07-09 16:03:02 +10:00
Age Manning
4a84b2f7cc
Improved RPC handling. WIP 2019-07-09 15:44:23 +10:00
jzaki
efcbb16491 Update installation notes to include git-lfs step. 2019-07-09 14:52:05 +10:00
Paul Hauner
e4ef0fc9d4
Add crate-level docs to ssz_types 2019-07-09 11:00:40 +10:00
Paul Hauner
94265272b4
Tidy bitfield docs 2019-07-09 09:28:22 +10:00
Paul Hauner
5a7c44ed37
Add failing doc tests 2019-07-08 18:53:25 +10:00
Paul Hauner
1484773cd1
Refactor to use Bitfield struct with type variants 2019-07-08 18:41:43 +10:00