2
0
mirror of https://github.com/status-im/nimbus-eth2.git synced 2025-01-17 01:51:09 +00:00

4318 Commits

Author SHA1 Message Date
tersec
ed446b1d5a
replace ValidIpAddress with IpAddress in configurations () 2023-11-01 08:33:00 +01:00
Eugene Kabanov
e1f47bb27a
Address . () 2023-11-01 08:32:41 +01:00
Eugene Kabanov
1a5bcb479e
Fix broadcast_validation handling in publishBlockV2 (fixes ) ()
* Address issue .

* Add more tests.

* Add to resttest ability to check values.
Fix tests.
2023-11-01 08:31:18 +01:00
Eugene Kabanov
70aaeee704
Enable comprehensive reasons when REST server faults to create server. ()
Bump chronos & presto.
2023-11-01 08:27:43 +01:00
tersec
556d5e7114
rm unused code () 2023-11-01 05:53:09 +01:00
Etan Kissling
173582ad70
initialize KZG crypto before starting network ()
Move KZG trusted setup initialization before `BeaconNode.init` to avoid
edge case where network message is received and processed before crypto
library has been properly initialized. Followup from .
2023-10-31 13:43:46 +01:00
Jacek Sieka
8c81515bf6
log slashing protection database error on failure to load ()
* log slashing protection database error on failure to load

...and fix noreturn warning

* fix the copied one too

* oops

* oops 2
2023-10-31 11:15:38 +01:00
Etan Kissling
d289da8cd4
extract trusted node sync trigger into separate function ()
To prepare for calling trusted node sync from the main Nimbus startup
logic, extract the trusted node sync trigger into a separate function.
Further allow passing a pre-opened database, as that will be needed to
check whether trusted node sync needs to be called during regular start.
2023-10-31 01:56:52 +01:00
tersec
62d59daaa7
consensus-spec URL updates to v1.4.0-beta.3 () 2023-10-30 06:44:43 +00:00
tersec
b0d5001571
implement getBlobSidecars Beacon API endpoint () 2023-10-29 00:06:13 +00:00
tersec
34eade3a99
sign blinded blob sidecars during builder API proposals () 2023-10-28 05:10:23 +00:00
tersec
922283e2e3
clean up ncli_testnet and reduce ValidIpAddress usage ()
* ValidIpAddress -> IpAddress

* clean up ncli_testnet and reduce ValidIpAddress usage
2023-10-26 23:16:15 +00:00
tersec
09df3f32b5
add non-SZ getBlobSidecar and BlobSidecar database tests () 2023-10-26 03:40:04 +00:00
tersec
41dfc9ed91
add KZGProof and Blob REST JSON serializations ()
* add KZGProof and Blob REST JSON serializations

* error summary updates

* copyright notice

* consistent integer types for Nim 2.0
2023-10-25 23:50:59 +02:00
Etan Kissling
d32fafa2ec
investigated -> inspected in libnimbus_lc docs ()
Consistently use `inspected` instead of `investigted` terminology in
documentation of `libnimbus_lc` functions.
2023-10-24 16:09:44 +00:00
tersec
5aa5095e17
Fix REST JSON KzgCommitment encoding/decoding to use hex strings per spec () 2023-10-24 15:22:59 +00:00
Etan Kissling
468ee6a7ed
simplify getBlockSSZ and getBlockSZ implementation ()
Use `forks` sugar to reduce code duplication in `beacon_chain_db.nim`.
2023-10-24 09:15:34 +00:00
tersec
513c9d9637
fix Deneb RestPublishedSignedBlockContents REST JSON decoding () 2023-10-24 05:50:32 +00:00
tersec
026ad21906
send DenebBlockContents in produceBlockV2 () 2023-10-24 02:50:26 +00:00
tersec
fd21882e24
improve test coverage of post-Bellatrix initialize_beacon_state_from_eth1 () 2023-10-24 01:58:52 +00:00
tersec
b2e81de6db
remove unnecessary Builder API status endpoint usage () 2023-10-23 23:01:29 +00:00
tersec
a986a1bcd8
using deneb_mev for Deneb is less incorrect than using capella_mev () 2023-10-20 01:39:47 +00:00
tersec
769316d909
construct Deneb blinded blobs from builder API getHeader () 2023-10-19 17:34:32 +00:00
tersec
4ddd771127
automated consensus spec URL updating to v1.4.0-beta.3 () 2023-10-19 10:26:38 +00:00
tersec
9fd52ebe9f
use consensus spec v1.4.0-beta.3 test vectors () 2023-10-19 05:14:02 +00:00
Zahary Karadjov
d52e8165d5
Merge branch 'stable' into unstable 2023-10-18 20:10:00 +03:00
tersec
6eb7d481fa
fix Deneb builder API block body type; introduce and use ExecutionPayloadHeaderAndBlindedBlobsBundle () 2023-10-18 02:54:02 +00:00
andri lim
0f9b52933e
Bump nim-eth: Change block timestamp from std.Time to distinct uint64 ()
* Bump nim-eth: Change block timestamp from std.Time to distinct uint64

Also change tx.maxFeePerBlobGas from GasInt to UInt256
following Cancun latest spec

