Laconic state machine
Go to file
yihuang 297a35dbdd
evm: treat all vm errors the same as reverted (#276)
Closes: #274

evm: fix `ExtraEIP` activation (#288)

Closes: #287

Update x/evm/types/utils.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

Add `Failed` utility function and changelog
2021-07-15 02:01:05 -04:00
.github build(deps): bump gaurav-nelson/github-action-markdown-link-check (#237) 2021-07-08 06:23:20 -04:00
app evm: use block proposer address for COINBASE opcode (#291) 2021-07-14 20:44:51 +00:00
client evm: treat all vm errors the same as reverted (#276) 2021-07-15 02:01:05 -04:00
cmd/ethermintd all: bump SDK to v0.43.0-rc0 (#194) 2021-06-29 13:02:21 -04:00
crypto evm: TxData as proto.Any (#220) 2021-07-05 16:39:08 +00:00
docs evm: treat all vm errors the same as reverted (#276) 2021-07-15 02:01:05 -04:00
encoding evm: TxData as proto.Any (#220) 2021-07-05 16:39:08 +00:00
ethereum/rpc evm: treat all vm errors the same as reverted (#276) 2021-07-15 02:01:05 -04:00
networks/local chore: un-fork from cosmos (#166) 2021-06-22 06:49:18 -04:00
proto/ethermint evm: treat all vm errors the same as reverted (#276) 2021-07-15 02:01:05 -04:00
scripts rpc: implement net_listening and net_peerCount JSON-RPC endpoints (#252) 2021-07-12 08:26:33 -04:00
server rpc: fix inconsistent logging levels (#265) 2021-07-12 18:39:35 +00:00
tests rpc: fix inconsistent logging levels (#265) 2021-07-12 18:39:35 +00:00
testutil/network rpc: fix inconsistent logging levels (#265) 2021-07-12 18:39:35 +00:00
third_party/proto cleanup proto 2021-04-19 09:10:57 +02:00
types evm: TxData as proto.Any (#220) 2021-07-05 16:39:08 +00:00
version more fixes 2021-04-18 18:39:15 +02:00
x/evm evm: treat all vm errors the same as reverted (#276) 2021-07-15 02:01:05 -04:00
.gitignore build: add node_modules to .gitignore (#164) 2021-06-22 03:12:51 -04:00
.golangci.yml fix linter issues (#184) 2021-06-25 04:31:57 -04:00
.mergify.yml Mergify: configuration update (#62) 2021-06-03 03:04:47 -04:00
buf.yaml stargate: proto files (#679) 2021-01-07 18:45:32 -03:00
CHANGELOG.md evm: treat all vm errors the same as reverted (#276) 2021-07-15 02:01:05 -04:00
clang-format tests: add testutils for integration testing (#132) 2021-06-25 05:18:37 -04:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2018-07-17 11:52:20 -04:00
codecov.yml faucet: remove module (#678) 2021-01-08 10:25:02 -03:00
config.yml refactor: Change default RPC and Websocket port (#198) 2021-06-29 03:05:23 -04:00
CONTRIBUTING.md chore: un-fork from cosmos (#166) 2021-06-22 06:49:18 -04:00
docker-compose.yml refactor: Change default RPC and Websocket port (#198) 2021-06-29 03:05:23 -04:00
Dockerfile chore: un-fork from cosmos (#166) 2021-06-22 06:49:18 -04:00
go.mod evm: move ChainConfig to Params (#266) 2021-07-14 05:13:55 -04:00
go.sum evm: move ChainConfig to Params (#266) 2021-07-14 05:13:55 -04:00
gometalinter.json Upgrade geth and cleanup 2018-09-28 17:40:58 -04:00
init.sh all: bump SDK to v0.43.0-rc0 (#194) 2021-06-29 13:02:21 -04:00
LICENSE Initial commit 2018-06-10 14:25:18 +01:00
Makefile build: make build the default target when no argument provided (#233) 2021-07-08 04:07:26 -04:00
README.md chore: un-fork from cosmos (#166) 2021-06-22 06:49:18 -04:00

Ethermint

Ethermint is a scalable, high-throughput Proof-of-Stake blockchain that is fully compatible and interoperable with Ethereum. It's build using the the Cosmos SDK which runs on top of Tendermint Core consensus engine.

WARNING: Ethermint is under VERY ACTIVE DEVELOPMENT and should be treated as pre-alpha software. This means it is not meant to be run in production, its APIs are subject to change without warning and should not be relied upon, and it should not be used to hold any value. We will remove this warning when we have a release that is stable, secure, and properly tested.

Note: Requires Go 1.15+

Quick Start

To learn how the Ethermint works from a high-level perspective, go to the Introduction section from the documentation.

For more, please refer to the Ethermint Docs, which are also hosted on docs.ethermint.zone.

Tests

Unit tests are invoked via:

make test

To run JSON-RPC tests, execute:

make test-rpc

There is also an included Ethereum mainnet exported blockchain file in importer/blockchain that includes blocks up to height 97638. To execute and test a full import of these blocks using the EVM module, execute:

make test-import

You may also provide a custom blockchain export file to test importing more blocks via the --blockchain flag. See TestImportBlocks for further documentation.

Community

The following chat channels and forums are a great spot to ask questions about Ethermint: