hive

command module
v0.0.0-...-d3b0513 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 1, 2024 License: GPL-3.0 Imports: 12 Imported by: 0

README

hive - Ethereum end-to-end test harness

Hive is a system for running integration tests against Ethereum clients.

Ethereum Foundation maintains two public Hive instances to check for consensus, p2p and blockchain compatibility:

To read more about hive, please check the documentation.

Trophies

If you find a bug in your client implementation due to this project, please be so kind as to add it here to the trophy list. It could help prove that hive is indeed a useful tool for validating Ethereum client implementations.

  • go-ethereum:
    • Genesis chain config couldn't handle present but empty settings: #2790
    • Data race between remote block import and local block mining: #2793
    • Downloader didn't penalize incompatible forks harshly enough: #2801
  • Nethermind:
    • Bug in p2p with bonding nodes algorithm found by Hive: #1894
    • Difference in return value for 'r' parameter in getTransactionByHash: #2372
    • CREATE/CREATE2 behavior when account already has max nonce #3698
    • Blake2 performance issue with non-vectorized code #3837
Contributions

This project takes a different approach to code contributions than your usual FOSS project with well ingrained maintainers and relatively few external contributors. It is an experiment. Whether it will work out or not is for the future to decide.

We follow the Collective Code Construction Contract (C4), code contribution model, as expanded and explained in The ZeroMQ Process. The core idea being that any patch that successfully solves an issue (bug/feature) and doesn't break any existing code/contracts must be optimistically merged by maintainers. Followup patches may be used for additional polishes – and patches may even be outright reverted if they turn out to have a negative impact – but no change must be rejected based on personal values.

License

The hive project is licensed under the GNU General Public License v3.0. You can find it in the COPYING file.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
hivechain
The hivechain command assists with generating blockchain data for testing purposes.
The hivechain command assists with generating blockchain data for testing purposes.
hiveview
The hiveview command generates hive result listing files for the result viewer.
The hiveview command generates hive result listing files for the result viewer.
hiveproxy module
Package hivesim is a Go wrapper for the Hive Simulation API.
Package hivesim is a Go wrapper for the Hive Simulation API.
internal
simapi
Package simapi contains definitions of JSON objects used in the simulation API.
Package simapi contains definitions of JSON objects used in the simulation API.
proxy
hiveproxy Module
simulators
devp2p Module
devp2p/discv4 Module
devp2p/eth Module
eth2/common Module
eth2/dencun Module
eth2/engine Module
eth2/testnet Module
ethereum/rpc Module
ethereum/sync Module
smoke/clique Module
smoke/genesis Module
smoke/network Module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL