Commit Graph

363 Commits

Author SHA1 Message Date
Federico Kunze Küllmer
9dcbebafb8
app, docs: update Bech32 HRP to ethm (#476)
* changelog

* app, docs: update Bech32 HRP

* changelog
2021-08-23 07:21:27 +00:00
Federico Kunze Küllmer
6f145da328
client: add EIP55 address to debug command (#464)
* cmd: debug command

* c++

* docs
2021-08-20 09:01:57 +00:00
Federico Kunze Küllmer
d068f5b331
server: logger handler (#343)
* Problem: verbose logs display with FATAL option (fix #320)
add my script

increase amount for metamask

add run

amount ok

hide log

show info

my logger

hook log

revive eth log

tidy up

use suplog

log replace ok

removed suplog

tidy up

tidy up

fix compile

remove sh

tidy up

tidy up

* logger handler

* fix

* fix eth log override (#371)

remove redundant log

tidy up

* log test

* c++

Co-authored-by: jongwhan lee <jonghwan@crypto.com>
Co-authored-by: Jongwhan Lee <51560997+leejw51crypto@users.noreply.github.com>
2021-08-19 16:55:13 +00:00
Federico Kunze Küllmer
83c838330f
rpc: configure gas cap (#457)
* rpc: configure gas cap

* c++

* rm old const

* docs
2021-08-18 14:11:51 +00:00
Federico Kunze Küllmer
6f5f15fc6d
proto: v1alpha to v1 (#448)
* proto: v1alpha to v1

* c++

* go mod
2021-08-17 15:30:35 +00:00
Federico Kunze Küllmer
aa1b728d34
feat: update chain-id format (#447)
* feat: update chain-id format

* c++

* docs

* additional context'
2021-08-17 14:11:26 +00:00
Federico Kunze Küllmer
cc3b2ff8e9
evm, server: configurable tracer (#434)
* server: update server and enable configurable tracer

* config validation

* fix import cycle

* fix start

* update fields

* c++

* c++
2021-08-16 09:45:10 +00:00
Federico Kunze Küllmer
bc790066c4
deps: bump ibc-go to v1 (#427)
* deps: bump ibc-go to v1

* c++
2021-08-10 16:45:48 +00:00
dependabot[bot]
417640e814
build(deps): bump github.com/cosmos/cosmos-sdk from 0.43.0-rc3 to 0.43.0 (#423)
* build(deps): bump github.com/cosmos/cosmos-sdk from 0.43.0-rc3 to 0.43.0

Bumps [github.com/cosmos/cosmos-sdk](https://github.com/cosmos/cosmos-sdk) from 0.43.0-rc3 to 0.43.0.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/master/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/v0.43.0-rc3...v0.43.0)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* c++

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2021-08-10 11:11:31 +00:00
yihuang
9227e78c79
evm: use stack of contexts to implement snapshot revert (#399)
* use stack of contexts to implement snapshot revert

Closes #338

add exception revert test case

verify partial revert

mutate state after the reverted subcall

polish

update comments

name the module after the type name

remove the unnecessary Snapshot in outer layer

and add snapshot unit test

assert context stack is clean after tx processing

cleanups

fix context revert

fix comments

update comments

it's ok to commit in failed case too

Update x/evm/keeper/context_stack.go

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

Update x/evm/keeper/context_stack.go

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

Update x/evm/keeper/context_stack.go

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

update comment and error message

add comment to cacheContext

k -> cs

Update x/evm/keeper/context_stack.go

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

evm can handle state revert

renames and unit tests

* use table driven tests

* keep all the cosmos events

* changelog

* check for if commit function is nil

* fix changelog

* Update x/evm/keeper/context_stack.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-08-10 07:22:46 +00:00
dependabot[bot]
75b7f56b00
build(deps): bump github.com/cosmos/cosmos-sdk from 0.43.0-rc2 to 0.43.0-rc3 (#403)
* build(deps): bump github.com/cosmos/cosmos-sdk

Bumps [github.com/cosmos/cosmos-sdk](https://github.com/cosmos/cosmos-sdk) from 0.43.0-rc2 to 0.43.0-rc3.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/v0.43.0-rc3/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/v0.43.0-rc2...v0.43.0-rc3)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* updates

* changelog

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2021-08-06 12:47:49 +00:00
Guillermo Paoletti
396db9f20a
rpc: miner_ namespace (#377)
* miner namespace

* SetGasPrice call

* Added note plus fixed error logging

* Refactor to use the keyring in the miner namespace

* Changed keyring function return

* Added more detailed logs to unsupported functions

* Reverted changes on ethapi and just using a refrence to it on miner

* Creating a transaction

* fix condition

* Error string not capitalized

* suggested changes to setEtherbase

* change log level

* minor changes

* minor changes

* Sending tx to test the endpoint

* get tx nonce

* Using aphoton const and changing the logger to debug

* Using default RPC gas limit constant

* Apply suggestions from code review

Renames and log changes

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

* pair programming session

* get gas

* Set gas prices note added

* Setting fess and max gas

* delete unnecessary log

* Apply suggestions from code review

return false in case of error

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

* Suggested changes applied

* Updated changelog and json_rpc docs

* Update CHANGELOG.md

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

* Update ethereum/rpc/namespaces/miner/api.go

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

* Update ethereum/rpc/namespaces/miner/api.go

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

* Update ethereum/rpc/namespaces/miner/api.go

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

* Update ethereum/rpc/namespaces/miner/api.go

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

* Using the same coin denom as the gas price for the fee

Co-authored-by: ramacarlucho <ramirocarlucho@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2021-08-04 09:18:22 +00:00
dependabot[bot]
8491ae3c64
build(deps): bump github.com/cosmos/ibc-go from 1.0.0-rc2 to 1.0.0-rc3 (#374)
* build(deps): bump github.com/cosmos/ibc-go from 1.0.0-rc2 to 1.0.0-rc3

Bumps [github.com/cosmos/ibc-go](https://github.com/cosmos/ibc-go) from 1.0.0-rc2 to 1.0.0-rc3.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v1.0.0-rc2...v1.0.0-rc3)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* changelog

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2021-07-27 11:08:03 +00:00
Federico Kunze Küllmer
d40c49834c
deps: bump ibc-go (#360)
* deps: bump ibc-go

* ibc ante decorator

* c++
2021-07-26 19:26:53 +00:00
crypto-facs
d1212725f8
feat: configurable JSON-RPC APIs (#349)
* fix confusing name

* feat: Enable configurable grpc apis

* docs: Update docs and changelog

* Organized flags order

* fix linter

* fix linter

* fix maligned struct

* fix typo in docs

* fix unnecesary duplicate

* Update cmd/ethermintd/config/config.go

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

* Update cmd/ethermintd/config/config.go

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

* Update cmd/ethermintd/config/config.go

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

* Update docs/basics/json_rpc.md

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

* fix eth to be manage as default

* Update init.sh

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

* Update tests/solidity/init-test-node.sh

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

* add default case

* add default enable api namespaces

* update changelog

* fix namespaces array  handler

* remove duplicated changelog

* fix typo

* remove duplicates namespaces and fix eth namespace issue

* fix variable name

* break line in docs

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-07-26 11:15:55 +00:00
yihuang
54581269b8
evm: change log tx index to index in block (#354)
Closes #334
2021-07-26 04:40:59 -04:00
yihuang
2828fa1e62
evm: fix keep balance when resetting an account (#353)
* keep balance when override account

* Update CHANGELOG.md

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-07-26 08:15:59 +00:00
Federico Kunze Küllmer
fad5424ed1
keys: fix secp256k1 key creation (#346)
* keys: fix secp256k1 key creation

* c++
2021-07-24 08:46:13 +00:00
Thomas Nguy
0276f3465d
rpc: fix Bloom filter response (#321)
* fix bloomfilter in rpc response

* add comments
2021-07-20 15:16:02 +00:00
Guillermo Paoletti
282eb13a6f
rpc: implement internal debug_ API namespace functions (#313)
* API Hello World

* Added all the debug functions + more data to try implementing the GC functions

* Getting transactions information

* Added cpu profile first approach functions

* new struct for cpuprofile and read filename from params

* cpuprofile, gcstats and memstats

* added comment

* All endpoints returns error instead of string

* Code cleanup

* Changed errors messages to match go-eth returns

* Removed activated flag and just using the file to check if it's running

* Added new endpoints to the json_rpc.md file

* GoTrace debug endpoints added

* Block profile endpoint added

* missing goeth calls

* added debug logs

* divide debug and internal api

* Using ExpandHome on server configuration

* Added rpc changes to changelog

* Logging go trace status

* Removed logger functions and moved logger errors to debug

* Added more logs to go trace

* Added more datailed changelog

* Removed trace debug api interface

* added comments

* cleanup

* Updated changelog

* disable lint on cpuprofile rename

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

* return error in StopCpuProfile

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

* return error in StopGoTrace

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

* implement suggested changes

Co-authored-by: ramacarlucho <ramirocarlucho@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-07-20 12:50:17 +00:00
yihuang
14b38af8bc
rpc, evm: use binary search to estimate gas (#272)
* do binary search to estimate gas

Closes #268

- Also refactor ApplyMessage to be more reuseable

move binary search to rpc api side to have a clean context each try

remove EstimateGas grpc api

* extract BinSearch function and add unit test

* do estimateGas in grpc query

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-07-19 15:19:23 +00:00
Federico Kunze Küllmer
c986ef59a3
deps: bump SDK to v0.43.0-rc1 (#298)
* deps: bump SDK to v0.43.0-rc1

* c++
2021-07-15 05:43:35 -04:00
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
Federico Kunze Küllmer
9d1ce30ecd
evm: use block proposer address for COINBASE opcode (#291)
* evm: use block proposer address for COINBASE opcode

* test

* c++
2021-07-14 20:44:51 +00:00
Thomas Nguy
aab793e7f4
rpc: fix BlockBloom not found in header (#258)
* fix context index

* return default bloom if cannot be found

* fix blockbloom error

* fix setting blockbloom transient in ctx

* clean comments

* remove unused method

* update changelog

* Update CHANGELOG.md

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-07-14 09:40:58 +00:00
Federico Kunze Küllmer
623863231b
evm, rpc: query ChainConfig via gRPC (#239)
* evm, rpc: query ChainConfig via gRPC

* c++
2021-07-08 14:46:42 +00:00
Federico Kunze Küllmer
5f1f252361
evm: TxData as proto.Any (#220)
* evm: TxData as proto.Any

* proto message

* fix protobuf any generation

* Int pointer

* fix build and tests

* ante tests

* swagger

* cleanup

* c++
2021-07-05 16:39:08 +00:00
Federico Kunze Küllmer
86e30e8fa3
feat: use sdk.Int for TxData (#208)
* feat: use sdk.Int for TxData

* c++

* fix

* fix test

* fix rpc

* lint
2021-06-30 15:28:38 +00:00
yihuang
0113b4d2c0
fix: return ethereum-formatted tx hash to client (#202)
* return eth tx hash to client

Closes #67

Update ethereum/rpc/namespaces/eth/api.go

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

Update ethereum/rpc/namespaces/eth/api.go

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

change GetTxByEthHash to method

add entry to changelog

* use eth tx hash internally
2021-06-30 05:35:11 -04:00
Thomas Nguy
3b3daa4b48
rpc: support fetching pending nonce (#191)
* consider mempool tx when computing account nonce

* fix lint

* add condition on blocknbr

* add log

* update changelog
:

* cleanup
2021-06-30 03:30:01 -04:00
Federico Kunze
0f3a346cdc
rpc: use evm denom for tx fee (#181)
* rpc: use evm denom for tx fee

* changelog
2021-06-24 04:22:36 -04:00
Thomas Nguy
fada59551d
rpc, evm: fix eth_coinbase endpoint to return ethereum address of the validator node (#153)
* fix coinbase rpc endpoint to return ethereum address of the validator

* update changelog

* fix lint

* clean code and simplify logic

* fix changelog

* change request variable name and type

* add test

* fix proto comments

* fix proto comments

* Update x/evm/keeper/grpc_query.go

* Update x/evm/keeper/grpc_query.go

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2021-06-22 06:14:40 -04:00
Federico Kunze
4ca7c43b62
deps: bump SDK and Tendermint versions (#165)
* deps: bump SDK and Tendermint versions

* use header hash from context

* c++

* typo
2021-06-22 04:25:38 -04:00
crypto-facs
b4d3659547
feat: add txpool namespace RPC methods (#146)
* rpc: add txpool namespace and txpool_content endpoint

* fix PublicTxPoolAPI naming typo

* Update ethereum/rpc/txpool_api.go

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

* Update ethereum/rpc/txpool_api.go

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

* rpc: add txpool_inspect method

* rpc: add txpool_status method

* docs: Update Changelog with TxPool methods

* docs: Add txpool namespace methods documentation

* fix: removed txpool functions from backend.go

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2021-06-21 10:06:30 -04:00
Federico Kunze
e8f6f7838e
evm: support legacy tx (#109)
* evm: support legacy tx

* lint and minor fix

* tx data constructor

* tx data tests

* ante handler tests

* fill msg sender

* c++
2021-06-11 09:38:51 -04:00
Federico Kunze
0c6e44d3d3
evm: remove CommitStateDB, journal and stateObject (#84)
* evm: remove CommitStateDB and stateObject

* imported build fixes

* lint

* rm set nonce

* update account response

* changelog
2021-06-08 13:10:29 -04:00
Federico Kunze
6eadc8fdf8
rpc, evm: remove tx Receipt (#81)
* rpc, evm: remove tc receipt

* rm receipt from gRPC query service

* update eth block

* update tx service response

* rpc tx fixes

* update bloom

* fix

* more fixes

* c++
2021-06-08 07:11:37 -04:00
Federico Kunze
1ff3c46663
evm: replace block hash storage (#80)
* evm: replace block hash storage

* c++
2021-06-07 07:00:14 -04:00
Federico Kunze
e639cb4a82
evm: use TransientStore for AccessList (#75)
* evm: use transient store for access list

* evm: remove address and slot access list mappings

* update tests

* update

* changelog

* update types
2021-06-07 06:05:49 -04:00
Federico Kunze
956b18f45e
rpc: fix empty root and uncle hash (#45)
* rpc: fix empty root and uncle hash

* changelog
2021-05-26 06:33:24 -04:00
Federico Kunze
b3066f2631
evm: SDK metrics (#24)
* evm: SDK metrics

* update BeginBlock

* changelog
2021-05-14 17:44:58 -04:00
Federico Kunze
5a3d514ba0
conflicts 2021-04-17 12:00:07 +02:00
Daniel Choi
20f9a72908
Upgrade SDK v0.39.3 (#856)
* upgrade sdk v0.39.3

* update changelog sdk

* update packages
2021-04-08 18:16:23 -04:00
Ray Pierre
75fb3ccb89
fix incorrect blockHash in evm (#780)
* Fix wrong blockHash value in evm

* fix ut

* store current block hash in BeginBlock

* update ut

* update comment

* add changelog
2021-03-18 20:04:29 -07:00
Daniel Choi
2df3abd6a2
Rpcapi fix - requires Eth namespace (#845)
* update join_network docs

* add eth as default in apis

* update changelog
2021-03-16 13:37:32 -07:00
KamiD
2294a19e23
fix gas fee calcuation error (#798)
Co-authored-by: Daniel Choi <13338103+araskachoi@users.noreply.github.com>
2021-03-15 10:17:52 -07:00
Daniel Choi
11fbf1fd44
update changelog for rpc api changes (#824)
* add cmd flag for rpc api modules

* add rpc-api flags

* improve test by fixing race condition by sleeping

* edit changelog
2021-03-01 12:12:19 -08:00
KamiD
fae8147352
Fix failed to call EstimateGas (#761)
* fix failed to call function EstimateGas

* add ut to test estimateGas after contract deployed
2021-02-16 13:04:29 -08:00
KamiD
177574aafa
fix error of timeout when using Truffle to deploy contract (#768)
* fix error of timeout when using Truffle to deploy contract

* fix CHANGELOG.MD

Co-authored-by: Daniel Choi <13338103+araskachoi@users.noreply.github.com>
2021-02-08 15:54:18 -08:00
Louis Liu
6d11e23326
rpc: fix method to calculate block hash and fix mismatch block hash in eth.getBlock response (#755) 2021-01-31 23:20:22 -03:00
KamiD
c95ad0432b
x/evm: open eip2028 when the version of Istanbul was enabled (#731)
* open eip2028 when Istanbul version enabled

* Update x/evm/types/chain_config.go

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

* Update x/evm/types/chain_config.go

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

* add change log

* update development

* fix rpc test error

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2021-01-28 13:30:38 -03:00
KamiD
16f1dabdbc
ante: fix panic in when gas price larger than 100000 (#750) 2021-01-27 17:34:59 -03:00
Louis Liu
f0bf151176
evm: add parameter check for evm query func (#746)
* add parameter check for evm query func

* update changelog

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2021-01-25 11:36:16 -03:00
MichaelWang
bfa9a733e0
evm: fix format errors in String() of QueryEthLogs (#748)
* FIX: format errors in String() of QueryETHLogs

* FINISH: add change log
2021-01-25 11:09:28 -03:00
Daniel Choi
d7bdbd7488
Fix nonce issue for replay attack (#692)
* fix nonce issue for replay attack

* fix lint

* add to changelog
2021-01-08 22:44:50 -03:00
Federico Kunze
4a619b1e1b
faucet: remove module (#678)
* changelog v0.4.0

* faucet: remove module

* changelog

* codecov
2021-01-08 10:25:02 -03:00
KamiD
ffbb207655
fix panic when start a node with snapshot (#673)
* fix panic when start a node with snapshot

* change the return value of evm.NewKeeper to a pointer, roll back the before change

* add changelog

* fix importer test
2021-01-07 08:55:01 -03:00
Federico Kunze
9cbb4dcf6d
stargate: migrate types (#670)
* changelog v0.4.0

* stargate: types changes

* msg and handler changes

* validation

* fixes

* more fixes

* more test fixes

* changelog

* changelog

* lint

* rm comment

* lint

* redundant if condition
2021-01-06 17:56:40 -03:00
KamiD
d27810b6b5
evm: reset cache after csdb is committed (#676)
* reset after commit, fix wrong apphash when restart a node with snapshot

* remove ClearStateObjects

* add comment, edit the CHANGELOG.md
2020-12-30 12:39:21 -03:00
Daniel Choi
cb96bc4ea3
Pending (#571)
* add PendingBlockNumber -1

* increase block times

* update bn

* get pending balance

* additional logic to check for pending state

* add multiple balance query

* pending state for getTransactionCount

* fix lint

* add getBlockTransactionCountByNumber code - commented

* cleanup test

* GetBlockTransactionCountByNumber

* cleanup

* getBlockByNumber

* GetTransactionByBlockNumberAndIndex

* conform to namespace changes

* exportable FormatBlock method

* eth_getTransactionByHash

* eth_getTransactionByBlockNumberAndIndex

* pending nonce

* set nonce for pending and check for invalid

* WIP: doCall

* add pending tx test

* cleanup + refactor

* push first tests and init pending

* pending changes (#600)

* cleanup

* updates

* more fixes

* lint

* update call and send

* comments and minor changes

* add pending tests into sep package

* fix latest case for eth_GetBlockTransactionCountByNumber

* fix repeating null transactions in queue

* remove repeated structs

* latestblock case

* revert init script back

* fix to exportable method

* automate pending tests; add make cmd

* move and comment out pending call test

* fix some golint

* fix unlock issue

* wip: linter stringer fix?

* stringer lint

* set arr instead of append

* instantiate with length

* sep if statement

* edit pendingblocknumber note

* switch statement

* fix and update tests

* move tests-pending into tests dir

* remove commented test

* revert to appending pendingtx

* Update tests/utils.go

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

* Update tests/utils.go

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

* Update tests/utils.go

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

* require no err

* rename var

* check result for eth_sendTransaction

* update changelog

* update

* Update tests/utils.go

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

* Update tests/tests-pending/rpc_pending_test.go

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

* changelog

* remove redundant check

Co-authored-by: noot <elizabethjbinks@gmail.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2020-12-15 19:52:09 +00:00
Federico Kunze
602e61adea
rpc: fix cumulative gas (#662)
* rpc: fix cumulative gas

* changelog
2020-12-15 20:42:58 +01:00
Federico Kunze
a1386eec09
evm: balance and nonce invariants (#661)
* evm: balance and nonce invariants

* nonce invariant

* changelog

* use iterator on export
2020-12-15 19:43:06 +01:00
dependabot[bot]
1d24ef76e5
build(deps): bump github.com/ethereum/go-ethereum from 1.9.24 to 1.9.25 (#654)
* build(deps): bump github.com/ethereum/go-ethereum from 1.9.24 to 1.9.25

Bumps [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum) from 1.9.24 to 1.9.25.
- [Release notes](https://github.com/ethereum/go-ethereum/releases)
- [Commits](https://github.com/ethereum/go-ethereum/compare/v1.9.24...v1.9.25)

Signed-off-by: dependabot[bot] <support@github.com>

* fixes

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2020-12-11 13:47:18 +01:00
Federico Kunze
ef1bef16e5
rpc: protocol version (#575)
* evm: protocol version

* changelog

* version

* fix

* support latest version only
2020-12-08 20:51:26 +01:00
Federico Kunze
3bb76e8533
evm: extra eips param (#643)
* evm: extra eips param

* changelog
2020-12-08 20:01:28 +01:00
Federico Kunze
c4a3c0a96e
evm: implement vm.GetHashFn (#620)
* evm: implement vm.GetHashFn

* check nil case

* test

* handle 3 cases

* use switch statement

* stateDB tests

* abci changes

* fix LGTM issue

* final tests

* changelog

* remove epoch

* update test

* clean test

* rm epoch
2020-12-07 21:09:09 +01:00
Federico Kunze
048a8bdc12
app: fix export genesis (#619)
* v0.3.1 changes

* fix export genesis

* changelog

* evm: fix genesis format mismatch (#623)

* evm: fix genesis format mismatch

* genesis tests

* fix test

* changelog

* nolint
2020-11-27 19:42:04 +01:00
Federico Kunze
3072376371
rpc: fix deadlock (#614) 2020-11-24 16:15:42 +01:00
Federico Kunze
ef4193b4d4
deps: bump cosmos-sdk version to v0.39.2 (#615)
* deps: bump cosmos-sdk version to v0.39.2

* changelog
2020-11-24 16:05:15 +01:00
Federico Kunze
ca476d0871
evm: state transitions enabled params (#603)
* changelog

* evm: state transitions enabled params

* changelog entry

* changelog
2020-11-20 20:25:11 +01:00
Federico Kunze
d6b944787a
changelog (#609) 2020-11-20 19:22:48 +01:00
noot
2796f55b02
deps: update go-ethereum to v1.9.24 (#594)
* update to go-ethereum v1.9.24

* go mod tidy

* add YoloV2 to chain config

* add accessList and implement csdb accessList funcs

* cleanup

* access list tests

* changelog

* add stateDB test

* test Copy

Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2020-11-16 17:11:15 +01:00
Federico Kunze
73e5eb5e98
ante: fix fee check (#597)
* ante: fix fee check

* changelog

* comment
2020-11-16 14:09:40 +01:00
Federico Kunze
4501bbccdc
rpc, evm: refactor (#588)
* stargate: refactor

* remove evm CLI

* rpc: refactor

* more fixes

* fixes fixes fixes

* changelog

* refactor according to namespaces

* fix

* lint

* remove export logic

* fix rpc test

* godoc
2020-10-22 17:39:51 -03:00
Federico Kunze
d274c76ac5
evm: fix begin and endblock (#583)
* evm: fix begin and endblock

* fix tests and changelog

* fix gas

* update GetBlockBloom
2020-10-20 14:53:13 -03:00
Daniel Choi
0870a27018
crypto: fix Bip44 derivation path (#577)
* change derivationpath to geth's const

* fix lint

* change to var

* add hd path and derivation tests

* replace method

* add to tests

* fix test; pr to sdk

* Update types/config.go

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

* Update types/config.go

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

* add wrong path/acct test

* use BytesToAddress

* add to changelog

* update tests

* update changelog

* minor comment change

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2020-10-16 10:51:00 -03:00
Federico Kunze
d0456e546e
ChainSafe/ethermint -> cosmos/ethermint renaming (#569)
* ChainSafe/ethermint -> cosmos/ethermint renaming

* more renaming

* chainsafe
2020-10-09 17:52:32 +02:00
Federico Kunze
4e01da905a
crypto: refactor for stargate (#559)
* changelog

* update changelog

* crypto: refactor for stargate

* fixes

* fix keys

* changelog
2020-10-06 20:57:55 +02:00
Federico Kunze
811ca7f045
rpc: implement personal_importRawKey (#552) 2020-09-29 20:34:01 -04:00
Federico Kunze
592eca96bc
keys: fix privkey derivation (#554)
* keys: fix privkey derivation

* changelog

* add DeriveSecp256k1 test

Co-authored-by: araskachoi <choidanielw@gmail.com>
2020-09-29 17:10:56 -03:00
noot
7f648d2c55
ante: update nonce check (#550) 2020-09-29 10:39:15 -04:00
Federico Kunze
712a5bad61
release changelog (#543)
* Merge PR #513: Add chainsafe to readme

* changelog

Co-authored-by: Marko <marbar3778@yahoo.com>
2020-09-25 14:12:50 -03:00
Federico Kunze
a924b20091
update chain-id format (#542)
* chain_id.go

* rpc changes

* update scripts

* additional test

* changelog

* fix tests

* update script

* rpc updates

* validate testnet command chain-id

* validate rest server chain-id

* fix lint

* rpc updates

* changelog

* comment simulations
2020-09-24 14:50:47 -03:00
Federico Kunze
1f4f7fb017
ante: add message validation decorator (#525)
* ante: add message validation decorator

* changelog

* fix lint

* fix lint

* rename
2020-09-23 11:49:20 -03:00
noot
9a2d39bf18
update minimum gas price to be 1 (#515)
* update minimum gas price to be 1

* update changelog
2020-09-15 13:17:22 -04:00
Federico Kunze
44876ac72f
types: account balance fix (#507)
* fix hardcoded photon on account balance getter/setter

* types: testing suite

* balance test

* update zero diff

* add case for other coin

* changelog

* fix journal test
2020-09-09 10:53:14 -03:00
Federico Kunze
d6783707dc
types: unmarshal account from hex address (#504)
* types: unmarshal account from hex address:

* changelog
2020-09-08 12:58:19 -03:00
Federico Kunze
1505ba89a1
atto photon refactor (#503)
* atto photon refactor

* update testnet command

* fix test

* changelog
2020-09-08 11:39:48 -03:00
Federico Kunze
b485542b0b
types: support eth hex address on accounts (#502)
* types: support eth hex address on accounts

* changelog

* doc update

* add note for keyring output
2020-09-08 10:57:49 -03:00
Federico Kunze
d3529dd959
types: update account pubkey JSON to string (#494)
* types: update account pubkey JSON to string

* changelog

* Update app/ethermint.go

* tests

* update

* fix secp256k1 public key formatting (#501)

* use Compress and Decompress pubkey for secp256k1 keys

* cleanup

* update estimate gas test

* comments

Co-authored-by: noot <36753753+noot@users.noreply.github.com>
2020-09-07 10:04:50 -03:00
Federico Kunze
792c1ff756
evm: params (#458)
* evm: params

* setup

* bump commit

* fixes

* increase gas usage

* tests

* evm denom param

* more config updates

* update genesis

* update ante handler

* csdb param test

* more tests and fixes

* update statedb.Copy

* lint

* additional test

* fix importer tests

* fix AnteHandler test

* minor update

* revert

* undo gas update

* stringer test

* changelog

* fix csdb index error (#493)

* attempt to fix

* cleanup

* add idx check

* update csdb.Copy

* update default hash

* update querier

* update rpc tests

* fix estimate gas test

Co-authored-by: noot <36753753+noot@users.noreply.github.com>
Co-authored-by: noot <elizabethjbinks@gmail.com>
2020-09-02 15:41:05 -04:00
Federico Kunze
26816e2648
evm: debug non-determinism (#496)
* evm: debug non-determinism

* add tests

* changelog
2020-09-02 14:33:03 -04:00
Federico Kunze
8a3692e174
Fix BIP44 coin type (#480)
* fix docsearch

* update BIP44 coin type

* changelog

* set HD path
2020-08-28 11:35:10 -04:00
Federico Kunze
33de0ca1f4
upgrade module support (#471)
* upgrade module

* changelog
2020-08-25 15:17:15 -04:00
Federico Kunze
28fd339265
docs: fix npm dependency (#468)
* changelog

* docs: fix dependency
2020-08-24 16:21:45 -04:00
Federico Kunze
43788ad9f7
Changelog changes (#464)
* changelog

* changelog updates from v0.1.0
2020-08-24 16:16:12 -04:00
Federico Kunze
261f86fdf2
bump SDK to v0.39.1 (#386)
* bump sdk version to v0.39.0 candidate

* updates

* update evm

* bump commit

* more changes

* build

* genesis

* fix tests

* fix tests

* bump commit

* bump commit

* bump commit

* add keygen func

* bump version to 0.39.0-rc0

* update AnteHandler

* fix TxDecoder

* lint

* fix test

* update statedb

* changelog

* fixes

* remove extra files

* update make test-import

* rename test

* bump SDK version to final release

* update to 0.39.1-rc1

* fix evm tests

* update RPC

* minor fixes

* update to rc2

* bump to v0.39.1

* fix personal API

* fix string type cast ambiguity (#449)

* init

* fix estimate gas test

* minor genesis change

* remove comments from unstable commit (stargate release)

Co-authored-by: Alessio Treglia <quadrispro@ubuntu.com>
2020-08-23 17:41:54 -04:00
Federico Kunze
375a7a074d
local testnet command (#378)
* evm: fix non-determinism

* fixes

* typo

* fix tests

* local testnet command

* fix testnet cmd (#383)

fix export-eth-key

generate eth type account in genesis.json file

* fixes

* update docker

* minor changes

* fix build-docker-local-ethermint

* fix dockerfile

* update Makefile

* update denoms

* update genesis file

* update makefile

* fix docker-compose.yml images

* fix localnet execution (#398)

* finish documentation

* changelog and comment rpc tests workflow

* update codecov

* update testnet docs

* fix docker-compose execution

* update docs

* fix errors and make testnet work (#403)

* fix errors and make testnet work

* Update Dockerfile

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

* wip - fix db

* fixes emintd nodes and syncs nodes

* starts daemon and rpc server in bg

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>

* update entrypoint and docs

* update logs

* try fix rpc

* build docker image

* Update Dockerfile

Co-authored-by: Holechain <nrgh@foxmail.com>
Co-authored-by: Alessio Treglia <quadrispro@ubuntu.com>
Co-authored-by: Daniel Choi <choidanielw@gmail.com>
2020-07-31 17:42:04 -04:00
Federico Kunze
20e9b2ede3
rpc: event websocket subscription (#308)
* rpc: event websocket subscription

* rpc: use tendermint event subscriptions

* new log events

* filter evm transactions

* filter logs

* wip: refactor filters

* remove custom BlockNumber

* wip: refactor rpc

* HeaderByNumber and HeaderByHash

* update Tendermint event system

* update Filter

* update EventSystem

* fix lint issues

* update rpc filters

* upgrade to tendermint v0.33.4

* update filters

* fix unsubscription

* updates wip

* initialize channels

* cleanup go routines

* pass ResultEvent channel on subscription

* error channel

* add block filter changes test

* add eventCh loop

* pass funcs in select go func, block filter working

* cleanup

* lint

* NewFilter and GetFilterChanges working

* eth_getLogs working

* lint

* lint

* cleanup

* remove logs and minor fixes

* changelog

* address @noot comments

* revert BlockNumber removal

Co-authored-by: noot <elizabethjbinks@gmail.com>
2020-07-03 11:40:00 -04:00
noot
e9c494cf71
rpc: return 0 nonce if account doesn't exist (#345)
* add EnsureExists check to GetTransactionCount

* cleanup, return 0 as nonce if account doesn't exist

* update changelog

* update changelog
2020-06-26 14:15:54 -04:00
Federico Kunze
988ee53a59
rpc: implement eth_coinbase (#325)
* rpc: implement eth_coinbase

* changelog

* address comments from review

* changelog
2020-06-08 12:43:37 -04:00
Federico Kunze
427e96c1de
evm: various fixes (#319)
* evm: use prefix stores, move SetBlockBloom to EndBlock, bug fixes

* add logs to genesis state

* log tests

* commit and finalize on InitGenesis

* validate TransactionLogs

* changelog

* fix test-import

* fix lint

* add more tests
2020-06-04 06:40:21 -04:00
Federico Kunze
3526ac12b2
evm: GenesisAccount validation (#317)
* evm: GenesisAccount validation

* changelog

* fix tests

* typo
2020-05-28 17:22:41 -04:00
Federico Kunze
16df7725c5
evm: add missing genesis fields and export genesis state logic (#255)
* evm: export genesis state

* x/evm: split keeper.go

* x/evm: retrieve storage from address

* changelog

* fixes

* add check for nil logs

* update validation func

* fixes

* fix non-determinism

* stop storage iteration

* remove error return value

* update changelog

* fix test

* lint
2020-05-18 15:21:12 -04:00
Federico Kunze
d3c802f99e
x/evm: logger (#272)
* x/evm: logger

* changelog

* go mod verify and tidy

* typo
2020-04-29 23:36:30 -04:00
Federico Kunze
7c5e0afb09
SDK modules simulations (#269)
* SDK modules simulations

* changelog

* changelog
2020-04-29 11:48:44 -04:00
Federico Kunze
4d609b2a22
bump Cosmos SDK version to v0.38.2 (#183)
* evm: move Keeper and Querier to /keeper package

* keeper: update keeper_test.go

* fix format

* evm: use aliased types

* bump SDK version to v0.38.1

* app: updates from new version

* errors: switch sdk.Error -> error

* errors: switch sdk.Error -> error. Continuation

* more fixes

* update app/

* update keys and client pkgs

* build

* fix tests

* lint

* minor changes

* changelog

* address @austinbell comments

* Fix keyring usage in rpc API and CLI

* fix keyring

* break line

* Misc cleanup (#188)

* evm: move Begin and EndBlock to abci.go

* evm: use expected keeper interfaces

* app: use EthermintApp for integration and unit test setup

* evm: remove count type; update codec

* go mod verify

* evm: rename msgs for consistency

* evm: events

* minor cleanup

* lint

* ante: update tests

* changelog

* nolint

* evm: update statedb to create ethermint Account instead of BaseAccount

* fix importer test

* address @austinabell comments

* update README

* changelog

* evm: update codec

* fix event sender

* store logs in keeper after transition (#210)

* add some comments

* begin log handler test

* update TransitionCSDB to return ReturnData

* use rlp for result data encode/decode

* update tests

* implement SetBlockLogs

* implement GetBlockLogs

* test log set/get

* update keeper get/set logs to use hash as key

* fix test

* move logsKey to csdb

* attempt to fix test

* attempt to fix test

* attempt to fix test

* lint

* lint

* lint

* save logs after handling msg

* update k.Logs

* cleanup

* remove unused

* fix issues

* comment out handler test

* address comments

* lint

* fix handler test

* address comments

* use amino

* lint

* address comments

* merge

* fix encoding bug

* minor fix

* rpc: error handling

* rpc: simulate only returns gasConsumed

* rpc: error ineffassign

* go: bump version to 1.14 and SDK version to latest master

* rpc: fix simulation return value

* breaking changes from SDK

* sdk: breaking changes; build

* tests: fixes

* minor fix

* proto: ethermint types attempt

* proto: define EthAccount proto type and extend sdk std.Codec

* evm: fix panic on handler test

* evm: minor state object changes

* cleanup

* tests: update test-importer

* fix pubkey registration

* lint

* cleanup

* more test checks for importer

* minor change

* codec fixes

* rm init func

* fix importer test build

* fix marshaling for TxDecoder

* use amino codec for evm

* fix marshaling for SimulationResponse

* use jsonpb for unmarshaling

* fix method handler crashed

* return err on VerifySig

* switch stateObject balance to sdk.Int

* fixes to codec and encoding

* cleanup

* set tmhash -> ethhash in state transition

* add tmhash->ethereumhash to csdb.GetLogs

* attempt to  fix tests

* update GetLogs to switch with Has

* ante panic

* diff changes

* update SetLogs

* evm/cli: use ethermint codec

* use LengthPrefixed for encoding

* add check for nil *big.Int

* add balance to UpdateAccounts

* fix previous balance

* fix balance bug

* prevent panic on make test-import

Co-authored-by: austinabell <austinabell8@gmail.com>
Co-authored-by: noot <36753753+noot@users.noreply.github.com>
Co-authored-by: noot <elizabethjbinks@gmail.com>
2020-04-22 15:26:01 -04:00
Austin Abell
33ab63ef15
update web3 transaction hash from RLP (#250)
* remove ethereum hash of web3 transaction type (always amino hash)

* Update changelog
2020-04-13 19:08:43 -04:00
noot
199484fc2e
eth_getFilterLogs, eth_getLogs implementation (#248) 2020-04-13 15:18:50 -04:00
noot
db4cee7eac
eth_newBlockFilter and related functionality (#232)
* add filter types for block, pending tx, log
* implement pollForBlocks for block filters
* implement getFilterChanges for block filter
* implement uninstall filter by stopping polling
2020-04-07 16:00:06 -04:00
Federico Kunze
da9157e406
upgrade changes cleanup (#236)
* changes from update version

* app changes

* cmd changes

* build and send tx

* fix tests

* eth_rpc fixes

* lint

* add WithEventManager to handler ctx

* changelog

* go mod verify and tidy
2020-04-01 15:49:21 -03:00
Federico Kunze
30f34e6c59
evm: move Keeper and Querier to /keeper package (#182)
* evm: move Keeper and Querier to /keeper package

* keeper: update keeper_test.go

* fix format

* evm: use aliased types

* add comments from review

* changelog
2020-03-09 10:17:23 -03:00
Federico Kunze
b6af79638c
add CHANGELOG.md (#184)
* add CHANGELOG.md

* update PR template
2020-03-06 20:00:03 -03:00