Laconic state machine
Go to file
Adu eaca3e09e2
fix: simulations don't generate EVM transactions (#996)
* use SimAppChainId instead of the default cosmos-sdk simulation chainid

* implement custom RandomGenesisAccounts for auth module simulation

* use customized RandomGenesisAccounts

* generate random ethereum txs operations

* use sdk.DefaultBondDenom

* implement WeightedOperations

* fix self assignment

* use customized RandomAccounts to generate accounts with ethsecp256k1 private key

* RandomAccounts generate random accounts with ethsecp256k1 private key

* implement SimulateEthSimpleTransfer

* implement SimulateEthCreateContract

* refactor and implement operationSimulateEthCallContract as future operations of SimulateEthCreateContract

* Update app/app.go

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

* Update app/test_helpers.go

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

* Update x/evm/simulation/operations.go

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

* Update x/evm/simulation/operations.go

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

* Update app/test_helpers.go

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

* fix r.Read return only 1 result

* fix linter errors

* change SimulateContext to private

* return transferable amount immediately

* fix linter errors

* fix linter errors: append assign to different slice

* fix linter error: remove else block

* use gofumpt

* Update x/evm/simulation/operations.go

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

* Update x/evm/simulation/operations.go

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

* Update x/evm/simulation/operations.go

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

* Update x/evm/simulation/operations.go

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

* fix recipient typo

* add nosec comment to escape Potential hardcoded credentials check

* add comments

* use SimAppChainID as valid chainID

* do not specify genesis.json to create random genesis state for simulation

* sub estimateGas to avoid overflow

* correct RandomGenesisAccounts comments

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

* correct app/test_helpers.go comments

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

* remove NewTxConfig

* implement RegisterStoreDecoder

* remove WeightMsgEthCallContract and adjust weights

* use gofmt

* update godoc

* use types.DefaultEVMDenom in evm genesis params

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

* use types.DefaultEVMDenom

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

* update godoc

* Update x/evm/simulation/genesis.go

* replace evmdenom with bonddenom in AppStateFn

* fix AppStateFn

* fix lint error

* add ParamChanges for RandomizedParams

* rename app/test_helpers.go -> app/utils.go

* testing for RandomGenesisAccounts

* use cdc for marshaling

* lint

* changelog

