You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The tool Rivet from Paradigm is great, but relies on a set of APIs from the anvil_ namespace (via the viem client). For the most part, these endpoints are the exact same as the evm_ (maybe a few specials ones on top of that).
This Issue would require a refactor of storing the implementation of some functions to be stored in a centralized location so it can be re-used accordingly. For example, the following endpoints are doing the same thing:
Supporting Rivet as a first-class tool for debugging would be beneficial for developers of dApps.
📋 Additional Context
There's an option to submit an upstream Pull Request to Rivet that would update their client.mode to be configurable and this would change the namespace of the requests (e.g. new Client({mode: 'evm'}) would call evm_setNonce instead of anvil_setNonce). However, I think we should avoid this option as there are small differences between the hardhat, evm, and rivet namespaces that it's more flexible for us to support all 3.
The text was updated successfully, but these errors were encountered:
🌟 Feature Request
📝 Description
The tool Rivet from Paradigm is great, but relies on a set of APIs from the
anvil_
namespace (via theviem
client). For the most part, these endpoints are the exact same as theevm_
(maybe a few specials ones on top of that).This Issue would require a refactor of storing the implementation of some functions to be stored in a centralized location so it can be re-used accordingly. For example, the following endpoints are doing the same thing:
evm_setAccountNonce
hardhat_setNonce
anvil_setNonce
Here's the full list of endpoints supported by the viem client (e.g. the
anvil_
namespace): https://github.com/wagmi-dev/viem/blob/main/src/clients/decorators/test.ts🤔 Rationale
Supporting Rivet as a first-class tool for debugging would be beneficial for developers of dApps.
📋 Additional Context
There's an option to submit an upstream Pull Request to Rivet that would update their
client.mode
to be configurable and this would change the namespace of the requests (e.g.new Client({mode: 'evm'})
would callevm_setNonce
instead ofanvil_setNonce
). However, I think we should avoid this option as there are small differences between thehardhat
,evm
, andrivet
namespaces that it's more flexible for us to support all 3.The text was updated successfully, but these errors were encountered: