Categorygithub.com/scroll-tech/go-ethereum
module
0.9.39
Repository: https://github.com/scroll-tech/go-ethereum.git
Documentation: pkg.go.dev

# README

Ethereum Go

Ethereum Go Client, by Jeffrey Wilcke (and some other people).

      | Linux   | OSX | ARM | Windows | Tests

----------|---------|-----|-----|---------|------ develop | Build+Status | Build+Status | Build+Status | Build+Status | Buildr+Status Coverage Status master | Build+Status | Build+Status | Build+Status | Build+Status | Buildr+Status Coverage Status

Bugs Stories in Ready ![Stories in Progress](https://badge.waffle.io/ethereum/go-ethereum.svg?label=in%20progress&title=In Progress) Gitter

Automated development builds

The following builds are build automatically by our build servers after each push to the develop branch.

Building the source

For prerequisites and detailed build instructions please read the Installation Instructions on the wiki.

Building geth requires two external dependencies, Go and GMP. You can install them using your favourite package manager. Once the dependencies are installed, run

make geth

Executables

Go Ethereum comes with several wrappers/executables found in the cmd directory:

  • geth Ethereum CLI (ethereum command line interface client)
  • bootnode runs a bootstrap node for the Discovery Protocol
  • ethtest test tool which runs with the tests suite: /path/to/test.json > ethtest --test BlockTests --stdin.
  • evm is a generic Ethereum Virtual Machine: evm -code 60ff60ff -gas 10000 -price 0 -dump. See -h for a detailed description.
  • disasm disassembles EVM code: echo "6001" | disasm
  • rlpdump prints RLP structures

Command line options

geth can be configured via command line options, environment variables and config files.

To get the options available:

geth --help

For further details on options, see the wiki

Contribution

If you'd like to contribute to go-ethereum please fork, fix, commit and send a pull request. Commits who do not comply with the coding standards are ignored (use gofmt!). If you send pull requests make absolute sure that you commit on the develop branch and that you do not merge to master. Commits that are directly based on master are simply ignored.

See Developers' Guide for more details on configuring your environment, testing, and dependency management.

# Packages

Package implements a private key management facility.
No description provided by the author
Package common contains various helper functions.
No description provided by the author
Package core implements the Ethereum consensus protocol.
No description provided by the author
No description provided by the author
Package eth implements the Ethereum protocol.
No description provided by the author
Package event implements an event multiplexer.
No description provided by the author
Package jsre provides execution environment for JavaScript.
Package logger implements a multi-output leveled logger.
Package metrics provides general system and process level metrics collection.
Package miner implements Ethereum block creation and mining.
Package p2p implements the Ethereum p2p network protocols.
No description provided by the author
No description provided by the author
Package rlp implements the RLP serialization format.
Package rpc implements the Ethereum JSON-RPC API.
Package tests implements execution of Ethereum JSON tests.
Package trie implements Merkle Patricia Tries.
Package whisper implements the Whisper PoC-1.
Package xeth is the interface to all Ethereum functionality.