2
0
mirror of https://github.com/status-im/nimbus-eth2.git synced 2025-02-16 08:26:37 +00:00

4381 Commits

Author SHA1 Message Date
Eugene Kabanov
c4383e21f4
Fix . ()
* Address .

Add test vectors for deserialization.
2022-06-19 09:08:21 +03:00
Etan Kissling
61ee0611bb
adopt LC REST API with v0 suffix (without proofs) ()
* adopt LC REST API with v0 suffix (without proofs)

Adopts the light client data REST API used by Lodestar as defined in
https://github.com/ethereum/beacon-APIs/pull/181 with a v0 suffix.

Requests:
- `/eth/v0/beacon/light_client/bootstrap/{block_root}`
- `/eth/v0/beacon/light_client/updates?start_period={start_period}&count={count}`
- `/eth/v0/beacon/light_client/finality_update`
- `/eth/v0/beacon/light_client/optimistic_update`

HTTP Server-Sent Events (SSE):
- `light_client_finality_update_v0`
- `light_client_optimistic_update_v0`

More work is needed to adopt the proofs endpoint, it is not included.

* initialize event queues

* register event topics
2022-06-19 08:57:52 +03:00
Etan Kissling
5439978a37
only process deposits if merkleizer available ()
`m.depositsChain.blocks.len` may change during `startEth1Syncing`. If
that happened, an additional check now ensures that `scratchMerkleizer`
was initialized before attempting to use it.
2022-06-19 08:54:35 +03:00
Etan Kissling
afcc5c2ea0
track LC data section that imported without errors ()
If database access errors are encountered while proccessing LC data,
track the section which was accessed without errors so that the rest
may be attempted to be re-indexed later.
2022-06-19 08:53:10 +03:00
tersec
2c623e5f92
don't try to fcU on pre-merge bellatrix blocks () 2022-06-18 13:39:21 +03:00
tersec
cbb0b8142f
include capella fork version in fork consistency check ()
* include capella fork version in fork consistency check

* Update tests/test_conf.nim

Co-authored-by: Etan Kissling <etan@status.im>

