nimbus-eth2/ncli
Etan Kissling a0bc3fff86
fix `/eth/v1/beacon/deposit_snapshot` for EIP-4881 (#6038)
Fix the `/eth/v1/beacon/deposit_snapshot` API to produce proper EIP-4881
compatible `DepositTreeSnapshot` responses. The endpoint used to expose
a Nimbus-specific database internal format.

Also fix trusted node sync to consume properly formatted EIP-4881 data
with `--with-deposit-snapshot`, and `--finalized-deposit-tree-snapshot`
beacon node launch option to use the EIP-4881 data. Further ensure that
`ncli_testnet` produces EIP-4881 formatted data for interoperability.
2024-03-08 14:22:03 +01:00
..
.gitignore
README.md
deposit_downloader.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
download_mainnet_deposits.sh
e2store.nim Split era specific code from e2s specific code (#5866) 2024-02-09 08:59:36 +01:00
e2store.py
era.nim Split era specific code from e2s specific code (#5866) 2024-02-09 08:59:36 +01:00
logtrace.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
ncli.nim fix some stylecheck consistency Name hints in ncli/ and research/ (#6004) 2024-03-01 05:59:34 +01:00
ncli_common.nim add Electra overloads for spec functions; add Electra block processing (#5963) 2024-02-26 02:38:21 +00:00
ncli_db.nim enable --styleCheck:error in ncli/ and research/ (#6014) 2024-03-02 06:25:17 +01:00
ncli_query.nim
ncli_split_keystore.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
ncli_testnet.nim fix `/eth/v1/beacon/deposit_snapshot` for EIP-4881 (#6038) 2024-03-08 14:22:03 +01:00
nim.cfg enable --styleCheck:error in ncli/ and research/ (#6014) 2024-03-02 06:25:17 +01:00
nimquery.nim
requirements.txt Bump pillow from 10.0.1 to 10.2.0 in /ncli (#5815) 2024-01-23 00:31:54 +00:00
resttest-rules.json implement getBlindedBlock REST API (#5829) 2024-01-31 03:18:55 +00:00
resttest.nim update some deprecated stew/results to results imports (#5743) 2024-01-16 22:37:14 +00:00
resttest.nim.cfg
validator_db_aggregator.nim clean up UnusedImport and Deprecated warnings (#5813) 2024-01-22 17:35:19 +01:00
validator_db_reports.ipynb

README.md

Introduction

ncli is a set of low level / debugging tools to interact with the nimbus beacon chain specification implementation, similar to zcli. With it, you explore SSZ, make state transitions and compute hash tree roots.

Tools

  • transition: Perform state transition given a pre-state and a block to apply (both in SSZ format)
  • hash_tree_root: Print tree root of an SSZ object
  • pretty: Pretty-print SSZ object as JSON

Building

Follow the instructions from nimbus-eth2

git clone https://github.com/status-im/nimbus-eth2.git
cd nimbus-eth2
make

Usage

# Build with minimal config
../env.sh nim c -d:const_preset=minimal ncli_transition
# Build with mainnet config
../env.sh nim c -d:const_preset=mainnet ncli_transition

# Run..
./ncli_transition --help