Zahary Karadjov
740b76d152
Spec-compliant implementation of Eth1 monitoring; Eth1-enabled local sim
...
BEWARE! This commit will trigger a stack overflow during local sim
2020-04-26 13:04:53 +03:00
Jacek Sieka
ed74770451
spec: regulate exceptions ( #913 )
...
* spec: regulate exceptions
* a few more simple raises
2020-04-22 07:53:02 +02:00
Zahary Karadjov
d2b7ee27de
The RPC service listens on localhost by default
2020-03-22 19:00:09 +02:00
Zahary Karadjov
adcec61081
Initial implementation of a JSON-RPC service
2020-03-22 19:00:09 +02:00
Mamy André-Ratsimbazafy
bfd4df912e
Update to BLS v0.10.1
2020-03-13 12:20:41 +00:00
Zahary Karadjov
7f395e554a
WIP Working local network sim with discovery
...
* The bootstrap_nodes.txt file in the node's data dir is now optional
* Log more data on start-up
* Use the latest ENR APIs
* Fix simulation build errors
2020-02-18 12:53:49 +02:00
Zahary Karadjov
ee7c2c9dff
Unify the bootstrap nodes handling code
...
We no longer discriminate between ENR, MultiAddress or ENode
bootstrap records (all of them are remapped to ENodes).
The discovery loop will stochastically try to reconnect to
accidentally disconnected nodes.
2020-02-18 12:53:49 +02:00
Dustin Brody
bde1eefdcf
improve option naming
2020-02-17 22:00:41 +00:00
Dustin Brody
e13846bec6
allow beacon_node to verify finalization when appropriate, and enable by default for make eth2_network_simulation
2020-02-17 22:00:41 +00:00
Zahary Karadjov
07d329acb8
Wire-up the peer dialing loop and introduce --max-peers option
2020-01-21 01:26:57 +02:00
Zahary Karadjov
52878405b7
Integrate Discovery V5 and support ENR bootstrap records
2020-01-21 01:26:57 +02:00
Jacek Sieka
a3145f0f5c
cleanups
...
* move stuff out of beaconnode
* fix use-after-free in query
2019-12-10 14:47:52 +00:00
Jacek Sieka
afc0686b36
save ssz dummps during processing ( #471 )
2019-12-03 11:32:27 +00:00
Zahary Karadjov
4c2ded25a6
Add detailed tracing for blocks by range requests
2019-11-26 02:45:25 +02:00
Zahary Karadjov
ac5aabd569
Use the latest confutils
2019-11-11 23:29:36 +00:00
Zahary Karadjov
ed9cb274a2
Restore a change mysteriously lost during rebasing
2019-11-11 23:29:36 +00:00
Ștefan Talpalaru
c1a63035b9
beacon_node: "--version" option [skip ci]
...
fixes #466
2019-11-09 17:43:42 +00:00
Yuriy Glukhov
568e669b1c
Fixed deposit/contract
2019-11-07 17:23:06 +00:00
Zahary Karadjov
72c42838cb
Fix a typo in start.sh; Display the full slot number in the statusbar [skip ci]
2019-10-29 21:48:32 +02:00
Zahary Karadjov
f1ea0cec32
Add support for testnets with mixed quickstart/random deposits
2019-10-29 19:16:32 +02:00
Zahary Karadjov
ba0037738b
Removed all code related to the old network metadata files
...
Also switched to a more "standard" naming convention for the
command-line parameters.
2019-10-29 01:04:52 +02:00
Jacek Sieka
ee5d1c1467
minimize imports, specially for spec - cuts 2/3 of ncli build time ( #500 )
...
* minimize imports, specially for spec - cuts 2/3 of ncli build time
* ptr_arith->ptrops
2019-10-25 12:59:56 +02:00
Zahary Karadjov
c23b011c77
Cosmetic improvements to the status bar; Attempt to fix the CI
2019-10-07 23:56:34 +09:00
Zahary Karadjov
f72a58595f
Initial version of status bar
2019-10-07 23:56:34 +09:00
Zahary Karadjov
0eaa433e84
Automated scripts for resetting the Status testnets
...
For detailed instructions, please see
https://github.com/status-im/nimbus-private/blob/master/testnets-maintenance.md
2019-09-26 18:58:51 +03:00
Jacek Sieka
42a469603d
simplify startup, describe a few startup tricks
2019-09-11 20:29:57 -04:00
Jacek Sieka
65ff8f2886
remove networkId (unused)
2019-09-11 20:29:57 -04:00
Jacek Sieka
ab2cce3951
add quickStart option that avoids network metadata
2019-09-11 20:29:57 -04:00
Zahary Karadjov
f583135a39
The --stateSnapshot option now accepts ssz files as well
2019-09-10 10:13:49 -04:00
zah
93cdb43f1e
Integrate nim-metrics and add some metrics from the ETH2 spec ( #394 )
2019-09-07 19:48:05 +02:00
Jacek Sieka
7b73b40bab
interop updates
...
* add interop launcher scripts
* stick validator_keygen into beacon_node
* fix lmd ghost slot number on missing block
* use mocked eth1data when producing blocks
* use bls public key method for withdrawal credentials
* fix deposit domain
* prefer lowercase for a bunch of toHex
* build simulation binary in data folder to avoid data types confusion
2019-09-02 22:14:18 +03:00
Yuriy Glukhov
958e4cd3b4
Getting genesis through web3
2019-07-31 16:39:26 +03:00
Zahary Karadjov
12e9367f78
Improved error handling; Simple test case for connecting 2 peers
2019-06-24 05:34:22 +03:00
Zahary Karadjov
f4a96bc3f3
[WIP] Restore the Lib2P2 builds and implement the latest wire spec
...
Depends on https://github.com/status-im/nim-eth/pull/54
2019-06-24 05:34:21 +03:00
Ștefan Talpalaru
53012b9a25
NAT traversal
2019-04-18 15:48:17 +02:00
zah
e16d8faee2
Switch to a two-steps build process ( #228 )
2019-03-29 10:44:19 -06:00
Zahary Karadjov
8e0025035c
all validators are free for picking by default
2019-03-29 15:38:59 +02:00
Zahary Karadjov
b3d23c052c
Switch to 30 seconds slot duration; UX improvements
...
* On the testnet site, the first N instead of the last N validators
will be considered reserved for users
* The number of validators is consistently named `totalValidators`
in all commands
* Proper keys are generated by default in validator_keygen
2019-03-27 18:13:39 +02:00
Zahary Karadjov
a3ce9d17ec
Expose the default port
2019-03-27 18:13:39 +02:00
Zahary Karadjov
6629897567
We don't need the more complicated port setup anymore
2019-03-27 18:13:39 +02:00
Zahary Karadjov
c0fa229254
Improved error handling in the networking code
2019-03-26 17:40:20 +02:00
Zahary Karadjov
d94d4f2606
Dumbed down the validator key import procedure
...
The previous idempotent scheme proved to be too slow, making it
harder to quickly re-assign validators on the servers.
2019-03-26 17:37:31 +02:00
Zahary Karadjov
0a027e410a
Address review concerns and make some steps towards json logging
2019-03-22 17:04:17 +02:00
Zahary Karadjov
06301458bf
Don't add the 'node' log property when connecting to the testnet
2019-03-22 17:04:17 +02:00
Zahary Karadjov
42ca6afae2
Helpful scripts for resetting the testnets
2019-03-19 21:50:22 +02:00
Zahary Karadjov
6a35d3584d
Automate the creation of the network metadata files
...
With these changes, running a simulation is very close to running
an actual testnet. Some checks have been added in the client to
make sure you are not connecting to an incompatible network (e.g.
a network running with a different number of shards).
2019-03-19 20:27:54 +02:00
Jacek Sieka
d7f972a47e
allow setting advertised external ip
...
* detect it in start.sh
2019-03-19 10:50:09 +02:00
Zahary Karadjov
6bb38095c9
Command-line and data storage handling for testnets
2019-03-18 12:45:29 +02:00
Jacek Sieka
4d55cf8eea
beacon node sim: various improvements ( fixes #111 ) ( #156 )
...
* allow running more or fewer validators
* use deterministic key generation for tests to avoid exhausting system
RNG
* update README with simulator docs
* write the data of each validator to separate file, instead of a big
chainstart.json (makes it easier to run different validator counts)
2019-03-07 13:59:28 +00:00
Jacek Sieka
0e9cc20cfe
beacon node simplifications ( #116 )
...
* remove previous randao scheme code
* fix some epoch logging
* move genesis time selection to state generation
2019-02-15 17:33:32 +01:00
Dustin Brody
8fbf87aa8c
complete switching to v0.2.0 RANDAO scheme, with verification enabled
2019-02-14 13:41:04 -08:00
Mamy Ratsimbazafy
e5d152c6d6
Update BLS to the latest scheme. ( #80 )
...
* Attempt to switch to nim-blscurve.
* "Fix" BLS test for new tests
* Missing domain param in validator keygen
2019-02-05 17:13:29 +01:00
Zahary Karadjov
43ae45fe7e
Add --logLevel command-line flag; Fix running the start.sh script from the beacon-chain repo
2019-01-17 14:38:27 +02:00
Zahary Karadjov
8f9a5441f1
More reliable network simulation
...
You'll need the latest versions of nim-eth-p2p, nim-serialization
and nim-json-serialization.
Before starting the simulation script, make sure to delete any previous
json files from the simulation folder:
```
rm tests/simulation/*.json
tests/simulation/start.sh
```
This should survive the creation of few blocks before diying with a
block validation error.
2019-01-05 14:35:47 +02:00
Jacek Sieka
12a819c110
spec updates ( #48 )
...
* spec updates
* balances move out to separate seq
* bunch of placeholders for proof-of-custody / phase1
* fix inclusion distance adjustment
* modify state in-place in `updateState` (tests spent over 80% time
copying state! now it's down to 25-50)
* document several conditions and conversations
* some renames here and there to follow spec
2018-12-27 14:14:37 -06:00
Zahary Karadjov
abb199d6dc
Chain creation and network simulation start script
2018-12-19 15:39:00 +02:00
Yuriy Glukhov
10ed2bd5b9
Comments addressed, cosmetics
2018-12-09 11:17:54 +02:00
Yuriy Glukhov
61f81fb0c4
Some bits of randao
2018-12-09 11:17:54 +02:00
Yuriy Glukhov
f12b679880
addLocalValidators impl
2018-12-05 18:58:28 +02:00
Zahary Karadjov
e4d1bebf4d
Get the code to compiling state
2018-11-29 03:17:57 +02:00
Zahary Karadjov
4920c0a357
work-in-progress beacon node skeleton (not compiling at the moment)
2018-11-28 22:55:04 +02:00