6443 Commits

Author SHA1 Message Date
Etan Kissling
479c133375
bump nim-secp256k1 to 2bc945cc9ebfae1b688f72ea59f78fd23873d1d4 (#5784)
- bump `secp256k1` to `v0.4.1`
2024-01-18 19:04:35 +00:00
Etan Kissling
006fa59ec2
use consensus spec v1.4.0-beta.6 test vectors (#5783) 2024-01-18 18:14:44 +00:00
tersec
db7909c1fe
don't catch up on validator duties (#5773) 2024-01-18 15:56:43 +00:00
Etan Kissling
62ee92a094
bolster BlobSidecar syncing on incomplete responses (#5766)
Avoid marking blocks invalid when corresponding `blobSidecarsByRange`
returns an incomplete / incorrect response while syncing. The block
itself may still be valid in that scenario.
2024-01-18 15:45:10 +01:00
Etan Kissling
0b5ddd8a0e
bump nim-kzg4844 to 31824174520755b670547a56149b0c37d10f979d (#5782)
- add CI for Nim `version-2-0`
- bump `csources` to `v0.4.0`
2024-01-18 14:28:42 +00:00
Etan Kissling
c006c249ea
bump nim-zlib to 7427b7127bb88ab29f4abec0576d20ac529eb5a5 (#5780)
- bump `csources` to `v1.3`
2024-01-18 14:25:02 +01:00
Etan Kissling
15b949ee13
bump nim-libbacktrace to 7f532d4cae55735b150a4c9459bf083dbbef1be9 (#5779)
- bump `libbacktrace-upstream` to `14818b7783eeb9a56c3f0fca78cefd3143f8c5f6`
- bump `whereami` to `ba364cd54fd431c76c045393b6522b4bff547f50`
2024-01-18 13:18:02 +00:00
Etan Kissling
3a8bd709ea
bump gnosis-chain-configs to f0c2cb0d64c7c30105ae9c09a156d0dac0411c10 (#5778)
- Set correct CONFIG_NAME for chiado
2024-01-18 13:24:09 +01:00
tersec
36545e1d84
remove expensive logging from function called in prepareBeaconProposer inner loop (#5776) 2024-01-17 22:58:46 +00:00
Etan Kissling
0775a48420
bump gnosis-chain-configs to 9ea107b310486cdfc98a8785859bda124a606a83 (#5772)
- Update Chiado config format and keys
2024-01-17 16:48:06 +00:00
Etan Kissling
e7794b6aec
log delay relative to deadline (#5769)
To better analyze logs across different `SECONDS_PER_SLOT`, log delays
for duties relative to their deadline instead of relative to slot start.
2024-01-17 15:52:19 +01:00
Etan Kissling
f409ed97ae
align sync contribution logs with aggregate processing (#5770)
There are two conditions leading to `duplicate contribution` log.
Align the logs with the ones used for attestation aggregates,
so that the two conditions can be separated when reading logs.
2024-01-17 15:46:54 +01:00
Jacek Sieka
d5785677a8
split out eth1chain into its own module (#5768)
reduces import junk in some places - more could be done here
2024-01-17 15:26:16 +01:00
Etan Kissling
68d0542ae1
log const_preset on beacon node startup (#5764)
To understand what binary is being used (regular / minimal / gnosis),
extend launch logging.
2024-01-17 14:38:56 +01:00
andri lim
8afaeecaf8
Bump nim-json-serialization to b14f5b58e91c702f42c82da006890fdef4b6cc70 (#5767)
Deconvolute optional fields writer
2024-01-17 13:40:00 +07:00
andri lim
7addd0a68b
Bump json-rpc to f90e946b6a92432cbfe7abb59f9c05af17bfddde (#5737)
Router.register should not raise exception
Both http server and client now can handle chunked transfer
Add comments in wrapper generator
2024-01-17 07:41:32 +07:00
Etan Kissling
11ebbe0cac
fix LC header production for Deneb (#5763)
The `blob_gas_used` field was not properly populated when constructing
Deneb light client data. This is due to #5026 not applying the change to
the entire codebase when the new field got introduced, and due to #5350
not catching that oversight in other modules. Also reviewed codebase and
discovered that `shortLog` for Deneb execution payloads has same bug.
2024-01-16 22:54:20 +00:00
tersec
cf1bec7670
update some deprecated stew/results to results imports (#5743) 2024-01-16 22:37:14 +00:00
Jacek Sieka
19860029c2
use macrocache for protocol index counter (#5745) 2024-01-16 18:37:47 +00:00
Etan Kissling
ad74c1a6a5
add vanity mascot for upcoming fork to status bar (#5761)
To simplify supporting "am I ready for the fork" requests, add a simple
marker to the default status bar that indicates readiness by displaying
the fork's corresponding mascot. This is the same one that is also
displayed during the actual fork transition, so does not introduce
new dependencies. It also only shows in default status bar, not in logs.
2024-01-16 17:33:46 +00:00
Etan Kissling
06551dd320
bump nim-json-serialization to 42253591b955c5cfcef46f6ad906c5a4e4586ee6 (#5759)
- v0.2.4
- Writer produce correct top-level or in-array optional elem when custom
  flavor omit optional fields
- Add flavor feature: reader will skip null fields
- add lexer test cases
2024-01-16 16:47:12 +01:00
Etan Kissling
b382833f43
workaround random SIGSEGV on macOS aarch64 CI (#5757)
Separate a `let` block into multiple `let` statements to reduce
probability of hitting random `SIGSEGV` during flaky CI tests.

whatever... 🤯
2024-01-16 13:41:49 +01:00
tersec
8cfce83864
make constants 64-bit portably (#5755) 2024-01-16 02:26:18 +01:00
Etan Kissling
7443a4ac08
load Ethereum mainnet KZG setup on Gnosis networks (#5756)
Gnosis networks re-use the trusted setup from Ethereum mainnet.
Load it to support Deneb.
2024-01-16 01:58:07 +01:00
Etan Kissling
2608cd6477
bump nimbus-build-system to 3866a8ab98fc6e0e6d406b88800aed72163d5fd4 (#5754)
- bump `csources_v1` to `561b417c65791cd8356b5f73620914ceff845d10`
- adjust `CSOURCES_V1_COMMIT` variable with recent bump
- remove `Nim-csources-v1` and `nimble` checkouts
2024-01-15 18:24:24 +01:00
Etan Kissling
39a2a91003
only show upcoming fork info if one is scheduled (#5751)
This ensures that information about the next scheduled fork is only
displayed if one is actually scheduled. Current fork name is no longer
shown.
2024-01-15 17:48:03 +01:00
tersec
3541cfe020
remove extraneous length checks in KZG batch proofs (#5744)
* remove extraneous length checks in KZG batch proofs

* re-add winservice import but only for Windows, to avoid UnusedImport warning

* also uses establishWindowsService
2024-01-15 16:53:34 +01:00
tersec
52ed0d6aa1
rm kzg test fixture code duplication and add test vector coverage checks (#5742) 2024-01-15 07:14:38 +01:00
jangko
7378d55108
Fix unbound variable error in launch_local_testnet.sh 2024-01-15 09:21:20 +07:00
jangko
fc0d5552ec
Bump nim-web3 to c595e0d6c8ec1ea7c28b267c8141fa70437cccaa
Fix Quantity reader and writer
Fix SingleOrList parser
Fix RtBlockIdentifier parser
Use correct return type for eth_syncing
2024-01-15 09:21:20 +07:00
tersec
2c49caced9
report decimal produceBlockV3 consensus block, execution payload values (#5741) 2024-01-14 22:59:08 +01:00
Eugene Kabanov
5404178a40
Dissect Windows specific code from beacon node. (#5612)
* Make some startup procedures async.
Add more handful makeBannerAndConfig().

* Dissect windows service code from `nimbus_beacon_node.nim`.

* Add report service startup errors using windows error codes.
Add plug able exitService().

Co-authored-by: Zahary Karadjov <zahary@status.im>
Co-authored-by: Jacek Sieka <jacek@status.im>
2024-01-13 12:53:53 +02:00
Zahary Karadjov
05fb7ffff0
Don't require getopt to be installed by brew on macOS for Nix users
Other changes:

* Add/Update copyright banners
* Add post-review comment for https://github.com/status-im/nimbus-eth2/pull/5719
2024-01-13 12:37:41 +02:00
Jacek Sieka
b98f46c04d
Avoid global in p2p macro (fixes #4578) (#5719)
* Avoid global in p2p macro (fixes #4578)

* copy p2p macro to this repo and start de-crufting it
* make protocol registration dynamic, removing light client hacks et al
* split out light client protocol into its own file

* cleanups

* Option -> Opt
* remove more cruft

* further split beacon_sync

this allows the light client to respond to peer metadata messages
without exposing the block sync protocol

* better protocol init

* "constant" protocol index

* avoid casts

* copyright

* move some discovery code to discovery

* avoid extraneous data copy when sending chunks

* remove redundant forkdigest field

* document how to connect to a specific peer
2024-01-13 11:54:24 +02:00
tersec
69af8f943e
implement blob_sidecar Beacon API streaming (#5728) 2024-01-13 11:52:13 +02:00
andri lim
a45609c4a3
Switch to llvm-mingw for faster Windows CI (#5729)
* Switch to llvm-mingw for faster Windows CI

* Enable ubsan of Windows CI
2024-01-13 11:45:20 +02:00
zah
00d05f8170
Use the latest web3signer (#5732)
Other changes:

* Include java in the Nix development shell
  (so users are able to run the web3signer)

* Update the simulation config files to the latest spec
  (so the web3signer accepts them)
2024-01-13 10:37:09 +02:00
tersec
1559a09184
add more logging of KZG commitments, proofs, and blobs (#5735) 2024-01-13 07:44:40 +01:00
andri lim
017f9f1103
bump nim-web3 to bf1ce869b5f76d9744444b248f6f5c6c782fedc7 (#5722)
Etan Kissling (2):
  remove unused `skip0xPrefix`
  keep the internal count helper

Will (1):
  Bugfix/nully values (#61)

Yuriy Glukhov (5):
  Contract constructor support
  Fixed compilation error in exec function
  Added string encoding
  Fixed source->from field of EthCall
  More flexibility to contract DSL, Async contract caller

jangko (5):
  Reduce compiler warnings when using Nim v2
  Migrate to json-serialization
  Add tests of json rpc marshalled types
  Resolve contract_dsl ambiguity
  Event handler passing around JsonString instead of JsonNode
  Share encoder between json-rpc and chronicles (#119)
  Simplify generic constraint of rpc and chronicles encoders
  Feature/execution api spec (#69)
  v0.3.0

bump nim-json-rpc to a6475e49b26d3afc58aaa3d67621c94eafef8efb
coffeepots (1):
  Use nim-json-serialization for RPCs (#172)

jangko (10):
  Add copyright to source file
  Remove StringOfJson
  Fix optional parameter parsing fails in rpc macro with generics
  Rename jrpc_sys module back to jsonmarshal
  Reenable test hhtps
  Add test for createRpcSigsFromNim and createSingleRpcSig
  Let the OS choose the port for tests
  Add onProcessMessage hook to client
  Fix example in the README.md
  Move errors module back to json_rpc folder
  Upgrade rpc router internals (#178)
  RPC server handle null return value correctly
  v0.3.0

kdeme (1):
  Add example test case that currently fails the Option parsing
2024-01-13 08:36:17 +07:00
tersec
c815e71af0
rest of EF KZG test harnesses (#5734) 2024-01-13 01:31:29 +00:00
tersec
aef3879652
some EF KZG test harnesses (#5733) 2024-01-12 22:29:43 +00:00
Etan Kissling
16256a5230
display current fork (+ next fork if applicable) in slot start / status (#5731)
Extend slot start message and default status bar with information about
current head fork and the next fork transition (corresponding to head).
This is useful to know whether a synced client is aware of a future fork
and can also be useful when syncing from old forks to follow progress
across the various forks.

```
 peers: 8 ❯ finalized: 741c2ce2:230474 ❯ head: b330f58b:230477:20 ❯ fork: Capella (next: Deneb:231680) ❯ time: 230599:24 (7379192) ❯ sync: 00h24m (99.63%) 2.6492slots/s (QwQUwQPQDQ:7375263)/opt
```

```
INF 2024-01-12 12:18:00.001+01:00 Slot start                                 topics="beacnde" slot=7379190 epoch=230599 fork="Capella (next: Deneb:231680)" sync="--h--m (99.62%) 0.0000slots/s (wwwwwwwwww:7375167)/opt" peers=0 head=741c2ce2:7375168 finalized=230472:723abe7e delay=1ms861us
```
2024-01-12 21:40:34 +01:00
Etan Kissling
b54bbdecae
bump gnosis-chain-configs to ff5fbe9aecbf28df9beedb662920eeee537629b0 (#5725)
- Add deneb config vars to Chiado config
- Schedule Deneb on Chiado
2024-01-12 11:31:07 +01:00
tersec
bf5611cf7c
rm aspirational reference to EL-unimplemented pull request from docs (#5673) 2024-01-11 22:46:43 +00:00
tersec
251143fd51
attest to known valid block when possible (#5313)
* attest to known valid block when possible

* cleaner approach; slot is always == attestation slot itself

* copyright year linting
2024-01-11 22:34:10 +00:00
dependabot[bot]
b44e3ede1a
Bump jinja2 from 3.1.2 to 3.1.3 in /docs (#5727)
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.2...3.1.3)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-11 20:06:25 +00:00
dependabot[bot]
143dd70591
Bump jinja2 from 3.0.3 to 3.1.3 in /ncli (#5726)
Bumps [jinja2](https://github.com/pallets/jinja) from 3.0.3 to 3.1.3.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.0.3...3.1.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-11 19:17:25 +00:00
Jacek Sieka
e4a1ae67df
ssz: bump (#5717)
height-based merkleizer
2024-01-11 18:34:44 +01:00
jangko
a5297a352c
Use GITHUB_OUTPUT to replace set output in main CI 2024-01-11 10:14:32 +07:00
dependabot[bot]
4221fbb144
Bump fonttools from 4.28.5 to 4.43.0 in /ncli (#5721)
Bumps [fonttools](https://github.com/fonttools/fonttools) from 4.28.5 to 4.43.0.
- [Release notes](https://github.com/fonttools/fonttools/releases)
- [Changelog](https://github.com/fonttools/fonttools/blob/main/NEWS.rst)
- [Commits](https://github.com/fonttools/fonttools/compare/4.28.5...4.43.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-09 21:42:14 +00:00