@@ -32,17 +32,16 @@ pub mod rialto_messages;
3232pub mod rialto_parachain_messages;
3333pub mod xcm_config;
3434
35- use beefy_primitives:: { crypto:: AuthorityId as BeefyId , mmr:: MmrLeafVersion , ValidatorSet } ;
3635use bp_parachains:: SingleParaStoredHeaderDataBuilder ;
3736use bp_runtime:: HeaderId ;
3837use pallet_grandpa:: {
3938 fg_primitives, AuthorityId as GrandpaId , AuthorityList as GrandpaAuthorityList ,
4039} ;
4140use pallet_transaction_payment:: { FeeDetails , Multiplier , RuntimeDispatchInfo } ;
4241use sp_api:: impl_runtime_apis;
42+ use sp_beefy:: { crypto:: AuthorityId as BeefyId , mmr:: MmrLeafVersion , ValidatorSet } ;
4343use sp_consensus_aura:: sr25519:: AuthorityId as AuraId ;
4444use sp_core:: { crypto:: KeyTypeId , OpaqueMetadata } ;
45- use sp_mmr_primitives:: { DataOrHash , EncodableOpaqueLeaf , Error as MmrError , Proof as MmrProof } ;
4645use sp_runtime:: {
4746 create_runtime_str, generic, impl_opaque_keys,
4847 traits:: { Block as BlockT , IdentityLookup , Keccak256 , NumberFor , OpaqueKeys } ,
@@ -64,7 +63,8 @@ pub use frame_support::{
6463 parameter_types,
6564 traits:: { ConstU32 , ConstU8 , Currency , ExistenceRequirement , Imbalance , KeyOwnerProofSystem } ,
6665 weights:: {
67- constants:: WEIGHT_PER_SECOND , ConstantMultiplier , IdentityFee , RuntimeDbWeight , Weight ,
66+ constants:: WEIGHT_REF_TIME_PER_SECOND , ConstantMultiplier , IdentityFee , RuntimeDbWeight ,
67+ Weight ,
6868 } ,
6969 RuntimeDebug , StorageValue ,
7070} ;
@@ -281,7 +281,7 @@ parameter_types! {
281281
282282pub struct BeefyDummyDataProvider ;
283283
284- impl beefy_primitives :: mmr:: BeefyDataProvider < ( ) > for BeefyDummyDataProvider {
284+ impl sp_beefy :: mmr:: BeefyDataProvider < ( ) > for BeefyDummyDataProvider {
285285 fn extra_data ( ) { }
286286}
287287
@@ -766,62 +766,30 @@ impl_runtime_apis! {
766766 }
767767 }
768768
769- impl beefy_primitives :: BeefyApi <Block > for Runtime {
769+ impl sp_beefy :: BeefyApi <Block > for Runtime {
770770 fn validator_set( ) -> Option <ValidatorSet <BeefyId >> {
771771 Beefy :: validator_set( )
772772 }
773773 }
774774
775- impl sp_mmr_primitives:: MmrApi <Block , mmr:: Hash , BlockNumber > for Runtime {
776- fn generate_proof( block_number: BlockNumber )
777- -> Result <( EncodableOpaqueLeaf , MmrProof <mmr:: Hash >) , MmrError >
778- {
779- Mmr :: generate_batch_proof( vec![ block_number] )
780- . and_then( |( leaves, proof) | Ok ( (
781- mmr:: EncodableOpaqueLeaf :: from_leaf( & leaves[ 0 ] ) ,
782- mmr:: BatchProof :: into_single_leaf_proof( proof) ?
783- ) ) )
784- }
785-
786- fn verify_proof( leaf: EncodableOpaqueLeaf , proof: MmrProof <mmr:: Hash >)
787- -> Result <( ) , MmrError >
788- {
789- let leaf: mmr:: Leaf = leaf
790- . into_opaque_leaf( )
791- . try_decode( )
792- . ok_or( MmrError :: Verify ) ?;
793- Mmr :: verify_leaves( vec![ leaf] , mmr:: Proof :: into_batch_proof( proof) )
794- }
795-
796- fn verify_proof_stateless(
797- root: mmr:: Hash ,
798- leaf: EncodableOpaqueLeaf ,
799- proof: MmrProof <mmr:: Hash >
800- ) -> Result <( ) , MmrError > {
801- let node = DataOrHash :: Data ( leaf. into_opaque_leaf( ) ) ;
802- pallet_mmr:: verify_leaves_proof:: <mmr:: Hashing , _>(
803- root,
804- vec![ node] ,
805- pallet_mmr:: primitives:: Proof :: into_batch_proof( proof) ,
806- )
807- }
808-
809- fn mmr_root( ) -> Result <mmr:: Hash , MmrError > {
775+ impl pallet_mmr:: primitives:: MmrApi <
776+ Block ,
777+ mmr:: Hash ,
778+ BlockNumber ,
779+ > for Runtime {
780+ fn mmr_root( ) -> Result <mmr:: Hash , mmr:: Error > {
810781 Ok ( Mmr :: mmr_root( ) )
811782 }
812783
813- fn generate_batch_proof( block_numbers: Vec <BlockNumber >)
814- -> Result <( Vec <mmr:: EncodableOpaqueLeaf >, mmr:: BatchProof <mmr:: Hash >) , mmr:: Error >
815- {
816- Mmr :: generate_batch_proof( block_numbers)
817- . map( |( leaves, proof) | ( leaves. into_iter( ) . map( |leaf| mmr:: EncodableOpaqueLeaf :: from_leaf( & leaf) ) . collect( ) , proof) )
784+ fn mmr_leaf_count( ) -> Result <mmr:: LeafIndex , mmr:: Error > {
785+ Ok ( Mmr :: mmr_leaves( ) )
818786 }
819787
820- fn generate_historical_batch_proof (
788+ fn generate_proof (
821789 block_numbers: Vec <BlockNumber >,
822- best_known_block_number: BlockNumber
823- ) -> Result <( Vec <mmr:: EncodableOpaqueLeaf >, mmr:: BatchProof <mmr:: Hash >) , mmr:: Error > {
824- Mmr :: generate_historical_batch_proof ( block_numbers, best_known_block_number) . map(
790+ best_known_block_number: Option < BlockNumber > ,
791+ ) -> Result <( Vec <mmr:: EncodableOpaqueLeaf >, mmr:: Proof <mmr:: Hash >) , mmr:: Error > {
792+ Mmr :: generate_proof ( block_numbers, best_known_block_number) . map(
825793 |( leaves, proof) | {
826794 (
827795 leaves
@@ -834,7 +802,7 @@ impl_runtime_apis! {
834802 )
835803 }
836804
837- fn verify_batch_proof ( leaves: Vec <mmr:: EncodableOpaqueLeaf >, proof: mmr:: BatchProof <mmr:: Hash >)
805+ fn verify_proof ( leaves: Vec <mmr:: EncodableOpaqueLeaf >, proof: mmr:: Proof <mmr:: Hash >)
838806 -> Result <( ) , mmr:: Error >
839807 {
840808 let leaves = leaves. into_iter( ) . map( |leaf|
@@ -844,10 +812,10 @@ impl_runtime_apis! {
844812 Mmr :: verify_leaves( leaves, proof)
845813 }
846814
847- fn verify_batch_proof_stateless (
815+ fn verify_proof_stateless (
848816 root: mmr:: Hash ,
849817 leaves: Vec <mmr:: EncodableOpaqueLeaf >,
850- proof: mmr:: BatchProof <mmr:: Hash >
818+ proof: mmr:: Proof <mmr:: Hash >
851819 ) -> Result <( ) , mmr:: Error > {
852820 let nodes = leaves. into_iter( ) . map( |leaf|mmr:: DataOrHash :: Data ( leaf. into_opaque_leaf( ) ) ) . collect( ) ;
853821 pallet_mmr:: verify_leaves_proof:: <mmr:: Hashing , _>( root, nodes, proof)
0 commit comments