yihuang
0d69a69625
fix: websocket client duplicated messages ( #955 )
...
* Problem: websocket client get duplicated messages
Closes : #954
Solution:
- localize the subscription management within current connection
* changelog
* fix linter
* fix test building
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-02-25 19:08:30 +00:00
crypto-facs
e41c713ffb
rpc: add support for eth_signedTypedData
( #953 )
...
* add signTypedData api
* fix typo
* fix lint issues
* add crypto recovery offset
* Apply suggestions from code review
* add changelog
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-02-25 13:42:33 +00:00
yihuang
724a06632b
fix: minimal-gas-prices and baseFeePerGas conflicts ( #916 )
...
* Problem: minimal-gas-prices and baseFeePerGas conflicts
Closes : #915
Solution:
- Don't check min-gas-price for evm tx if london hardfork and feemarket enabled.
comments and cleanup
changelog
* fix zero fee coins
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-01-26 10:44:41 +00:00
yihuang
351e6d6eb3
rpc: make trace transaction api work with batch tx ( #907 )
...
* make trace transaction api work with batch tx
Closes : #906
fix linter
* review suggestion
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-01-16 15:36:19 +00:00
yihuang
7d8664043e
impr: support batch eth txs ( #901 )
...
* support batch eth tx
Closes: 896
Allow multiple MsgEthereumTx in single tx
* fix transaction receipt api
* fix tx receipt api and accumulate tx gas used
* fix lint
* fix test
* fix rpc test
* cleanup
* fix cumulativeGasUsed and gasUsed
* fix lint
* Update app/ante/eth.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update app/ante/eth.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update rpc/ethereum/backend/utils.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* pr suggestions
* typo
* fix lint
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-01-14 10:37:33 +01:00
crypto-facs
42cd3f5a4d
Add criteria to filter ( #865 )
2021-12-31 18:08:08 +01:00
yihuang
ced5280571
fix: OOM when eth_getLogs response too large ( #860 )
...
* fix: OOM when eth_getLogs response too large
Closes : #858
- add limit to number of logs of filter response
- make block limit and log limit configurable
* return error if exceeds log limit
* Apply suggestions from code review
* parse from config
* read cli flags
* add to config template
* fix bloomFilter
* changelog
* add validation
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-12-29 22:47:25 +01:00
yihuang
514785bd89
rpc: optimize tx index lookup ( #810 )
...
Closes : #760
Solution:
- emit tx index to cosmos events
- rpc side try to use the events, but fallback to heavier approach when fails.
Update rpc/ethereum/namespaces/eth/api.go
changelog
fix lint
fix TxIndexFromEvents
fix
Update rpc/ethereum/backend/backend.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-12-16 22:30:22 +00:00
yihuang
ccc6f5b53d
fix: use EffectiveGasPrice
in ante handler for dynamic fee tx ( #817 )
...
* Use effectiveGasPrice in ante handler for dynamic fee tx
Closes : #814
Solution:
- use effectiveGasPrice when check minimal-gas-prices, and deduct fee in ante handler
- implement an EthMempoolFeeDecorator
* add effectiveGasPrice to tx receipt
* changelog
* fix unit test
* fix comments
* add comments
* Apply suggestions from code review
Co-authored-by: Thomas Nguy <81727899+thomas-nguy@users.noreply.github.com>
* review suggestions
Co-authored-by: Thomas Nguy <81727899+thomas-nguy@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-12-15 02:17:03 +00:00
yihuang
50e463725e
feemarket: update base fee in BeginBlock
( #822 )
...
* Update base fee in begin blocker
Closes : #820
* changelog
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-12-15 02:10:52 +00:00
yihuang
c8d4d3f9a3
fix: improve error message in SendTransaction
json-rpc api ( #786 )
...
* fix error message in `SendTransaction` json-rpc api
Closes : #785
Solution:
- Remove `stacktrace.Propagate`s, and recover error message in jsonrpc server
changelog
fix error messages
* Update x/evm/keeper/msg_server.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-11-26 15:19:28 +01:00
Daniel Burckhardt
2d8be4e85b
fix: gosec issues ( #779 )
...
* remove gosec warnigs with medium severity
* Improvement(Ethermint): Fix gosec vulnerabilities
* Improvement(Evmos): address pr comments
* Improvement(Ethermint): Fix flags test by using PersistentFlags() instead of Flags()
* Improvement(Ethermint): Fix return of defer function
* Improvement(Ethermint): Replace PersistentFlags with Flags
* Apply suggestions from code review
* Improvement(Ethermint): Use persisentFlags again and remove required attribute for chain id
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-11-25 15:12:57 +00:00
Federico Kunze Küllmer
be8fd869ff
rpc: fix default signer ( #769 )
...
* rpc: fix default signer
* changelog
2021-11-22 16:39:25 +01:00
Jongwhan Lee
392d1dd8cf
rpc: eth_feeHistory
( #734 )
...
* Problem: missing json rpc of eth_feeHistory #685
add oracle backend
space ready
structure ok
refactoring
return feehistory
data flow ok
basefee
set gas used ratio
computing reward
add testing
add gas used
prepare data
fill reward
increase coin
fixing api
add mac
add launch
gas used ratio ok
print element
reward workes
reward working
fix panic
value correct
remove debugging log
tidy up
tidy up
remove oracle
tidy up
fix handler crash
add unit test
tidy up
add limit check
reformat
fix lint
fix lint
fix lint
fix lint
Update rpc/ethereum/backend/feebackend.go
thanks
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Update rpc/ethereum/backend/feebackend.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Update rpc/ethereum/backend/feebackend.go
thanks
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Update rpc/ethereum/backend/feebackend.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
fix compile error
split lines
remove temporary string conversion
return error if gaslimit is 0
move OneFeeHistory to types
add comment
only err check
Update rpc/ethereum/backend/feebackend.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Update rpc/ethereum/backend/feebackend.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
tidy up
add feehistory-cap
* Apply suggestions from code review
* changelog
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <federico.kunze94@gmail.com>
2021-11-17 11:58:52 +00:00
Adu
e96a4b9f9d
rpc: debug_intermediateRoots
( #754 )
...
* Problem: need to add JSON-RPC endpoint debug_intermediateRoots
Closes #715
* currently return emtpy hash
* add changelog entry
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-11-16 14:29:51 +00:00
crypto-facs
fdabf69cb3
fix: filter non Ethereum txs in block JSON-RPC response ( #741 )
...
* filter non eth txs in block rpc response
* update changelog
* fix remaining endpoints
* Update rpc/ethereum/namespaces/eth/api.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* fix GetTransactionByBlockNumberAndIndex
* add comment
* fix tx index
* filter txs by block height
* fix linter
* Update rpc/ethereum/backend/backend.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* remove unnecesary hex calls
* fix linter
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-11-16 15:16:57 +01:00
Adu
f42f339d05
rpc: personal_listWallets
( #748 )
...
* Problem: need to add JSON-RPC endpoint personal_listWallets
Closes #745
* wallet level that manages accounts is not supported by keyring interface, will return nil
* changelog entry
* fix lint failure by exposing RawWallet as public
* fix notes typo
2021-11-15 11:20:59 +00:00
Federico Kunze Küllmer
32c905ab87
tests: integration tests with JSON-RPC client ( #704 )
...
* tests: integration tests with JSON-RPC client
* fix package
* tests: networking configuration fixed (#706 )
* update testnet hdPath, fixes #688
* lint
* header
* e2e wip
* fix getBlock response
* enable personal API
* changelog
Co-authored-by: Guillermo Paoletti <guillermo.paoletti@gmail.com>
Co-authored-by: Freddy Caceres <freddy.caceres@crypto.com>
2021-11-14 14:34:10 +01:00
Calvin Lau
481e3b82ce
rpc: add debug_tranceBlockByHash
, fix debug_traceBlock*
crash on non-existing block ( #743 )
...
* Problem: Missing debug_tranceBlockByHash RPC method
Solution: (Fix #742 ) Add the missing method
* Problem: debug_traceBlockByNumber crashed when block height not found
Solution: (Fix #744 ) Fix memory reference error
* Run go fmt
* Revert comment on init.sh
* Apply suggestions from code review
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update rpc/ethereum/backend/backend.go
* Update rpc/ethereum/backend/backend.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-11-12 08:50:38 +00:00
Adu
a874c1e1ca
rpc: personal_initializeWallet ( #740 )
...
* Problem: need to add JSON-RPC endpoint personal_initializeWallet
Closes #738
* this is aimed at smartcard wallet which is not supported yet.
* changelog and not skip for expecting error
* fix personal_test error message assertion
* Apply suggestions from code review
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-11-11 15:12:14 +00:00
Adu
a3f1d8d89d
rpc: personal_unpair
( #733 )
...
* Problem: need to add rpc endpoint personal_unpair
Closes #730
* this is aimed at smartcard wallet which is not supported yet.
* will return unsupported error now.
* Update rpc/ethereum/namespaces/personal/api.go
* add changelog entry and use errors.Is
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Tomas Tauber <2410580+tomtau@users.noreply.github.com>
2021-11-10 10:09:53 +01:00
yihuang
2a205e561a
rpc: debug_traceTransaction
fails for succesful tx ( #720 )
...
* Problem: traceTransaction fails for succesful tx
Solution:
- Change the context to the begining of the block, rather than the end
of it, while override block context to correct one
pass predecessors
pass current block information to grpc query
* changelog
* fix build
* fix lint
* refactor traceBlock
* update protobuf
* fix Predecessors
* traceBlock refactor
* refactor traceBlock response
* Update proto/ethermint/evm/v1/tx.proto
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update proto/ethermint/evm/v1/query.proto
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update proto/ethermint/evm/v1/query.proto
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update proto/ethermint/evm/v1/query.proto
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update proto/ethermint/evm/v1/query.proto
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update proto/ethermint/evm/v1/query.proto
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* check tx index is not out of bound
* fix build
* Update rpc/ethereum/namespaces/debug/api.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update rpc/ethereum/namespaces/debug/api.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update rpc/ethereum/namespaces/debug/api.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update rpc/ethereum/namespaces/debug/api.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* remove prealloc
* add traceBlock test
* Update x/evm/keeper/grpc_query.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* use bytes2Hex
* fix error message
* add comment
* Apply suggestions from code review
Co-authored-by: Freddy Caceres <freddy.caceres@crypto.com>
Co-authored-by: crypto-facs <84574577+crypto-facs@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-11-09 18:38:22 +00:00
NevermoreRandom
fd36873261
rpc: decode raw transaction via RLP ( #727 )
...
* Decode raw transaction via RLP
* add changelog
* Apply suggestions from code review
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-11-08 08:22:31 +00:00
yihuang
10c49f7748
feat: add raw ethereum tx CLI ( #712 )
...
Closes #709
fix index
Apply suggestions from code review
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
fix lint
transaction decoding unit test
test BuildTx
fix lint
changelog
2021-11-02 12:20:19 +01:00
dependabot[bot]
23a3362475
build(deps): bump github.com/ethereum/go-ethereum from 1.10.9 to 1.10.11 ( #676 )
...
* build(deps): bump github.com/ethereum/go-ethereum from 1.10.9 to 1.10.10
Bumps [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum ) from 1.10.9 to 1.10.10.
- [Release notes](https://github.com/ethereum/go-ethereum/releases )
- [Commits](https://github.com/ethereum/go-ethereum/compare/v1.10.9...v1.10.10 )
---
updated-dependencies:
- dependency-name: github.com/ethereum/go-ethereum
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* build(deps): bump github.com/ethereum/go-ethereum from 1.10.9 to 1.10.10
Bumps [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum ) from 1.10.9 to 1.10.10.
- [Release notes](https://github.com/ethereum/go-ethereum/releases )
- [Commits](https://github.com/ethereum/go-ethereum/compare/v1.10.9...v1.10.10 )
---
updated-dependencies:
- dependency-name: github.com/ethereum/go-ethereum
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* build(deps): bump github.com/ethereum/go-ethereum from 1.10.9 to 1.10.10
Bumps [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum ) from 1.10.9 to 1.10.10.
- [Release notes](https://github.com/ethereum/go-ethereum/releases )
- [Commits](https://github.com/ethereum/go-ethereum/compare/v1.10.9...v1.10.10 )
---
updated-dependencies:
- dependency-name: github.com/ethereum/go-ethereum
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* fix
* rpc: RLP apis
* tx fee cap fix
* fix config
* fix test
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2021-10-25 15:01:04 +00:00
yihuang
1fe07edbf9
evm: refactor dup state transition code ( #674 )
...
* Problem: state transition code is duplicated
Closes : #672
Solution:
- move gas refund out from ApplyMessage
- move check into ApplyMessage
- move evm construction into ApplyMessage
- ensure context stack is clean after ApplyMessage return
fix unit tests
undo rename
add underflow check
* improve performance
- don't duplicate params loading
- passing EVMConfig around as pointer
2021-10-22 19:21:03 +02:00
yihuang
ac75a9a4a4
refactor: eth_call
and eth_estimateGas
don't need to pass base fee as field ( #671 )
...
Solution:
- load fee directly from state
changelog
2021-10-21 17:29:19 +02:00
Jongwhan Lee
f70e4c1253
rpc: eth_resend
( #684 )
...
* Problem: missing json rpc for eth_resend #675
add unit test
restore
Update server/start.go
thanks~
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
tidy up checkTxFee
change comments
* fix lint
* Apply suggestions from code review
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-10-20 19:14:39 +00:00
JayT106
c644dd6707
fix: handle file close logic ( #679 )
...
* handle file close logic
* Update rpc/ethereum/namespaces/debug/utils.go
* update changelog
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-10-19 08:55:55 +00:00
Thomas Nguy
cd3b0be5ed
rpc, feemarket: store base fee in event ( #673 )
...
* store base fee in event
* update changelog
2021-10-15 08:59:26 +00:00
Thomas Nguy
75d553674c
evm, rpc: disable BaseFee
for non London block ( #662 )
...
* disable basefee if not london block
* add london block check in state transition
* fix linter
* add unit test
* clean code
* add changelog
2021-10-13 15:39:47 +02:00
Devashish Dixit
c7a2fb97c7
fix: limit total number of filters that can be created ( #661 )
...
* Problem: No way to limit total number of filters that can be created
Solution: Add a config parameter to set the total number of filters that can be created
* Add defer statement for releasing locks
* Change default value for filter cap to 200
* Changed data type of filter cap to int32
* Add changelog entry
* Update CHANGELOG.md
* Fix struct alignment
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-10-13 11:03:49 +00:00
Tomas Tauber
8e12d94359
rpc: fix ExpandHome
restrictions bypass ( #667 )
...
`go-home` seems to be using environment variables first
2021-10-13 10:52:05 +00:00
JayT106
f69c887276
rpc: test fix ( #608 )
...
* fix rpc tests with net namespace
* skip personal test
* skip rpc pending test
* fix endpoint
* fix rpc pending test
* fix missing gas param in some rpc tests
* fix eth_getproof when the block number is equal to pending or latest
* fix rpc tests filter subscribe failed
* lint
* remove unused linter
* fix PendingTransactionFilter and TestEth_GetFilterChanges_BlockFilter
* fix eth_estimateGas
* fix TestEth_EstimateGas_ContractDeployment
* skip TestEth_ExportAccount_WithStorage
* remove sleep in rpc test
* Update changelog
* add test-rpc in github action
* bump golangci-lint version to v1.42.1
2021-10-07 18:41:27 +02:00
Thomas Nguy
f9323f6473
rpc: fix range filter fromBlock logic ( #643 )
2021-10-07 11:04:04 +02:00
Federico Kunze Küllmer
bcdb982886
rpc: geth v1.10.9 changes ( #624 )
...
* rpc: geth v1.10.9 changes
* updates
* suggestGasTipCap
* update gRPC
* resend
* fixes
* rm unused func
* address TODO
2021-10-06 11:22:32 +00:00
Federico Kunze Küllmer
a8722655bb
all: bump go-ethereum to v1.10.9 ( #231 )
...
* all: bump go-ethereum to v1.10.4
* build
* state transition and rpc
* wip rpc changes
* fix refund
* fixes
* no base fee param
* ante handler
* undo change
* fix test
* bump deps
* calculate base fee
* gRPC base fee query
* update RPC
* fix
* update'
* go.mod
* fix build
* fix panic
* rm changes in third_party
* json rpc changes
* reserved fields
* fixes fixes fixes
* rm no stringer
* fixes 2
* tests wip
* bump geth version
* update
* grpc traceTx
* rm fee market from ante
* fix TransactionArgs
* lint
* update proto
* update tx args
* changelog
2021-10-05 15:38:20 +00:00
Daniel Burckhardt
34c2593e43
rpc: restructure JSON-RPC directory and rename server config ( #612 )
...
* Restructure ethermint/rpc repo structure and change import statements
* Add #400 to changelog
* fix filepath in util and json_rpc
* Move #400 to unreleased section
2021-10-01 14:49:22 +00:00