Co-authored-by: Etan Kissling <etan@status.im>
2022-06-18 10:05:33 +00:00
tersec
8eb5d5de09
use ZERO_HASH for default(Eth2Digest)/Eth2Digest() in func calls () 2022-06-18 04:57:37 +00:00
Jacek Sieka
c48ea3cdc8
book updates ()
* systemd: use same service file as package
* systemd: recommend setting up a user
* clean up obsolete / ephemeral notes
* eth1 -> execution, in many places
* clean up docker instructions to match the experience of running the
runner script
* add basic instructions / links for execution clients other than geth
* clear a few more references to JSON-RPC, update to REST
* update hardware requirements with execution client extras
* start talking about merge requirements (this needs a dedicated page)
* note that binaries do exist, where relevant
* list gitcoin under donations
* update syncing docs
* `NOT` is for `NOTICE` in logs
* update rpi hardware recommendations
* prevent automatic doppelganger restarts in systemd service file
2022-06-17 18:28:13 +03:00
Eugene Kabanov
5e7b28cd66
AsyncEventBus missing attestations fix. () 2022-06-17 18:27:28 +03:00
tersec
b0e46686f1
bump merge-testnets to use capella fork versions consistently () 2022-06-17 17:17:09 +03:00
tersec
d41c2a293b
rewrite merge sync () 2022-06-17 17:16:03 +03:00
zah
69f505e2ba
Correct parsing of the weak-subjectivity-checkpoint parameter () 2022-06-17 14:55:03 +03:00
dependabot[bot]
d19204ff43
Bump notebook from 6.4.10 to 6.4.12 in /ncli ()
Bumps [notebook](http://jupyter.org) from 6.4.10 to 6.4.12.

---
updated-dependencies:
- dependency-name: notebook
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-17 10:20:33 +00:00
tersec
2924ed9604
remove some usage of calls not required by engine API () 2022-06-17 06:32:52 +00:00
tersec
0a8589986a
Use .tar.gz consistently in Jenkinsfile ()
* Restore bz2 Jenkisn artifact archiving

* use gz, but consistently
2022-06-16 20:43:12 +00:00
Etan Kissling
21b69d5901
avoid small gaps in optimistic block stream ()
Ensures that all intermediate blocks are reported if a small gap is
encountered when downloading optimistic blocks. Gaps may occur when
a block is missed and still downloading, or when EL processing is slow.
If the gap exceeds 1 epoch, optimistic block stream jumps to latest.
2022-06-16 15:24:08 +00:00
zah
e8efc0f184
Add support for the Sepolia network () 2022-06-16 17:11:26 +03:00
Etan Kissling
ac7393b8ac
remove unused withStateVars template ()
Removes the `withStateVars` template that was not used meaningfully.
2022-06-16 11:46:35 +02:00
Miran
13f52488de
don't convert URL to lower ascii, fixes () 2022-06-16 08:46:43 +03:00
tersec
9da9fc83ed
bump merge-testnets for final ropsten TTD () 2022-06-16 08:18:46 +03:00
Etan Kissling
6144ecd95c
format pragmas consistently in conf.nim ()
Aligns code style in `conf.nim`. Some pragmas lacked trailing `.`
2022-06-15 18:04:07 +00:00
tersec
27e1625d34
check for and log gossip broadcast failure ()
* check for and log gossip broadcast failure

* switch notices to warns; update LC variables regardless

* don't both return a Result and log sending error

* add metrics counter for failed-due-to-no-peers and removed unnecessary async

* don't report failure of sync committee messages

* remove redundant metric

* document metric being incremented
2022-06-15 08:14:47 +00:00
zah
694b653757
Bellatrix TTD detection ()
* Bellatrix TTD detection

* Update beacon_chain/eth1/eth1_monitor.nim

Co-authored-by: Etan Kissling <etan@status.im>

* Update beacon_chain/nimbus_beacon_node.nim

Co-authored-by: tersec <tersec@users.noreply.github.com>

Co-authored-by: Etan Kissling <etan@status.im>
Co-authored-by: tersec <tersec@users.noreply.github.com>
2022-06-15 02:38:27 +00:00
Etan Kissling
20e646a47f
avoid casting types in LC data code ()
Use `asSigned()` for type safety over `isomorphicCast` in LC data code.
2022-06-14 23:33:18 +02:00
Etan Kissling
6bf7d64680
update CI timeouts ()
Assign a longer overall timeout that a CI job can spend in queue,
and define short timeouts for the individual stages to avoid stuck jobs.
2022-06-14 22:39:54 +02:00
Eugene Kabanov
1b6651dfc3
Fix /eth/v1/node/syncing ()
* Fix REST `/eth/v1/node/syncing` call to return values even if SyncManager is not running.

* Use syncManager.inProgress as is_syncing indicator.
2022-06-14 22:26:23 +02:00
Etan Kissling
81ff20b3f0
use block ID vs full block in LC data caching ()
`cacheLightClientData` does not need full block data, pass just ID.
2022-06-14 22:13:00 +02:00
Etan Kissling
0c00b85782
cleanup LC data helpers ()
Use more general `lowSlot` in LC data helpers, and avoid using
`earliestSlot` variable name as that one has a different meaning.
2022-06-14 22:02:03 +02:00
Etan Kissling
cba041ddfa
fix LC data import for Altair fork period ()
The initial sync committee period follows a different finality rule than
the other ones. Instead of next sync committee finalizing as soon as the
`finalizedHead.slot >= period.start_slot` have to use Altair start slot.
2022-06-14 17:31:10 +02:00
Etan Kissling
8b7bf017a6
fix CI archive step ()
c20309ba394abb7ee57ad9a16efa02ff3edbb3b5 accidentally deleted a `"`.
This is now re-added to avoid errors during artifact CI archiving step.
2022-06-14 16:41:20 +02:00
zah
0bfe7b10bb
Support displaying the version number in the status bar; Implements () 2022-06-14 14:53:58 +03:00
Jacek Sieka
099709872e
Merge branch 'stable' into unstable 2022-06-14 13:35:38 +02:00
Jacek Sieka
38b6f7263d
ci: install cmake on windows in daily job
it's been failing since forever
2022-06-14 13:35:17 +02:00
Dustin Brody
c20309ba39
don't use slow-to-compress bzip2 with larger Jenkins artifacts 2022-06-14 10:48:30 +00:00
Etan Kissling
52ba4f7999
rename light client config parameters ()
For consistency with other options, use a common prefix for light client
data configuration options.

* `--serve-light-client-data` --> `--light-client-data-serve`
* `--import-light-client-data` --> `--light-client-data-import-mode`

No deprecation of the old identifiers as they were only sparingly used
and all usage can be easily updated without interferance.
2022-06-14 12:03:39 +03:00
Etan Kissling
21a1f7eeb7
error handling for local testnet REST query ()
When querying `ALTAIR_FORK_EPOCH` fails, the `launch_local_testnet`
script got stuck because comparing `CURRENT_FORK_EPOCH` against it
would keep failing with `[: : integer expression expected`.
Querying `ALTAIR_FORK_EPOCH` is now retried until a number is returned.
2022-06-14 08:38:39 +00:00
tersec
8d421f3d91
keep fcU consistent with actual DAG () 2022-06-14 08:28:30 +00:00
Etan Kissling
e3f0d2ecbc
remove unused getExistingForkedBlock overload ()
Removes an unused overload of a local LC data function.
2022-06-14 08:19:11 +00:00
tersec
0cedb1b6a7
seq(1) can count backwards on macOS; catch undefined variable use () 2022-06-13 20:01:39 +03:00
Etan Kissling
7b04a94d43
fix (Sync progress >100% on checkpoint sync) ()
Corrects an off-by-1 in the reported sync percentage computation.
New logic is based on `SyncQueue.total` and `SyncQueue.progress`
with `pivot` instead of `sq.startSlot`.
2022-06-13 20:00:36 +03:00
tersec
51885519a2
lc in sepolia () 2022-06-11 01:36:45 +00:00
tersec
604b74abd2
move assert before compress () 2022-06-11 01:16:40 +00:00
tersec
aa4f105c0c
improve panda display () 2022-06-11 00:48:04 +00:00
tersec
6516ad43eb
remove obsolete beta altair github workflow () 2022-06-10 23:43:37 +00:00
Etan Kissling
15967c4076
keep track of latest blocks for optimistic sync ()
When launched with `--light-client-enable` the latest blocks are fetched
and optimistic candidate blocks are passed to a callback (log for now).
This helps accelerate syncing in the future (optimistic sync).
2022-06-10 14:16:37 +00:00
tersec
cc5f95dbbb
separate non-zero exit code for doppelganger detection () 2022-06-10 14:53:19 +03:00
tersec
65cecc50ca
cleanups: unused and duplicate imports, inconsistent naming conventions, URL updates () 2022-06-09 14:30:13 +00:00
Zahary Karadjov
9750a2a760
Change the log level for unrecognized json fields from debug to trace 2022-06-09 16:08:50 +03:00
Jacek Sieka
2edf33de7d
ncli: altair+ slot and state transitions ()
clearly this doesn't get used a lot :)
2022-06-09 12:57:33 +00:00
tersec
83793c3599
fix Nim 1.6 build deprecation warnings () 2022-06-09 12:09:38 +03:00