Laconic state machine
Go to file
yihuang 77ed4aa754
feat!: Store eth tx index separately (#1121)
* Store eth tx index separately

Closes: #1075
Solution:
- run a optional indexer service
- adapt the json-rpc to the more efficient query

changelog

changelog

fix lint

fix backward compatibility

fix lint

timeout

better strconv

fix linter

fix package name

add cli command to index old tx

fix for loop

indexer cmd don't have access to local rpc

workaround exceed block gas limit situation

add unit tests for indexer

refactor

polish the indexer module

Update server/config/toml.go

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

improve comments

share code between GetTxByEthHash and GetTxByIndex

fix unit test

Update server/indexer.go

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Apply suggestions from code review

* test enable-indexer in integration test

* fix go lint

* address review suggestions

* fix linter

* address review suggestions

- test indexer in backend unit test
- add comments

* fix build

* fix test

* service name

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-08-11 22:49:05 +02:00
.bencher ci: add bencher config (#652) 2021-10-08 12:07:03 +00:00
.github build(deps): bump cachix/install-nix-action from 15 to 17 (#1228) 2022-08-08 13:18:06 +02:00
app feat!: Apply feemarket to native cosmos tx (#1194) 2022-08-10 18:33:38 -04:00
client imp(tests): prune node integration tests (#1212) 2022-08-08 10:17:10 +02:00
cmd imp(tests): prune node integration tests (#1212) 2022-08-08 10:17:10 +02:00
contrib/scripts ci: liveness test (#498) 2021-08-26 15:21:43 +00:00
crypto !feat(deps): Upgrade cosmos-sdk to v0.46.0 (#1168) 2022-07-28 15:43:49 +02:00
docs feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
encoding !feat(deps): Upgrade cosmos-sdk to v0.46.0 (#1168) 2022-07-28 15:43:49 +02:00
ethereum/eip712 !feat(deps): Upgrade cosmos-sdk to v0.46.0 (#1168) 2022-07-28 15:43:49 +02:00
indexer feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
networks/local deps: Go 1.18 (#1147) 2022-06-24 18:16:19 +02:00
nix imp(tests): integration tests setup (#1196) 2022-07-27 13:27:07 +00:00
proto feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
rpc feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
scripts fix: integration tests are not run in CI (#1221) 2022-08-02 08:21:03 +02:00
server feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
tests feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
testutil feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
third_party/proto evm: EIP1559 & go-ethereum related updates (#469) 2021-08-25 14:45:51 +00:00
tools feemarket: global MinGasPrice parameter (#1104) 2022-05-31 18:28:46 +02:00
types feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
version more fixes 2021-04-18 18:39:15 +02:00
x Merge pull request from GHSA-f92v-grc2-w2fg (#1234) 2022-08-11 07:07:38 +02: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
.flake8 fix: integration tests are not run in CI (#1221) 2022-08-02 08:21:03 +02:00
.gitattributes add gitattributes file (#567) 2021-09-16 08:36:08 +00:00
.gitignore imp(tests): integration tests setup (#1196) 2022-07-27 13:27:07 +00:00
.golangci.yml deps: Go 1.18 (#1147) 2022-06-24 18:16:19 +02:00
.goreleaser.yml ci: fix goreleaser (#708) 2021-10-29 15:56:09 +02:00
.markdownlint.yml all: rename go module to evmos/ethermint (#1137) 2022-06-19 11:43:41 +02:00
.markdownlintignore all: rename go module to evmos/ethermint (#1137) 2022-06-19 11:43:41 +02:00
.mergify.yml fix(rpc): fix panic on breaking EVM and feemarket params (#1188) 2022-07-19 17:00:43 +02: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 feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02: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 all: rename go module to evmos/ethermint (#1137) 2022-06-19 11:43:41 +02:00
default.nix feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
docker-compose.yml build: fix docker setup (#337) 2021-08-04 09:30:13 +00:00
Dockerfile build(deps): bump alpine from 3.16.1 to 3.16.2 (#1232) 2022-08-10 13:12:35 +02:00
go.mod feat(ante, evm): set priority for eth transactions (#1214) 2022-08-05 15:00:31 +02:00
go.sum feat(ante, evm): set priority for eth transactions (#1214) 2022-08-05 15:00:31 +02:00
gomod2nix.toml feat(ante, evm): set priority for eth transactions (#1214) 2022-08-05 15:00:31 +02:00
init.bat feat: update chain-id format (#447) 2021-08-17 14:11:26 +00:00
init.sh fix goreleaser (#1160) 2022-06-29 19:08:28 +02:00
LICENSE docs: re-license to LGPLv3 (#800) 2021-11-30 09:22:21 +01:00
Makefile feat: support dynamic app db backend flag (#1226) 2022-08-05 15:01:20 +02:00
README.md deps: Go 1.18 (#1147) 2022-06-24 18:16:19 +02: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.18+

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.