Ashwin Phatak
07805b6ae9
Tracing job queue ( #89 )
...
* eth-client API to get transaction in block.
* Job queue to process tracing requests.
* Request traces from job queue runner.
* Max trace completion lag time config for downstream events.
2021-06-25 16:35:47 +05:30
Ashwin Phatak
2adc5e9c34
Push address events to downstream subscribers ( #85 )
...
* Push address event to downstream subscribers.
* Get addresses from trace - tests and fixes.
2021-06-22 14:04:48 +05:30
Ashwin Phatak
c9bf002675
Test decoder using hardhat RPC, geth-statediff RPC and ipld-eth-server GQL endpoints for fetching storage slots ( #77 )
...
* Implement test for getStorageValue with geth server.
* Wait for transaction to complete in tests.
* Implement tests with ipld-eth-client using graphql endpoint.
Co-authored-by: nikugogoi <95nikass@gmail.com>
2021-06-18 18:09:50 +05:30
Ashwin Phatak
4e08f359fc
Call tracer with address tracing support ( #65 )
...
* Tracing client package, basic utils.
* Start of address tracer.
* Rename trace CLI.
* Call tracer API.
* Tracing timeout, more traces.
* Integrate address tracer into call address tracer.
2021-06-16 16:14:35 +05:30
Ashwin Phatak
7035a513b1
Downstream event subscription support. ( #47 )
...
* Downstream event subscription support.
* Logging changes.
2021-06-09 15:11:05 +05:30
Ashwin Phatak
fc44617db3
Use solidity mapper to get value for mapping and nested mapping (balance and allowance) ( #48 )
...
* Implement getting value for basic mapping type.
* Add test for basic mapping type.
* Implement getting value for nested mapping type.
Co-authored-by: nikugogoi <95nikass@gmail.com>
2021-06-09 10:18:19 +05:30
Ashwin Phatak
84e1927402
Watch upstream ERC20 events to trigger indexing ( #43 )
...
* Move to apollo client, enables subscriptions.
* Watch logs and trigger other indexer methods.
* Refactoring config loading, watched contracts table.
* Check event sync progress inside transaction.
* Refactoring server startup.
2021-06-08 16:07:52 +05:30
nikugogoi
a13a909a85
Implement getting storage value for uint256 type in watcher.
2021-06-08 12:49:00 +05:30
nikugogoi
8d697ab9d1
Check and remove unused dependecies.
2021-06-07 11:42:03 +05:30
Ashwin Phatak
3aaa9dd7f8
Use postgres instead of sqlite. ( #38 )
2021-06-04 15:19:30 +05:30
Ashwin Phatak
4e0ef7c852
Implement typescript strict mode and ESLint in ipld-eth-client and cache packages ( #37 )
...
* Set up typescript build.
* Setup eslint in cache package.
* Automatic lint fixes.
* Fix typescript return types.
* Fix typescript argument type warnings.
* Set up typescript build and eslint.
* Automatic lint fixes.
* Fix typescript explicit any warnings.
* Add argument types.
* Fix return type warnings.
* Fix typescript errors.
* Implement declaration in types directory.
Co-authored-by: nikugogoi <95nikass@gmail.com>
2021-06-04 12:04:12 +05:30
Ashwin Phatak
13ec526ebd
Create index for ERC20 data.
2021-05-31 16:24:45 +05:30
Ashwin Phatak
a0aae09f83
Get slot for ERC20 variable from storage layout ( #13 )
...
* Get slot for ERC20 variable from storage layout.
* Fix solidity-mapper build for importing library functions.
* Implement lint command in solidity-mapper package.
Co-authored-by: nikugogoi <95nikass@gmail.com>
2021-05-31 14:50:05 +05:30
Ashwin Phatak
72ca980198
Solidity data mapper/parser ( #12 )
...
* Initial setup with hardhat and typescript.
* Add test for integer type.
* Add test for unsigned integer type.
* Add test for boolean type.
* Add test for address type.
* Add test for string type.
* Setup building library with typescript.
* Remove hardhat dependency from getStorageValue library function.
* Move contracts to test and remove deploy script.
* Add readme for running tests.
Co-authored-by: nikugogoi <95nikass@gmail.com>
2021-05-31 11:07:11 +05:30
Ashwin Phatak
7213a1dc6d
Lazy ERC20 watcher ( #11 )
...
* Storage mapping utils.
* Resolver factories.
* Get ERC20 balance from upstream ipld-eth-server slot.
* Get ERC20 allowance from storage slot.
* Parse ERC20 events from block events.
* Cache GQL requests in leveldb.
* Refactor fetch/cache from upstream into eth-loader class.
* Refactoring.
* Refactor eth-client, extract cache class.
* Cache config settings.
* Debug logs.
* Rename server to watcher.
* Start local server by default.
* Split into multiple packages.
* eth-client API methods.
* Update docs.
2021-05-28 16:56:40 +05:30
Ashwin Phatak
95eb1ac0d1
Data driven tests for GQL endpoints.
2021-05-13 19:20:43 +05:30
Ashwin Phatak
7133b3ab86
Schema, mock data and resolvers.
2021-05-11 16:39:32 +05:30
Ashwin Phatak
2b4e1ba315
Basic GQL server with mock data.
2021-05-11 16:39:32 +05:30
Ashwin Phatak
1562af9c05
Basic typescript project.
2021-05-11 16:39:32 +05:30