Skip to content

Commit

Permalink
Try to prove block ranges for GRANDPA (#391)
Browse files Browse the repository at this point in the history
  • Loading branch information
seunlanlege authored Mar 3, 2025
1 parent dccc432 commit 3c1a7e1
Show file tree
Hide file tree
Showing 26 changed files with 437 additions and 318 deletions.
63 changes: 32 additions & 31 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,7 @@ pallet-token-gateway-inspector = { path = "modules/pallets/token-gateway-inspect

# merkle trees
ethereum-triedb = { version = "0.1.1", path = "./modules/trees/ethereum", default-features = false }
pallet-mmr = { path = "modules/pallets/mmr", default-features = false }
pallet-mmr-tree = { path = "modules/pallets/mmr", default-features = false }
pallet-mmr-rpc = { path = "modules/pallets/mmr/rpc", default-features = false }
mmr-primitives = { path = "modules/pallets/mmr/primitives", default-features = false }
pallet-mmr-runtime-api = { path = "modules/pallets/mmr/runtime-api", default-features = false }
Expand Down
2 changes: 1 addition & 1 deletion evm/integration-tests/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ mmr-primitives = { workspace = true, default-features = true }
ismp = { workspace = true, default-features = true }
pallet-ismp = { workspace = true, default-features = true }
pallet-ismp-host-executive = { workspace = true, default-features = true }
pallet-mmr = { workspace = true, default-features = true }
pallet-mmr-tree = { workspace = true, default-features = true }
beefy-prover = { workspace = true, default-features = true, features = [
"local",
] }
Expand Down
2 changes: 1 addition & 1 deletion evm/integration-tests/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
pub use ethers::{abi::Token, types::U256, utils::keccak256};
use merkle_mountain_range::{util::MemMMR, Error, Merge};
use pallet_ismp::offchain::Leaf;
use pallet_mmr::mmr::Hasher;
use pallet_mmr_tree::mmr::Hasher;
use polkadot_sdk::*;
use primitive_types::H256;
use sp_runtime::traits;
Expand Down
2 changes: 1 addition & 1 deletion modules/consensus/grandpa/primitives/src/justification.rs
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ use sp_consensus_grandpa::{
AuthorityId, AuthorityList, AuthoritySignature, ConsensusLog, Equivocation, RoundNumber,
ScheduledChange, SetId, GRANDPA_ENGINE_ID,
};
use sp_runtime::{generic::OpaqueDigestItemId, traits::Header as HeaderT, RuntimeAppPublic};
use sp_runtime::{generic::OpaqueDigestItemId, traits::Header as HeaderT};
use sp_std::prelude::*;

/// A GRANDPA justification for block finality, it includes a commit message and
Expand Down
7 changes: 7 additions & 0 deletions modules/consensus/grandpa/primitives/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,13 @@ pub type Commit<H> = finality_grandpa::Commit<
AuthorityId,
>;

/// The default header type that can be used with the GRANDPA prover.
///
/// This type is compatible with our consensus implementation, using
/// [BlakeTwo256](sp_runtime::traits::BlakeTwo256) for hashing and a 32-bit
/// block number type.
pub type DefaultHeader = sp_runtime::generic::Header<u32, sp_runtime::traits::BlakeTwo256>;

/// Finality for block B is proved by providing:
/// 1) the justification for the descendant block F;
/// 2) headers sub-chain (B; F] if B != F;
Expand Down
3 changes: 2 additions & 1 deletion modules/consensus/grandpa/prover/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,18 @@ publish = false

[dependencies]
hex = { workspace = true, default-features = true }
log = { workspace = true, default-features = true }
anyhow = { workspace = true, default-features = true }
serde = { workspace = true, default-features = true }
subxt = { workspace = true, default-features = true }
codec = { workspace = true, default-features = true, features = ["derive"] }
hex-literal = { workspace = true }
derive_more = { workspace = true, default-features = true }
downcast-rs = "1.2.0"
finality-grandpa = "0.16.0"
grandpa-verifier-primitives = { workspace = true, default-features = true }
ismp = { workspace = true, default-features = true }
subxt-utils = { workspace = true, default-features = true }
indicatif = "0.17.11"

[dependencies.polkadot-sdk]
workspace = true
Expand Down
Loading

0 comments on commit 3c1a7e1

Please sign in to comment.