Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Parachains shared.rs to Frame V2 #3425

Merged
11 commits merged into from
Jul 22, 2021
5 changes: 3 additions & 2 deletions runtime/common/src/integration_tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ frame_support::construct_runtime!(
// Parachains Runtime
Configuration: configuration::{Pallet, Call, Storage, Config<T>},
Paras: paras::{Pallet, Origin, Call, Storage, Event, Config},
ParasShared: shared::{Pallet, Call, Storage},

// Para Onboarding Pallets
Registrar: paras_registrar::{Pallet, Call, Storage, Event<T>},
Expand Down Expand Up @@ -251,8 +252,8 @@ const BLOCKS_PER_SESSION: u32 = 10;

fn maybe_new_session(n: u32) {
if n % BLOCKS_PER_SESSION == 0 {
shared::Module::<Test>::set_session_index(
shared::Module::<Test>::session_index() + 1
shared::Pallet::<Test>::set_session_index(
shared::Pallet::<Test>::session_index() + 1
);
Paras::test_on_new_session();
}
Expand Down
1 change: 1 addition & 0 deletions runtime/common/src/paras_registrar.rs
Original file line number Diff line number Diff line change
Expand Up @@ -573,6 +573,7 @@ mod tests {
Balances: pallet_balances::{Pallet, Call, Storage, Config<T>, Event<T>},
ParachainsConfiguration: configuration::{Pallet, Call, Storage, Config<T>},
Parachains: paras::{Pallet, Origin, Call, Storage, Config, Event},
ParasShared: shared::{Pallet, Call, Storage},
Registrar: paras_registrar::{Pallet, Call, Storage, Event<T>},
}
);
Expand Down
2 changes: 1 addition & 1 deletion runtime/parachains/src/configuration.rs
Original file line number Diff line number Diff line change
Expand Up @@ -730,7 +730,7 @@ impl<T: Config> Module<T> {

/// Return the session index that should be used for any future scheduled changes.
fn scheduled_session() -> SessionIndex {
shared::Module::<T>::scheduled_session()
shared::Pallet::<T>::scheduled_session()
}

/// Forcibly set the active config. This should be used with extreme care, and typically
Expand Down
10 changes: 5 additions & 5 deletions runtime/parachains/src/hrmp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1292,7 +1292,7 @@ impl<T: Config> Pallet<T> {
mod tests {
use super::*;
use crate::mock::{
new_test_ext, Test, Configuration, Paras, Shared, Hrmp, System, MockGenesisConfig,
new_test_ext, Test, Configuration, Paras, ParasShared, Hrmp, System, MockGenesisConfig,
Event as MockEvent,
};
use frame_support::{assert_noop, assert_ok, traits::Currency as _};
Expand All @@ -1308,18 +1308,18 @@ mod tests {
// NOTE: this is in reverse initialization order.
Hrmp::initializer_finalize();
Paras::initializer_finalize();
Shared::initializer_finalize();
ParasShared::initializer_finalize();

if new_session.as_ref().map_or(false, |v| v.contains(&(b + 1))) {
let notification = crate::initializer::SessionChangeNotification {
prev_config: config.clone(),
new_config: config.clone(),
session_index: Shared::session_index() + 1,
session_index: ParasShared::session_index() + 1,
..Default::default()
};

// NOTE: this is in initialization order.
Shared::initializer_on_new_session(
ParasShared::initializer_on_new_session(
notification.session_index,
notification.random_seed,
&notification.new_config,
Expand All @@ -1335,7 +1335,7 @@ mod tests {
System::set_block_number(b + 1);

// NOTE: this is in initialization order.
Shared::initializer_initialize(b + 1);
ParasShared::initializer_initialize(b + 1);
Paras::initializer_initialize(b + 1);
Hrmp::initializer_initialize(b + 1);
}
Expand Down
48 changes: 24 additions & 24 deletions runtime/parachains/src/inclusion.rs
Original file line number Diff line number Diff line change
Expand Up @@ -253,8 +253,8 @@ impl<T: Config> Pallet<T> {
unchecked_bitfields: UncheckedSignedAvailabilityBitfields,
core_lookup: impl Fn(CoreIndex) -> Option<ParaId>,
) -> Result<Vec<(CoreIndex, CandidateHash)>, DispatchError> {
let validators = shared::Module::<T>::active_validator_keys();
let session_index = shared::Module::<T>::session_index();
let validators = shared::Pallet::<T>::active_validator_keys();
let session_index = shared::Pallet::<T>::session_index();

let mut assigned_paras_record: Vec<_> = (0..expected_bits)
.map(|bit_index| core_lookup(CoreIndex::from(bit_index as u32)))
Expand Down Expand Up @@ -407,7 +407,7 @@ impl<T: Config> Pallet<T> {
return Ok(Vec::new());
}

let validators = shared::Module::<T>::active_validator_keys();
let validators = shared::Pallet::<T>::active_validator_keys();
let parent_hash = <frame_system::Pallet<T>>::parent_hash();

// At the moment we assume (and in fact enforce, below) that the relay-parent is always one
Expand All @@ -434,7 +434,7 @@ impl<T: Config> Pallet<T> {

let signing_context = SigningContext {
parent_hash,
session_index: shared::Module::<T>::session_index(),
session_index: shared::Pallet::<T>::session_index(),
};

// We combine an outer loop over candidates with an inner loop over the scheduled,
Expand Down Expand Up @@ -951,7 +951,7 @@ mod tests {
use sc_keystore::LocalKeystore;
use crate::mock::{
new_test_ext, Configuration, Paras, System, ParaInclusion,
MockGenesisConfig, Test, Shared,
MockGenesisConfig, Test, ParasShared,
};
use crate::initializer::SessionChangeNotification;
use crate::configuration::HostConfiguration;
Expand Down Expand Up @@ -1080,10 +1080,10 @@ mod tests {

ParaInclusion::initializer_finalize();
Paras::initializer_finalize();
Shared::initializer_finalize();
ParasShared::initializer_finalize();

if let Some(notification) = new_session(b + 1) {
Shared::initializer_on_new_session(
ParasShared::initializer_on_new_session(
notification.session_index,
notification.random_seed,
&notification.new_config,
Expand All @@ -1098,7 +1098,7 @@ mod tests {
System::on_initialize(b + 1);
System::set_block_number(b + 1);

Shared::initializer_initialize(b + 1);
ParasShared::initializer_initialize(b + 1);
Paras::initializer_initialize(b + 1);
ParaInclusion::initializer_initialize(b + 1);
}
Expand All @@ -1113,11 +1113,11 @@ mod tests {
}

fn default_availability_votes() -> BitVec<BitOrderLsb0, u8> {
bitvec::bitvec![BitOrderLsb0, u8; 0; Shared::active_validator_keys().len()]
bitvec::bitvec![BitOrderLsb0, u8; 0; ParasShared::active_validator_keys().len()]
}

fn default_backing_bitfield() -> BitVec<BitOrderLsb0, u8> {
bitvec::bitvec![BitOrderLsb0, u8; 0; Shared::active_validator_keys().len()]
bitvec::bitvec![BitOrderLsb0, u8; 0; ParasShared::active_validator_keys().len()]
}

fn backing_bitfield(v: &[usize]) -> BitVec<BitOrderLsb0, u8> {
Expand Down Expand Up @@ -1264,8 +1264,8 @@ mod tests {
let validator_public = validator_pubkeys(&validators);

new_test_ext(genesis_config(paras)).execute_with(|| {
shared::Module::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Module::<Test>::set_session_index(5);
shared::Pallet::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Pallet::<Test>::set_session_index(5);

let signing_context = SigningContext {
parent_hash: System::parent_hash(),
Expand Down Expand Up @@ -1498,8 +1498,8 @@ mod tests {
let validator_public = validator_pubkeys(&validators);

new_test_ext(genesis_config(paras)).execute_with(|| {
shared::Module::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Module::<Test>::set_session_index(5);
shared::Pallet::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Pallet::<Test>::set_session_index(5);

let signing_context = SigningContext {
parent_hash: System::parent_hash(),
Expand Down Expand Up @@ -1663,8 +1663,8 @@ mod tests {
let validator_public = validator_pubkeys(&validators);

new_test_ext(genesis_config(paras)).execute_with(|| {
shared::Module::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Module::<Test>::set_session_index(5);
shared::Pallet::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Pallet::<Test>::set_session_index(5);

run_to_block(5, |_| None);

Expand Down Expand Up @@ -2187,8 +2187,8 @@ mod tests {
let validator_public = validator_pubkeys(&validators);

new_test_ext(genesis_config(paras)).execute_with(|| {
shared::Module::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Module::<Test>::set_session_index(5);
shared::Pallet::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Pallet::<Test>::set_session_index(5);

run_to_block(5, |_| None);

Expand Down Expand Up @@ -2384,8 +2384,8 @@ mod tests {
let validator_public = validator_pubkeys(&validators);

new_test_ext(genesis_config(paras)).execute_with(|| {
shared::Module::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Module::<Test>::set_session_index(5);
shared::Pallet::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Pallet::<Test>::set_session_index(5);

run_to_block(5, |_| None);

Expand Down Expand Up @@ -2481,8 +2481,8 @@ mod tests {
let validator_public = validator_pubkeys(&validators);

new_test_ext(genesis_config(paras)).execute_with(|| {
shared::Module::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Module::<Test>::set_session_index(5);
shared::Pallet::<Test>::set_active_validators_ascending(validator_public.clone());
shared::Pallet::<Test>::set_session_index(5);

let validators_new = vec![
Sr25519Keyring::Alice,
Expand Down Expand Up @@ -2545,7 +2545,7 @@ mod tests {

run_to_block(11, |_| None);

assert_eq!(shared::Module::<Test>::session_index(), 5);
assert_eq!(shared::Pallet::<Test>::session_index(), 5);

assert!(<AvailabilityBitfields<Test>>::get(&ValidatorIndex(0)).is_some());
assert!(<AvailabilityBitfields<Test>>::get(&ValidatorIndex(1)).is_some());
Expand All @@ -2568,7 +2568,7 @@ mod tests {
_ => None,
});

assert_eq!(shared::Module::<Test>::session_index(), 6);
assert_eq!(shared::Pallet::<Test>::session_index(), 6);

assert!(<AvailabilityBitfields<Test>>::get(&ValidatorIndex(0)).is_none());
assert!(<AvailabilityBitfields<Test>>::get(&ValidatorIndex(1)).is_none());
Expand Down
6 changes: 3 additions & 3 deletions runtime/parachains/src/initializer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ pub mod pallet {
// - UMP
// - HRMP
let total_weight = configuration::Module::<T>::initializer_initialize(now) +
shared::Module::<T>::initializer_initialize(now) +
shared::Pallet::<T>::initializer_initialize(now) +
paras::Pallet::<T>::initializer_initialize(now) +
scheduler::Module::<T>::initializer_initialize(now) +
inclusion::Pallet::<T>::initializer_initialize(now) +
Expand All @@ -158,7 +158,7 @@ pub mod pallet {
inclusion::Pallet::<T>::initializer_finalize();
scheduler::Module::<T>::initializer_finalize();
paras::Pallet::<T>::initializer_finalize();
shared::Module::<T>::initializer_finalize();
shared::Pallet::<T>::initializer_finalize();
configuration::Module::<T>::initializer_finalize();

// Apply buffered session changes as the last thing. This way the runtime APIs and the
Expand Down Expand Up @@ -217,7 +217,7 @@ impl<T: Config> Pallet<T> {

let new_config = <configuration::Module<T>>::config();

let validators = shared::Module::<T>::initializer_on_new_session(
let validators = shared::Pallet::<T>::initializer_on_new_session(
session_index,
random_seed.clone(),
&new_config,
Expand Down
2 changes: 1 addition & 1 deletion runtime/parachains/src/mock.rs
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ frame_support::construct_runtime!(
Balances: pallet_balances::{Pallet, Call, Storage, Config<T>, Event<T>},
Paras: paras::{Pallet, Origin, Call, Storage, Event, Config},
Configuration: configuration::{Pallet, Call, Storage, Config<T>},
Shared: shared::{Pallet, Call, Storage},
ParasShared: shared::{Pallet, Call, Storage},
ParaInclusion: inclusion::{Pallet, Call, Storage, Event<T>},
Scheduler: scheduler::{Pallet, Call, Storage},
Initializer: initializer::{Pallet, Call, Storage},
Expand Down
10 changes: 5 additions & 5 deletions runtime/parachains/src/paras.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1016,18 +1016,18 @@ mod tests {
use primitives::v1::BlockNumber;
use frame_support::assert_ok;

use crate::mock::{new_test_ext, Paras, Shared, System, MockGenesisConfig};
use crate::mock::{new_test_ext, Paras, ParasShared, System, MockGenesisConfig};
use crate::configuration::HostConfiguration;

fn run_to_block(to: BlockNumber, new_session: Option<Vec<BlockNumber>>) {
while System::block_number() < to {
let b = System::block_number();
Paras::initializer_finalize();
Shared::initializer_finalize();
ParasShared::initializer_finalize();
if new_session.as_ref().map_or(false, |v| v.contains(&(b + 1))) {
let mut session_change_notification = SessionChangeNotification::default();
session_change_notification.session_index = Shared::session_index() + 1;
Shared::initializer_on_new_session(
session_change_notification.session_index = ParasShared::session_index() + 1;
ParasShared::initializer_on_new_session(
session_change_notification.session_index,
session_change_notification.random_seed,
&session_change_notification.new_config,
Expand All @@ -1040,7 +1040,7 @@ mod tests {
System::on_initialize(b + 1);
System::set_block_number(b + 1);

Shared::initializer_initialize(b + 1);
ParasShared::initializer_initialize(b + 1);
Paras::initializer_initialize(b + 1);
}
}
Expand Down
2 changes: 1 addition & 1 deletion runtime/parachains/src/paras_inherent.rs
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ decl_module! {
);

// Handle disputes logic.
let current_session = <shared::Module<T>>::session_index();
let current_session = <shared::Pallet<T>>::session_index();
let freed_disputed: Vec<(_, FreedReason)> = {
let fresh_disputes = T::DisputesHandler::provide_multi_dispute_data(disputes)?;
if T::DisputesHandler::is_frozen() {
Expand Down
8 changes: 4 additions & 4 deletions runtime/parachains/src/reward_points.rs
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ fn validators_to_reward<C, T, I>(validators: &'_ [T], indirect_indices: I) -> im
C: shared::Config,
I: IntoIterator<Item = ValidatorIndex>
{
let validator_indirection = <shared::Module<C>>::active_validator_indices();
let validator_indirection = <shared::Pallet<C>>::active_validator_indices();

indirect_indices.into_iter()
.filter_map(move |i| validator_indirection.get(i.0 as usize).map(|v| v.clone()))
Expand Down Expand Up @@ -65,7 +65,7 @@ mod tests {
use super::*;
use primitives::v1::ValidatorId;
use crate::configuration::HostConfiguration;
use crate::mock::{new_test_ext, MockGenesisConfig, Shared, Test};
use crate::mock::{new_test_ext, MockGenesisConfig, ParasShared, Test};
use keyring::Sr25519Keyring;

#[test]
Expand All @@ -88,7 +88,7 @@ mod tests {

let pubkeys = validator_pubkeys(&validators);

let shuffled_pubkeys = Shared::initializer_on_new_session(
let shuffled_pubkeys = ParasShared::initializer_on_new_session(
1,
[1; 32],
&config,
Expand All @@ -107,7 +107,7 @@ mod tests {
);

assert_eq!(
Shared::active_validator_indices(),
ParasShared::active_validator_indices(),
vec![
ValidatorIndex(4),
ValidatorIndex(1),
Expand Down
4 changes: 2 additions & 2 deletions runtime/parachains/src/runtime_api_impl/v1.rs
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ use crate::{initializer, inclusion, scheduler, configuration, paras, session_inf

/// Implementation for the `validators` function of the runtime API.
pub fn validators<T: initializer::Config>() -> Vec<ValidatorId> {
<shared::Module<T>>::active_validator_keys()
<shared::Pallet<T>>::active_validator_keys()
}

/// Implementation for the `validator_groups` function of the runtime API.
Expand Down Expand Up @@ -231,7 +231,7 @@ pub fn session_index_for_child<T: initializer::Config>() -> SessionIndex {
//
// Incidentally, this is also the rationale for why it is OK to query validators or
// occupied cores or etc. and expect the correct response "for child".
<shared::Module<T>>::session_index()
<shared::Pallet<T>>::session_index()
}

/// Implementation for the `AuthorityDiscoveryApi::authorities()` function of the runtime API.
Expand Down
4 changes: 2 additions & 2 deletions runtime/parachains/src/scheduler.rs
Original file line number Diff line number Diff line change
Expand Up @@ -740,7 +740,7 @@ mod tests {
};
use keyring::Sr25519Keyring;

use crate::mock::{new_test_ext, Configuration, Paras, Shared, System, Scheduler, MockGenesisConfig};
use crate::mock::{new_test_ext, Configuration, Paras, ParasShared, System, Scheduler, MockGenesisConfig};
use crate::initializer::SessionChangeNotification;
use crate::configuration::HostConfiguration;
use crate::paras::ParaGenesisArgs;
Expand All @@ -767,7 +767,7 @@ mod tests {
let mut notification_with_session_index = notification;
// We will make every session change trigger an action queue. Normally this may require 2 or more session changes.
if notification_with_session_index.session_index == SessionIndex::default() {
notification_with_session_index.session_index = Shared::scheduled_session();
notification_with_session_index.session_index = ParasShared::scheduled_session();
}
Paras::initializer_on_new_session(&notification_with_session_index);
Scheduler::initializer_on_new_session(&notification_with_session_index);
Expand Down
Loading