forked from cerc-io/laconicd-deprecated
427e96c1de
* 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
4.7 KiB
4.7 KiB
Changelog
[Unreleased]
Improvements
- (sdk) #171 Bump Cosmos SDK version to v0.38.1 @fedekunze:
- Add
x/evidence
module to ethermint app - Bump Go requirement to 1.14+
- Add
- (
x/evm
) #181 Updated EVM module to the recommended module structure. @fedekunze - (app) #188 Misc cleanup @fedekunze:
- (
x/evm
) RenameEthereumTxMsg
-->MsgEthereumTx
andEmintMsg
-->MsgEthermint
for consistency with SDK standards - Updated integration and unit tests to use
EthermintApp
as testing suite - Use expected keeper interface for
AccountKeeper
- Replaced
count
type in keeper withint
- Add SDK events for transactions
- (
- #236 Changes from upgrade @fedekunze
- (
app/ante
) MovedAnteHandler
implementation toapp/ante
- (keys) Marked
ExportEthKeyCommand
as UNSAFE - (x/evm) Moved
BeginBlock
andEndBlock
tox/evm/abci.go
- (
- (
x/evm
) #255 Add missingGenesisState
fields and supportExportGenesis
functionality. - #272 Add
Logger
for evm module. - #317
GenesisAccount
validation. - (
x/evm
) #319 Verious evm improvements:- Add transaction
[]*ethtypes.Logs
to evm'sGenesisState
to persist logs after an upgrade. - Remove evm
CodeKey
andBlockKey
in favor of a prefixStore
. - Set
BlockBloom
duringEndBlock
instead ofBeginBlock
. Commit
state object andFinalize
storage afterInitGenesis
setup.
- Add transaction
Features
- (rpc) #231 Implement NewBlockFilter in rpc/filters.go which instantiates a polling block filter
- Polls for new blocks via BlockNumber rpc call; if block number changes, it requests the new block via GetBlockByNumber rpc call and adds it to its internal list of blocks
- Update uninstallFilter and getFilterChanges accordingly
- uninstallFilter stops the polling goroutine
- getFilterChanges returns the filter's internal list of block hashes and resets it
- (rpc) #54, #55
Implement
eth_getFilterLogs
andeth_getLogs
:- For a given filter, look through each block for transactions. If there are transactions in the block, get the logs from it, and filter using the filterLogs method
eth_getLogs
andeth_getFilterChanges
for log filters use the same underlying method aseth_getFilterLogs
- update
HandleMsgEthereumTx
to store logs using the ethereum hash
- (app) #187 Add support for simulations.