Eric
d8bf5b0eae
deserialize key defaults to serialize key
2024-02-05 12:24:05 +11:00
Eric
1a6ab42434
cleanup
2024-02-02 18:43:56 +11:00
Eric
502457633d
bump json-rpc to 0.4.0 and fix test
2024-02-01 19:01:18 +11:00
Eric
1b083e10ad
Add serde options to the json util, along with tests
...
next step is to:
1. change back any ethers var names that were changed for serialization purposes, eg `from` and `type`
2. move the json util to its own lib
2024-02-01 18:52:05 +11:00
Eric
64cc99442d
support nim 2.0
2024-01-30 19:25:24 +11:00
Eric
92b8ea028a
clean up - all tests passing
2024-01-30 17:41:47 +11:00
Eric
59a7939e8f
Refactor exceptions for providers and signers, fix more tests
...
- signer procs raise SignerError, provider procs raise ProviderError
- WalletError now inherits from SignerError
- move wallet module under signers
- create jsonrpo moudle under signers
- bump nim-json-rpc for null-handling fixes
- All jsonrpc provider tests passing, still need to fix others
2024-01-29 22:20:48 +11:00
Eric
c261e96274
rename sender to from, update json error logging, add more conversions
2024-01-25 17:20:04 +11:00
Eric
526d954a01
Start fixing tests (mainly conversion fixes)
2024-01-24 18:09:47 +11:00
Eric
f6f0dbc07b
Update exceptions
...
Use {.async: (raises: [...].} where needed
Annotate provider with {.push raises:[].}
Format signatures
2024-01-24 14:36:53 +11:00
Eric
71830221b6
More json conversion updates
2024-01-24 13:36:24 +11:00
Eric
d46db94f74
Add ethers implementation for setMethodHandler
...
Was removed in json-rpc
2024-01-24 11:55:44 +11:00
Eric
daa88cc8bf
Add json de/serialization lib from codex to handle conversions
...
json-rpc now requires nim-json-serialization to convert types to/from json. Use the nim-json-serialization signatures to call the json serialization lib from nim-codex (should be moved to its own lib)
2024-01-24 11:53:53 +11:00
Mark Spanbroek
c25de86656
remove upraises
...
we no longer support nim 1.2.x,
so upraises is no longer necessary
2023-12-12 09:28:06 +01:00
Eric
2428b756d6
On transaction failure, fetch revert reason with replayed transaction ( #57 )
...
When transaction fails (receipt.status is Failed), fetch revert reason by replaying transaction.
2023-10-25 11:36:00 +11:00
Eric
12d7a35203
Query past contract events ( #51 )
...
Based on ethers.js's queryFilter, allows querying of past contract events, by querying the logs for a contract's event topic.
* queryFilter to query past logs
* Allow querying of past block log events
* Can query by block number or block hash
2023-07-20 15:51:28 +10:00
Mark Spanbroek
cb95cbc15a
Make BlockHandler callback synchronous (breaking change)
...
Refactored the confirm() implementation to work
with a synchronous callback
2023-07-04 12:58:48 +02:00
Mark Spanbroek
82f6449374
Move JsonRpcSubscription type to jsonrpc module
...
Allows it to insert convertError to ensure that
any errors are re-raised as JsonRpcProviderError
2023-07-03 13:09:09 +02:00
Mark Spanbroek
738c6a87e2
Stop polling when provider is closed
2023-07-03 13:09:09 +02:00
Mark Spanbroek
a27c2de41c
Close provider by unsubscribing and closing client
2023-07-03 13:09:09 +02:00
Mark Spanbroek
2481bda6e4
Subscribe to logs with polling
2023-07-03 13:09:09 +02:00
Mark Spanbroek
0aea16047c
Ignore errors when retrieving block by hash
2023-07-03 13:09:09 +02:00
Mark Spanbroek
0322ae1451
Ignore errors while polling
2023-07-03 13:09:09 +02:00
Mark Spanbroek
50cfd9d9dd
untilCancelled template
2023-07-03 13:09:09 +02:00
Mark Spanbroek
3a76fa74f1
Make polling interval configurable
2023-07-03 13:09:09 +02:00
Mark Spanbroek
6a034870f8
Polling block subscriptions for non-websocket connections
2023-07-03 13:09:09 +02:00
Mark Spanbroek
127c9c9b0d
Formatting
2023-07-03 13:09:09 +02:00
Mark Spanbroek
a7dc0ac9eb
Move subscription handling to its own module
2023-07-03 13:09:09 +02:00
Jackie
b72fbb0ed9
small fixes
2022-08-08 12:40:36 +02:00
Jackie
2c9eb595d2
Add sendRawTransaction
2022-08-08 12:40:36 +02:00
Mark Spanbroek
16a3d25419
Remove duplication
2022-08-08 12:26:09 +02:00
Jackie
52f57894f5
Fix block subscription
2022-08-08 12:26:09 +02:00
Eric Mastro
2f97a03fe2
feat: Can wait for transaction confirmations
...
Allows specified number of transaction confirmations to be awaited before a transaction is considered finalised. Polls for a transaction receipt then listens for new blocks and calculates the number of blocks between the receipt and the new block.
Notes
1. Only works with websockets currently
2. Replaced transaction not supported yet
2022-05-23 11:27:26 +10:00
Mark Spanbroek
bbf133725f
Subscribe to new blocks
2022-05-17 09:08:02 +02:00
Michael Bradley, Jr
073924d3f5
supply block parameter to eth_call, default being BlockTag.latest
2022-04-11 09:56:49 +02:00
Mark Spanbroek
ce435f8791
Add Provider.getBlock()
...
Only returns hash, number and timestamp for now.
2022-03-16 14:20:00 +01:00
Mark Spanbroek
3e507af8cc
Move JSON RPC related modules into providers/jsonrpc
2022-02-09 14:50:51 +01:00