* Fix EthTime.now from func to proc due to sideeffects
2023-10-18 07:37:57 +07:00
Zahary Karadjov
8b07f4fd4c
Version 23.10.0 2023-10-17 02:35:27 +03:00
zah
35bf03a3fb
Add the --verifying-web3-signer-url configuration option () 2023-10-13 15:42:00 +03:00
tersec
c5028b56bf
change blinded block proposal failures to REST internal errors () 2023-10-12 23:54:24 +02:00
tersec
eeac00d08e
add RPC signature; add type constraints on proposeBlockMEV () 2023-10-12 11:49:48 +00:00
tersec
40616b6243
update some consensus spec URLs to v1.4.0-beta.2 () 2023-10-12 05:07:41 +00:00
tersec
ec1d98cc3a
implement deneb block and blob unblinding () 2023-10-12 03:40:15 +00:00
tersec
edc5c03230
consistently use SignedBlindedBeaconBlockContents; remove more Bellatrix Builder API remnants () 2023-10-11 11:48:35 +00:00
tersec
48197e4d55
add/update Deneb Builder API types and RPC signatures () 2023-10-11 04:25:59 +00:00
tersec
447786518f
ShufflingRef approach to next-epoch validator duty calculation/prediction ()
* ShufflingRef approach to next-epoch validator duty calculation/prediction

* refactor action_tracker.updateActions to take ShufflingRef + beacon_proposers; refactor maybeUpdateActionTrackerNextEpoch to be separate and reused function; add actual fallback logic

* document one possible set of conditions

* check epoch participation flags and inactivity scores to ensure no penalties and MAX_EFFECTIVE_BALANCE to ensure rewards don't matter

* correctly (un)shuffle each proposer index

* remove debugging assertion
2023-10-10 00:02:07 +00:00
tersec
a4cf203849
fix mainnet bootstrap node comment parsing; fix nimbus guide grammar () 2023-10-06 19:26:30 +00:00
Eugene Kabanov
1da202156f
Improve keystore loading log statements to show information about why keystore was not loaded. ()
Fix checkKeyName issue for `00` case.
2023-10-05 17:26:46 +03:00
Etan Kissling
0cca65904d
reduce ProveField warnings in conf.nim ()
Address some verbose `ProveField` warnings and `XCannotRaiseY` hints
in `conf.nim`.
2023-10-05 17:15:03 +03:00
Etan Kissling
dd1f362536
align Beacon(Block(Body)?|State)Type with other fork sugar ()
The templates for `BeaconBlock`, `BeaconBlockBody` and `BeaconState`
are the only ones using a `macro` mechanism for code generation.
This prevents using the dot-syntax style `consensusFork.BeaconFoo`
in some situations, and also tends to trigger naming conflicts,
requiring the `Type` suffix. Furthermore, the `macro` only works
for types that are re-defined in every single `ConsensusFork`.

Replacing with the simpler but more verbose approach used for other
types for consistency and to avoid the downsides of the `macro`.

Furthermore, simplify `test_fixture_sanity_blocks` to use `forks` sugar.
2023-10-05 14:01:40 +02:00
tersec
89686fa274
avoid needlessly rescoring aggregates during block attestation packing () 2023-10-04 22:38:10 +00:00
Etan Kissling
297c768816
reduce redundant zero initialization for LC data objects ()
Directly initialize `ForkedLightClientObj` instead of separately first
 setting the `kind` (initializing everything to zero) and then assigning
the forky data after that.
2023-10-04 18:11:45 +02:00
Etan Kissling
37967ba03b
ProveField cleanups in slashing_protection_common ()
Cleanup of `ProveField` warnings in `slashing_protection_common` module.
Note that `ProveField` is disabled by default in makefile, but sometimes
these pop up when doing a regular `nim c`, and cleaning these may allow
enabling the warning in some future.

As the `case` is over `a.kind`, `ProveField` warnings for `b` have to be
suppressed using `{.push.}` / `{.pop.}` for comparison operators.
2023-10-04 10:26:52 +02:00
Etan Kissling
24c68bbcf7
fix ProveField warning in network_metadata ()
Spurious `ProveField` warning can be avoided by using `case` instead of
`if` on `metadata.genesis.kind`. Also suppress `GlobalVar` hints when
`incbinEnabled` is used, which has global `let` definitions.
2023-10-04 10:19:05 +02:00
Etan Kissling
bfe76be4d7
debug log duration for processing attestation queue ()
Depending on the load, processing of queued attestations may take a
while. Log processing duration at debug level.
2023-10-03 22:17:42 +02:00
Etan Kissling
e1a8e9a2fa
rm unused GenesisStateRef ()
In `el_manager`, there was an unused `GenesisStateRef` type. Remove it.
2023-10-02 19:00:23 +00:00
Jacek Sieka
9a48e2e922
fix stale activity log () 2023-09-30 13:31:08 +00:00
Etan Kissling
8aaea1a14e
simplify fork choice test ()
Reduce overly verbose fork branching logic in fork choice test with
generic implementation based on `consensusFork`.
2023-09-29 13:26:34 +00:00
Jacek Sieka
252473d2d1
ssz: bump ()
more `zeroMem` avoidance, value semantics for merkleizer
2023-09-28 11:59:33 +00:00