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
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
noot
1339c174d7
update block format to match geth ( #532 )
2020-09-23 12:22:01 -04:00
noot
0d545939d8
fix doCall if args.From is nil ( #518 )
2020-09-21 11:59:07 -04:00
noot
517de55720
fix account sending from new accounts ( #517 )
...
* fix account sending from new accounts
* cleanup
* more cleanup
* fix rpc tests
Co-authored-by: araskachoi <choidanielw@gmail.com>
2020-09-17 15:04:36 -07:00
noot
244d836669
add rpc logs, ignore block bloom errors ( #492 )
2020-09-15 14:42:06 -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
noot
1cb712fb16
personal API ( #420 )
2020-08-13 13:14:48 -04:00
Federico Kunze
a243f43fe2
crypto: add keyring supported algorithms ( #439 )
...
* add keyring supported algorithms
* lint
* minor updates
* use eth_secp256k1 as the default signing algo
* add flag
* derivation func
* refactor
* rename keys amino registration
* fix keys
* address comments from review
2020-08-11 11:01:15 -04:00
noot
1d8c997585
rpc: implement eth_chainId ( #379 )
...
* add eth_chainId
* add nolint
* use clientCtx chainID
* rpc: eth_chainId test
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2020-07-08 03:57:19 -04:00
noot
c4cf33a9bb
implement ethereum-compatible websockets server ( #357 )
2020-07-06 13:23:35 -04:00
Daniel Choi
b76c36fcdb
allow multikey unlock ( #356 )
...
* allow multikey unlock
* fix lint
* Update rpc/apis.go
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2020-07-06 10:03:34 -07: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
Federico Kunze
c8b8f49675
run make format ( #351 )
...
* run make format
* fix yaml
* fixes
2020-07-02 11:19:48 -04:00
Federico Kunze
edf4357176
build: github actions ( #346 )
...
* add workflows
* fix
* fix lint
* rpc tests
* build and format
* fix build errors
* remove dontcover
* update importer test
* more fixes
* lint
* split importer test
* fix
* remove tmp dir
* revert
* comment test import
2020-06-26 18:26:55 -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
noot
0921c863e7
update uncles return ( #337 )
2020-06-18 16:35:06 -04:00
noot
9f573690a6
implement eth_exportAccount ( #331 )
2020-06-17 14:23:36 -04:00
noot
94f6acc651
rpc: return 0x0 as extra data in block instead of nil ( #333 )
...
* return 0x0 extra data instead of nil
* add fix for getBlock
* add tests
2020-06-17 12:14:21 -04:00
Federico Kunze
7b164a5aa4
Revert "bump SDK commit ( #324 )" ( #328 )
...
This reverts commit 5614adc933
.
2020-06-08 20:33:48 +02: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
5614adc933
bump SDK commit ( #324 )
...
* bump SDK commit
* crypto: Secp256k1 algorithm
* crypto: fix codec and derivation issues
* lint
2020-06-08 12:19:26 -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
noot
446eb0a3b7
change eth_estimateGas to return hexutil.Uint64 ( #322 )
...
* change eth_estimateGas to return hexutil.Uint64
* update test
* Update rpc/eth_api.go
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2020-06-01 14:12:34 -04:00
noot
846f48a572
get account sequence in GetTransactionCount ( #303 )
...
* get account sequence if querying latest in GetTransactionCount
* use ctx WithHeight in GetTransactionCount; remove nonce query from querier
2020-05-17 11:15:32 -04:00
noot
1f63ddfe96
evm: update msgs to accept zero gas price ( #299 )
...
* update keeper to accept gas price=0; default pending to latest
* cleanup
* more cleanup
* more cleanup
* more cleanup
* more cleanup
* ante: copy IncrementSequenceDecorator from SDK's AnteHandler
* improve bloom test
* lint
* update msg error
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2020-05-14 22:08:13 -04:00
noot
51b68d7512
rpc: fix receipt logs ( #285 )
...
* update GetTransactionReceipt and test
* change DecodeResultData err check back
* change doCall back
* change doCall back
* add logs
* remove prints
2020-05-14 16:55:33 -04:00
Federico Kunze
c7d89e3d56
rpc: fix eth_getProof ( #286 )
2020-05-12 15:12:52 -04:00
noot
ce0feb307b
update rpc tests ( #276 )
...
* update rpc tests
* cleanup
* add log assertion to getTransacionReceipt
* fix queurier_test
* address comment
2020-05-04 18:02:26 -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
noot
86cd39defb
fix transaction receipts ( #274 )
...
* return ethtypes.Receipt in GetTransactionReceipt
* add PostState to receipts, test working
* add contract addr assert to tests
* update tests
* cleanup, working with web3
* remove print
* update tests
2020-05-02 13:39:26 -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
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
thomasmodeneis
729e93f8a8
Automated Tests for RPC endpoints #253 ( #257 )
...
* add RPC integration script that run all tests for ethermint rpc endpoints,
updated tester_test.go to rpc_test.go and moved it to package tests
2020-04-21 21:37:10 +02:00
thomasmodeneis
c9b09c1d55
Implement eth_newPendingTransactionFilter #51 ( #251 )
...
* Implement eth_newPendingTransactionFilter
2020-04-16 16:53:14 +02: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
noot
35e7a98ab2
filters: begin implementation ( #230 )
...
* adds Filter type and related methods
* updates PublicFilterAPI to include backend, filter mapping
* stub out filter related eth_ functions
2020-04-01 20:43:59 -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
87b625ed50
Tools configuration and linters ( #215 )
...
* tools config
* lint
* lint
* codecov
2020-03-16 19:53:24 -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
Austin Abell
51adade59f
Update golangci-lint config and fix linting issues ( #168 )
...
* update golangci
* update golang lint yml and updated linting issues
2020-01-08 09:56:49 +13:00
Austin Abell
b98685c46b
Enable Cosmos endpoints on rest-server command ( #162 )
2019-12-20 19:47:02 +10:00
Austin Abell
ce8a94a98e
Cosmos PR changes ( #158 )
...
* Changes necessary for enforced custom account encoding/decoding and keyring keybase changes
* updates cosmos dependency and fixes inconsistency in gas usage for simulated/real txs
* Update PR changes
* Remove unused password prompt when using OS keyring
* Update from changes to sdk
* Update to merged PR commit :the_horns:
* updated code to handle keyring backend options
* update documentation and replace cosmos-sdk with fork (temporarily)
* update cosmos dependency from fork
* update documentation
2019-12-13 14:50:19 -05:00
Austin Abell
6eef37b0c6
Finish and clean up module queries and txs ( #152 )
...
* Basic transactions set up (to be separated)
* Change transaction command to not include create operation (to include other command in next commit)
* set up create command and made minor changes
* wip implements module queries
* Added tests for query address decoding
* Added ambiguous encoding of to address in transaction and added tests
* Fix linting issue
* Move registering key types to application level to allow module usage to ignore
* Move genaccounts code to be reused
* Switches nonce increase to always happen in ante handler
* change SetNonce from keeper to point to actual nonce operation
* Remove no op nonce switch (not needed with clearing cache)
* Changes to update all accounts pre state transition and clear cache at end of block
* Update accounts before end of block commit (edge case where necessary)
* Fix nonce of sender going into evm in case it's checked, and let evm set contract starting nonce
2019-11-15 12:02:13 -05:00
Austin Abell
9311f9efd0
Update keybase back to cosmos-sdk with support ( #147 )
...
* Migrate keybase back to Cosmos-sdk using temporary fork
* Cleaned up other affected code
* Change to updated tendermint
* fmt
* Change auth codec update
* clean up codec registration to respective packages
* Fix import fmt
* Remove no longer necessary replace
* Fix function comment
2019-11-13 12:00:21 -05:00
Austin Abell
1f51b73d71
Fix block gas limit return for dev tooling ( #150 )
...
* cap formatted -1 value of tendermint block gas limit
* return blank miner address for dev tooling checks
2019-11-07 13:02:35 -05:00
Austin Abell
42227a1b8c
Fix eth_estimateGas and simulated txs ( #142 )
2019-11-04 11:59:16 -05:00
Dustin Brickwood
fc57cabcab
Linted Repo ( #136 )
...
* Linted
* Updated lint to include config file
* Linted repo
* Updated make command
* made requested changes
* added no lint
2019-11-01 10:26:53 -05:00
Austin Abell
9294fa8423
Fix edge case for accessing accounts through rpc ( #134 )
...
* Add mutex and close keybase database correctly after use
* Add options http request to rpc API for remix
2019-10-31 11:09:40 -04:00
Dustin Brickwood
69e0873dd9
eth_estimateGas ( #128 )
...
* Draft eth_estimateGas
* implemented eth_estimateGas
* refactored doCall to be used for both eth_call and eth_estiamteGas
* updated to reflect requested changes
* moved GenerateFromArgs func
* removed todo
* revert comment
* fixes dereference issue
* gofmted
2019-10-30 13:30:24 -05:00
Austin Abell
2b4d2bea82
Implements eth_call ( #127 )
...
* Fixed tx receipt error on failed transaction
* Add returnData to failed transaction for logs bloom
* Added simulate call option, without returning evm data
* Added encoding and decoding of data from EVM execution for usability
* Remove unused context parameter
* Fix function comment and remove unnecessary logging on eth_call
2019-10-22 11:40:34 -05:00
Austin Abell
475919274e
Tx receipt query fix ( #126 )
...
* Fixed tx receipt error on failed transaction
* Add returnData to failed transaction for logs bloom
* Change comment to TODO
2019-10-23 01:04:51 +09:00
Austin Abell
160e82b2ad
Implement eth_pendingTransactions, bump sdk version ( #124 )
...
* Update sdk version, implement pending txs, fix nonce check
* Bump cached dependencies in circleCI
* bump circleci go version
* updated linter and fixed bugs relating to go version 1.13
2019-10-19 08:23:09 +09:00
Austin Abell
dc25d847c3
Implements eth_getProof ( #122 )
...
* Implemented eth_getProof and cleaned logs query types
* Rename ethereum logs query type
2019-10-16 09:46:50 +09:00
Austin Abell
5a19ae5706
Implements net_version for Ethers ( #121 )
2019-10-15 10:20:35 +09:00
Dustin Brickwood
a61f3b892d
Filtering for eth_getLogs ( #120 )
...
* Filtered logs based param criteria
* addded PublicFilterAPI
* added filter logs func to filter based on params
* added Unmarshal func from go-ethereum
* Linted
* made requested changes
2019-10-07 22:32:28 -05:00
Austin Abell
eab81bc578
block and tx logs bloom and tx receipt logs ( #119 )
...
* Add bloom filter to tx receipt
* wip tx receipt logs to be tested
* Added Bloom - Height Mapping
* keeper.go sets <height:bloombits>
* keeper.go gets <height> --> bloombits
* updating and querying bloom by block (to be tested with real logs)
* fix bug with contract address return
* added error handling instead of logging
2019-10-04 15:32:56 -04:00
Austin Abell
1119c650c6
Implements gettransactionbyblockhashandindex ( #115 )
2019-09-29 16:46:10 -04:00
Austin Abell
81fc39a9bc
Implement eth_getBlockTransactionCountByHash ( #116 )
2019-09-29 16:43:26 -04:00
Austin Abell
09a71a2a3a
eth_getBlockByHash and block hash mapping functionality ( #114 )
...
* Set up block hash to height mapping storage and fixed linting issues
* fix typos
* Set up module query for block height
* fix bug with block mappings and implemented get block by hash
* Fix other consensus hash references
2019-09-27 10:08:45 -04:00
Austin Abell
7f1eb4b0cf
Query and bug fixes ( #110 )
...
* Fix queries and bugs
* Fix issues from rebasing
* Fix rpc query address
2019-09-26 11:36:23 -04:00
Austin Abell
192ce2cc1c
Implement eth_syncing ( #86 )
...
* wip getting Ethereum spec syncing status
* Update sync query
2019-09-26 11:33:25 -04:00
Austin Abell
6cfeb6e754
eth_getTransactionReceipt Impl ( #109 )
...
* wip Implement get transaction receipt, waiting on details to finalize
* Fix response format for tx receipt
* Fix duplicate err check
* remove cumulative gas field
* Used byte conversion function
2019-09-25 14:38:33 -04:00
Austin Abell
26e90e729e
Implement eth_getTransactionByBlockNumberAndIndex ( #107 )
...
* Implements eth_getTransactionByBlockNumberAndIndex
* reuse convenience function for converting bytes to eth tx
2019-09-25 09:26:42 -04:00
Austin Abell
cfca4d10e6
Implements eth_getTransactionByHash ( #108 )
...
* Implement eth_getTransactionByHash and add function for converting bytes to eth tx
* Fix nil return on invalid hash
* Fix error check
2019-09-24 21:58:29 -04:00
Austin Abell
9383c743dd
Implement block tags ( #106 )
...
* Implemented tm/ethermint specific block tags
* Fix edge case for block query
2019-09-24 17:38:58 -04:00
Austin Abell
d1900826a0
Fix transaction hash return ( #105 )
2019-09-24 14:41:59 -04:00
Austin Abell
4a030335e6
eth_getBlockByNumber impl ( #87 )
...
* WIP implement eth_getBlockByNumber
* Implemented some missing fields
* Added gasLimit and updated previous fields
* Implement remaining pieces for eth_getBlock including decoding txs
* Add converting transaction objects into function for usability
* Clean up code
* format block in function for usability
* Fixed formatting and cached gasLimit value
2019-09-24 14:39:17 -04:00
David Ansermino
1cac4feb4d
Minor fixes ( #94 )
...
- Updates RPC return types
- Removes custom query types in favour of default eth
- This is largely to allow for proper hexadecimal formatting (provided by `hexutil`), as the API is very specific about formatting.
2019-09-24 16:49:40 +02:00
Austin Abell
28aaba0695
Implement eth_sendTransaction ( #104 )
...
* Set up framework for sending transaction with correct args and nonce mutex locking
* Set up printing ethereum address through emintkeys and getting chainid from flags
* Implemented defaults for eth_sendTransaction
* Fix bug with no data provided
* Updated comments and error, as well as RLP encoded tx bytes for return instead of amino encoded
2019-09-20 09:30:20 -04:00
Austin Abell
2ca42cc155
Implement eth_sendRawTransaction ( #101 )
...
* Implement sendRawTransaction (tx not being broadcasted to node from server)
* Add broadcast type flag to rpc API and fixed amount validation
* Add documentation
2019-09-18 16:14:39 -04:00
Austin Abell
6c72a79035
RPC unlock Ethermint key and eth_sign ( #99 )
...
* Set up personal account api for personal sign
* Added unlocking key functionality and attach to eth rpc
* Implemented eth_sign
* Transform V in sig based on yp and fix bug
* Fix lint issue
* Remove escape character from comment
* Switch error handling to panic on invalid unlocked key
2019-09-18 14:45:21 -04:00
Austin Abell
02047bf8bf
Implement eth_accounts ( #100 )
2019-09-18 09:58:48 -04:00
Austin Abell
1e48e2b115
eth_getTransactionCount implementation ( #91 )
...
* Implemented eth_getTransactionCount endpoint
* Linting fixes
2019-09-06 10:46:26 -04:00
Austin Abell
0e942527da
Fixed error handling in rpc endpoints ( #89 )
2019-09-03 08:48:30 -04:00
Austin Abell
9c0015678f
Implements eth_getBlockTransactionCountByNumber ( #88 )
...
* Implements eth_getBlockTransactionCountByNumber
* Added error handling for getting block at height
2019-09-02 20:42:58 -04:00
Austin Abell
f5dc62a30f
changed context to get at given block height ( #85 )
2019-08-28 15:13:34 -02:30
David Ansermino
92dc7d9a59
Basic RPC and CLI Queries ( #77 )
...
- Adds ethermint query command (`emintcli query ethermint <query>`)
- Supports block number, storage, code, balance lookups
- Implements RPC API methods `eth_blockNumber`, `eth_getStorageAt`, `eth_getBalance`, and `eth_getCode`
- Adds tester utility for RPC calls
- Adheres to go test format, but should not be run with regular suite
- Requires daemon and RPC server to be running
- Excluded from `make test`, available with `make test-rpc`
- Implemented AppModule interface and added EVM module to app
- Required for routing
- Implements `InitGenesis` (`x/evm/genesis.go`) and stubs `ExportGenesis`
- Modifies GenesisAccount to match expected format
2019-07-25 16:38:55 -04:00
David Ansermino
284c2a0333
Enable RPC Server ( #75 )
...
- Introduces rpc command to cli (rest-server)
- Moves server/rpc to rpc/
- Enables module selection (eg. "web3" or "eth" or "web3,eth"), however there is no CLI flag to configure these (See #74 )
- Adds CLI context to eth API
2019-07-15 10:13:59 -04:00