Commit Graph

841 Commits

Author SHA1 Message Date
Jacek Sieka 93b434d0ac
bumps (#2214)
* bumps

several modules pinned to merged branches

* faststreams master broken, go back
2021-01-07 13:12:37 +01:00
Ștefan Talpalaru e58a355a1c
CI release: ARM and ARM64 builds (#2213) 2021-01-07 10:19:29 +01:00
Jacek Sieka 52ca12c79f
bump nat, avoid one more finalizer (#2209) 2020-12-31 15:58:31 +01:00
Giovanni Petrantoni ed24f60f70
remove async from sub/unsub (#2197)
* remove await/async from sub/unsub

* fix unsubscribe wrong key (missed _snappy)

* use the right libp2p commit hash

* remove unused async

* fix inspector

* fix subnet calculation in RPC and insert broadcast attestations into node's pool

* unify codepaths to ensure only mostly-checked-to-be-valid attestations enter the pool, even from node's own broadcasts

* update attestation pool tests for new validateAttestation param

Co-authored-by: Dustin Brody <tersec@users.noreply.github.com>
2020-12-24 09:48:52 +01:00
Jacek Sieka 0f8a3a5ae8
checkpoint database at end of each slot (#2195)
* checkpoint database at end of each slot

To avoid spending time on synchronizing with the file system while doing
processing, the manual checkpointing mode turns off fsync during
processing and instead checkpoints the database when the slot has ended.

From an sqlite perspecitve, in WAL mode this guaranees database
consistency but may lead to data loss which is fine - anything missing
from the beacon chain database can be recovered on the next startup.

* log sync status and delay in slot start message

* bump
2020-12-18 22:01:24 +01:00
Jacek Sieka 452042b17b
msgid formatting, libp2p bump (#2198)
* msgid formatting, libp2p bump

* fix libp2p commit
2020-12-18 18:45:27 +00:00
Jacek Sieka ca2a09d424 bump secp 2020-12-16 19:41:12 +02:00
Ștefan Talpalaru ff23ca27c2
bump vendor/nimbus-benchmarking 2020-12-16 14:11:11 +01:00
Jacek Sieka b0086c5d99
bump libp2p (#2187)
* bump libp2p

* also stew
2020-12-16 09:36:51 +01:00
Jacek Sieka 4e191a06ac use stew/leb128
* 3 varint parsers -> 1
* 1/3 memory usage / allocations when writing stuff to libp2p
2020-12-15 17:06:15 +02:00
Ștefan Talpalaru e52c88386b
build warnings (#2179) 2020-12-14 16:45:31 +00:00
Kim De Mey f49fcb9df3
Bump nim-eth for discovery v5 ip limits (#2085) 2020-12-11 14:35:08 +01:00
Ștefan Talpalaru e59437c5e2
new Make target: "benchmarks" (#2174)
It runs some benchmarks, collects the output and generates HTML charts.
2020-12-11 12:12:43 +01:00
Mamy Ratsimbazafy 2b3b219c77
Bump blst: perf + 32-bit platforms support + pure C fallback + drop Miracl fallback tests (#2152)
* bump BLST

* Cached subgroup checks

* Bump BLST - BLST now has pure C fallback for all arch (Miracl unneeded)

* Drop testing Miracl fallback in Nimbus

* Charting uncharted waters: 32-bit should imply -mno-adx
2020-12-10 10:18:07 +01:00
Jacek Sieka c4d9d5f64e
bump nim-stew (no change) 2020-12-09 17:24:25 +01:00
Jacek Sieka 0b33183341
bumps (#2154)
* avoid dangling cstring returns in Result, fixing some low-risk crash
potential
* bump libp2p for connection race fix and a few cleanups
2020-12-07 17:09:05 +01:00
Zahary Karadjov 4feb0a308e Fix #2125 (ETH status bar display); Bump LibP2P 2020-12-02 00:03:59 +02:00
Zahary Karadjov 4eaf29875a Less risk for Eth1-induced delays in block proposal 2020-12-01 15:38:50 +02:00
Zahary Karadjov 38f7558e50 Work around a strange codegen issue to fix local sim in CI; Bump LibP2P 2020-12-01 15:38:00 +02:00
Jacek Sieka 7e4fd325b5
bump nim-libp2p 2020-11-29 14:47:19 +01:00
= e1fb2d98fb auto-bump nim-libp2p 2020-11-28 09:20:02 +00:00
Jacek Sieka d16e127daf
Peer stuff (#2084)
* Revert "Revert "Full "node" RPC calls implementation and fixes to peer lifetime states. (#2065)" (#2082)"

This reverts commit 7cc3dc8027.

* fix nil disconnectedFut crash

* fixes

don't resetPeer, it causes peer miscounts

* disconnect disconnecting peers

...when there's a race.

* avoid connection spamming

* never decrease SeenTable timeout
* only recover ENR for known peers

* seen only when really disconnected
2020-11-26 20:23:45 +01:00
Giovanni Petrantoni 9b9aa93cd4
Seenttl by spec (#2083)
* add rpc call to get chronos futures at runtime

* add seenTTL gossip parameter

Co-authored-by: Jacek Sieka <jacek@status.im>
2020-11-26 13:08:22 +01:00
Jacek Sieka 7cc3dc8027
Revert "Full "node" RPC calls implementation and fixes to peer lifetime states. (#2065)" (#2082)
This reverts commit d041287a4f.
2020-11-26 09:05:23 +01:00
Eugene Kabanov d041287a4f
Full "node" RPC calls implementation and fixes to peer lifetime states. (#2065)
* Initial commit.

* Fix log lines and compilation error.

* Add get_v1_node_peers() implementation.

* Fix peer's lifetime states.

* Use the most recent multiaddress.

* Fix assign NewPeerScore again.
Fix compilation error with last seen address.
Fix Peer upgraded log line place.

* syncing, health, peer_count, peer_id and fixes for identity.

* Fix compilation problems.

* Move object declaration to callsigs.
Fix identity addresses fields.

* Finish node RPC calls.

* Avoid leak of lifetime future.

* Bump chronos.

* Fix json generator problem.
2020-11-26 08:09:59 +01:00
Zahary Karadjov 7fdafa65ee
New bootstrap nodes for Mainnet 2020-11-25 21:27:40 +02:00
zah 372c9b798c
Fix the corrupted database state on Pyrmont nodes; Add mainnet genesis (#2056)
* Handle some web3 timeouts better

* Add support for developer .env files

* Eth1 improvements; Mainnet genesis state

Notable changes:

* The deposits table have been removed from the database. The client
  will no longer process all deposits on start-up.

* The network metadata now includes a "state snapshot" of the deposit
  contract. This allows the client to skip syncing deposits made prior
  to the snapshot (i.e. genesis). Suitable metadata added for Pyrmont
  and Mainnet.

* The Eth1 monitor won't be started unless there are validators attached
  to the node.

* The genesis detection code is now optional and disabled by default

* Bugfix: The client should not produce blocks that will fail validation
  when it hasn't downloaded the latest deposits yet

* Bugfix: Work around the database corruption affecting Pyrmont nodes

* Remove metadata for Toledo and Medalla
2020-11-24 22:21:47 +01:00
Jacek Sieka f2722ed866
auto-bump nim-libp2p (#2064)
Co-authored-by: = <dryajov@users.noreply.github.com>
2020-11-24 12:38:18 +01:00
nbc-bump-bot[bot] 0856f0539a
auto-bump nim-libp2p (#2036)
Co-authored-by: = <dryajov@users.noreply.github.com>
2020-11-23 10:38:34 +01:00
Zahary Karadjov d232f16b40 Add more eth1-related logging 2020-11-20 17:13:51 +02:00
Zahary Karadjov e370e80aee
Add more Pyrmont bootstrap nodes 2020-11-18 14:40:45 +02:00
Eugene Kabanov 28369574b7
Bump `nim-chronos` to fix write() deadlocks. (#2037) 2020-11-18 11:39:15 +01:00
Zahary Karadjov ebfacf597c
Review and fix some usages of Future.cancel; Bump Chronos 2020-11-18 00:27:21 +02:00
Jacek Sieka 4479c0a9f1
fix some libp2p channel hangs (#2032)
* fix some libp2p channel hangs

* make sure no concurrent reads are issues by awaiting cancellations
* bumps with fixes

* merge bump
2020-11-17 16:07:05 +01:00
Jacek Sieka a6b188bfd4
misc fixes (#2027)
* log when database is loading (to avoid confusion)
* generate network keys later during startup
* fix quarantine not scheduling chain of parents for download and
increase size to one epoch
* log validator count, enr and peerid more clearly on startup
2020-11-16 20:15:43 +01:00
Jacek Sieka 5b011b65ae add rpc call to get chronos futures at runtime 2020-11-16 12:31:39 +02:00
Zahary Karadjov eb76d650f6 Add genesis state for Pyrmont 2020-11-15 21:40:40 +02:00
kdeme d02d8f8d51 Drop UseDiscv51 flag and only support discovery v5.1 2020-11-14 19:12:30 +02:00
tersec 602f344525
remove v0.12.3 EF test vectors to save 2.7GB of space in CI instances (#2017) 2020-11-13 22:16:56 +01:00
Jacek Sieka ab8f8ccaba
clean up dependencies (#2008)
* clean up dependencies

* use non-prce-mode for metrics
* clean up obsolete snappy and gflags deps from manuals

* conditional pcre
2020-11-13 16:00:45 +01:00
Zahary Karadjov 80ca7a2d9f Implement #1768 2020-11-12 22:29:43 +02:00
Zahary Karadjov 8ad45de65b
Add makefile targets for Pyrmont 2020-11-12 21:51:15 +02:00
Zahary Karadjov 08da65edea
Latest toledo metadata 2020-11-10 14:11:31 +02:00
Zahary Karadjov 52043a8fe7
Toledo genesis state 2020-11-10 00:56:46 +02:00
tersec a010ef2061
update tests from v1.0.0-rc.0 to v1.0.0 (#1976) 2020-11-09 17:44:18 +00:00
Zahary Karadjov 2343934bc8
Add backwards compatibility target for signing_process 2020-11-09 14:40:06 +02:00
Zahary Karadjov 94e9ce3c1f Add metadata for the toledo network 2020-11-09 11:38:52 +02:00
Jacek Sieka aaf20c1554
bump libp2p (#1963) 2020-11-06 13:18:16 +01:00
Zahary Karadjov 18639c3eff Don't require requests that might fail on non-archive Geth nodes 2020-11-03 23:23:10 +02:00
Jacek Sieka ee663d9fc2
move libp2p back a few commits (#1948)
to see if it helps with connectivity issues
2020-11-03 17:04:16 +01:00
Jacek Sieka 937decb0e9
Revert "Gossip11 post audit (#1917)" (#1947)
This reverts commit 63173ab2c1.

It appears the cluster is having trouble staying connected - since the culprit is unknown, this is a first step on the way to what was stable.

Notably, this does not fully revert libp2p itself, merely the gossip version.
2020-11-03 11:45:40 +01:00
nbc-bump-bot[bot] 446f8cc738
auto-bump nim-libp2p (#1934)
Co-authored-by: = <dryajov@users.noreply.github.com>
2020-11-01 23:04:05 +01:00
nbc-bump-bot[bot] 9e3ca74ee0
auto-bump nim-libp2p (#1930)
Co-authored-by: = <sinkingsugar@users.noreply.github.com>
2020-10-31 15:06:18 +09:00
Giovanni Petrantoni 63173ab2c1
Gossip11 post audit (#1917)
* bump libp2p gossip

* use gossip 1.1

* use proper libp2p commit hash

* switch to master libp2p, has audit fixes now
2020-10-30 14:26:35 +00:00
nbc-bump-bot[bot] 8d998a5a8b
auto-bump nim-libp2p (#1914)
Co-authored-by: = <dryajov@users.noreply.github.com>
2020-10-30 13:35:01 +01:00
Ștefan Talpalaru 2396417581
bump nim-libbacktrace (#1799)
so stack traces work with LTO
2020-10-27 13:09:03 +01:00
Eugene Kabanov eee01a32d5
Regression fix of eth2_network_simulation on Windows. (#1900)
* Concentrate all sensitive writeFile/createPath calls in one place.
Fix eth2_network_simulation for Windows.

* Remove artifacts.

* fix import

Co-authored-by: Jacek Sieka <jacek@status.im>
2020-10-27 12:04:17 +01:00
Mamy Ratsimbazafy 677f099110
BLS signature v4 (#1912) 2020-10-27 09:37:04 +01:00
Kim De Mey 8102d5dc4d
Bump eth2-testnets for more discv5.1 bootstrap nodes on medalla (#1911)
And improve logging UX a bit by ignoring comments or newlines
2020-10-27 08:44:46 +01:00
Kim De Mey 756b62fdf5
Bump nim-eth to get UseDiscv51 flag (#1895)
* Bump nim-eth to get UseDiscv51 flag

* Switch medalla to discovery v5.1, other targets to v5.0

* Bump nim-eth for better discv5.1 logging

* Bump eth2-testnets for updated medalla bootnodes
2020-10-23 18:59:58 +02:00
tersec decfd66a78
bump libp2p: seq[byte] message IDs and improve reject/ignore handling (#1898)
* bump libp2p: use seq[byte] message IDs and improve reject/ignore handling

* bump libp2p to pick up debug message details
2020-10-21 20:03:12 +00:00
tersec a136c2e95a
bump libp2p; integrate pubsub.ValidationResult into extended validation (#1893) 2020-10-20 12:31:20 +00:00
Zahary Karadjov dbc90e998a Add Disc v5.1 bootstrap nodes for Zinken
Also prepares the Makefiles for supporting Medalla
through a separate binary
2020-10-18 12:44:52 +03:00
Zahary Karadjov d98be078c3 Address #1690 Min password entropy 2020-10-16 19:34:26 +03:00
cheatfate 7ad59b1852 Bump nim-stew. 2020-10-15 20:18:33 +03:00
cheatfate 84fe294c00 Fix protection of data folder and security files using Windows ACL. 2020-10-15 20:18:33 +03:00
Zahary Karadjov ce1fda1195 Store the deposits and the immutable validator data in Sqlite 2020-10-15 20:15:51 +03:00
Zahary Karadjov e6320e5881 Address #1584 Don't keep all deposits in memory (persist them to disk) 2020-10-15 20:15:51 +03:00
Zahary Karadjov 8ce0fc3a89 Address #1687
This addresses the issues by detecting and rejecting keystores with
incorrect PBKDF2 and SCrypt params. It also bumps the version of
nim-json-serialization to include a bugfix for incorrect parsing
of json files featuring comments.
2020-10-15 20:15:51 +03:00
Mamy Ratsimbazafy bcd9088114
Bump blscurve/blst (missed in #1775) (#1870) 2020-10-15 14:25:12 +02:00
Ștefan Talpalaru 1ae3fb90ba
Linux AMD64 binary distribution (#1844)
* Linux AMD64 binary distribution

The builds are reproducible, as long as our base Docker Hub image
remains available.

tl;dr: `make dist`

* use UTC dates
2020-10-15 12:19:41 +00:00
tersec 513ba72b9a
add v1.0.0-rc.0 support behind compile-time flag (#1852)
* add v1.0.0-rc.0 support behind compile-time flag

* keep runtime presets consistent
2020-10-13 17:21:25 +00:00
tersec 15c989f70d
bump eth2-testnets (#1856) 2020-10-12 12:40:01 +00:00
Zahary Karadjov 5bf2cd623a
Add a genesis state for zinken 2020-10-10 13:26:26 +03:00
Zahary Karadjov 00a8a68671
Address #1695
Better error messages when the beacon node is asked to listen on a
reserved port (0) or an already taken one.
2020-10-09 16:39:03 +03:00
Zahary Karadjov d534570cf6
Use latest Zinken metadata (correct genesis time and bootstrap nodes) 2020-10-08 11:20:06 +03:00
Zahary Karadjov b46c8410a6 Retire Spadina and prepare for the Zinken network 2020-10-07 18:12:21 +03:00
Mamy Ratsimbazafy 6b9090398e
[JSON-RPC] Prevent silent uint conversion (#1819)
* Prevent silent uint conversion

* bump json-rpc
2020-10-07 15:02:54 +02:00
nbc-bump-bot[bot] 078c626554
auto-bump nim-libp2p (#1806)
Co-authored-by: = <sinkingsugar@users.noreply.github.com>
2020-10-07 12:52:25 +02:00
Ștefan Talpalaru e9b2253fac
bump nim-nat-traversal and nimbus-build-system (#1824)
* bump nim-nat-traversal and nimbus-build-system

The "clean-cross" target has been moved to the latter.

* Windows fix
2020-10-07 12:01:27 +02:00
Zahary Karadjov aed291128a Add support for starting from weak subjectivity checkpoints
Also removes the `genesis.ssz` file stored in the data folder.
The `medalla-fast-sync` target has been adapted to use the new features.
2020-10-07 09:32:03 +03:00
Zahary Karadjov fec4b5014d Address #1694 2020-10-06 15:46:22 +03:00
Jacek Sieka f484d06f6b
bump json-rpc (#1813)
gets rid of ugly inf logs
2020-10-06 10:50:15 +02:00
cheatfate 5555d39ea9 Bump nim-stew. 2020-10-05 22:19:50 +03:00
cheatfate c5c788a9db Secure network key file and data directory. 2020-10-05 22:19:50 +03:00
Jacek Sieka 596600058a
bump nimcrypto (#1802) 2020-10-03 11:21:45 +02:00
Mamy Ratsimbazafy b57693ec0d
Logging update (#1795)
* Fix discovery log message trigger

* Bump chronicles - include https://github.com/status-im/nim-chronicles/pull/89 for better NOTICE/WARNING color
2020-10-03 08:35:45 +02:00
nbc-bump-bot[bot] 7a5f389f64
auto-bump nim-libp2p (#1738)
Co-authored-by: = <sinkingsugar@users.noreply.github.com>
2020-10-03 08:21:38 +02:00
Zahary Karadjov f5340998b9 Add a fuzzing test for the beacon node CLI parser 2020-10-02 12:42:32 +03:00
Mamy Ratsimbazafy a455dc1bc0
Bump confutils to allow overriding CLI options https://github.com/status-im/nim-confutils/pull/22 (#1781) 2020-09-30 16:37:29 +02:00
Mamy Ratsimbazafy 98661914f1
Revert "bump nim-libbacktrace (#1769)" (#1773)
This reverts commit de1b3315e8.
2020-09-28 22:37:18 +02:00
Ștefan Talpalaru de1b3315e8
bump nim-libbacktrace (#1769)
* bump nim-libbacktrace

so it works with LTO

* macOS fix
2020-09-28 21:23:53 +02:00
Mamy Ratsimbazafy 9a39bda5f1
BLSCurve EIP2333 updates for Spadina (breaks old keystore recovery) (#1742)
* BLSCurve EIP2333 updates for Spadina (breaks old keystore recovery)

* Workaround blst.h and vect.h having conflicting definition of limb_t
2020-09-25 19:52:02 +02:00
Jacek Sieka 7837646079
anonymize libp2p messages (#1756)
* anonymize libp2p messages

* bump
2020-09-25 18:40:30 +02:00
Jacek Sieka b3a9afa0b1
libp2p: limit max gossip writes (#1739)
* libp2p: limit max gossip writes

* bump
2020-09-24 19:03:17 +02:00
tersec 0eb53f2802
avoid unpacking phase 1 tests to reduce Azure CI disk usage (#1736) 2020-09-24 17:16:00 +02:00
Viktor Kirilov 410a72667b fixed interop with geth after updating nim-web3 2020-09-24 16:07:57 +03:00
Mamy Ratsimbazafy 1f5b487fc6
Github Actions CI (#1693)
* Clean up PR + bump nimbus-build-system

* pcre on 32-bit + Improve env variable handling + cache mingw

* Add badge + fix setting env variable

* Auto cancel if commit becomes outdated

* fix shell for deriving env variable

* Add more cancellation points

* Add finalization tests to Github Action

* Fix case

* change cancel actions + fixes for windows and finalization

* have to use matrix variable for cache path/key

* ARCH_OVERRIDE=LATFORM issue rebuild cache

* Update scripts - deactivate workflows with identified issues + reactivate caching

* workaround mac getopt

* Disable all aAVX512f extensions (Error: invalid register for .seh_savexmm in Cygwin)

* Fix cross compile of libminiupmp #1723

* Cache fetch-dlls to avoid being a drag on nim-lang.org

* Fix windows downloading DLLs twice and set CFLAGS env variable for Linux32

* fix silly yaml mistake

* .

* reactivate win32 after https://github.com/status-im/nim-beacon-chain/pull/1726

* Comment out minimal tests for now
2020-09-24 13:45:34 +02:00
nbc-bump-bot[bot] 4ded755d32
auto-bump nim-libp2p (#1732)
Co-authored-by: = <arnetheduck@users.noreply.github.com>
2020-09-24 09:57:15 +02:00
nbc-bump-bot[bot] d7bfef3c78
auto-bump nim-libp2p (#1711)
Co-authored-by: = <arnetheduck@users.noreply.github.com>
2020-09-24 07:26:56 +02:00
Jacek Sieka e1c177cdd1
bump libp2p (#1721)
gossipsub 1.1 can be enabled with -d:nbc_gossipsub_11
2020-09-22 19:34:34 +02:00
Zahary Karadjov 73724b2c4b Add attacknet-beta1-mc-0 2020-09-22 18:51:51 +03:00
Zahary Karadjov 10cfd1ec37 Adds the Spedina testnet; Upgrades the spec presets to spec v0.12.3
Other changes:

* Removed all references to Altona
* Refactored the Makefile to avoid code duplication
2020-09-22 18:51:51 +03:00
tersec 3190c695b0
minimal v0.12.3 update (#1716) 2020-09-21 15:58:35 +00:00
Jacek Sieka f8e782fb5f
bump nim-eth (#1708)
fixes WAL file growth in sqlite - might cause nbc to freeze once for a
minute or two while clearing the wal
2020-09-21 11:07:59 +02:00
Jacek Sieka 59a3862f6f
bump nim-stew, get bitops intrinsics 2020-09-21 08:46:29 +02:00
Ștefan Talpalaru 2b6c287dbb
update: delete "nimcache" dirs (#1706) 2020-09-21 08:39:13 +02:00
Mamy Ratsimbazafy ea4ec6a785
Upgrade blst (#1682)
* Bump BLST

* Test for https://github.com/supranational/blst/issues/22 regression

* Use SHA256 from BLST + bump nim-blscurve to reenable fno-tree-vectorize

* SHA256 on non-blst platforms import fixes

* import fixes again

* can't prefix with nimcrypto

* address review comment [skip ci]

* {.noInit.} on the digests
2020-09-18 16:55:55 +02:00
nbc-bump-bot[bot] df685f0c12
auto-bump nim-libp2p (#1659)
Co-authored-by: = <arnetheduck@users.noreply.github.com>
2020-09-16 14:22:19 +02:00
nbc-bump-bot[bot] 88eb0c06c7
auto-bump nim-libp2p (#1606)
Co-authored-by: = <arnetheduck@users.noreply.github.com>
2020-09-15 16:17:25 +02:00
Eugene Kabanov 617c295839
Bump chronos to fix memory leaks. (#1648) 2020-09-15 11:45:00 +02:00
tersec aca1a318f2
cleanly close kvstore databases and bump nim-eth (#1630)
* cleanly close kvstore databases

* close databases for all subcommands and during error conditions
2020-09-12 05:35:58 +00:00
Kim De Mey 5fff800cf8
Bump nim-eth to use lrucache for discovery sessions (#1622) 2020-09-11 17:46:48 +00:00
Eugene Kabanov 9db05c484d
Bump chronos to help investigate Index problem. (#1625) 2020-09-11 07:12:12 +02:00
Jacek Sieka 7c21fa983a
bump libp2p, introduce AsyncQueue BufferStream (#1599)
* Syncing workers now not bound to peers.
Sync status is now printed in statusbar.

* Add `SyncQueue.outSlot` to statusbar too.

* Add `inRangeEvent` and `rangeAge` parameter.

* Fix rangeAge is not depends on SyncQueue latest slot.
Fix syncManager to start from latest local head slot.

* Add notInRange event.

* bump libp2p, introduce AsyncQueue BufferStream

* bump

Co-authored-by: cheatfate <eugene.kabanov@status.im>
2020-09-10 08:22:39 +02:00
Jacek Sieka 4c3dd853e1
bump libp2p (#1609) 2020-09-07 14:17:15 +02:00
nbc-bump-bot[bot] c5f8ef8e40
auto-bump nim-libp2p (#1604)
Co-authored-by: = <arnetheduck@users.noreply.github.com>
2020-09-05 08:28:03 +02:00
Jacek Sieka f61fdf93d3
bump chronos (#1598)
* bump chronos

this reverts backwards-incompatible changes to CancelledError and
resores other functionality.

chronos metrics are lost and will need to be reimplemented.

* bump
2020-09-04 21:27:54 +02:00
Ștefan Talpalaru aa3298f0ea
support spaces in $(MAKE) (#1603) 2020-09-04 08:33:37 +02:00
nbc-bump-bot[bot] 6000a49e84
auto-bump nim-libp2p (#1484)
Co-authored-by: = <arnetheduck@users.noreply.github.com>
2020-09-01 11:26:20 +02:00
tersec d9f926b33d
bump nim-eth (#1579) 2020-08-31 10:50:48 +02:00
Ștefan Talpalaru ecc70c6405 remove BUILD_LOG_LEVEL 2020-08-27 18:44:10 +03:00
Jacek Sieka 2081c4f505
avoid unnecessary seq allocations (#1573)
"sigh"
2020-08-27 08:32:51 +02:00
Zahary Karadjov 207397775b
Update the Nimbus bootstrap nodes 2020-08-26 21:22:21 +03:00
Ștefan Talpalaru ab22bad188
bump vendor/nim-metrics (#1565) 2020-08-25 09:26:56 +02:00
Ștefan Talpalaru ddd8489de0
bump vendor/nim-blscurve (#1560)
and log the BLS backend
2020-08-24 14:56:45 +02:00
Zahary Karadjov 8809f8d200 Implement 'wallets restore' and 'wallets list'; Update 'nextAccount' properly after making deposits multiple times 2020-08-22 00:16:18 +03:00
Ștefan Talpalaru 1d1e0217ca bump vendor/nim-nat-traversal 2020-08-22 00:09:45 +03:00
Zahary Karadjov 2c19e3f8cd
[skip ci] Use GOSSIP_MAX_SIZE when snappy decoding in the inspector as well; Bumps 2020-08-19 14:33:52 +03:00
Zahary Karadjov 3433c77c35 Prevent Snappy decompression bombs 2020-08-19 10:13:04 +03:00
Zahary Karadjov 4cf54eadf9
Bump libp2p in order to restore interop with Lighthouse 2020-08-18 20:06:43 +03:00
Zahary Karadjov 17ca72cf55 Bump nim-libp2p 2020-08-17 17:24:36 +03:00
Jacek Sieka 8c56a01706 restore NBC finalization
the root cause is a deadlock where the bufferstream space is exhausted
and libp2p stops reading from the socket, eventually timing it out
2020-08-17 17:24:36 +03:00
Dmitriy Ryajov 87f983c639 use split out pubsub 2020-08-17 17:24:36 +03:00
Mamy Ratsimbazafy 454b9d0724
Bump nim-blscurve (#1491)
* Bump BLSCurve

* Use unified aggregation API

* use new blscurve with unified aggregate API

* bump

* fix toRaw

* replace state_sim combine with AggregateSignature

* Fix 32-bit

* Fix 32-bit for real and test deactivating ccache for fno-tree-lopp-vectorize flag

* change compilation switches to narrow down Linux issue

* Use -fno-tree-vectorize to disable both tree-loop-vectorize and tree-slp-vectorize

* blscurve now disables both Loop and SLP vectorization

* Add tests for the miracl/milagro fallback

* Travis has max log size of 4MB

* Test with Miracl in the finalization test

* fix state_sim log level

* Coment out the slow fallback tests
2020-08-15 19:33:58 +02:00
Eugene Kabanov 37cb0a2249
Bump nimcrypto (#1492) 2020-08-14 21:21:55 +02:00
Jacek Sieka 936440fccd
use libp2p peer events to track peer (#1468)
this resolves some peer counting issues that were happening because the
lifetime future in PeerInfo was unreliable (multiple PeerInfo instances
existed per peer)

In addition, this solves another race condition: when connecting to a
peer and later dialling that protocol, it is not certain that the same
connection will be used if there's a concurrent incoming peer connection
ongoing - better not make too many assumptions about who sent statuses
when.
2020-08-10 12:58:34 +02:00
Ștefan Talpalaru cd0f4a2d23
bump vendor/nim-metrics 2020-08-09 16:38:30 +02:00
Ștefan Talpalaru 5e9c91381e
bump submodules (#1472)
* fork News

* bump submodules
2020-08-08 18:00:19 +02:00
nbc-bump-bot[bot] 3d39757321
auto-bump nim-libp2p (#1461)
Co-authored-by: = <arnetheduck@users.noreply.github.com>
2020-08-07 18:29:13 +02:00
nbc-bump-bot[bot] 8d14e0aca6
auto-bump nim-libp2p (#1446)
Co-authored-by: = <arnetheduck@users.noreply.github.com>
2020-08-06 12:45:14 +02:00
Jacek Sieka 6d3f1b93be bump 2020-08-05 19:34:59 +03:00
Jacek Sieka 221f372dbc use peer id in a number of places 2020-08-05 19:34:59 +03:00
nbc-bump-bot[bot] b13b04bd7b
auto-bump nim-libp2p (#1444)
Co-authored-by: = <dryajov@users.noreply.github.com>
2020-08-05 13:02:14 +02:00
nbc-bump-bot[bot] ae072d39e6
auto-bump nim-libp2p (#1427)
Co-authored-by: = <stefantalpalaru@users.noreply.github.com>
2020-08-05 03:16:10 +02:00
Zahary Karadjov 25474d055b
Bump eth2-testnets 2020-08-04 17:27:19 +03:00
nbc-bump-bot[bot] 771ed7044a
auto-bump nim-libp2p (#1412)
Co-authored-by: = <dryajov@users.noreply.github.com>
2020-08-04 04:54:19 +00:00
Dmitriy Ryajov 52d9d269d7
bump libp2p (delayed send, without hooks) (#1413)
* use `switch.isConnected`

* libp2p

* add timeout to publish

* use isConnected

* adjust timeouts

* latest libp2p master

* do not drop peers
2020-08-03 16:43:22 +00:00
Zahary Karadjov 8c2a9a4950
Switch back to the old undepleted Infura key; Bake in the Medalla genesis state 2020-08-03 03:59:45 +03:00
Zahary Karadjov d052623381
Fix a trivial issue with 'make medalla' and add more logging 2020-08-03 00:19:25 +03:00
Zahary Karadjov c293254ded Add 'deposits import' command; Switch to NJS when loading the keystores and improve the data validation 2020-08-02 23:00:43 +03:00
Zahary Karadjov 2a94f6eca6 medalla-deposit target capable of executing mass deposits 2020-08-02 23:00:43 +03:00
Jacek Sieka 25d7a17745
Revert "bump"
This reverts commit adbcde07f2.
2020-08-02 11:57:46 +02:00
Jacek Sieka adbcde07f2
bump 2020-08-02 11:46:12 +02:00
Ștefan Talpalaru 8ab9174208
bump vendor/nim-chronicles (#1405) 2020-07-31 01:48:58 +02:00
Ștefan Talpalaru f2512a0c71
Nim-1.2.6-RC1 (#1398)
* Nim-1.2.6-RC1

* Azure: bump cache key
2020-07-30 14:08:49 +02:00
Zahary Karadjov 0c60e452e7 Allow the deposit contract deployment block to be specified as a number (needed for Medalla) 2020-07-28 18:13:01 +03:00
Zahary Karadjov 40ea9e9886 Integrate the Wallet support with the Deposits creation; Produce Launchpad-compatible deposits 2020-07-28 07:36:25 +03:00
Zahary Karadjov fcd412f7a1 Finish the 'create wallet' command; Addresses #1319 2020-07-28 07:36:25 +03:00
tersec 20a2525390
v0.12.2 beacon chain protocol update (#1378) 2020-07-27 12:59:57 +02:00
Zahary Karadjov 5a4f6b7e5e
Restore the SSZ fuzzign tests to working state 2020-07-22 16:20:07 +03:00
Jacek Sieka 6712c7bdfd
Bumps2 (#1336)
* bumps
2020-07-17 07:02:10 +00:00
Ștefan Talpalaru 9571cb5f7a
bump vendor/nimbus-build-system 2020-07-16 21:08:27 +02:00
Ștefan Talpalaru 88a9629c2b
bump submodules 2020-07-14 03:01:23 +02:00
Dmitriy Ryajov b0470d7318
bumps (#1289)
Co-authored-by: Jacek Sieka <jacek@status.im>
2020-07-13 22:05:04 +02:00
Jacek Sieka d6897409e4
bump-eth (#1310) 2020-07-13 16:58:56 +02:00
Kim De Mey 80cba4db91
Bump nim-eth (#1305) 2020-07-13 12:46:05 +02:00
Eugene Kabanov c544a3b250
Bump nimcrypto. (#1301)
* Bump nimcrypto.

* Add more recent version
2020-07-11 15:14:23 +02:00
Zahary Karadjov c06c60dcaf
Merge branch 'devel' into cli-reforms 2020-07-10 16:23:27 +03:00
Kim De Mey 396825344c
Bump nim-eth and adjust code for it (#1293) 2020-07-10 11:17:15 +02:00
Zahary Karadjov 540b2828b2
Adapt the local sim scripts to use the new run-time presets 2020-07-10 01:08:54 +03:00
Zahary Karadjov 318b225ccd
Merge devel and resolve the conflicts 2020-07-08 15:36:03 +03:00
Zahary Karadjov c4af4e2f35
Working test suite with run-time presets 2020-07-08 02:02:14 +03:00
Jacek Sieka 6fe0a623f5
Crypto rng (#1284)
* use bearssl rng throughout

* bump

* bump

* move keygen out of crypto
2020-07-07 17:51:02 +02:00
Zahary Karadjov 98761afc64
Run beacon_node --network=altona without initial Eth1 syncing 2020-07-02 18:52:48 +03:00
Zahary Karadjov e342b96d2e
Embed the Altona metadata in the NBC executable 2020-07-02 18:14:11 +03:00
cheatfate 76c12d493e Add check for late attestation sent messages in logtrace tool. 2020-07-02 10:36:04 +03:00
Kim De Mey c43bf48de2
Bump vendor/nim-eth (#1268) 2020-07-01 16:05:42 +02:00
Jacek Sieka ef2f037571
bump libp2p (#1267) 2020-07-01 13:41:40 +02:00
Dmitriy Ryajov 76a9708dff
bumping libp2p to latest master (#1258) 2020-06-30 09:43:39 +02:00
tersec b4db2ad693
remove v0.11.3 support; add block_sim to CI (#1253)
* remove v0.11.3 support; add block_sim to CI

* rm stray PERSISTENT_COMMITTEE_PERIOD

* remove TopicFilter.InteropAttestations

* bump two comment-spec-refs to v0.12.1
2020-06-29 18:08:58 +00:00
Zahary Karadjov 31e31bb30c Switch to monitoring of Blocks; More accurate genesis detection and faster Eth1 syncing 2020-06-29 02:18:48 +03:00
Jacek Sieka 816779733e
use the eth2 message id for gossip (in logging too) (#1246)
* use the eth2 message id for gossip (in logging too)

* bump

* add spec link
2020-06-28 22:06:50 +02:00
Jacek Sieka 70d468ac2b
bump libp2p (#1232) 2020-06-26 21:01:00 +02:00
Zahary Karadjov 384e512031 Implement EIP-2386 wallets; Progress towards a CLI for interactive wallet creation
For more information:
4494da0966/EIPS/eip-2386.md (specification)
2020-06-24 23:06:05 +03:00
Zahary Karadjov f20f077827 Introduce some short-cuts in the Eth1 monitoring for faster syncing 2020-06-24 19:22:52 +03:00
tersec 12ee61421f
bump nim-blscurve to switch default to v0.12.x BLS (#1228) 2020-06-24 14:53:16 +00:00
Jacek Sieka 1d709c09f4
secp: requiresInit (#1210)
* secp: requiresInit

* bump
2020-06-22 21:40:19 +02:00
Zahary Karadjov a2e28bef27 Further removal of enum support; Bump modules 2020-06-22 20:14:14 +03:00
Ștefan Talpalaru c06682f588
Makefile: move "nat-libs" to "deps" 2020-06-22 17:08:29 +02:00
Zahary Karadjov 7211a99086 Smooth out the differences between Ganache and Infura; Working local sim and Altona target 2020-06-22 17:30:04 +03:00
Zahary Karadjov 14274587cf More user-friendly logging during mainchain monitoring 2020-06-22 17:30:04 +03:00
Zahary Karadjov ffb613d3c6 Usability enhancements for Tmux
* Press 'q' to quit Tmux
* In case of errors, Tmux will wait for a keypress before closing a pane
2020-06-22 17:30:04 +03:00
Zahary Karadjov 3d9aff5d23 Fix some logical typos introduced in the rebase 2020-06-22 17:30:04 +03:00
Zahary Karadjov 1def383ad1 Reword the Tmux setup to handle all simulation scenarios in more visible way 2020-06-22 17:30:04 +03:00
Zahary Karadjov e9d68e2f7b Add simulation mode that bootstraps from an Eth1 ganache instance 2020-06-22 17:30:04 +03:00
Zahary Karadjov 7d3160b0b5 Local sim now includes a prometheus server, a Ganache instance and a simulation dashboard server (in Tmux mode) 2020-06-22 17:30:04 +03:00
Jacek Sieka a661ecbae1
bump libp2p (#1209) 2020-06-21 18:45:28 +02:00
Ștefan Talpalaru e61776b9ab
Merge pull request #1105 from status-im/Nim-1-2-2
Nim-1.2.2
2020-06-17 19:28:11 +02:00
Jacek Sieka 073046f8ab bump libp2p 2020-06-17 13:21:12 +00:00
Ștefan Talpalaru e072997e97
Nim-1.2.2 2020-06-17 14:42:22 +02:00
Viktor Kirilov 00537b391c updated news - includes a fix for the test suite of nim-web3 2020-06-17 11:15:55 +03:00
Ștefan Talpalaru 9335533503 bump submodules 2020-06-16 04:27:20 +00:00
tersec f3fd7e17a3 Revert "bump libp2p (#1173)"
This reverts commit 95a8a0e81c.
2020-06-15 14:31:28 +00:00
Jacek Sieka 95a8a0e81c
bump libp2p (#1173) 2020-06-14 13:45:05 +02:00
Ștefan Talpalaru cd80fab5a9
add link to nimbus-build-system docs 2020-06-13 02:01:19 +02:00
Kim De Mey 68a8b7d969
Filter discovery nodes on forkId (#1162) 2020-06-12 16:14:18 +02:00
Jacek Sieka f9c5769d42
bump libp2p 2020-06-11 10:12:52 +02:00
Jacek Sieka 016cc22173
show peer info on connect (#1155) 2020-06-11 07:14:26 +02:00
Ștefan Talpalaru 4517bf5dd4
Merge pull request #1156 from status-im/bump
bump submodules
2020-06-09 22:29:16 +02:00
Dustin Brody 8f7541959a allow compile-time switching between v0.11.3 and v0.12.1 2020-06-09 18:39:05 +00:00
Dustin Brody cc13153fc6 initial 0.12.1 beacon chain spec 2020-06-09 18:39:05 +00:00
Ștefan Talpalaru 2a70f8c9d1
bump submodules 2020-06-09 20:00:33 +02:00
李婷婷 9c1da836f7 fix all comments 2020-06-10 00:50:10 +08:00
李婷婷 77364548e2 rebase from devel 2020-06-10 00:29:29 +08:00
Viktor Kirilov b3710bfc0b updated nim-json-rpc to use instead of in logScope 2020-06-09 17:07:47 +03:00
Ștefan Talpalaru 63d8966316 bump submodules 2020-06-06 17:20:54 +00:00
Dmitriy Ryajov 99b2d6758a
upping libp2p (#1135) 2020-06-06 10:35:36 +02:00
Zahary Karadjov 83eeff4da9
Bump chronos 2020-06-05 20:10:43 +03:00
Zahary Karadjov 1e51ee1d01
Bump nim-eth 2020-06-05 19:37:42 +03:00
Zahary Karadjov 0c78fc39e7
Use the latest LibP2P 2020-06-05 19:34:12 +03:00
Zahary Karadjov 32bc4d9096 Use {.push raises.} in spec/datatypes
This was an attempt to trigger a previously reported crash, but
everything turned out to be fine.
2020-06-05 19:33:30 +03:00
Eugene Kabanov b22e5b6d1d
Fix #1108 (#1119) 2020-06-04 13:32:50 +02:00
Jacek Sieka 56ffb696be
reorder ssz (#1099)
* reorder ssz

* split into hash_trees and ssz_serialization, roughly, for hashing and
IO
* move bitseqs into ssz (from stew)
* clean up imports

* docs, imports
2020-06-03 15:52:02 +02:00
Zahary Karadjov ef90a45509
Bump testutils 2020-06-01 16:58:28 +03:00
Zahary Karadjov 0bcdabfcdf Detect another invalid SSZ input found through fuzzing
The first offset of an SSZ object should always have a fixed constant
value. Otherwise, some unused bytes may appear between the fixed portion
and the dynamic portion.

Please note that this fix shutds down the minimal forward compatibility
currently supported by the SSZ format (and thus, the expected behavior
must be clarified in the SSZ spec).
2020-05-30 14:47:35 +03:00
Zahary Karadjov 8d1fb2f3a6 Bump nim-eth to fix 'make witti' 2020-05-29 21:13:58 +03:00
Kim De Mey e33c8d9067
Bump nim-eth and accompanying discv5 cleanup (#1081) 2020-05-29 12:03:29 +02:00
Ștefan Talpalaru 4b731b266d
bump vendor/nimbus-build-system 2020-05-29 00:18:47 +02:00
Mamy André-Ratsimbazafy 49c33f0890 Use v0.12 ready BLS curve 2020-05-28 15:09:56 +00:00
Dmitriy Ryajov e238e8186c
bumping libp2p to latest master (#1075) 2020-05-28 06:38:07 +02:00
Ștefan Talpalaru 489565b5ab
Makefile: small testnet targets refactoring (#1078) 2020-05-28 06:28:10 +02:00
Zahary Karadjov 47864c7c6c
Fix wrong bump 2020-05-27 20:14:31 +03:00
Zahary Karadjov fe2bcb20d2
Bump modules to fix 'make witti-dev' 2020-05-27 20:13:18 +03:00
Zahary Karadjov 28128f4d2f Add a handler for the Goodbye message
The lack of body of `goodbye` in sync_protocol.nim was preventing
the respective LibP2P protocol to be mounted and advertised on the
network.

Adding a body fixes that, but I've also made some changes in the
P2P protocol codegen that will prevent the issue from happening
again (no body is now considered the equivalent of having an empty
body).
2020-05-26 22:17:26 +03:00
Zahary Karadjov b6c9de968f
Fix some build problems and warnings 2020-05-25 20:33:03 +03:00
Zahary Karadjov f41d823d07
Bump modules 2020-05-25 13:41:42 +03:00
Zahary Karadjov 833f19e942 Reform the networking layer in order to handle the new stricter SSZ API 2020-05-24 19:00:34 +03:00
Ștefan Talpalaru f16fb31060 bump vendor/nimbus-build-system 2020-05-22 13:51:37 +00:00
Ștefan Talpalaru e4173860f0
bump vendor/nimbus-build-system (#1050)
* bump vendor/nimbus-build-system

* Jenkins: switch to Bash for the "Build" stage
2020-05-21 00:02:05 +02:00
Ștefan Talpalaru 46a99c35f0
bump vendor/nimbus-build-system 2020-05-20 15:55:31 +02:00
Zahary Karadjov 202bbbab6c Bump some modules 2020-05-20 15:51:45 +03:00
Zahary Karadjov 52c3ebf631 Fuzzing tests for SSZ 2020-05-20 15:51:45 +03:00
Ștefan Talpalaru 383b22795c
bump submodules (#1043) 2020-05-20 06:57:39 +02:00
Dustin Brody 6c941b1ff7 spec v0.11.3 update 2020-05-19 17:16:55 +00:00
Zahary Karadjov a99977b772 Progress towards #991; Enable the distinct ssz.List type 2020-05-19 15:53:03 +03:00
tersec 8432932c11
update to spec v0.11.2 to keep compatible with Schlesi (#1036)
* update to spec v0.11.2 to keep compatible with Schlesi

* update spec/state_transition_epoch spec references to v0.11.2

* bump other spec refs
2020-05-18 23:05:27 +00:00
Dmitriy Ryajov 398166369b bump libp2p to latest master 2020-05-18 21:51:03 +00:00
Jacek Sieka 6be7d64e8c
bump libp2p (#1031) 2020-05-18 10:11:21 +02:00
Ștefan Talpalaru c232fd0b3d
bump vendor/nimbus-build-system 2020-05-15 14:27:21 +02:00
Jacek Sieka 6c9e2d98a8 bump libp2p 2020-05-14 16:41:19 +03:00
Jacek Sieka a605c7244e simplify libp2p snappy
* handle a few more exceptions gracefully (in libp2p also)
* unify libp2p varint parsing
* decompress directly into seq
* avoid seq slice
* stop oversized snappy processing earlier (lowers risk)
2020-05-14 16:41:19 +03:00
Viktor Kirilov 926d1c546e updated news, also no longer allowing event handlers to raise anything other than a Defect in the Web3 API 2020-05-14 14:10:26 +03:00
Zahary Karadjov e537ed94d6
Bump some modules 2020-05-13 12:19:58 +03:00
Zahary Karadjov 75c1c6a95c Enable Snappy by default (using LibP2P steams for now)
This refactors the newly added Snappy streaming back-ends trying to
make them more similar and to reduce the code duplication to a minimum.
2020-05-13 12:18:42 +03:00
Zahary Karadjov f055fad08a Make the Snappy FastStreams integration optional by duplicating it for LibP2P streams 2020-05-13 12:18:42 +03:00
Zahary Karadjov 7e846a0bce Implement sszSize 2020-05-13 12:18:42 +03:00
Zahary Karadjov dbe0010504 Bump nim-snappy 2020-05-13 12:18:42 +03:00
Zahary Karadjov 15f0153441 Cosmetic improvements 2020-05-13 12:18:42 +03:00
Zahary Karadjov 9538b60704 Integrate the async Snappy implementation 2020-05-13 12:18:42 +03:00
Zahary Karadjov a739d7e8d6 Adapt SSZ to the latest FastStreams API 2020-05-13 12:18:42 +03:00
Jacek Sieka 0d1a602cf5
bump libp2p 2020-05-11 21:06:58 +02:00
Ștefan Talpalaru 2d78523423
fix Grafana dashboards (#1006)
* fix Grafana dashboards

and refactor a couple of scripts

* start.sh: allow running standalone script
2020-05-11 18:35:53 +00:00
Jacek Sieka fb2e0ddbec
sync fixes (#1005)
* sync fixes

* fix Status message finalized info
* work around sync starting before initial status exchange
* don't fail block on deposit signature check failure (fixes #989)
* print ForkDigest and Version nicely
* dump incoming blocks
* fix crash when libp2p peer connection is closed
* update chunk size to 16 to work around missing blocks when syncing

* bump libp2p

* bump libp2p

* better deposit skip message
2020-05-11 18:08:52 +00:00
Ștefan Talpalaru a7a50824a1
more metrics (#1004) 2020-05-11 06:25:49 +00:00
Jacek Sieka 592d6f65c3
bump (#1001) 2020-05-09 16:47:14 +02:00
Ștefan Talpalaru c572f61129
bump vendor/nim-metrics 2020-05-09 01:13:57 +02:00
Ștefan Talpalaru fc9d6bc1b3
enable SO_REUSEADDR in libp2p transports 2020-05-08 21:50:20 +02:00
Eugene Kabanov 3ffd0d7216
Fix gossip messages not delivered. (#983) 2020-05-06 15:42:59 +00:00
Jacek Sieka e65f5c86da
vendor: bump (#954) 2020-04-30 18:27:04 +02:00
Zahary Karadjov 667bdf066a Bump Chronicles to fix a minor bug; Add a placeholder for disabled topics 2020-04-28 13:49:30 +03:00
Zahary Karadjov 7237a370ba Implement https://github.com/status-im/nim-beacon-chain/issues/872
Please see the newly added 'schlesi-dev' Makefile target.
It demonstrates how the log level can be specified for individual topics.

Additionally, when connecting to testnets like 'schlesi' there will be
two additional log files produced in the working directory:

* json-log.txt
* text-log.txt (in the textblocks format)
2020-04-28 13:49:30 +03:00
Jacek Sieka 898df9ba45
kvstore: port to nim-eth (#938) 2020-04-27 18:36:28 +02:00
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 fe30b24aba
bump (#929) 2020-04-24 11:47:51 +02:00
Viktor Kirilov 0079242457 again exported the right overloads for serializing hashes properly to json (and not as byte arrays) and updating nim-eth 2020-04-23 20:46:13 +03:00
Jacek Sieka 6729d3c032
kvstore: fix raising, be harsher on database errors (#923)
* kvstore: fix raising, be harsher on database errors

* bump stew/serialization
2020-04-23 08:27:35 +02:00
Zahary Karadjov ae9ca33aca
Disable the faststreams destructors 2020-04-22 21:33:04 +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
Ștefan Talpalaru 2f74951c04
bump submodules (#912) 2020-04-21 16:54:32 +02:00
Giovanni Petrantoni b441a373db Bump libp2p submodule 2020-04-21 10:46:21 +09:00
Ștefan Talpalaru 1babc00255
new initial submodule update strategy (#904)
* new initial submodule update strategy

* Azure: fix command order
2020-04-19 01:25:21 +02:00
Jacek Sieka 8b6c51e78d
secp: convenience api (#897) 2020-04-17 15:29:49 +02:00
Ștefan Talpalaru 6975869ad6
bump submodules (#899) 2020-04-17 01:04:46 +02:00
Zahary Karadjov e7259ce7ec
Bump faststreams 2020-04-17 00:23:11 +03:00
Zahary Karadjov a4830976ab
hotfix: fix the selecting of the syncing protocol handlers 2020-04-16 15:01:19 +03:00
Ștefan Talpalaru 7b8d6ea61c
bump vendor/nimbus-build-system (#894)
* bump vendor/nimbus-build-system

* change beacon_node banner

* beacon_node: update copyright years

* version.nim is imported in beacon_chain.nimble
2020-04-16 00:20:27 +02:00
Zahary Karadjov 99f9bc4eee Fix the inspector build 2020-04-16 01:01:18 +03:00
Zahary Karadjov 672f690bf6 Implement most of the v0.11.1 networking changes 2020-04-16 01:01:18 +03:00
Zahary Karadjov 8d639d9bd7 Avoid accidental memory allocations in SSZ 2020-04-16 01:01:18 +03:00
Zahary Karadjov ca49494356 Fix test_fixture_ssz_generic_types 2020-04-16 01:01:18 +03:00
Zahary Karadjov f34fd46e3a Add snappy and protobuf-serialization; Use the latest FastStreams API 2020-04-16 01:01:18 +03:00
Ștefan Talpalaru 7435c2010f
remove last traces of Go support
You'll have to run `chmod -R 755 vendor/go && rm -rf vendor/go` locally.
2020-04-15 14:38:42 +02:00
Ștefan Talpalaru b7a32a17ba
bump submodules
and remove failing syncManagerGroupRecoveryTest
2020-04-14 18:21:56 +02:00
Jacek Sieka bf2355d877
bump modules (#885) 2020-04-13 08:57:55 +02:00
Jacek Sieka afa08c8e3c
crypto: cleanup (#882)
* crypto: cleanup

* fix several Defect-on-user-input
* make crypto interface more similar to secp
* use `crypto.nim` in all of nbc

* digest: raises

* fix

* vendor
2020-04-11 10:51:07 +02:00
Ștefan Talpalaru a7fe5e4218
Azure: change NimBinaries cache key
- also bump submodules to match "devel"
2020-04-08 17:33:13 +02:00
Ștefan Talpalaru 2308dc9520
bump Nim target commit to latest devel 2020-04-08 14:36:03 +02:00
Zahary Karadjov 779349c11d
Compile NBC with Nim 1.2 RC 2020-04-03 22:04:03 +03:00
Jacek Sieka d180724d41
Bump eth (#857)
* vendor: bump stew
* vendor: bump nim-eth
* vendor: bump web3 too
2020-04-03 11:12:38 +02:00
Ștefan Talpalaru eaf4594f77
bump submodules 2020-04-01 23:05:49 +02:00
Ștefan Talpalaru 3ccb2dcb88
Merge branch 'discv5-ip-checks' into bump 2020-04-01 22:48:17 +02:00
Dmitriy Ryajov f811ed63be
use pkill in start.sh to fix mac os (#845) 2020-04-01 10:53:05 +00:00
Ștefan Talpalaru 3239b62904
move "--import:libbacktrace" to config.nims
This simplifies the `./env.sh nim c -r ...` scenario.
2020-03-31 14:53:41 +02:00
kdeme 8b9c8a692e
Discv5: Don't pass ip address when external ip is not known 2020-03-31 12:02:13 +02:00
tersec f5f939bd31
0.11.1 beacon chain spec update (#836)
* initial 0.11.1 spec commit; no test regressions and finalizes in eth2_network_simulation

* with BLS 0.10/0.11 available, stop skipping attester slashing, proposer slashing, and voluntary exist operations fixture tests

* switch param orders to group state.{fork, genesis_validators_root}; bump spec/datatypes spec version for network purposes

* mark attestation construction and broadcast and some minimal/mainnet constants as 0.11.1-compatible; remove phase 1 sharding constants from minimal which don't exist in that preset
2020-03-30 11:31:44 +00:00
Dmitriy Ryajov 9b07b87ca5
bump libp2p (#837)
Both `make eth2_network_simulation` and `./scripts/launch_local_testnet.sh --nodes 4 --disable-htop -- --verify-finalization --stop-at-epoch=7` work locally.
2020-03-28 19:20:52 +00:00
Zahary Karadjov 86a3bea1ec Use the latest Chronos and Libp2p 2020-03-24 22:14:40 +02:00
kdeme b80a5b90df Adjustments to store bootnode enrs in discovery object + bump nim-eth 2020-03-24 22:14:40 +02:00
Ștefan Talpalaru 1752e1c2b6 bump submodules 2020-03-23 14:57:26 +02:00
Zahary Karadjov 5868afe341
Restore compilation with -d:p2pdump 2020-03-22 19:28:11 +02:00
Zahary Karadjov d589cb7964 Fix the build with Json logging enabled 2020-03-22 19:00:09 +02:00
Zahary Karadjov 7d2381240f Bump nim-eth and nim-json-rpc 2020-03-22 19:00:09 +02:00
Ștefan Talpalaru 4f0caeceed
Merge branch 'bump' into devel 2020-03-18 20:20:10 +01:00
tersec 2a2d6ea6f7
remove vestiges of rocksdb (#813) 2020-03-18 19:43:51 +01:00
Ștefan Talpalaru b0e7e248d5
bump submodules 2020-03-18 17:20:34 +01:00
Dustin Brody 75003c22e1 drop 0.10.1 EF test vectors 2020-03-17 12:06:56 +02:00
tersec 33687c3e41
remove lmdb (#809) 2020-03-14 11:33:37 +01:00
Zed f7862a4cc2 Update testutils submodule 2020-03-13 14:38:59 +00:00
Mamy André-Ratsimbazafy 04234bf90e Fix second stack-smashing (https://github.com/status-im/nim-blscurve/issues/43#issuecomment-598357932) 2020-03-13 12:20:41 +00:00
Mamy André-Ratsimbazafy 28dc8a6a29 Fix mock signatures/validator keys and stack smashing 2020-03-13 12:20:41 +00:00
Mamy André-Ratsimbazafy 985298be1e update blscurve with privtopub, serialize and exportRaw primitives 2020-03-13 12:20:41 +00:00
Mamy André-Ratsimbazafy c418bf2b24 Update vendor/nim-blscurve 2020-03-13 12:20:41 +00:00
Dustin Brody 158f3a5c13 bump EF test vectors to 0.11.0 (keeping 0.10.1) and clean up leftover tests/official/fixtures/ directory 2020-03-13 11:40:05 +00:00
Ștefan Talpalaru 68f166800d bump vendor/nim-metrics 2020-03-13 08:21:36 +00:00
Ștefan Talpalaru 1caafba79c
Merge pull request #803 from status-im/misc/bump-libp2p
bumping libp2p to latest master
2020-03-12 01:57:11 +01:00
Dmitriy Ryajov 8d6bfd7ce7 bumping chronos to latest master 2020-03-11 10:53:36 -06:00
kdeme 2e5899c6d7 Bump nim-eth for discv5 fixes 2020-03-11 16:05:11 +00:00
Dmitriy Ryajov 50df0051a8 bumping libp2p to latest master 2020-03-11 10:02:28 -06:00
Jacek Sieka cf2dd002f6
bump stew 2020-03-10 12:54:06 +01:00
Jacek Sieka 1f1f06e8d9
Revert "bump modules"
This reverts commit e93bb880cf.
2020-03-06 23:46:34 +01:00
Jacek Sieka e93bb880cf
bump modules 2020-03-06 23:12:25 +01:00
Jacek Sieka 435ce15b04
bump modules 2020-03-05 17:52:26 +01:00
kdeme 02717a6354 Use randomNodes from discv5 instead of lookup 2020-03-05 13:17:34 +02:00
Zahary Karadjov 2623ac191f
Force the nodes in the local sim to announce 127.0.0.1 in discovery 2020-02-27 20:45:26 +02:00
Ștefan Talpalaru c2c570fcb0
bump submodules
plus a few small modifications
2020-02-26 01:14:20 +01:00
Zahary Karadjov e4ed51a144
Add nim-testutils 2020-02-24 15:39:50 +02:00
Ștefan Talpalaru 8b8a99135f
bump vendor/nim-eth
and improve htop processes in launch_local_testnet.sh
2020-02-23 01:56:29 +01:00
Zahary Karadjov fa0f3b4468
Use the specified extip address in the advertised ENR records 2020-02-22 20:54:15 +02:00
Dmitriy Ryajov 08915ed597 bump libp2p and increase bootstrap timeout 2020-02-21 12:03:19 -06:00
Ștefan Talpalaru c10d53faaf
bump submodules 2020-02-21 01:35:54 +01:00
Ștefan Talpalaru fbb16d8aa3
bump vendor/nim-libbacktrace 2020-02-20 22:06:40 +01:00
Jacek Sieka c25f8d4adf
sqlite kvstore backend (#749) 2020-02-20 11:49:34 +01:00
Zahary Karadjov 55886ff0ac
More proper fix replacing hotfix 052a6ac3bc
nim-eth was bumped to take advantage of a fixed `==` for public eth keys
2020-02-19 11:59:38 +02:00
Zahary Karadjov 2d53f42fc4 Switch to the merged PR in Chronos and nim-eth 2020-02-18 12:53:49 +02:00
Zahary Karadjov b2d5aba749 Advertise the TCP port of the bootstrap node properly 2020-02-18 12:53:49 +02:00
Zahary Karadjov 2c814db750 Temporary switch to supporting only ENR bootstrap addresses
Turns out the DiscV5 code relies heavily on the presence of ENR
records at the moment, so we cannot drive it with ENodes. @kdeme
is working on refactoring that will relax these requirements.
2020-02-18 12:53:49 +02:00
Zahary Karadjov d2f59ebab9 Switch to ENR records in the bootstrap_nodes.txt file 2020-02-18 12:53:49 +02:00
Zahary Karadjov a620c83916 Handle status bar spanning multiple lines (relevant for the Tmux network sim) 2020-02-18 12:53:49 +02:00
Ștefan Talpalaru 14b207e22d
bump vendor/nim-libp2p 2020-02-18 01:13:53 +01:00
Mamy André-Ratsimbazafy 59bfc1c7b5 Rebrand "fixtures" -> scenario + move to "vendor" 2020-02-17 15:26:11 +00:00
Ștefan Talpalaru e72dfeed73
nim-libbacktrace: don't build the C++ wrapper 2020-02-15 12:58:58 +01:00
Ștefan Talpalaru e5629ebc1f
bump vendor/nim-libbacktrace 2020-02-14 12:50:59 +01:00
Ștefan Talpalaru 06322385d9
lightweight stack traces
- plus some light test runner refactoring and some Makefile cosmetic changes
- compile tools with LOG_LEVEL=TRACE in CI
- bump a couple of submodules
2020-02-13 17:54:53 +01:00
Ștefan Talpalaru 1ce6d6bf31
fix Azure Pipelines 64-bit build 2020-02-12 02:05:24 +01:00
Ștefan Talpalaru 649d691081
bump submodules 2020-02-11 23:16:02 +01:00
Ștefan Talpalaru b2b284dd25
fork NimYAML
because of https://github.com/flyx/NimYAML/issues/77
2020-02-11 22:21:07 +01:00
Jacek Sieka 5cea471c4b
bump libp2p 2020-02-08 20:19:33 +01:00
Dmitriy Ryajov 0bc16518ed bumping libp2p to latest 2020-02-05 20:59:32 +01:00
Zahary Karadjov d634eba3fd
Produce a json log file in the data dir of each node in the local network sim 2020-02-04 16:09:21 +01:00
Ștefan Talpalaru 2a7ef4e5e5
Nim 1.0.6 2020-01-31 22:26:10 +01:00
Ștefan Talpalaru 28264aa293
Nim 1.0.6 RC 2020-01-31 22:26:07 +01:00
Zahary Karadjov 1f1a244f3f Implement more checks and wire up the invalid SSZ tests 2020-01-29 10:10:28 +02:00
Zahary Karadjov 70a387d1c7
Bump Chronos 2020-01-28 22:29:18 +02:00
Zahary Karadjov 257771d9af
Bump Chronos 2020-01-28 00:59:37 +02:00
Jacek Sieka 4568d290b4
result -> stew/result 2020-01-24 09:36:04 +01:00
Zahary Karadjov 9daa10ee6d Bump modules 2020-01-21 01:26:57 +02:00
Zahary Karadjov 4848b12050 Detect and use Lighthouse's boot_enr.yaml files 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
Zahary Karadjov ff140689da Bump nim-libp2p and nim-eth (switched to enr branch) 2020-01-21 01:26:57 +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
Ștefan Talpalaru 6a9baf9688
bump vendor/nim-libp2p 2020-01-13 19:53:42 +01:00
Jacek Sieka 746659bdc6
bump stew, fix warnings (#655) 2019-12-20 14:25:33 +01: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
Ștefan Talpalaru bc8264a043
bump nim-eth & nim-nat-traversal 2019-12-12 02:35:15 +01:00
Ștefan Talpalaru 6dd54393ed
bump vendor/nim-nat-traversal 2019-12-10 16:46:31 +01:00
Jacek Sieka 2d5605524a
bump submodules 2019-12-10 15:52:15 +01:00
Jacek Sieka a3145f0f5c cleanups
* move stuff out of beaconnode
* fix use-after-free in query
2019-12-10 14:47:52 +00:00
Zahary Karadjov 10e6d4842f Local sim finalizes with native LibP2P 2019-12-10 15:02:16 +02: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
Ștefan Talpalaru f8e2496b06
bump vendor/nimbus-build-system [skip ci] 2019-12-03 17:18:35 +01:00
Zahary Karadjov ee2448b221 Simple validator onboarding
On your very first connection to each testnet, you'll be asked to
become a validator. Please consult our private repo for a Goerli
Eth1 private key that you can use for deposits.

Other changes:

* Added a simple wrapper ./connect-to-testnet script calling the
  nims file in the correct environment. No extension was used to
  make the command the same on Unix and Windows.

* Bumped a number of modules with fixes from this week

* `make testnet0` and `make testnet1` will no longer delete your
  existing database. This is considered a more appropriate behavior
  for testing forward sync.
2019-12-03 02:23:17 +02:00
Ștefan Talpalaru 7682a010a9 remove getCurrentExceptionMsg() 2019-12-02 22:06:42 +02: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
Ștefan Talpalaru d5f20846ad Jenkinsfile setup 2019-11-28 17:32:46 +02:00
Zahary Karadjov 34ed2b0fa4 Bump nim-eth 2019-11-26 02:45:25 +02:00
Yuriy Glukhov 2e875ea17e Better connection error handling in MainchainMonitor 2019-11-25 13:45:53 +02:00
Ștefan Talpalaru 38077162b9
bump vendor/nimbus-build-system 2019-11-18 09:18:20 +01:00
Ștefan Talpalaru 99164bbfdd
bump vendor/nim-nat-traversal and vendor/nimbus-build-system 2019-11-14 17:52:01 +01:00
Zahary Karadjov 5a6a8e9520 Finalizing setup for testnet1; Auto-restart of the docker containers after testnet resets 2019-11-12 19:08:12 +00:00
Zahary Karadjov 7fe18732d5 Bump confutils 2019-11-12 19:08:12 +00:00
Zahary Karadjov ac5aabd569 Use the latest confutils 2019-11-11 23:29:36 +00:00
Zahary Karadjov fb180a1313 A `query` CLI command for inspecting the state of the database (WIP) 2019-11-11 23:29:36 +00:00
Ștefan Talpalaru 3192d1fb4d
bump vendor/nim-metrics 2019-11-10 18:57:51 +01:00
Ștefan Talpalaru c1a63035b9 beacon_node: "--version" option [skip ci]
fixes #466
2019-11-09 17:43:42 +00:00
Mamy André-Ratsimbazafy 9be6bfce35 bump nimyaml 2019-11-07 17:22:15 +00:00
Yuriy Glukhov 9b39c792d0 Revert f79f9deeb3 a0fbf5464a 94a9c51d8a (#523) 2019-11-06 16:56:54 +02:00
cheatfate 94a9c51d8a
Initial commit. 2019-11-06 16:41:23 +02:00
Ștefan Talpalaru 03f57aab43
bump vendor/nim-libp2p 2019-11-05 23:31:01 +01:00
Ștefan Talpalaru f8e8dc6c7a
bump vendor/nim-web3 2019-11-05 15:15:31 +01:00
Zahary Karadjov 14374504cf
Finalization experiements
* Switched to FloodSub
* Testnet0 switched to the minimal preset. All validators deployed on the master node.
2019-11-05 03:13:16 +02:00
Zahary Karadjov a6f350f35f
Bump modules 2019-10-30 18:35:52 +02:00
Yuriy Glukhov abbe4075fa Fixed deposit contract deployment 2019-10-30 17:23:34 +02:00
Ștefan Talpalaru f91918f1b6
bump vendor/nimbus-build-system 2019-10-29 16:10:05 +01:00
Ștefan Talpalaru c22d02e9a3
bump vendor/nimbus-build-system 2019-10-29 15:30:39 +01:00
Ștefan Talpalaru 18d32f4882
Merge branch 'master' of github.com:status-im/nim-beacon-chain 2019-10-29 15:16:29 +01:00
Ștefan Talpalaru bc9d0dd8de
bump vendor/nim-confutils 2019-10-29 15:16:13 +01:00
Zahary Karadjov f92db449e1
nims script for connecting to testnets published in the eth2-testnets repo
See https://github.com/ethereum/eth2.0-pm/pull/93 for more info
2019-10-29 01:07:31 +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
Yuriy Glukhov 9d3889cbab
WIP Goerli testnet 2019-10-28 15:51:17 +02:00
Zahary Karadjov 1bcd045a2f
Bump modules 2019-10-28 15:00:25 +02:00
Zahary Karadjov 97fdb3399c
Switch to the final Nim v1.0.2 2019-10-28 15:00:25 +02:00
Zahary Karadjov e3380ea8f4
Bump modules 2019-10-28 15:00:25 +02:00
andri lim 47799a2b8a
bump stint 2019-10-28 15:00:25 +02:00
Zahary Karadjov 4bccbdce71
Use confutils compatible with Nim v1.0 2019-10-28 15:00:25 +02:00
Zahary Karadjov a876488075
Add nim-bearssl 2019-10-28 15:00:25 +02:00
Zahary Karadjov dfe3a6f0fb
Switch to Nim v1.0.2 2019-10-28 15:00:25 +02:00
Ștefan Talpalaru 3a2fc249a2
simulation: metric visualisation 2019-10-23 20:57:59 +02:00
Zahary Karadjov 021661180b
Use the latest nim-eth 2019-10-23 19:37:06 +03:00
Zahary Karadjov d3f88929da Integrate nim-prompt 2019-10-07 23:56:34 +09:00
Mamy André-Ratsimbazafy c1918d1253 bump again for unary var having precedence over | for tpe constraint 2019-09-26 17:53:59 +03:00
Mamy André-Ratsimbazafy c6c4cf82dd bum blscurve to fix in-place init signature - f9a29c2af9 2019-09-26 17:53:59 +03:00
Mamy André-Ratsimbazafy 5619f9e4e6 update nim-blscurve to integrate the Domain changes 2019-09-26 17:53:59 +03:00
Jacek Sieka ef92ea1321
bump modules 2019-09-11 20:29:51 -04:00
Zahary Karadjov c3adac44f2
Use Secp256k1 keys in accordance to the interop spec 2019-09-10 10:11:56 -04:00
Zahary Karadjov 9dec05f9c9 Sending chunked responses 2019-09-10 09:49:54 -04:00
Zahary Karadjov 2bbfa8c877 Changes related to the new ETH interop spec
* Hello is no longer a handshake message
  (all handshakes related code was deleted for clarity)

* Deal with the single-parameter inlining defined in the new spec
2019-09-10 09:49:54 -04:00
Yuriy Glukhov d4c480ff5f
Eth1 validators (#393) 2019-09-09 18:59:02 +03:00
Ștefan Talpalaru 026d569d8e bump go-libp2p-daemon to support Go 1.13 (#397)
* bump go-libp2p-daemon to support Go 1.13

* bump vendor/nimbus-build-system [skip ci]
2019-09-07 16:23:13 -04:00
zah 93cdb43f1e Integrate nim-metrics and add some metrics from the ETH2 spec (#394) 2019-09-07 19:48:05 +02:00
Ștefan Talpalaru 94ade77c99
move "go-checks" to nimbus-build-system [skip ci] 2019-09-05 13:58:42 +02:00
Ștefan Talpalaru 9547553066
Makefile: "nat-libs" is now included in "deps" 2019-09-04 19:19:39 +02:00
Ștefan Talpalaru 4d27a41924
move some submodules to nimbus-build-system 2019-08-28 15:16:44 +02:00
Ștefan Talpalaru 59fa03be89
process_lfs.sh: proper error message when `git-lfs` is missing
(and bump 2 submodules)
2019-08-27 17:01:19 +02:00
Ștefan Talpalaru 60dfa7081b
move build_p2pd.sh to nimbus-build-system 2019-08-25 15:44:45 +02:00
Ștefan Talpalaru c91727e7e5
bump submodules 2019-08-24 21:56:35 +02:00
Mamy André-Ratsimbazafy 39403ca39f
bump nim-serialization 2019-08-24 19:13:53 +02:00
Ștefan Talpalaru a19734e47f
bump vendor/nimbus-build-system 2019-08-23 20:26:35 +02:00
Ștefan Talpalaru fe18fcdc06
env.sh: exec -> source
bump vendor/nimbus-build-system
2019-08-23 19:07:50 +02:00
Ștefan Talpalaru 569985746a bump submodule 2019-08-23 14:36:29 +03:00
Ștefan Talpalaru 69ac78b2e0 new build system and submodules
- better p2pd building, with CI caching
2019-08-23 14:36:29 +03:00