4 个稳定版本
1.6.3 | 2024 年 5 月 13 日 |
---|---|
1.6.2 | 2024 年 5 月 10 日 |
1.6.1 | 2024 年 5 月 6 日 |
1.6.0 | 2024 年 5 月 2 日 |
#5 in #ismp
每月 186 次下载
135KB
2K SLoC
ISMP Parachain Inherent
此模块导出内建提供者,其中包括作为区块内建的 ISMP parachain 共识更新。
用法
要使用此模块,您需要将内建模块包含到您的 collator 参数中,如下所示
fn start_consensus(
client: Arc<FullClient>,
backend: Arc<FullBackend>,
block_import: ParachainBlockImport,
prometheus_registry: Option<&Registry>,
telemetry: Option<TelemetryHandle>,
task_manager: &TaskManager,
relay_chain_interface: Arc<dyn RelayChainInterface>,
transaction_pool: Arc<sc_transaction_pool::FullPool<opaque::Block, FullClient>>,
sync_oracle: Arc<SyncingService<opaque::Block>>,
keystore: KeystorePtr,
relay_chain_slot_duration: Duration,
para_id: ParaId,
collator_key: CollatorPair,
overseer_handle: OverseerHandle,
announce_block: Arc<dyn Fn(opaque::Hash, Option<Vec<u8>>) + Send + Sync>,
) {
// .. omitted calls
let (client_clone, relay_chain_interface_clone) =
(client.clone(), relay_chain_interface.clone());
let params = lookahead::Params {
create_inherent_data_providers: move |parent, ()| {
let client = client_clone.clone();
let relay_chain_interface = relay_chain_interface_clone.clone();
async move {
let inherent = ismp_parachain_inherent::ConsensusInherentProvider::create(
parent,
client,
relay_chain_interface,
).await?;
Ok(inherent)
}
},
..Default::default()
// omitted fields
};
// ..omitted calls
}
许可证
此库采用 Apache 2.0 许可证,版权所有 (c) 2024 Polytope Labs。
依赖项
~78–120MB
~2M SLoC