diff --git a/cumulus/pallets/aura-ext/src/lib.rs b/cumulus/pallets/aura-ext/src/lib.rs index 31b571816a0c15837c6175ab233204565cc7eb36..b71ae628954c037b978ff01e55e586c95d0e5fae 100644 --- a/cumulus/pallets/aura-ext/src/lib.rs +++ b/cumulus/pallets/aura-ext/src/lib.rs @@ -63,14 +63,14 @@ pub mod pallet { impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> { fn on_finalize(_: BlockNumberFor<T>) { // Update to the latest AuRa authorities. - Authorities::<T>::put(Aura::<T>::authorities()); + Authorities::<T>::put(pallet_aura::Authorities::<T>::get()); } fn on_initialize(_: BlockNumberFor<T>) -> Weight { // Fetch the authorities once to get them into the storage proof of the PoV. Authorities::<T>::get(); - let new_slot = Aura::<T>::current_slot(); + let new_slot = pallet_aura::CurrentSlot::<T>::get(); let (new_slot, authored) = match SlotInfo::<T>::get() { Some((slot, authored)) if slot == new_slot => (slot, authored + 1), @@ -116,7 +116,7 @@ pub mod pallet { #[pallet::genesis_build] impl<T: Config> BuildGenesisConfig for GenesisConfig<T> { fn build(&self) { - let authorities = Aura::<T>::authorities(); + let authorities = pallet_aura::Authorities::<T>::get(); Authorities::<T>::put(authorities); } } diff --git a/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/lib.rs b/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/lib.rs index e6b5e55bcd3ab5f37b11fc9411ff2fe2f0e55af5..d3d8a495ea3f226ba28410ecd769a5fc9123d49f 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/lib.rs +++ b/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/lib.rs @@ -1067,7 +1067,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/lib.rs b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/lib.rs index 1ba108234c8eeb7dab119951dcb94604dcb9f9f4..711fadff92a0c2f0cf898414ae871015bbf2b386 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/lib.rs +++ b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/lib.rs @@ -1098,7 +1098,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/lib.rs b/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/lib.rs index 31069778e386288944762b770f5b10cf0bfd2a83..bbafcd3c7ddd3d84ab2eae9fc4ec05e93e654262 100644 --- a/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/lib.rs +++ b/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/lib.rs @@ -790,7 +790,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/src/lib.rs b/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/src/lib.rs index d96c762fe19d3d19c962897ff8a3b837fe1b0dad..11ab9aecc61748c2c96136e796e727c53a9120d9 100644 --- a/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/src/lib.rs +++ b/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/src/lib.rs @@ -540,7 +540,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/collectives/collectives-westend/src/lib.rs b/cumulus/parachains/runtimes/collectives/collectives-westend/src/lib.rs index 5bf3519ac3d2ed1822110593076a510eb463b2d8..55269283e081240e26f7d0b5ea91d2d126b59b95 100644 --- a/cumulus/parachains/runtimes/collectives/collectives-westend/src/lib.rs +++ b/cumulus/parachains/runtimes/collectives/collectives-westend/src/lib.rs @@ -777,7 +777,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/contracts/contracts-rococo/src/lib.rs b/cumulus/parachains/runtimes/contracts/contracts-rococo/src/lib.rs index f148ceadccbabb60b0b4979472c91206709f31dc..17bb45f6b1b89c807f5f61859e2d30d05819c5c5 100644 --- a/cumulus/parachains/runtimes/contracts/contracts-rococo/src/lib.rs +++ b/cumulus/parachains/runtimes/contracts/contracts-rococo/src/lib.rs @@ -440,7 +440,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/coretime/coretime-rococo/src/lib.rs b/cumulus/parachains/runtimes/coretime/coretime-rococo/src/lib.rs index 6efbdde58997d3aa1cecdc487218dee93d6fe89f..26add2ee942497c8420ff85b4e3bc9da4e084393 100644 --- a/cumulus/parachains/runtimes/coretime/coretime-rococo/src/lib.rs +++ b/cumulus/parachains/runtimes/coretime/coretime-rococo/src/lib.rs @@ -495,7 +495,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/coretime/coretime-westend/src/lib.rs b/cumulus/parachains/runtimes/coretime/coretime-westend/src/lib.rs index 2bb179b5b056366996526bc19586be3085cb9113..76732c3fccc7434ecd667fb4f4dc52c5e41fb227 100644 --- a/cumulus/parachains/runtimes/coretime/coretime-westend/src/lib.rs +++ b/cumulus/parachains/runtimes/coretime/coretime-westend/src/lib.rs @@ -486,7 +486,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/glutton/glutton-westend/src/lib.rs b/cumulus/parachains/runtimes/glutton/glutton-westend/src/lib.rs index e7fdb53b253185729299e95239e21cc9f16df8e4..fe18f48fbb3c20b294d1efee8048ca75ae76f784 100644 --- a/cumulus/parachains/runtimes/glutton/glutton-westend/src/lib.rs +++ b/cumulus/parachains/runtimes/glutton/glutton-westend/src/lib.rs @@ -353,7 +353,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/people/people-rococo/src/lib.rs b/cumulus/parachains/runtimes/people/people-rococo/src/lib.rs index 98f76984dd4506a442690c999f4c2746b78ba8e1..2bb5641b4af072d6d400b80bcf090826441fc0fa 100644 --- a/cumulus/parachains/runtimes/people/people-rococo/src/lib.rs +++ b/cumulus/parachains/runtimes/people/people-rococo/src/lib.rs @@ -469,7 +469,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/people/people-westend/src/lib.rs b/cumulus/parachains/runtimes/people/people-westend/src/lib.rs index 5adbdc1f38ccfe847aa6e35960fb5c0bca31b055..b81f7a9c9695d10fa04a8673675ebb52bb7afd22 100644 --- a/cumulus/parachains/runtimes/people/people-westend/src/lib.rs +++ b/cumulus/parachains/runtimes/people/people-westend/src/lib.rs @@ -469,7 +469,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/starters/seedling/src/lib.rs b/cumulus/parachains/runtimes/starters/seedling/src/lib.rs index bf4768d8457a7c4fab175fe481a85222ae65a948..2f4f762408febe0e1176cc1d68dd3d314102a082 100644 --- a/cumulus/parachains/runtimes/starters/seedling/src/lib.rs +++ b/cumulus/parachains/runtimes/starters/seedling/src/lib.rs @@ -283,7 +283,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/starters/shell/src/lib.rs b/cumulus/parachains/runtimes/starters/shell/src/lib.rs index 51fdfac5b1c1eedc9761688d1692593ad90530f0..0f4957fd802b441e17fe05f791a7e1dbd047a29e 100644 --- a/cumulus/parachains/runtimes/starters/shell/src/lib.rs +++ b/cumulus/parachains/runtimes/starters/shell/src/lib.rs @@ -340,7 +340,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/testing/penpal/src/lib.rs b/cumulus/parachains/runtimes/testing/penpal/src/lib.rs index 3063601e030f67c5a1e38dd2fe002f1b373d66c6..1e6d485d148d356920c3069fc1017b5f5d703d28 100644 --- a/cumulus/parachains/runtimes/testing/penpal/src/lib.rs +++ b/cumulus/parachains/runtimes/testing/penpal/src/lib.rs @@ -688,7 +688,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/cumulus/parachains/runtimes/testing/rococo-parachain/src/lib.rs b/cumulus/parachains/runtimes/testing/rococo-parachain/src/lib.rs index 753d2d120652a92218221f936ff2a289d713d8d2..a066cab1b6dce86097877143abce195faa75b960 100644 --- a/cumulus/parachains/runtimes/testing/rococo-parachain/src/lib.rs +++ b/cumulus/parachains/runtimes/testing/rococo-parachain/src/lib.rs @@ -758,7 +758,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } } diff --git a/prdoc/pr_3350.prdoc b/prdoc/pr_3350.prdoc new file mode 100644 index 0000000000000000000000000000000000000000..1171614d67f65e8d75a2d3b4f6545a87bfb0ac0e --- /dev/null +++ b/prdoc/pr_3350.prdoc @@ -0,0 +1,31 @@ +# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0 +# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json + +title: removed `pallet::getter` from Pallet AURA + +doc: + - audience: Runtime Dev + description: | + This PR removes all the declarations of macro `pallet::getter` in the Pallet AURA and replaces the use of storage getter functions authorities() & current_slot() with `StorageItem::get()` API across the crates as listed bellow. + The purpose is to discourage developers to use this macro, that is currently being removed and soon will be deprecated. + +crates: + - name: pallet-aura + - name: solochain-template-runtime + - name: cumulus-pallet-aura-ext + - name: parachain-template-runtime + - name: people-westend-runtime + - name: people-rococo-runtime + - name: bridge-hub-rococo-runtime + - name: bridge-hub-westend-runtime + - name: rococo-parachain-runtime + - name: penpal-runtime + - name: glutton-westend-runtime + - name: shell-runtime + - name: seedling-runtime + - name: collectives-westend-runtime + - name: asset-hub-rococo-runtime + - name: asset-hub-westend-runtime + - name: contracts-rococo-runtime + - name: coretime-westend-runtime + - name: coretime-rococo-runtime diff --git a/substrate/frame/aura/src/lib.rs b/substrate/frame/aura/src/lib.rs index 55653de97a8b193dcb79a380812149b291b2edac..997f51ba428fa095584eb147990941a2838c69e0 100644 --- a/substrate/frame/aura/src/lib.rs +++ b/substrate/frame/aura/src/lib.rs @@ -161,16 +161,14 @@ pub mod pallet { /// The current authority set. #[pallet::storage] - #[pallet::getter(fn authorities)] - pub(super) type Authorities<T: Config> = + pub type Authorities<T: Config> = StorageValue<_, BoundedVec<T::AuthorityId, T::MaxAuthorities>, ValueQuery>; /// The current slot of this block. /// /// This will be set in `on_initialize`. #[pallet::storage] - #[pallet::getter(fn current_slot)] - pub(super) type CurrentSlot<T: Config> = StorageValue<_, Slot, ValueQuery>; + pub type CurrentSlot<T: Config> = StorageValue<_, Slot, ValueQuery>; #[pallet::genesis_config] #[derive(frame_support::DefaultNoBound)] @@ -318,7 +316,7 @@ impl<T: Config> OneSessionHandler<T::AccountId> for Pallet<T> { // instant changes if changed { let next_authorities = validators.map(|(_, k)| k).collect::<Vec<_>>(); - let last_authorities = Self::authorities(); + let last_authorities = Authorities::<T>::get(); if last_authorities != next_authorities { if next_authorities.len() as u32 > T::MaxAuthorities::get() { log::warn!( @@ -374,7 +372,7 @@ impl<T: Config, Inner: FindAuthor<u32>> FindAuthor<T::AuthorityId> { let i = Inner::find_author(digests)?; - let validators = <Pallet<T>>::authorities(); + let validators = Authorities::<T>::get(); validators.get(i as usize).cloned() } } @@ -384,7 +382,7 @@ pub type AuraAuthorId<T> = FindAccountFromAuthorIndex<T, Pallet<T>>; impl<T: Config> IsMember<T::AuthorityId> for Pallet<T> { fn is_member(authority_id: &T::AuthorityId) -> bool { - Self::authorities().iter().any(|id| id == authority_id) + Authorities::<T>::get().iter().any(|id| id == authority_id) } } diff --git a/substrate/frame/aura/src/tests.rs b/substrate/frame/aura/src/tests.rs index b3a5e144fad8e300059159e61ad8412e84e38d2d..5374105a2f3b2f286e7ad9afa835a260d7a7520b 100644 --- a/substrate/frame/aura/src/tests.rs +++ b/substrate/frame/aura/src/tests.rs @@ -19,7 +19,8 @@ #![cfg(test)] -use crate::mock::{build_ext_and_execute_test, Aura, MockDisabledValidators, System}; +use super::pallet; +use crate::mock::{build_ext_and_execute_test, Aura, MockDisabledValidators, System, Test}; use codec::Encode; use frame_support::traits::OnInitialize; use sp_consensus_aura::{Slot, AURA_ENGINE_ID}; @@ -28,8 +29,8 @@ use sp_runtime::{Digest, DigestItem}; #[test] fn initial_values() { build_ext_and_execute_test(vec![0, 1, 2, 3], || { - assert_eq!(Aura::current_slot(), 0u64); - assert_eq!(Aura::authorities().len(), Aura::authorities_len()); + assert_eq!(pallet::CurrentSlot::<Test>::get(), 0u64); + assert_eq!(pallet::Authorities::<Test>::get().len(), Aura::authorities_len()); assert_eq!(Aura::authorities_len(), 4); }); } diff --git a/templates/parachain/runtime/src/lib.rs b/templates/parachain/runtime/src/lib.rs index acaabc0dbc366499f3d05fbc2529bea0536b6ef7..ad21b79a5b1baf48759e7696c7233a9bdf9bdc38 100644 --- a/templates/parachain/runtime/src/lib.rs +++ b/templates/parachain/runtime/src/lib.rs @@ -57,6 +57,8 @@ use polkadot_runtime_common::{BlockHashCount, SlowAdjustingFeeUpdate}; use weights::{BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight}; +use pallet_aura::Authorities; + // XCM Imports use xcm::latest::prelude::BodyId; @@ -547,7 +549,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + Authorities::<Runtime>::get().into_inner() } } diff --git a/templates/solochain/runtime/src/lib.rs b/templates/solochain/runtime/src/lib.rs index 9b52ee60a63504d5731428ee9852072b44db8159..5a97bd2f39120b1bdf119b0638464e6eceb45047 100644 --- a/templates/solochain/runtime/src/lib.rs +++ b/templates/solochain/runtime/src/lib.rs @@ -415,7 +415,7 @@ impl_runtime_apis! { } fn authorities() -> Vec<AuraId> { - Aura::authorities().into_inner() + pallet_aura::Authorities::<Runtime>::get().into_inner() } }