Add a call to .unvalidated() for all eth-rpc interactions#11468
Add a call to .unvalidated() for all eth-rpc interactions#11468
.unvalidated() for all eth-rpc interactions#11468Conversation
|
/cmd prdoc --audience runtime_dev --bump patch |
…time_dev --bump patch'
|
Looks good I wonder if there is not something we can do with our smoke tests in evm-test-suite, This will help us make sure eth-rpc is backward compatible as we introduce or update anything that touches the runtime-api maybe we can add that to our backlog and do that as a follow up |
| /// Fetch the max block weight from the substrate chain. | ||
| async fn max_block_weight(api: &OnlineClient<SrcChainConfig>) -> Result<Weight, ClientError> { | ||
| let query = subxt_client::constants().system().block_weights(); | ||
| let query = subxt_client::constants().system().block_weights().unvalidated(); |
There was a problem hiding this comment.
nit: does system().block_weights() need .unvalidated()? AFAIU its hash isn't affected by revive changes.
There was a problem hiding this comment.
I added it here to be consistent so that all of our interactions using subxt use unvalidated
Description
This PR updates the
eth-rpcso that all interactions with subxt are unvalidated. This change was made to allow us to use anyeth-rpcversion with any version of pallet revive given that there's no actual interface differences in the runtime functions that we called. Before this change, we would get a lot of metadata mismatch errors for slightly older versions of revive. Our assumption is that this happened due to us adding more runtime functions into pallet-revive's runtime API which lead to the hash of the metadata being different, thus to the metadata mismatch.