Rococo/Westend Coretime Runtime

New runtimes for the Coretime Chain (a.k.a. "Broker Chain") described in
RFC-1.

Replaces https://github.com/paritytech/cumulus/pull/2889


- [x] Add Agile Coretime pallet
https://github.com/paritytech/substrate/pull/14568
- [x] Generate chain specs for local and testnets
- [x] Deploy parachain on Rococo - Done:
[rococo-coretime-rpc.polkadot.io](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frococo-coretime-rpc.polkadot.io#/explorer)

DevOps issue for Aura keygen:
https://github.com/paritytech/devops/issues/2725

Edit (Dónal): This PR is mainly for Rococo, the Westend runtime is a
shell with no `Broker` pallet. The Rococo runtime has the broker calls
filtered for initial deployment.

---------

Co-authored-by: Dónal Murray <donal.murray@parity.io>
Co-authored-by: 0xmovses <r.v.melkonian@gmail.com>
Co-authored-by: Liam Aharon <liam.aharon@hotmail.com>
Co-authored-by: Bastian Köcher <git@kchr.de>
Co-authored-by: Marcin S. <marcin@realemail.net>
Co-authored-by: Bastian Köcher <info@kchr.de>
Co-authored-by: command-bot <>
Co-authored-by: Branislav Kontur <bkontur@gmail.com>
This commit is contained in:
joe petrowski
2023-12-19 15:12:24 +01:00
committed by GitHub
parent 166ae5ae12
commit 2e70dd3bbe
72 changed files with 9856 additions and 111 deletions
@@ -156,7 +156,7 @@ pub struct BlockAndTimeDeadline<B: BlockNumberProvider> {
impl<B: BlockNumberProvider> Clone for BlockAndTimeDeadline<B> {
fn clone(&self) -> Self {
Self { block_number: self.block_number.clone(), timestamp: self.timestamp }
Self { block_number: self.block_number, timestamp: self.timestamp }
}
}
+16 -1
View File
@@ -2292,7 +2292,15 @@ pub trait BlockIdTo<Block: self::Block> {
/// Get current block number
pub trait BlockNumberProvider {
/// Type of `BlockNumber` to provide.
type BlockNumber: Codec + Clone + Ord + Eq + AtLeast32BitUnsigned;
type BlockNumber: Codec
+ Clone
+ Ord
+ Eq
+ AtLeast32BitUnsigned
+ TypeInfo
+ Debug
+ MaxEncodedLen
+ Copy;
/// Returns the current block number.
///
@@ -2320,6 +2328,13 @@ pub trait BlockNumberProvider {
fn set_block_number(_block: Self::BlockNumber) {}
}
impl BlockNumberProvider for () {
type BlockNumber = u32;
fn current_block_number() -> Self::BlockNumber {
0
}
}
#[cfg(test)]
mod tests {
use super::*;