mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-13 23:21:06 +00:00
Removal of execution strategies (#14387)
* Start * More work! * Moar * More changes * More fixes * More worrk * More fixes * More fixes to make it compile * Adds `NoOffchainStorage` * Pass the extensions * Small basti making small progress * Fix merge errors and remove `ExecutionContext` * Move registration of `ReadRuntimeVersionExt` to `ExecutionExtension` Instead of registering `ReadRuntimeVersionExt` in `sp-state-machine` it is moved to `ExecutionExtension` which provides the default extensions. * Fix compilation * Register the global extensions inside runtime api instance * Fixes * Fix `generate_initial_session_keys` by passing the keystore extension * Fix the grandpa tests * Fix more tests * Fix more tests * Don't set any heap pages if there isn't an override * Fix small fallout * FMT * Fix tests * More tests * Offchain worker custom extensions * More fixes * Make offchain tx pool creation reusable Introduces an `OffchainTransactionPoolFactory` for creating offchain transactions pools that can be registered in the runtime externalities context. This factory will be required for a later pr to make the creation of offchain transaction pools easier. * Fixes * Fixes * Set offchain transaction pool in BABE before using it in the runtime * Add the `offchain_tx_pool` to Grandpa as well * Fix the nodes * Print some error when using the old warnings * Fix merge issues * Fix compilation * Rename `babe_link` * Rename to `offchain_tx_pool_factory` * Cleanup * FMT * Fix benchmark name * Fix `try-runtime` * Remove `--execution` CLI args * Make clippy happy * Forward bls functions * Fix docs * Update UI tests * Update client/api/src/execution_extensions.rs Co-authored-by: Michal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Koute <koute@users.noreply.github.com> * Update client/cli/src/params/import_params.rs Co-authored-by: Koute <koute@users.noreply.github.com> * Update client/api/src/execution_extensions.rs Co-authored-by: Koute <koute@users.noreply.github.com> * Pass the offchain storage to the MMR RPC * Update client/api/src/execution_extensions.rs Co-authored-by: Sebastian Kunert <skunert49@gmail.com> * Review comments * Fixes --------- Co-authored-by: Michal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com> Co-authored-by: Koute <koute@users.noreply.github.com> Co-authored-by: Sebastian Kunert <skunert49@gmail.com>
This commit is contained in:
@@ -37,10 +37,10 @@ use sc_transaction_pool_api::{
|
||||
error::IntoPoolError, BlockHash, InPoolTransaction, TransactionFor, TransactionPool,
|
||||
TransactionSource, TxHash,
|
||||
};
|
||||
use sp_api::ProvideRuntimeApi;
|
||||
use sp_api::{ApiExt, ProvideRuntimeApi};
|
||||
use sp_blockchain::HeaderBackend;
|
||||
use sp_core::Bytes;
|
||||
use sp_keystore::KeystorePtr;
|
||||
use sp_keystore::{KeystoreExt, KeystorePtr};
|
||||
use sp_runtime::{generic, traits::Block as BlockT};
|
||||
use sp_session::SessionKeys;
|
||||
|
||||
@@ -122,8 +122,11 @@ where
|
||||
self.deny_unsafe.check_if_safe()?;
|
||||
|
||||
let best_block_hash = self.client.info().best_hash;
|
||||
self.client
|
||||
.runtime_api()
|
||||
let mut runtime_api = self.client.runtime_api();
|
||||
|
||||
runtime_api.register_extension(KeystoreExt::from(self.keystore.clone()));
|
||||
|
||||
runtime_api
|
||||
.generate_session_keys(best_block_hash, None)
|
||||
.map(Into::into)
|
||||
.map_err(|api_err| Error::Client(Box::new(api_err)).into())
|
||||
|
||||
@@ -66,8 +66,7 @@ struct TestSetup {
|
||||
impl Default for TestSetup {
|
||||
fn default() -> Self {
|
||||
let keystore = Arc::new(MemoryKeystore::new());
|
||||
let client_builder = substrate_test_runtime_client::TestClientBuilder::new();
|
||||
let client = Arc::new(client_builder.set_keystore(keystore.clone()).build());
|
||||
let client = Arc::new(substrate_test_runtime_client::TestClientBuilder::new().build());
|
||||
|
||||
let spawner = sp_core::testing::TaskExecutor::new();
|
||||
let pool =
|
||||
|
||||
@@ -198,13 +198,7 @@ where
|
||||
.and_then(|block| {
|
||||
self.client
|
||||
.executor()
|
||||
.call(
|
||||
block,
|
||||
&method,
|
||||
&call_data,
|
||||
self.client.execution_extensions().strategies().other,
|
||||
CallContext::Offchain,
|
||||
)
|
||||
.call(block, &method, &call_data, CallContext::Offchain)
|
||||
.map(Into::into)
|
||||
})
|
||||
.map_err(client_err)
|
||||
|
||||
@@ -522,7 +522,7 @@ async fn should_return_runtime_version() {
|
||||
|
||||
let runtime_version = api.runtime_version(None.into()).unwrap();
|
||||
let serialized = serde_json::to_string(&runtime_version).unwrap();
|
||||
assert_eq!(serialized, result);
|
||||
pretty_assertions::assert_eq!(serialized, result);
|
||||
|
||||
let deserialized: RuntimeVersion = serde_json::from_str(result).unwrap();
|
||||
assert_eq!(deserialized, runtime_version);
|
||||
|
||||
Reference in New Issue
Block a user