Thomas Nguy
bf54193669
feemarket: change basefee to be a module param ( #943 )
...
* change basefee to a module params
* add changelog and fix linter
* change params type of basefee and remove default base fee
* restaure event
* clean code
* fix proto
* fix protos
* fix logic
* update rpc tests
* fix comment
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-02-23 19:48:44 +01:00
crypto-facs
aeedef9b4b
deps: upgrade geth to v1.10.15 ( #935 )
...
* upgrade geth to v1.10.15
* fix lint
* fix imports
* revert makefile change
* update changelog
* Update CHANGELOG.md
Co-authored-by: Guillermo Paoletti <guillermo.paoletti@gmail.com>
* update chain config
* add getblockvalue for chain config fork
Co-authored-by: Guillermo Paoletti <guillermo.paoletti@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-02-14 23:08:41 +00:00
yihuang
e39a74998e
fix: default base fee state in genesis ( #919 )
...
* fix defualt base fee state in genesis
Closes : #918
Solution:
- initialise the default base fee value in genesis
* changelog
2022-01-26 11:36:07 +01:00
yihuang
5e15c64d02
fix: make gas estimation test reproducible ( #890 )
...
Closes : #536
Solution: Use a fixed test account.
The source of non-deterministic is tx's intrinsic gas is different according to different number of zeros in input data,
so to make sure the gas number is reproducible, and the randomly generated test address is included in that.
2022-01-07 14:04:16 +01:00
yihuang
ade84319e6
evm: refactor statedb implementation ( #729 )
...
* initial statedb module
unit tests
unit tests
keeper implementation
extract TxConfig
remove unused code
* keeper integration
* fix unit tests
* Apply suggestions from code review
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* fixup! initial statedb module
* changelog
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-01-05 08:28:27 +01:00
yihuang
7ec5e5fdef
fix: set correct nonce in EthCall/EstimateGas ( #871 )
...
* fix: set correct nonce in EthCall/EstimateGas
Closes : #870
* Update CHANGELOG.md
* unit test
2022-01-04 11:55:30 +01:00
yihuang
eb17366dcc
fix: consistent BaseFee check logic ( #855 )
...
Closes : #755
```
if not london_hardfork {
# reject DynamicFeeTx
# no `baseFeePerGas` field in block response
# baseFee = nil
} else {
# allow DynamicFeeTx
# add `baseFeePerGas` field in block response
if feemarketParams.NoBaseFee or height < feemarketParams.EnableHeight {
# baseFee = 0
} else {
# init baseFee to initBaseFee and adjust in later blocks
}
}
```
Update x/evm/keeper/keeper.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
add unit tests
Update app/ante/utils_test.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
changelog
2021-12-28 07:59:28 +00:00
yihuang
d822fee5c1
fix: contract address in contract creation receipt ( #851 )
...
* Problem: contract address in contract creation receipt is wrong
Closes : #850
- decrease nonce before evm.create
- add unit tests and rpc tests
* add changelog
2021-12-28 08:55:40 +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
yihuang
7c7f3f02bb
tests: add message call benchmark ( #717 )
...
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-11-08 13:04:49 +00:00
JayT106
40b3b9ae1b
evm: unit tests for gas refund ( #686 )
...
* add TestGetEthIntrinsicGas
* more test cases in TestGetEthIntrinsicGas
* add GasToRefund tests
* add TestRefundGas tests
* remove duplicate leftoverGas check
* made resetGasMeterAndConsumeGas public for testing
* TestResetGasMeterAndConsumeGas tmp
* add mintFeeCollector flag for gas refund tests
* add comment and check
* add TestResetGasMeterAndConsumeGas
* Update x/evm/keeper/state_transition_test.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-10-20 19:09:06 +00:00
yihuang
1000461a55
rpc: transaction receipt test ( #678 )
...
* Problem: No test on the transaction receipt api
Closes : #582
- add receipt rpc test for erc20 transfer logs
* lower gas fee
* build with go 1.17 in CI
* use go 1.17 in test-solidity
* fix merge
2021-10-20 21:00:17 +02:00
JayT106
1076307e6b
tests: DynamicFeeTx ( #649 )
...
* test DynamicFeeTx against state_transition_benchmark_test
* add feemarketGenesis in the app setup param
* add dynamicTxFee flag to KeeperTestSuite
* add feemarketGenesis.BaseFee setup
* update TestAddLog
* fix gasFeeCap assignment in newMsgEthereumTx
* modify keeperTestSuite helper functions to support dynamicTxFee
* update test cases in grpc_query_test w/ dynamicTxFee
* update the evm keeper utils tests
* add dynamic tx fee in the ante tests
* remove duplicate type define
* fix error return type
* update changelog
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-10-19 08:49:29 +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
Federico Kunze Küllmer
26c5eabb18
all: linter ( #532 )
...
* add additional linters
* fixes
* rm action
2021-09-05 11:03:06 +00:00
crypto-facs
c7554e96aa
rpc, evm: debug_traceTransaction
endpoint ( #506 )
...
* fix typo
* Added tracers package to debug API
* Add GetTransactionByHash function to backend package
* first version
* traceTransaction first version
* clean PR
* revert debug changes
* Update proto/ethermint/evm/v1/query.proto
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* remove unnecesary panic
* remove internal debug api
* trace transaction javascript tracer
* add support for custom logConfig
* added comment
* traceTransactions tests
* fix linter
* remove unused
* add comments to traceConfig
* update dependencies
* updated endpoints md
* Apply suggestions from code review
* Update x/evm/keeper/grpc_query.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
* Update x/evm/keeper/grpc_query.go
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-09-04 20:33:06 +00:00
Federico Kunze Küllmer
c73ce0f812
all: cleanup imports ( #524 )
2021-09-03 18:06:36 +00:00
Federico Kunze Küllmer
22623a4090
evm: fix keeper tests ( #516 )
...
* evm: fix keeper tests
* rm func
* fix
2021-09-02 08:42:55 +00:00
Federico Kunze Küllmer
516ffe2bf1
evm: GetHashFn test ( #515 )
2021-08-31 15:58:46 +00:00
yihuang
a5ab608336
evm: benchmark contract execution ( #436 )
...
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-08-30 03:14:58 +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
yihuang
f6dc80d949
evm: estimate gas unit tests ( #324 )
...
* add some unit tests for estimateGas
Also add some test environment setup, Closes #323
test estimateGas of erc20 token transfer
fix failed test case
the trick is to keep a clean transient store, by doing a commit
put artifacts to external file
* fix test failure
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2021-07-23 14:24:36 +00:00
Federico Kunze Küllmer
e09bf23bd0
evm: move ChainConfig
to Params
( #266 )
...
* evm: move ChainConfig to Params
* fixes
* fix test
2021-07-14 05:13:55 -04:00
Federico Kunze Küllmer
dcc9585595
all: bump SDK to v0.43.0-rc0
( #194 )
...
* all: bump SDK to v0.43.0-rc0
* more updates
* keys
* accounting
* update account
* ante changes
* readonly
* readonly build
* minor changes from self review
* fixes
* evm debug
* custom config & rosetta
* fix
2021-06-29 13:02:21 -04:00
yihuang
336703cfc9
evm: fix AddLog
unmarshaling tx ( #192 )
...
* fix `AddLog` unmarshaling tx
Closes #187
* use cosmos tx in AddLog unit test
* Apply suggestions from code review
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2021-06-29 06:54:29 -04:00
Federico Kunze
6000ab2098
chore: un-fork from cosmos ( #166 )
...
* chore: un-fork from cosmos
* rm LoC
2021-06-22 06:49:18 -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
c08dcfad0c
keeper: StateDB
unit tests ( #47 )
...
* keeper: statedb unit tests
* evm: balance tests
* evm: nonce and code tests
* evm: refund test
* evm: fix tx encoding
* storage and access list tests
2021-06-02 04:06:12 -04:00
Federico Kunze
9a5654f70d
ante: AnteHandler
changes from state transition refactor ( #56 )
...
* ante: cherry-pick changes from state transition refactor
* ante: test setup
* ante: fixes
* ante: test (wip)
* ante: finish unit tests
* ante: intrinsic gas test
* ante: chaindecorators test (wip)
* update tests
* ante: cleanup tests
* ante: add test consuption test
2021-05-31 05:05:32 -04:00
Federico Kunze
6c1e7fec01
app, ante, evm: Keeper
StateDB
refactor ( #30 )
...
* evm: keeper statedb refactor
* keeper: implement stateDB account, balance, nonce and suicide functions
* keeper: implement stateDB code and iterator functions
* keeper: implement stateDB log and preimage functions
* update code to use CommitStateDB
* tests updates
* journal changes (wip)
* cache fields
* journal and logs
* minor cleanup
* evm: remove journal related changes
* evm: delete empty account code and storage state
* app, evm: transient store
* ante, evm: refund gas transient
* evm: remove transient keeper state fields
* address comments from review
* evm: undo revision change
2021-05-25 08:56:36 -04:00
Federico Kunze
2c722d03ce
rpc, evm: gRPC tests ( #28 )
...
* rpc, evm: grpc tests
* address validation
* update rpc
* test cleanup
* additional tests
2021-05-17 06:13:08 -04:00
Federico Kunze
374d249116
fix test compilation
2021-04-21 15:41:30 +02:00
Federico Kunze
cb2ab3d95d
more fixes
2021-04-18 18:39:15 +02:00
Federico Kunze
614e62fb7e
additions
2021-04-18 17:54:18 +02:00
Federico Kunze
5a3d514ba0
conflicts
2021-04-17 12:00:07 +02: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
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
1505ba89a1
atto photon refactor ( #503 )
...
* atto photon refactor
* update testnet command
* fix test
* changelog
2020-09-08 11:39:48 -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
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
Justin Thompson
6bc80c5357
x/evm: state_transition test ( #389 )
...
* draft state_transition
* working test
* keeper test
* Update x/evm/types/state_transition_test.go
* update state_transition_test.go
* failed Finalize test case
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2020-07-15 06:36:55 -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
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
26d4e968e0
remove duplicate query in receipts ( #273 )
...
* logs tests
* updates
* String()
* remove extra query, add comments
* test fixes
* lint
* lint
2020-05-02 21:56:18 -04:00
Federico Kunze
8ec7edf5bd
x/evm: unit tests and fixes ( #223 )
...
* 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
* rename GasLimit->Gas and Price ->GasPrice
* msg cleanup and tests
* cleanup TxData
* fix marshaling
* revert rename
* move types
* evm/keeper: querier tests
* switch MarshalLengthPrefixed -> BinaryBare; remove panics
* fix event sender
* fix panic
* try fix txDecoder error
* evm: handler tests
* evm: handler MsgEthermint test
* fix tests
* 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
* evm: handler test
* 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 evm test
* fix pubkey registration
* lint
* cleanup
* more test checks for importer
* minor change
* codec fixes
* rm init func
* fix importer test build
* fixes
* test fixes
* fix bloom key
* rm unnecesary func
* remove comment
Co-authored-by: austinabell <austinabell8@gmail.com>
Co-authored-by: noot <36753753+noot@users.noreply.github.com>
2020-04-23 11:49:25 -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