forked from cerc-io/laconicd
* 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>
5.2 KiB
5.2 KiB
Changelog
[Unreleased]
Improvements
- (sdk) #171 Bump Cosmos SDK version to v0.38.1 @fedekunze:
- Add
x/evidencemodule 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-->MsgEthereumTxandEmintMsg-->MsgEthermintfor consistency with SDK standards - Updated integration and unit tests to use
EthermintAppas testing suite - Use expected keeper interface for
AccountKeeper - Replaced
counttype in keeper withint - Add SDK events for transactions
- (
- #236 Changes from upgrade @fedekunze
- (
app/ante) MovedAnteHandlerimplementation toapp/ante - (keys) Marked
ExportEthKeyCommandas UNSAFE - (x/evm) Moved
BeginBlockandEndBlocktox/evm/abci.go
- (
- (
x/evm) #255 Add missingGenesisStatefields and supportExportGenesisfunctionality. - #272 Add
Loggerfor evm module. - #317
GenesisAccountvalidation. - (
x/evm) #319 Verious evm improvements:- Add transaction
[]*ethtypes.Logsto evm'sGenesisStateto persist logs after an upgrade. - Remove evm
CodeKeyandBlockKeyin favor of a prefixStore. - Set
BlockBloomduringEndBlockinstead ofBeginBlock. Commitstate object andFinalizestorage afterInitGenesissetup.
- Add transaction
- (rpc) #325
eth_coinbaseJSON-RPC query now returns the node's validator address.
Features
- (rpc) #330 Implement
PublicFilterAPI'sEventSystemwhich subscribes to Tendermint events uponFiltercreation. - (rpc) #231 Implement
NewBlockFilterin rpc/filters.go which instantiates a polling block filter- Polls for new blocks via
BlockNumberrpc call; if block number changes, it requests the new block viaGetBlockByNumberrpc 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
- Polls for new blocks via
- (rpc) #54, #55
Implement
eth_getFilterLogsandeth_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_getLogsandeth_getFilterChangesfor log filters use the same underlying method aseth_getFilterLogs- update
HandleMsgEthereumTxto store logs using the ethereum hash
- (app) #187 Add support for simulations.
Bug Fixes
- (rpc) #305 Update eth_getTransactionCount to check for account existence before getting sequence and return 0 as the nonce if it doesn't exist.
- (
x/evm) #319 FixSetBlockHashthat was setting the incorrect height duringBeginBlock. - (x/evm) #176 Updated Web3 transaction hash from using RLP hash. Now all transaction hashes exposed are amino hashes.
- Removes
Hash()(RLP) function fromMsgEthereumTxto avoid confusion or misuse in future.
- Removes