Mark Spanbroek
04b91d9f65
Test with Nim 1.6.16
2023-12-12 09:17:52 +01:00
Mark Spanbroek
abe8585f53
Do not decrease nonce when it wasn't increased
2023-12-12 09:08:01 +01:00
Eric
16b28f4535
wrap try/finally around populateTransaction logic to ensure the lock is always released in the case of an error
2023-12-12 09:08:01 +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
7eac8410af
prevent stuck transactions by async locking nonce sequencing (+ estimate gas) ( #55 )
...
- async lock during nonce sequencing + gas estimation
- simplified cancelTransaction (still exported) such that the new transaction is populated using populateTransaction, so that all gas and fees are reset
- moved reverting contract function into its own testing helpers module, and refactored any tests to use it
- updated the test helper reverts to check EstimateGasErrors
- combine ensureNonceSequence into populateTransaction
2023-10-25 10:42:25 +11:00
Adam Uhlíř
620b402a7d
feat: (de/in)crease allowance ( #56 )
2023-10-16 10:23:58 +02:00
Eric
f0303473f6
Increment nonce count when populating transaction ( #54 )
...
Increment nonce count when populating transaction
Co-authored-by: markspanbroek <mark@spanbroek.net>
2023-09-15 09:54:08 +10:00
Mark Spanbroek
8fff63102a
version 0.7.0
2023-09-13 13:54:41 +02:00
Mark Spanbroek
15ed76ebed
Use Result to return error when wallet creation fails
...
Co-authored-by: Eric Mastro <eric.mastro@gmail.com>
2023-09-13 10:11:18 +02:00
Mark Spanbroek
43041e7948
Small fix in Readme
2023-09-13 10:11:18 +02:00
Mark Spanbroek
81ec482fca
Wallet: handle invalid key when instantiating new wallet
2023-09-13 10:11:18 +02:00
Mark Spanbroek
2ec0313dd3
version 0.6.0
...
updated contractabi brings in breaking change in nimcrypto
2023-08-29 12:25:39 +02:00
Mark Spanbroek
9327294044
update contractabi to 0.6.0
2023-08-29 12:25:39 +02:00
Mark Spanbroek
2b6f7b7a0d
Fixes for Nim 2.0.0
2023-08-29 12:25:39 +02:00
Mark Spanbroek
99c225caa1
Update latest nim 1.6.x in CI
2023-08-29 12:25:39 +02:00
Eric
9f4f762e21
version 0.5.0
...
Breaking change:
`Filter` has been changed to `EventFilter` to be inline with ethers.js. `Filter` is used for creating subscriptions in `nim-ethers`. All previously-created instances of `Filter` in your consuming application code should be changed to `EventFilter`.
2023-07-24 15:54:18 +10: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
c49311fca2
version 0.4.0
2023-07-05 15:09:31 +02:00
Mark Spanbroek
5f820fc971
Cleanup
2023-07-05 15:08:35 +02:00
Mark Spanbroek
2b181aa0f7
Allow wallet to be instantiated with a PrivateKey
2023-07-05 15:08:35 +02:00
Mark Spanbroek
5ed3f15706
Return transaction response for ERC20 functions
...
Allows callers to wait for confirmation of the
transaction
2023-07-05 15:08:22 +02:00
Mark Spanbroek
d7b7f67afb
Formatting
2023-07-05 15:08:22 +02:00
Mark Spanbroek
842bf4d0a2
Refactor wallet signing
2023-07-05 15:07:52 +02:00
Mark Spanbroek
f1a1221d14
Move WalletError into its own module
2023-07-05 15:07:52 +02:00
Mark Spanbroek
c89701016a
Fix EIP-155 signatures
2023-07-05 15:07:52 +02:00
Mark Spanbroek
5127991117
Add "value" to Transaction object
2023-07-05 15:07:52 +02:00
Mark Spanbroek
e086b71b42
version 0.3.0
2023-07-04 12:58:48 +02:00
Mark Spanbroek
310b06dfe8
Fix warnings
2023-07-04 12:58:48 +02:00
Mark Spanbroek
cd32dffc73
Move JSON conversion tests into their own module
2023-07-04 12:58:48 +02:00
Mark Spanbroek
09810e73ff
Move `confirm()` override into contract module
...
And simplify its test
2023-07-04 12:58:48 +02:00
Mark Spanbroek
4e4a55b13e
Cleanup
2023-07-04 12:58:48 +02: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
0674548ecc
Update contractabi to 0.5.0
2023-07-03 13:09:09 +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
f8cac08cde
Test that subscription stops after call to unsubscribe()
2023-07-03 13:09:09 +02:00
Mark Spanbroek
ceedf03c82
Subscriptions now also supported with http url
2023-07-03 13:09:09 +02:00
Mark Spanbroek
738d028fe3
Remove websockets url where not needed for tests
2023-07-03 13:09:09 +02:00
Mark Spanbroek
7e346914c0
Test contracts with polling
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
76bd3090d1
Fix intermittently failing test
...
eth_getFilterChanges returns the current block for
new subscriptions, which made the test fail.
2023-07-03 13:09:09 +02:00
Mark Spanbroek
1b151d589d
Add polling interval to constructor of provider
2023-07-03 13:09:09 +02:00
Mark Spanbroek
88d60b14b0
Test JSON-RPC Provider with polling
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
beac903a3f
Remove duplication in tests
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