Skip to content

Developer tips & tricks

Ștefan Talpalaru edited this page Feb 21, 2021 · 9 revisions

Bumping all submodules to their latest HEADs

Warning: revert the submodules to their designated commits with make update before branching, committing and creating new PRs. Don't bump submodules if you don't need to. Don't blame Git submodules for any breakage. Don't expect any form of official support for this workflow.

From a nim-beacon-chain repo, after the usual git pull; make update, in a new branch:

# bump all submodules, temporarily:
make update-remote
# undo some bumps:
git submodule update --recursive vendor/news
# test, commit, push branch, create PR as usual

Checking bootnodes

cat ../eth2-testnets/shared/medalla/bootstrap_nodes.txt | xargs -I % sh -c './eth/p2p/discoveryv5/dcli --log-level:trace --udp-port:9001 ping %'

Looking for leaks with Boehm GC

make -j8 NIMFLAGS="--gc:boehm" nimbus_beacon_node
WEB3_URL="wss://mainnet.infura.io/ws/v3/YOUR_TOKEN" GC_FIND_LEAK=1 GC_PRINT_STATS=1 ./run-mainnet-beacon-node.sh --status-bar:off