* changelog 2

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: crypto-facs <84574577+crypto-facs@users.noreply.github.com>
Co-authored-by: Freddy Caceres <freddy.caceres@crypto.com>
Co-authored-by: Federico Kunze Küllmer <federico.kunze94@gmail.com>
2022-04-19 09:50:00 +00:00
.bencher ci: add bencher config (#652) 2021-10-08 12:07:03 +00:00
.github ci: cleanup (#1048) 2022-04-12 15:51:20 +02:00
app fix: simulations don't generate EVM transactions (#996) 2022-04-19 09:50:00 +00:00
client fix: update feemarket REST endpoints (#1026) 2022-04-04 15:00:26 +02:00
cmd feat: store migration setup (#794) 2021-11-29 16:46:20 +01:00
contrib/scripts ci: liveness test (#498) 2021-08-26 15:21:43 +00:00
crypto crypto: updates from reviews (#535) 2021-09-07 17:29:24 +00:00
docs Context block height fix on TraceTx (#1051) 2022-04-16 19:31:30 +02:00
encoding encoding: rm MsgEthereumTx custom support in TxConfig (#714) 2021-11-02 11:24:24 +01:00
ethereum/eip712 ante: EIP712 support (#950) 2022-02-26 16:34:43 +00:00
networks/local [Snyk] Security upgrade golang from 1.16.7 to 1.16 (#670) 2021-10-14 07:39:48 +00:00
proto Context block height fix on TraceTx (#1051) 2022-04-16 19:31:30 +02:00
rpc eth_getBlockByNumber fix on batch transactions (#1050) 2022-04-18 19:06:04 +02:00
scripts fix: update feemarket REST endpoints (#1026) 2022-04-04 15:00:26 +02:00
server deps: bump SDK to v0.45.3 (#1046) 2022-04-12 15:31:25 +02:00
tests fix: tests/solidity/suites/eip1559/package.json to reduce vulnerabilities (#1038) 2022-04-19 09:25:51 +00:00
testutil/network fix: eth_newPendingTransactionFilter doesn't return ethereum tx hash (#1012) 2022-03-24 07:56:59 +00:00
third_party/proto evm: EIP1559 & go-ethereum related updates (#469) 2021-08-25 14:45:51 +00:00
tools tests: integration tests with JSON-RPC client (#704) 2021-11-14 14:34:10 +01:00
types types: add ValidateNonZeroAddress utility function (#1033) 2022-04-07 10:51:28 +00:00
version more fixes 2021-04-18 18:39:15 +02:00
x fix: simulations don't generate EVM transactions (#996) 2022-04-19 09:50:00 +00:00
.clang-format ci: enable backport for v0.8 and v0.7 (#784) 2021-11-25 11:06:30 +00:00
.dockerignore build: fix docker setup (#337) 2021-08-04 09:30:13 +00:00
.gitattributes add gitattributes file (#567) 2021-09-16 08:36:08 +00:00
.gitignore build: fix docker setup (#337) 2021-08-04 09:30:13 +00:00
.golangci.yml x/evm/keeper: save 24B with Go in-condition variable idiom (#828) 2021-12-14 00:51:36 +01:00
.goreleaser.yml ci: fix goreleaser (#708) 2021-10-29 15:56:09 +02:00
.mergify.yml deps: bump IBC v3-rc0 (#947) 2022-02-17 15:34:58 +01:00
.semgrepignore ci: semgrep config (#917) 2022-01-24 15:35:02 +01:00
buf.work.yaml evm: EIP1559 & go-ethereum related updates (#469) 2021-08-25 14:45:51 +00:00
CHANGELOG.md fix: simulations don't generate EVM transactions (#996) 2022-04-19 09:50:00 +00:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2018-07-17 11:52:20 -04:00
codecov.yml all: linter (#532) 2021-09-05 11:03:06 +00:00
CONTRIBUTING.md doc: duplicated documentation removed (#603) 2021-09-29 10:37:10 +00:00
docker-compose.yml build: fix docker setup (#337) 2021-08-04 09:30:13 +00:00
Dockerfile fix: Dockerfile to reduce vulnerabilities (#1005) 2022-03-21 13:23:39 +00:00
go.mod Context block height fix on TraceTx (#1051) 2022-04-16 19:31:30 +02:00
go.sum Context block height fix on TraceTx (#1051) 2022-04-16 19:31:30 +02:00
init.bat feat: update chain-id format (#447) 2021-08-17 14:11:26 +00:00
init.sh server: add api.enable flag for Cosmos SDK API server (#908) 2022-01-17 19:08:02 +01:00
LICENSE docs: re-license to LGPLv3 (#800) 2021-11-30 09:22:21 +01:00
Makefile fix: simulations don't generate EVM transactions (#996) 2022-04-19 09:50:00 +00:00
README.md Update README.md (#736) 2021-11-09 19:50:27 +00:00
starport.yml ci: liveness test (#498) 2021-08-26 15:21:43 +00:00

Ethermint

banner

Ethermint is a scalable and interoperable Ethereum library, built on Proof-of-Stake with fast-finality using the Cosmos SDK which runs on top of Tendermint Core consensus engine.

Note: Requires Go 1.17+

Installation

For prerequisites and detailed build instructions please read the Evmos Installation instructions. Once the dependencies are installed, run:

make install

Or check out the latest release.

Quick Start

To learn how the Ethermint works from a high-level perspective, go to the Introduction section from the documentation. You can also check the instructions to Run a Node.

For an example on how Ethermint can be used on any Cosmos-SDK chain, please refer to Evmos.

Community

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

Contributing

Looking for a good place to start contributing? Check out some good first issues.

For additional instructions, standards and style guides, please refer to the Contributing document.

Careers

See our open positions on Cosmos Jobs, Notion, or feel free to reach out via email.