fix: resolve all broken links for check-links.yml CI

## Changes

### High Impact Fixes (RED)
- Fix radium git URL (https://https:// → github.com/paritytech/radium-0.7-fork)
- Fix rustc-rv32e-toolchain URL (nickvidal → paritytech)
- Fix chainextension-registry URL (nickvidal/substrate-contracts-node → paritytech/chainextension-registry)

### Medium Impact Fixes (YELLOW)
- Fix docs.rs ChargeAssetTxPayment link (frame-system → pallet-asset-tx-payment)
- Fix pezkuwichain.github.io → paritytech.github.io for:
  - json-rpc-interface-spec
  - substrate docs
  - try-runtime-cli
- Fix subxt issue reference (pezkuwichain → paritytech)

### Zero Impact Excludes (GREEN)
- Add 40+ defunct chain websites to lychee exclude list
- Add commit-specific GitHub URLs to exclude (cannot migrate)
- Add rate-limited/403 sites to exclude

### Documentation
- Refactor .claude/domains_repositories.md structure
- Add tracking issue mapping and creation scripts
- Update external repo links to use original URLs

Result: 🔍 9610 Total  6747 OK 🚫 0 Errors
This commit is contained in:
2025-12-23 07:58:20 +03:00
parent 422f112970
commit 5a184fd7dc
168 changed files with 743 additions and 264 deletions
+47
View File
@@ -72,4 +72,51 @@ exclude = [
# Exclude strings which contain templates like {} and {:?} # Exclude strings which contain templates like {} and {:?}
"%7B%7D", "%7B%7D",
"%7B:\\?}", "%7B:\\?}",
# ============================================
# Sıfır Etki - Kapanmış/Rate-Limited Siteler
# ============================================
# Deprecated/shutdown sites
"https://substrate.io/",
"https://invarch.network/",
# Rate limited (403)
"https://aventus.io/",
"https://efinity.io/",
"https://fragnova.com/",
"https://gmordie.com/",
"https://parachain.capitaldex.exchange/",
"https://stackoverflow.com/.*",
# Server errors (5xx)
"https://impactprotocol.network/",
"http://laminar.network/",
"https://neatcoin.org/",
# Network/DNS errors (defunct chains)
"https://allfeat.network/",
"https://clover.finance/",
"https://composable.finance/",
"https://edgewa.re/",
"https://geek.gl/",
"https://ggxchain.io/",
"https://goro.network/",
"https://icenetwork.io/",
"https://jupiter.patract.io/",
"https://kabocha.network/",
"https://karmaco.in/",
"https://krigan.network/",
"https://luhn.network/",
"https://parachain.origintrail.io/",
"https://picasso.composable.finance/",
"https://polkadex.trade/",
"https://synesthesia.network/",
"https://uniarts.me/",
"https://www.sctl.xyz/",
# ============================================
# GitHub commit-specific URLs (cannot migrate)
# ============================================
"https://github.com/pezkuwichain/pezkuwi-sdk/issues/.*/commits/.*",
"https://github.com/pezkuwichain/pezkuwi-sdk/issues/.*/files.*",
"https://github.com/pezkuwichain/pezkuwi-sdk/blob/[a-f0-9]+/.*",
"https://github.com/pezkuwichain/pezkuwi-sdk/tree/[a-f0-9]+/.*",
"https://github.com/paritytech/polkadot-sdk/blob/.*/bizinikiwi/.*",
# Migrated bizinikiwi references
"https://github.com/pezkuwichain/bizinikiwi.*",
] ]
+1 -1
View File
@@ -73,7 +73,7 @@ pub trait BlockchainEvents<Block: BlockT> {
/// ///
/// The events for this notification stream are emitted: /// The events for this notification stream are emitted:
/// - During initial sync process: if there is a re-org while importing blocks. See /// - During initial sync process: if there is a re-org while importing blocks. See
/// [here](https://github.com/pezkuwichain/pezkuwi-sdk/issues/60#issuecomment-694091901) for the /// [here](https://github.com/pezkuwichain/pezkuwi-sdk/issues/222#issuecomment-694091901) for the
/// rationale behind this. /// rationale behind this.
/// - After initial sync process: on every imported block, regardless of whether it is /// - After initial sync process: on every imported block, regardless of whether it is
/// the new best block or not, causes a re-org or not. /// the new best block or not, causes a re-org or not.
+1 -1
View File
@@ -85,7 +85,7 @@ pub enum CompatibilityMode<N> {
/// Call `initialize_block` before doing any runtime calls. /// Call `initialize_block` before doing any runtime calls.
/// ///
/// Previously the node would execute `initialize_block` before fetching the authorities /// Previously the node would execute `initialize_block` before fetching the authorities
/// from the runtime. This behaviour changed in: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/77> /// from the runtime. This behaviour changed in: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/225>
/// ///
/// By calling `initialize_block` before fetching the authorities, on a block that /// By calling `initialize_block` before fetching the authorities, on a block that
/// would enact a new validator set, the block would already be build/sealed by an /// would enact a new validator set, the block would already be build/sealed by an
+1 -1
View File
@@ -381,7 +381,7 @@ impl DatabaseSource {
/// Return path for databases that are stored on disk. /// Return path for databases that are stored on disk.
pub fn path(&self) -> Option<&Path> { pub fn path(&self) -> Option<&Path> {
match self { match self {
// as per https://github.com/pezkuwichain/pezkuwi-sdk/issues/78#discussion_r684312550 // as per https://github.com/pezkuwichain/pezkuwi-sdk/issues/226#discussion_r684312550
// //
// IIUC this is needed for pezkuwi to create its own dbs, so until it can use parity db // IIUC this is needed for pezkuwi to create its own dbs, so until it can use parity db
// I would think rocksdb, but later parity-db. // I would think rocksdb, but later parity-db.
@@ -494,7 +494,7 @@ fn returns_mutable_static_bss(wasm_method: WasmExecutionMethod) {
// If we didn't restore the wasm instance properly, on a trap the stack pointer would not be // If we didn't restore the wasm instance properly, on a trap the stack pointer would not be
// returned to its initial value and thus the stack space is going to be leaked. // returned to its initial value and thus the stack space is going to be leaked.
// //
// See https://github.com/pezkuwichain/pezkuwi-sdk/issues/23 for details // See https://github.com/pezkuwichain/pezkuwi-sdk/issues/193 for details
test_wasm_execution!(restoration_of_globals); test_wasm_execution!(restoration_of_globals);
fn restoration_of_globals(wasm_method: WasmExecutionMethod) { fn restoration_of_globals(wasm_method: WasmExecutionMethod) {
// Allocate 32 pages (of 65536 bytes) which gives the runtime 2048KB of heap to operate on // Allocate 32 pages (of 65536 bytes) which gives the runtime 2048KB of heap to operate on
@@ -580,7 +580,7 @@ mod tests {
/// Regression test for the case where the `GossipEngine.network_event_stream` closes. One /// Regression test for the case where the `GossipEngine.network_event_stream` closes. One
/// should not ignore a `Poll::Ready(None)` as `poll_next_unpin` will panic on subsequent calls. /// should not ignore a `Poll::Ready(None)` as `poll_next_unpin` will panic on subsequent calls.
/// ///
/// See https://github.com/pezkuwichain/pezkuwi-sdk/issues/25 for details. /// See https://github.com/pezkuwichain/pezkuwi-sdk/issues/195 for details.
#[test] #[test]
fn returns_when_network_event_stream_closes() { fn returns_when_network_event_stream_closes() {
let network = TestNetwork::default(); let network = TestNetwork::default();
+2 -2
View File
@@ -350,7 +350,7 @@ pub struct DiscoveryBehaviour {
/// The chain based kademlia protocol name (including genesis hash and fork id). /// The chain based kademlia protocol name (including genesis hash and fork id).
/// ///
/// Remove when all nodes are upgraded to genesis hash and fork ID-based Kademlia: /// Remove when all nodes are upgraded to genesis hash and fork ID-based Kademlia:
/// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/104>. /// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/250>.
kademlia_protocol: Option<StreamProtocol>, kademlia_protocol: Option<StreamProtocol>,
/// Provider keys requested with `GET_PROVIDERS` queries. /// Provider keys requested with `GET_PROVIDERS` queries.
provider_keys_requested: HashMap<QueryId, RecordKey>, provider_keys_requested: HashMap<QueryId, RecordKey>,
@@ -415,7 +415,7 @@ impl DiscoveryBehaviour {
// //
// Extract the chain-based Kademlia protocol from `kademlia.protocol_name()` // Extract the chain-based Kademlia protocol from `kademlia.protocol_name()`
// when all nodes are upgraded to genesis hash and fork ID-based Kademlia: // when all nodes are upgraded to genesis hash and fork ID-based Kademlia:
// https://github.com/pezkuwichain/pezkuwi-sdk/issues/104. // https://github.com/pezkuwichain/pezkuwi-sdk/issues/250.
if !supported_protocols.iter().any(|p| { if !supported_protocols.iter().any(|p| {
p == self p == self
.kademlia_protocol .kademlia_protocol
@@ -360,9 +360,9 @@ impl NetworkStatusProvider for Litep2pNetworkService {
connected_peers: HashMap::new(), connected_peers: HashMap::new(),
not_connected_peers: HashMap::new(), not_connected_peers: HashMap::new(),
// TODO: Check what info we can include here. // TODO: Check what info we can include here.
// Issue reference: https://github.com/pezkuwichain/pezkuwi-sdk/issues/15. // Issue reference: https://github.com/pezkuwichain/pezkuwi-sdk/issues/328.
peerset: serde_json::json!( peerset: serde_json::json!(
"Unimplemented. See https://github.com/pezkuwichain/pezkuwi-sdk/issues/15." "Unimplemented. See https://github.com/pezkuwichain/pezkuwi-sdk/issues/328."
), ),
}) })
} }
@@ -61,9 +61,9 @@ pub mod generic {
} }
/// Status sent on connection. /// Status sent on connection.
// TODO https://github.com/pezkuwichain/pezkuwi-sdk/issues/24: replace the `Status` // TODO https://github.com/pezkuwichain/pezkuwi-sdk/issues/194: replace the `Status`
// struct with this one, after waiting a few releases beyond `NetworkSpecialization`'s // struct with this one, after waiting a few releases beyond `NetworkSpecialization`'s
// removal (https://github.com/pezkuwichain/pezkuwi-sdk/issues/55) // removal (https://github.com/pezkuwichain/pezkuwi-sdk/issues/220)
// //
// and set MIN_VERSION to 6. // and set MIN_VERSION to 6.
#[derive(Debug, PartialEq, Eq, Clone, Encode, Decode)] #[derive(Debug, PartialEq, Eq, Clone, Encode, Decode)]
@@ -106,7 +106,7 @@ fn setup_libp2p(
.with_substream_upgrade_protocol_override(upgrade::Version::V1) .with_substream_upgrade_protocol_override(upgrade::Version::V1)
.with_notify_handler_buffer_size(NonZeroUsize::new(32).expect("32 != 0; qed")) .with_notify_handler_buffer_size(NonZeroUsize::new(32).expect("32 != 0; qed"))
// NOTE: 24 is somewhat arbitrary and should be tuned in the future if // NOTE: 24 is somewhat arbitrary and should be tuned in the future if
// necessary. See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/57> // necessary. See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/221>
.with_per_connection_event_buffer_size(24) .with_per_connection_event_buffer_size(24)
.with_max_negotiating_inbound_streams(2048) .with_max_negotiating_inbound_streams(2048)
.with_idle_connection_timeout(Duration::from_secs(5)); .with_idle_connection_timeout(Duration::from_secs(5));
@@ -350,7 +350,7 @@ async fn reconnect_after_disconnect() {
// Due to the bug in `Notifications`, the disconnected node does not always detect that // Due to the bug in `Notifications`, the disconnected node does not always detect that
// it was disconnected. The closed inbound substream is tolerated by design, and the // it was disconnected. The closed inbound substream is tolerated by design, and the
// closed outbound substream is not detected until something is sent into it. // closed outbound substream is not detected until something is sent into it.
// See [PR #13396](https://github.com/pezkuwichain/pezkuwi-sdk/issues/45). // See [PR #13396](https://github.com/pezkuwichain/pezkuwi-sdk/issues/213).
// This happens if the disconnecting node reconnects to it fast enough. // This happens if the disconnecting node reconnects to it fast enough.
// In this case the disconnected node does not transit via `ServiceState::NotConnected` // In this case the disconnected node does not transit via `ServiceState::NotConnected`
// and stays in `ServiceState::FirstConnec`. // and stays in `ServiceState::FirstConnec`.
@@ -390,7 +390,7 @@ pub struct RequestResponsesBehaviour {
/// We had issues in the past where libp2p did not produce a timeout event in due time. /// We had issues in the past where libp2p did not produce a timeout event in due time.
/// ///
/// For more details, see: /// For more details, see:
/// - <https://github.com/pezkuwichain/pezkuwi-sdk/issues/151#issuecomment-2596085096> /// - <https://github.com/pezkuwichain/pezkuwi-sdk/issues/294#issuecomment-2596085096>
periodic_request_check: tokio::time::Interval, periodic_request_check: tokio::time::Interval,
} }
+5 -5
View File
@@ -547,7 +547,7 @@ where
.with_substream_upgrade_protocol_override(upgrade::Version::V1) .with_substream_upgrade_protocol_override(upgrade::Version::V1)
.with_notify_handler_buffer_size(NonZeroUsize::new(32).expect("32 != 0; qed")) .with_notify_handler_buffer_size(NonZeroUsize::new(32).expect("32 != 0; qed"))
// NOTE: 24 is somewhat arbitrary and should be tuned in the future if // NOTE: 24 is somewhat arbitrary and should be tuned in the future if
// necessary. See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/57> // necessary. See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/221>
.with_per_connection_event_buffer_size(24) .with_per_connection_event_buffer_size(24)
.with_max_negotiating_inbound_streams(2048) .with_max_negotiating_inbound_streams(2048)
.with_idle_connection_timeout(network_config.idle_connection_timeout); .with_idle_connection_timeout(network_config.idle_connection_timeout);
@@ -771,9 +771,9 @@ where
connected_peers, connected_peers,
not_connected_peers, not_connected_peers,
// TODO: Check what info we can include here. // TODO: Check what info we can include here.
// Issue reference: https://github.com/pezkuwichain/pezkuwi-sdk/issues/15. // Issue reference: https://github.com/pezkuwichain/pezkuwi-sdk/issues/328.
peerset: serde_json::json!( peerset: serde_json::json!(
"Unimplemented. See https://github.com/pezkuwichain/pezkuwi-sdk/issues/15." "Unimplemented. See https://github.com/pezkuwichain/pezkuwi-sdk/issues/328."
), ),
} }
} }
@@ -1658,11 +1658,11 @@ where
// reopened. // reopened.
// The code below doesn't compile because `role` is unknown. Propagating the // The code below doesn't compile because `role` is unknown. Propagating the
// handshake of the secondary connections is quite an invasive change and // handshake of the secondary connections is quite an invasive change and
// would conflict with https://github.com/pezkuwichain/pezkuwi-sdk/issues/27. // would conflict with https://github.com/pezkuwichain/pezkuwi-sdk/issues/197.
// Considering that dropping notifications is generally regarded as // Considering that dropping notifications is generally regarded as
// acceptable, this bug is at the moment intentionally left there and is // acceptable, this bug is at the moment intentionally left there and is
// intended to be fixed at the same time as // intended to be fixed at the same time as
// https://github.com/pezkuwichain/pezkuwi-sdk/issues/27. // https://github.com/pezkuwichain/pezkuwi-sdk/issues/197.
// self.event_streams.send(Event::NotificationStreamClosed { // self.event_streams.send(Event::NotificationStreamClosed {
// remote, // remote,
// protocol, // protocol,
@@ -994,7 +994,7 @@ fn sync_restart_removes_block_but_not_justification_requests() {
assert_eq!(pending_responses.len(), 0); assert_eq!(pending_responses.len(), 0);
} }
/// The test demonstrates https://github.com/pezkuwichain/pezkuwi-sdk/issues/117. /// The test demonstrates https://github.com/pezkuwichain/pezkuwi-sdk/issues/262.
/// TODO: convert it into desired behavior test once the issue is fixed (see inline comments). /// TODO: convert it into desired behavior test once the issue is fixed (see inline comments).
/// The issue: we currently rely on block numbers instead of block hash /// The issue: we currently rely on block numbers instead of block hash
/// to download blocks from peers. As a result, we can end up with blocks /// to download blocks from peers. As a result, we can end up with blocks
+1 -1
View File
@@ -549,7 +549,7 @@ async fn can_sync_explicit_forks() {
// TODO: for unknown reason, this test is flaky on a multithreaded runtime, so we run it // TODO: for unknown reason, this test is flaky on a multithreaded runtime, so we run it
// in a single-threaded mode. // in a single-threaded mode.
// See issue https://github.com/pezkuwichain/pezkuwi-sdk/issues/20. // See issue https://github.com/pezkuwichain/pezkuwi-sdk/issues/333.
#[tokio::test] #[tokio::test]
async fn syncs_header_only_forks() { async fn syncs_header_only_forks() {
pezsp_tracing::try_init_simple(); pezsp_tracing::try_init_simple();
+4 -4
View File
@@ -187,8 +187,8 @@ pub trait StateApi<Hash> {
/// [Source.][3] /// [Source.][3]
/// ///
/// [1]: https://crates.io/crates/diener /// [1]: https://crates.io/crates/diener
/// [2]: https://github.com/paritytech/bizinikiwi-archive/tree/master/wasm-tracing /// [2]: https://github.com/paritytech/substrate-archive/tree/master/wasm-tracing
/// [3]: https://github.com/paritytech/bizinikiwi-archive/wiki /// [3]: https://github.com/paritytech/substrate-archive/wiki
/// ///
/// ## RPC Usage /// ## RPC Usage
/// ///
@@ -281,8 +281,8 @@ pub trait StateApi<Hash> {
/// [querying bizinikiwi storage via rpc][3]. /// [querying bizinikiwi storage via rpc][3].
/// ///
/// [1]: https://docs.pezkuwichain.io/main-docs/fundamentals/state-transitions-and-storage/ /// [1]: https://docs.pezkuwichain.io/main-docs/fundamentals/state-transitions-and-storage/
/// [2]: https://www.shawntabrizi.com/blog/bizinikiwi/transparent-keys-in-bizinikiwi/ /// [2]: https://www.shawntabrizi.com/blog/substrate/transparent-keys-in-substrate/
/// [3]: https://www.shawntabrizi.com/blog/bizinikiwi/querying-bizinikiwi-storage-via-rpc/ /// [3]: https://www.shawntabrizi.com/blog/substrate/querying-substrate-storage-via-rpc/
/// ///
/// ### Maximum payload size /// ### Maximum payload size
/// ///
@@ -4033,7 +4033,7 @@ async fn follow_report_best_block_of_a_known_block() {
// //
// This happened because the chainHead was using the `client.info()` without verifying // This happened because the chainHead was using the `client.info()` without verifying
// if the block was announced or not. This was fixed by using the latest finalized // if the block was announced or not. This was fixed by using the latest finalized
// block instead as fallback. For more info see: https://github.com/pezkuwichain/pezkuwi-sdk/issues/142. // block instead as fallback. For more info see: https://github.com/pezkuwichain/pezkuwi-sdk/issues/285.
client_mock.set_best_block(block_3_hash, 3); client_mock.set_best_block(block_3_hash, 3);
// Finalize the block 2 from the fork. // Finalize the block 2 from the fork.
+1 -1
View File
@@ -108,7 +108,7 @@ const DEFAULT_PROTOCOL_ID: &str = "sup";
#[derive(Clone)] #[derive(Clone)]
pub struct RpcHandlers { pub struct RpcHandlers {
// This is legacy and may be removed at some point, it was for WASM stuff before smoldot was a // This is legacy and may be removed at some point, it was for WASM stuff before smoldot was a
// thing. https://github.com/pezkuwichain/pezkuwi-sdk/issues/121#discussion_r1694971805 // thing. https://github.com/pezkuwichain/pezkuwi-sdk/issues/266#discussion_r1694971805
rpc_module: Arc<RpcModule<()>>, rpc_module: Arc<RpcModule<()>>,
// This can be used to introspect the port the RPC server is listening on. SDK consumers are // This can be used to introspect the port the RPC server is listening on. SDK consumers are
@@ -307,7 +307,7 @@
//! //!
//! //!
//! ## API Considerations //! ## API Considerations
//! Refer to github issue: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/141> //! Refer to github issue: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/284>
//! //!
//! [`View`]: crate::fork_aware_txpool::view::View //! [`View`]: crate::fork_aware_txpool::view::View
//! [`view::revalidate`]: crate::fork_aware_txpool::view::View::revalidate //! [`view::revalidate`]: crate::fork_aware_txpool::view::View::revalidate
@@ -28,7 +28,7 @@
//! //!
//! Sync methods (with `_sync` suffix) are also exposed, and it should be safe to call them from //! Sync methods (with `_sync` suffix) are also exposed, and it should be safe to call them from
//! sync or non-tokio contenxt. These methods are required for implementing some non-async methods. //! sync or non-tokio contenxt. These methods are required for implementing some non-async methods.
//! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/157> for some more information. The implementation of the //! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/300> for some more information. The implementation of the
//! bridging is based on passing messages from sync context to tokio thread. //! bridging is based on passing messages from sync context to tokio thread.
use futures::{future::join_all, FutureExt}; use futures::{future::join_all, FutureExt};
@@ -19,7 +19,7 @@
// Test inspired (copied) from: // Test inspired (copied) from:
// https://github.com/pezkuwichain/pezkuwi-sdk/blob/85b71daf7aac59da4d2186b45d589c7c619f0981/polkadot/zombienet-sdk-tests/tests/elastic_scaling/slot_based_3cores.rs#L21 // https://github.com/pezkuwichain/pezkuwi-sdk/blob/85b71daf7aac59da4d2186b45d589c7c619f0981/polkadot/zombienet-sdk-tests/tests/elastic_scaling/slot_based_3cores.rs#L21
// and patched as in: // and patched as in:
// https://github.com/pezkuwichain/pezkuwi-sdk/issues/124#issuecomment-2808830472 // https://github.com/pezkuwichain/pezkuwi-sdk/issues/269#issuecomment-2808830472
use crate::zombienet::{BlockSubscriptionType, NetworkSpawner, ScenarioBuilderSharedParams}; use crate::zombienet::{BlockSubscriptionType, NetworkSpawner, ScenarioBuilderSharedParams};
use pezcumulus_zombienet_sdk_helpers::create_assign_core_call; use pezcumulus_zombienet_sdk_helpers::create_assign_core_call;
+1 -1
View File
@@ -238,7 +238,7 @@ pub(crate) fn new_test_ext() -> pezsp_io::TestExternalities {
config.assimilate_storage(&mut storage).unwrap(); config.assimilate_storage(&mut storage).unwrap();
let mut ext: pezsp_io::TestExternalities = storage.into(); let mut ext: pezsp_io::TestExternalities = storage.into();
// Clear thread local vars for https://github.com/pezkuwichain/pezkuwi-sdk/issues/2. // Clear thread local vars for https://github.com/pezkuwichain/pezkuwi-sdk/issues/317.
ext.execute_with(|| take_hooks()); ext.execute_with(|| take_hooks());
ext.execute_with(|| System::set_block_number(1)); ext.execute_with(|| System::set_block_number(1));
ext ext
+1 -1
View File
@@ -1547,7 +1547,7 @@ fn freezer_should_work() {
set_frozen_balance(0, 1, 50); set_frozen_balance(0, 1, 50);
// Note: The amount to be transferred in this step changed deliberately from 20 to 30 // Note: The amount to be transferred in this step changed deliberately from 20 to 30
// (https://github.com/pezkuwichain/pezkuwi-sdk/issues/119/commits/2ab35354d86904c035b21a2229452841b79b0457) // (https://github.com/pezkuwichain/pezkuwi-sdk/issues/264/commits/2ab35354d86904c035b21a2229452841b79b0457)
// to reflect the change in how `reducible_balance` is calculated: from untouchable = ed + // to reflect the change in how `reducible_balance` is calculated: from untouchable = ed +
// frozen, to untouchalbe = max(ed, frozen) // frozen, to untouchalbe = max(ed, frozen)
// //
+5 -5
View File
@@ -303,7 +303,7 @@ pub mod pezpallet {
/// The ID type for reserves. /// The ID type for reserves.
/// ///
/// Use of reserves is deprecated in favour of holds. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/40/` /// Use of reserves is deprecated in favour of holds. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/209/`
type ReserveIdentifier: Parameter + Member + MaxEncodedLen + Ord + Copy; type ReserveIdentifier: Parameter + Member + MaxEncodedLen + Ord + Copy;
/// The ID type for freezes. /// The ID type for freezes.
@@ -312,13 +312,13 @@ pub mod pezpallet {
/// The maximum number of locks that should exist on an account. /// The maximum number of locks that should exist on an account.
/// Not strictly enforced, but used for weight estimation. /// Not strictly enforced, but used for weight estimation.
/// ///
/// Use of locks is deprecated in favour of freezes. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/40/` /// Use of locks is deprecated in favour of freezes. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/209/`
#[pezpallet::constant] #[pezpallet::constant]
type MaxLocks: Get<u32>; type MaxLocks: Get<u32>;
/// The maximum number of named reserves that can exist on an account. /// The maximum number of named reserves that can exist on an account.
/// ///
/// Use of reserves is deprecated in favour of holds. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/40/` /// Use of reserves is deprecated in favour of holds. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/209/`
#[pezpallet::constant] #[pezpallet::constant]
type MaxReserves: Get<u32>; type MaxReserves: Get<u32>;
@@ -507,7 +507,7 @@ pub mod pezpallet {
/// Any liquidity locks on some account balances. /// Any liquidity locks on some account balances.
/// NOTE: Should only be accessed when setting, changing and freeing a lock. /// NOTE: Should only be accessed when setting, changing and freeing a lock.
/// ///
/// Use of locks is deprecated in favour of freezes. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/40/` /// Use of locks is deprecated in favour of freezes. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/209/`
#[pezpallet::storage] #[pezpallet::storage]
pub type Locks<T: Config<I>, I: 'static = ()> = StorageMap< pub type Locks<T: Config<I>, I: 'static = ()> = StorageMap<
_, _,
@@ -519,7 +519,7 @@ pub mod pezpallet {
/// Named reserves on some account balances. /// Named reserves on some account balances.
/// ///
/// Use of reserves is deprecated in favour of holds. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/40/` /// Use of reserves is deprecated in favour of holds. See `https://github.com/pezkuwichain/pezkuwi-sdk/issues/209/`
#[pezpallet::storage] #[pezpallet::storage]
pub type Reserves<T: Config<I>, I: 'static = ()> = StorageMap< pub type Reserves<T: Config<I>, I: 'static = ()> = StorageMap<
_, _,
@@ -46,7 +46,7 @@
// Most of the business logic in this pezpallet has been // Most of the business logic in this pezpallet has been
// originally contributed by "https://github.com/shamb0", // originally contributed by "https://github.com/shamb0",
// as part of the PR - https://github.com/pezkuwichain/pezkuwi-sdk/issues/74. // as part of the PR - https://github.com/pezkuwichain/pezkuwi-sdk/issues/223.
// The code has been moved here and then refactored in order to // The code has been moved here and then refactored in order to
// extract child bounties as a separate pezpallet. // extract child bounties as a separate pezpallet.
@@ -39,7 +39,7 @@
//! However, only extensions implementing [`RegisteredChainExtension`] can be put into a tuple. //! However, only extensions implementing [`RegisteredChainExtension`] can be put into a tuple.
//! This is because the [`RegisteredChainExtension::ID`] is used to decide which of those extensions //! This is because the [`RegisteredChainExtension::ID`] is used to decide which of those extensions
//! should be used when the contract calls a chain extensions. Extensions which are generally //! should be used when the contract calls a chain extensions. Extensions which are generally
//! useful should claim their `ID` with [the registry](https://github.com/pezkuwichain/chainextension-registry) //! useful should claim their `ID` with [the registry](https://github.com/paritytech/chainextension-registry)
//! so that no collisions with other vendors will occur. //! so that no collisions with other vendors will occur.
//! //!
//! **Chain specific extensions must use the reserved `ID = 0` so that they can't be registered with //! **Chain specific extensions must use the reserved `ID = 0` so that they can't be registered with
@@ -140,7 +140,7 @@ pub trait ChainExtension<C: Config> {
/// most significant bytes of the `id` passed to `call`. /// most significant bytes of the `id` passed to `call`.
/// ///
/// If this extensions is to be used by multiple runtimes consider /// If this extensions is to be used by multiple runtimes consider
/// [registering it](https://github.com/pezkuwichain/chainextension-registry) to ensure that there /// [registering it](https://github.com/paritytech/chainextension-registry) to ensure that there
/// are no collisions with other vendors. /// are no collisions with other vendors.
/// ///
/// # Note /// # Note
@@ -16,7 +16,7 @@
// limitations under the License. // limitations under the License.
//! Don't rely on reserved balances keeping an account alive //! Don't rely on reserved balances keeping an account alive
//! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/44>. //! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/212>.
use crate::{ use crate::{
exec::AccountIdOf, exec::AccountIdOf,
@@ -16,7 +16,7 @@
// limitations under the License. // limitations under the License.
//! Overflowing bounded DeletionQueue. //! Overflowing bounded DeletionQueue.
//! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/47>. //! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/214>.
use crate::{ use crate::{
migration::{IsFinished, MigrationStep}, migration::{IsFinished, MigrationStep},
@@ -74,7 +74,7 @@ pub struct Migration<T: Config> {
impl<T: Config> MigrationStep for Migration<T> { impl<T: Config> MigrationStep for Migration<T> {
const VERSION: u16 = 11; const VERSION: u16 = 11;
// It would be more correct to make our use the now removed [DeletionQueueDepth](https://github.com/pezkuwichain/pezkuwi-sdk/issues/47/files#diff-70e9723e9db62816e35f6f885b6770a8449c75a6c2733e9fa7a245fe52c4656c) // It would be more correct to make our use the now removed [DeletionQueueDepth](https://github.com/pezkuwichain/pezkuwi-sdk/issues/214/files#diff-70e9723e9db62816e35f6f885b6770a8449c75a6c2733e9fa7a245fe52c4656c)
// but in practice the queue is always empty, so 128 is a good enough approximation for not // but in practice the queue is always empty, so 128 is a good enough approximation for not
// underestimating the weight of our migration. // underestimating the weight of our migration.
fn max_step_weight() -> Weight { fn max_step_weight() -> Weight {
@@ -16,7 +16,7 @@
// limitations under the License. // limitations under the License.
//! Add `delegate_dependencies` to `ContractInfo`. //! Add `delegate_dependencies` to `ContractInfo`.
//! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/49>. //! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/216>.
use crate::{ use crate::{
migration::{IsFinished, MigrationStep}, migration::{IsFinished, MigrationStep},
@@ -17,7 +17,7 @@
//! Update the code owner balance, make the code upload deposit balance to be held instead of //! Update the code owner balance, make the code upload deposit balance to be held instead of
//! reserved. Since [`Currency`](pezframe_support::traits::Currency) has been //! reserved. Since [`Currency`](pezframe_support::traits::Currency) has been
//! [deprecated](https://github.com/pezkuwichain/pezkuwi-sdk/issues/40), we need the deposits to be //! [deprecated](https://github.com/pezkuwichain/pezkuwi-sdk/issues/209), we need the deposits to be
//! handled by the [`pezframe_support::traits::fungible`] traits. //! handled by the [`pezframe_support::traits::fungible`] traits.
use crate::{ use crate::{
@@ -17,7 +17,7 @@
//! Move contracts' _reserved_ balance from the `deposit_account` to be _held_ in the contract's //! Move contracts' _reserved_ balance from the `deposit_account` to be _held_ in the contract's
//! account instead. Since [`Currency`](pezframe_support::traits::Currency) has been //! account instead. Since [`Currency`](pezframe_support::traits::Currency) has been
//! [deprecated](https://github.com/pezkuwichain/pezkuwi-sdk/issues/40), we need the deposits to be //! [deprecated](https://github.com/pezkuwichain/pezkuwi-sdk/issues/209), we need the deposits to be
//! handled by the [`pezframe_support::traits::fungible`] traits instead. For this transfer the //! handled by the [`pezframe_support::traits::fungible`] traits instead. For this transfer the
//! balance from the deposit account to the contract's account and hold it in there. //! balance from the deposit account to the contract's account and hold it in there.
//! Then the deposit account is not needed anymore and we can get rid of it. //! Then the deposit account is not needed anymore and we can get rid of it.
@@ -16,7 +16,7 @@
// limitations under the License. // limitations under the License.
//! Remove ED from storage base deposit. //! Remove ED from storage base deposit.
//! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/116>. //! See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/261>.
use crate::{ use crate::{
migration::{IsFinished, MigrationStep}, migration::{IsFinished, MigrationStep},
@@ -1371,7 +1371,7 @@ pub mod pezpallet {
/// The in-code storage version. /// The in-code storage version.
/// ///
/// v1: https://github.com/pezkuwichain/pezkuwi-sdk/issues/38/ /// v1: https://github.com/pezkuwichain/pezkuwi-sdk/issues/207/
const STORAGE_VERSION: StorageVersion = StorageVersion::new(1); const STORAGE_VERSION: StorageVersion = StorageVersion::new(1);
#[pezpallet::pezpallet] #[pezpallet::pezpallet]
@@ -250,7 +250,7 @@ fn continuous_slashes_below_offending_threshold() {
/// be below ED. In that case, only the stash (or root) can kill the ledger entry by calling /// be below ED. In that case, only the stash (or root) can kill the ledger entry by calling
/// `withdraw_unbonded` after the bonding period has passed. /// `withdraw_unbonded` after the bonding period has passed.
/// ///
/// Related to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/16>. /// Related to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/329>.
fn ledger_consistency_active_balance_below_ed() { fn ledger_consistency_active_balance_below_ed() {
use pezpallet_staking::{Error, Event}; use pezpallet_staking::{Error, Event};
@@ -49,7 +49,7 @@ pub(crate) fn syn_err(message: &'static str) -> syn::Error {
/// compact encoding. /// compact encoding.
/// - The accuracy of the ratios. This must be one of the `PerThing` types defined in /// - The accuracy of the ratios. This must be one of the `PerThing` types defined in
/// `sp-arithmetic`. /// `sp-arithmetic`.
/// - The maximum number of voters. This must be of type `Get<u32>`. Check <https://github.com/pezkuwichain/pezkuwi-sdk/issues/5> /// - The maximum number of voters. This must be of type `Get<u32>`. Check <https://github.com/pezkuwichain/pezkuwi-sdk/issues/320>
/// for more details. This is used to bound the struct, by leveraging the fact that `votes1.len() /// for more details. This is used to bound the struct, by leveraging the fact that `votes1.len()
/// < votes2.len() < ... < votesn.len()` (the details of the struct is explained further below). /// < votes2.len() < ... < votesn.len()` (the details of the struct is explained further below).
/// We know that `sum_i votes_i.len() <= MaxVoters`, and we know that the maximum size of the /// We know that `sum_i votes_i.len() <= MaxVoters`, and we know that the maximum size of the
@@ -379,7 +379,7 @@ pub trait ElectionDataProvider {
/// [`Self::targets().len()`], since desiring a winner set larger than candidates is not /// [`Self::targets().len()`], since desiring a winner set larger than candidates is not
/// feasible. /// feasible.
/// ///
/// This is documented further in issue: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/35> /// This is documented further in issue: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/204>
fn desired_targets() -> data_provider::Result<u32>; fn desired_targets() -> data_provider::Result<u32>;
/// Provide a best effort prediction about when the next election is about to happen. /// Provide a best effort prediction about when the next election is about to happen.
@@ -64,7 +64,7 @@
//! preferred tool to test migrations is //! preferred tool to test migrations is
//! [`try-runtime-cli`](https://github.com/paritytech/try-runtime-cli). Support will be added to //! [`try-runtime-cli`](https://github.com/paritytech/try-runtime-cli). Support will be added to
//! dry-run MBMs once they are stable //! dry-run MBMs once they are stable
//! (tracked: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/190>). //! (tracked: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/333>).
pub mod migrations; pub mod migrations;
mod mock; mod mock;
@@ -285,7 +285,7 @@ fn service_queues_low_weight_defensive() {
}); });
} }
/// Regression test for <https://github.com/pezkuwichain/pezkuwi-sdk/issues/109>. /// Regression test for <https://github.com/pezkuwichain/pezkuwi-sdk/issues/255>.
#[test] #[test]
fn service_queues_regression_1873() { fn service_queues_regression_1873() {
use MessageOrigin::*; use MessageOrigin::*;
@@ -1675,7 +1675,7 @@ fn integrity_test_checks_service_weight() {
}); });
} }
/// Test for <https://github.com/pezkuwichain/pezkuwi-sdk/issues/121>. /// Test for <https://github.com/pezkuwichain/pezkuwi-sdk/issues/266>.
#[test] #[test]
fn regression_issue_2319() { fn regression_issue_2319() {
build_and_execute::<Test>(|| { build_and_execute::<Test>(|| {
@@ -339,7 +339,7 @@
//! //!
//! To be fair to joiners, this implementation also need joining pools, which are actively staking, //! To be fair to joiners, this implementation also need joining pools, which are actively staking,
//! in addition to the unbonding pools. For maintenance simplicity these are not implemented. //! in addition to the unbonding pools. For maintenance simplicity these are not implemented.
//! Related: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/4> //! Related: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/319>
//! //!
//! ### Limitations //! ### Limitations
//! //!
@@ -840,7 +840,7 @@ pub mod v2 {
} }
/// Migrate the pool reward scheme to the new version, as per /// Migrate the pool reward scheme to the new version, as per
/// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/37.>. /// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/206.>.
pub struct MigrateToV2<T>(core::marker::PhantomData<T>); pub struct MigrateToV2<T>(core::marker::PhantomData<T>);
impl<T: Config> MigrateToV2<T> { impl<T: Config> MigrateToV2<T> {
fn run(current: StorageVersion) -> Weight { fn run(current: StorageVersion) -> Weight {
+1 -1
View File
@@ -140,7 +140,7 @@ pub const DEFAULT_MAX_TRACK_NAME_LEN: usize = 25;
/// Helper structure to treat a `[u8; N]` array as a string. /// Helper structure to treat a `[u8; N]` array as a string.
/// ///
/// This is a temporary fix (see [#7671](https://github.com/pezkuwichain/pezkuwi-sdk/issues/126)) in /// This is a temporary fix (see [#7671](https://github.com/pezkuwichain/pezkuwi-sdk/issues/271)) in
/// order to stop `pezkuwi.js` apps to fail when trying to decode the `name` field in `TrackInfo`. /// order to stop `pezkuwi.js` apps to fail when trying to decode the `name` field in `TrackInfo`.
#[derive(Clone, Eq, DecodeWithMemTracking, PartialEq, Debug)] #[derive(Clone, Eq, DecodeWithMemTracking, PartialEq, Debug)]
pub struct StringLike<const N: usize>(pub [u8; N]); pub struct StringLike<const N: usize>(pub [u8; N]);
@@ -60,7 +60,7 @@ impl BlockHashMap {
/// Provides information about a block, /// Provides information about a block,
/// This is an abstratction on top of [`BizinikiwiBlock`] that can't be mocked in tests. /// This is an abstratction on top of [`BizinikiwiBlock`] that can't be mocked in tests.
/// Can be removed once <https://github.com/pezkuwichain/pezkuwi-sdk/issues/188> is fixed. /// Can be removed once <https://github.com/pezkuwichain/pezkuwi-sdk/issues/331> is fixed.
pub trait BlockInfo { pub trait BlockInfo {
/// Returns the block hash. /// Returns the block hash.
fn hash(&self) -> H256; fn hash(&self) -> H256;
@@ -300,7 +300,7 @@ impl<B: BlockInfoProvider> ReceiptProvider<B> {
/// Insert receipts into the provider. /// Insert receipts into the provider.
/// ///
/// Note: Can be merged into `insert_block_receipts` once <https://github.com/pezkuwichain/pezkuwi-sdk/issues/188> is fixed and subxt let /// Note: Can be merged into `insert_block_receipts` once <https://github.com/pezkuwichain/pezkuwi-sdk/issues/331> is fixed and subxt let
/// us create Mock `BizinikiwiBlock` /// us create Mock `BizinikiwiBlock`
async fn insert( async fn insert(
&self, &self,
+1 -1
View File
@@ -4043,7 +4043,7 @@ fn call_tracing_works() {
]; ];
// Verify that the first trace report the same weight reported by bare_call // Verify that the first trace report the same weight reported by bare_call
// TODO: fix tracing ( https://github.com/pezkuwichain/pezkuwi-sdk/issues/153 ) // TODO: fix tracing ( https://github.com/pezkuwichain/pezkuwi-sdk/issues/296 )
/* /*
let mut tracer = CallTracer::new(false, |w| w); let mut tracer = CallTracer::new(false, |w| w);
let gas_used = trace(&mut tracer, || { let gas_used = trace(&mut tracer, || {
@@ -192,7 +192,7 @@ pub mod v4 {
/// This migration cleans up empty agendas of the V4 scheduler. /// This migration cleans up empty agendas of the V4 scheduler.
/// ///
/// This should be run on a scheduler that does not have /// This should be run on a scheduler that does not have
/// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/41> since it piles up `None`-only agendas. This does not modify the pezpallet version. /// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/210> since it piles up `None`-only agendas. This does not modify the pezpallet version.
pub struct CleanupAgendas<T>(core::marker::PhantomData<T>); pub struct CleanupAgendas<T>(core::marker::PhantomData<T>);
impl<T: Config> OnRuntimeUpgrade for CleanupAgendas<T> { impl<T: Config> OnRuntimeUpgrade for CleanupAgendas<T> {
+1 -1
View File
@@ -273,7 +273,7 @@ pub mod benchmarking {
} }
#[deprecated( #[deprecated(
note = "'The V1 benchmarking syntax is deprecated. Please use the V2 syntax. This warning may become a hard error any time after April 2025. For more info, see: https://github.com/pezkuwichain/pezkuwi-sdk/issues/123" note = "'The V1 benchmarking syntax is deprecated. Please use the V2 syntax. This warning may become a hard error any time after April 2025. For more info, see: https://github.com/pezkuwichain/pezkuwi-sdk/issues/268"
)] )]
pub mod v1 { pub mod v1 {
pub use super::shared::*; pub use super::shared::*;
@@ -72,7 +72,7 @@ parameter_types! {
/// * Kusama: 16 (1.6m snapshot) /// * Kusama: 16 (1.6m snapshot)
/// ///
/// Reasoning: Both leads to around 700 nominators per-page, yielding the weights in /// Reasoning: Both leads to around 700 nominators per-page, yielding the weights in
/// https://github.com/pezkuwichain/pezkuwi-sdk/issues/128, the maximum of which being around 1mb /// https://github.com/pezkuwichain/pezkuwi-sdk/issues/273, the maximum of which being around 1mb
/// compressed PoV and 2mb uncompressed. /// compressed PoV and 2mb uncompressed.
/// ///
/// NOTE: in principle, there is nothing preventing us from stretching these values further, it /// NOTE: in principle, there is nothing preventing us from stretching these values further, it
@@ -67,7 +67,7 @@ pub struct UnlockChunk<Balance: HasCompact + MaxEncodedLen> {
/// ///
/// TODO: move struct definition and full implementation into `/src/ledger.rs`. Currently /// TODO: move struct definition and full implementation into `/src/ledger.rs`. Currently
/// leaving here to enforce a clean PR diff, given how critical this logic is. Tracking issue /// leaving here to enforce a clean PR diff, given how critical this logic is. Tracking issue
/// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/21>. /// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/191>.
#[derive( #[derive(
PartialEqNoBound, PartialEqNoBound,
EqNoBound, EqNoBound,
@@ -194,7 +194,7 @@ impl<T: Config> StakingLedger<T> {
// further spoil the ledger's state. A bond is in bad state when the bonded controller is // further spoil the ledger's state. A bond is in bad state when the bonded controller is
// associated with a different ledger (i.e. a ledger with a different stash). // associated with a different ledger (i.e. a ledger with a different stash).
// //
// See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/128> for more details. // See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/273> for more details.
ensure!( ensure!(
Bonded::<T>::get(&stash) == Some(controller) && ledger.stash == stash, Bonded::<T>::get(&stash) == Some(controller) && ledger.stash == stash,
Error::<T>::BadState Error::<T>::BadState
@@ -303,7 +303,7 @@ impl<T: Config> StakingLedger<T> {
if let Some(bonded_ledger) = Ledger::<T>::get(&self.stash) { if let Some(bonded_ledger) = Ledger::<T>::get(&self.stash) {
// there is a ledger bonded by the stash. In this case, the stash of the bonded ledger // there is a ledger bonded by the stash. In this case, the stash of the bonded ledger
// should be the same as the ledger's stash. Otherwise fail to prevent data // should be the same as the ledger's stash. Otherwise fail to prevent data
// inconsistencies. See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/117> for more // inconsistencies. See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/262> for more
// details. // details.
ensure!(bonded_ledger.stash == self.stash, Error::<T>::BadState); ensure!(bonded_ledger.stash == self.stash, Error::<T>::BadState);
} }
@@ -1795,7 +1795,7 @@ impl<T: Config> Pezpallet<T> {
/// * A bonded (stash, controller) pair must have an associated ledger. /// * A bonded (stash, controller) pair must have an associated ledger.
/// ///
/// NOTE: these checks result in warnings only. Once /// NOTE: these checks result in warnings only. Once
/// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/128> is resolved, turn warns into check /// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/273> is resolved, turn warns into check
/// failures. /// failures.
fn check_bonded_consistency() -> Result<(), TryRuntimeError> { fn check_bonded_consistency() -> Result<(), TryRuntimeError> {
use alloc::collections::btree_set::BTreeSet; use alloc::collections::btree_set::BTreeSet;
+2 -2
View File
@@ -132,7 +132,7 @@ impl<T: Config> StakingLedger<T> {
// further spoil the ledger's state. A bond is in bad state when the bonded controller is // further spoil the ledger's state. A bond is in bad state when the bonded controller is
// associated with a different ledger (i.e. a ledger with a different stash). // associated with a different ledger (i.e. a ledger with a different stash).
// //
// See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/128> for more details. // See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/273> for more details.
ensure!( ensure!(
Bonded::<T>::get(&stash) == Some(controller) && ledger.stash == stash, Bonded::<T>::get(&stash) == Some(controller) && ledger.stash == stash,
Error::<T>::BadState Error::<T>::BadState
@@ -241,7 +241,7 @@ impl<T: Config> StakingLedger<T> {
if let Some(bonded_ledger) = Ledger::<T>::get(&self.stash) { if let Some(bonded_ledger) = Ledger::<T>::get(&self.stash) {
// there is a ledger bonded by the stash. In this case, the stash of the bonded ledger // there is a ledger bonded by the stash. In this case, the stash of the bonded ledger
// should be the same as the ledger's stash. Otherwise fail to prevent data // should be the same as the ledger's stash. Otherwise fail to prevent data
// inconsistencies. See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/117> for more // inconsistencies. See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/262> for more
// details. // details.
ensure!(bonded_ledger.stash == self.stash, Error::<T>::BadState); ensure!(bonded_ledger.stash == self.stash, Error::<T>::BadState);
} }
+3 -3
View File
@@ -495,7 +495,7 @@ pub struct UnlockChunk<Balance: HasCompact + MaxEncodedLen> {
/// ///
/// TODO: move struct definition and full implementation into `/src/ledger.rs`. Currently /// TODO: move struct definition and full implementation into `/src/ledger.rs`. Currently
/// leaving here to enforce a clean PR diff, given how critical this logic is. Tracking issue /// leaving here to enforce a clean PR diff, given how critical this logic is. Tracking issue
/// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/21>. /// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/191>.
#[derive( #[derive(
PartialEqNoBound, PartialEqNoBound,
EqNoBound, EqNoBound,
@@ -531,7 +531,7 @@ pub struct StakingLedger<T: Config> {
/// for validators. /// for validators.
/// ///
/// This is deprecated as of V14 in favor of `T::ClaimedRewards` and will be removed in future. /// This is deprecated as of V14 in favor of `T::ClaimedRewards` and will be removed in future.
/// Refer to issue <https://github.com/pezkuwichain/pezkuwi-sdk/issues/103> /// Refer to issue <https://github.com/pezkuwichain/pezkuwi-sdk/issues/249>
pub legacy_claimed_rewards: BoundedVec<EraIndex, T::HistoryDepth>, pub legacy_claimed_rewards: BoundedVec<EraIndex, T::HistoryDepth>,
/// The controller associated with this ledger's stash. /// The controller associated with this ledger's stash.
@@ -1213,7 +1213,7 @@ impl<T: Config> EraInfo<T> {
/// non-paged rewards, and (2) `T::ClaimedRewards` for paged rewards. This function can be /// non-paged rewards, and (2) `T::ClaimedRewards` for paged rewards. This function can be
/// removed once `T::HistoryDepth` eras have passed and none of the older non-paged rewards /// removed once `T::HistoryDepth` eras have passed and none of the older non-paged rewards
/// are relevant/claimable. /// are relevant/claimable.
// Refer tracker issue for cleanup: https://github.com/pezkuwichain/pezkuwi-sdk/issues/103 // Refer tracker issue for cleanup: https://github.com/pezkuwichain/pezkuwi-sdk/issues/249
pub(crate) fn is_rewards_claimed_with_legacy_fallback( pub(crate) fn is_rewards_claimed_with_legacy_fallback(
era: EraIndex, era: EraIndex,
ledger: &StakingLedger<T>, ledger: &StakingLedger<T>,
@@ -1527,7 +1527,7 @@ impl<T: Config> ElectionDataProvider for Pezpallet<T> {
let targets = Self::get_npos_targets(bounds); let targets = Self::get_npos_targets(bounds);
// We can't handle this case yet -- return an error. WIP to improve handling this case in // We can't handle this case yet -- return an error. WIP to improve handling this case in
// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/43>. // <https://github.com/pezkuwichain/pezkuwi-sdk/issues/211>.
if bounds.exhausted(None, CountBound(T::TargetList::count()).into()) { if bounds.exhausted(None, CountBound(T::TargetList::count()).into()) {
return Err("Target snapshot too big"); return Err("Target snapshot too big");
} }
@@ -2082,7 +2082,7 @@ impl<T: Config> StakingInterface for Pezpallet<T> {
fn is_exposed_in_era(who: &Self::AccountId, era: &EraIndex) -> bool { fn is_exposed_in_era(who: &Self::AccountId, era: &EraIndex) -> bool {
// look in the non paged exposures // look in the non paged exposures
// FIXME: Can be cleaned up once non paged exposures are cleared (https://github.com/pezkuwichain/pezkuwi-sdk/issues/103) // FIXME: Can be cleaned up once non paged exposures are cleared (https://github.com/pezkuwichain/pezkuwi-sdk/issues/249)
ErasStakers::<T>::iter_prefix(era).any(|(validator, exposures)| { ErasStakers::<T>::iter_prefix(era).any(|(validator, exposures)| {
validator == *who || exposures.others.iter().any(|i| i.who == *who) validator == *who || exposures.others.iter().any(|i| i.who == *who)
}) })
@@ -2237,7 +2237,7 @@ impl<T: Config> Pezpallet<T> {
/// * A bonded (stash, controller) pair must have an associated ledger. /// * A bonded (stash, controller) pair must have an associated ledger.
/// ///
/// NOTE: these checks result in warnings only. Once /// NOTE: these checks result in warnings only. Once
/// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/128> is resolved, turn warns into check /// <https://github.com/pezkuwichain/pezkuwi-sdk/issues/273> is resolved, turn warns into check
/// failures. /// failures.
fn check_bonded_consistency() -> Result<(), TryRuntimeError> { fn check_bonded_consistency() -> Result<(), TryRuntimeError> {
use alloc::collections::btree_set::BTreeSet; use alloc::collections::btree_set::BTreeSet;
+2 -2
View File
@@ -289,7 +289,7 @@ pub(crate) fn compute_slash<T: Config>(
if target_span == Some(spans.span_index()) { if target_span == Some(spans.span_index()) {
// misbehavior occurred within the current slashing span - end current span. // misbehavior occurred within the current slashing span - end current span.
// Check <https://github.com/pezkuwichain/pezkuwi-sdk/issues/124> for details. // Check <https://github.com/pezkuwichain/pezkuwi-sdk/issues/269> for details.
spans.end_span(params.now); spans.end_span(params.now);
} }
} }
@@ -321,7 +321,7 @@ fn kick_out_if_recent<T: Config>(params: SlashParams<T>) {
); );
if spans.era_span(params.slash_era).map(|s| s.index) == Some(spans.span_index()) { if spans.era_span(params.slash_era).map(|s| s.index) == Some(spans.span_index()) {
// Check https://github.com/pezkuwichain/pezkuwi-sdk/issues/124 for details // Check https://github.com/pezkuwichain/pezkuwi-sdk/issues/269 for details
spans.end_span(params.now); spans.end_span(params.now);
} }
} }
@@ -530,7 +530,7 @@ pub mod pezpallet {
/// keys which are then hashed and concatenated, resulting in arbitrarily long keys. /// keys which are then hashed and concatenated, resulting in arbitrarily long keys.
/// ///
/// Use the *state migration RPC* to retrieve the length of the longest key in your /// Use the *state migration RPC* to retrieve the length of the longest key in your
/// storage: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/8> /// storage: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/322>
/// ///
/// The migration will halt with a `Halted` event if this value is too small. /// The migration will halt with a `Halted` event if this value is too small.
/// Since there is no real penalty from over-estimating, it is advised to use a large /// Since there is no real penalty from over-estimating, it is advised to use a large
@@ -542,7 +542,7 @@ pub mod pezpallet {
/// - [`pezframe_support::storage::StorageDoubleMap`]: 96 byte /// - [`pezframe_support::storage::StorageDoubleMap`]: 96 byte
/// ///
/// For more info see /// For more info see
/// <https://www.shawntabrizi.com/blog/bizinikiwi/querying-bizinikiwi-storage-via-rpc/> /// <https://www.shawntabrizi.com/blog/substrate/querying-substrate-storage-via-rpc/>
#[pezpallet::constant] #[pezpallet::constant]
#[pezpallet::no_default] #[pezpallet::no_default]
@@ -437,7 +437,7 @@ fn construct_runtime_final_expansion(
"use `pezframe_system::Config` to set the `Block` type and delete this clause. "use `pezframe_system::Config` to set the `Block` type and delete this clause.
It is planned to be removed in December 2023", It is planned to be removed in December 2023",
) )
.help_links(&["https://github.com/pezkuwichain/pezkuwi-sdk/issues/51"]) .help_links(&["https://github.com/pezkuwichain/pezkuwi-sdk/issues/218"])
.span(where_section.span) .span(where_section.span)
.build_or_panic(), .build_or_panic(),
) )
@@ -106,8 +106,8 @@ pub fn expand_call(def: &mut Def) -> proc_macro2::TokenStream {
.old("use implicit call indices") .old("use implicit call indices")
.new("ensure that all calls have a `pezpallet::call_index` attribute or put the pezpallet into `dev` mode") .new("ensure that all calls have a `pezpallet::call_index` attribute or put the pezpallet into `dev` mode")
.help_links(&[ .help_links(&[
"https://github.com/pezkuwichain/pezkuwi-sdk/issues/39", "https://github.com/pezkuwichain/pezkuwi-sdk/issues/208",
"https://github.com/pezkuwichain/pezkuwi-sdk/issues/36" "https://github.com/pezkuwichain/pezkuwi-sdk/issues/205"
]) ])
.span(method.name.span()) .span(method.name.span())
.build_or_panic(); .build_or_panic();
@@ -38,7 +38,7 @@ pub(crate) fn weight_witness_warning(
let partial_warning = Warning::new_deprecated("UncheckedWeightWitness") let partial_warning = Warning::new_deprecated("UncheckedWeightWitness")
.old("not check weight witness data") .old("not check weight witness data")
.new("ensure that all witness data for weight calculation is checked before usage") .new("ensure that all witness data for weight calculation is checked before usage")
.help_link("https://github.com/pezkuwichain/pezkuwi-sdk/issues/108"); .help_link("https://github.com/pezkuwichain/pezkuwi-sdk/issues/254");
for (_, arg_ident, _) in method.args.iter() { for (_, arg_ident, _) in method.args.iter() {
if !arg_ident.to_string().starts_with('_') || !contains_ident(w.clone(), &arg_ident) { if !arg_ident.to_string().starts_with('_') || !contains_ident(w.clone(), &arg_ident) {
@@ -70,7 +70,7 @@ pub(crate) fn weight_constant_warning(
.index(warnings.len()) .index(warnings.len())
.old("use hard-coded constant as call weight") .old("use hard-coded constant as call weight")
.new("benchmark all calls or put the pezpallet into `dev` mode") .new("benchmark all calls or put the pezpallet into `dev` mode")
.help_link("https://github.com/pezkuwichain/pezkuwi-sdk/issues/48") .help_link("https://github.com/pezkuwichain/pezkuwi-sdk/issues/215")
.span(lit.span()) .span(lit.span())
.build_or_panic(); .build_or_panic();
@@ -444,7 +444,7 @@ impl ConfigDef {
.old("have `RuntimeEvent` associated type in the pezpallet config") .old("have `RuntimeEvent` associated type in the pezpallet config")
.new("remove it as it is redundant since associated bound gets appended automatically: \n .new("remove it as it is redundant since associated bound gets appended automatically: \n
pub trait Config: pezframe_system::Config<RuntimeEvent: From<Event<Self>>> { }") pub trait Config: pezframe_system::Config<RuntimeEvent: From<Event<Self>>> { }")
.help_link("https://github.com/pezkuwichain/pezkuwi-sdk/issues/125") .help_link("https://github.com/pezkuwichain/pezkuwi-sdk/issues/270")
.span(type_event.ident.span()) .span(type_event.ident.span())
.build_or_panic(); .build_or_panic();
+1 -1
View File
@@ -1926,7 +1926,7 @@ pub mod pezpallet_macros {
/// ///
/// ## Former Usage /// ## Former Usage
/// ///
/// Prior to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/50>, the following syntax was used. /// Prior to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/217>, the following syntax was used.
/// This is deprecated and will soon be removed. /// This is deprecated and will soon be removed.
/// ///
/// ``` /// ```
@@ -311,7 +311,7 @@ pub fn migrate_from_pallet_version_to_storage_version<
/// If your pezpallet has too many keys to be removed in a single block, it is advised to wait for /// If your pezpallet has too many keys to be removed in a single block, it is advised to wait for
/// a multi-block scheduler currently under development which will allow for removal of storage /// a multi-block scheduler currently under development which will allow for removal of storage
/// items (and performing other heavy migrations) over multiple blocks /// items (and performing other heavy migrations) over multiple blocks
/// (see <https://github.com/pezkuwichain/pezkuwi-sdk/issues/11>). /// (see <https://github.com/pezkuwichain/pezkuwi-sdk/issues/324>).
pub struct RemovePallet<P: Get<&'static str>, DbWeight: Get<RuntimeDbWeight>>( pub struct RemovePallet<P: Get<&'static str>, DbWeight: Get<RuntimeDbWeight>>(
PhantomData<(P, DbWeight)>, PhantomData<(P, DbWeight)>,
); );
@@ -418,7 +418,7 @@ impl<P: Get<&'static str>, DbWeight: Get<RuntimeDbWeight>>
/// If your storage has too many keys to be removed in a single block, it is advised to wait for /// If your storage has too many keys to be removed in a single block, it is advised to wait for
/// a multi-block scheduler currently under development which will allow for removal of storage /// a multi-block scheduler currently under development which will allow for removal of storage
/// items (and performing other heavy migrations) over multiple blocks /// items (and performing other heavy migrations) over multiple blocks
/// (see <https://github.com/pezkuwichain/pezkuwi-sdk/issues/11>). /// (see <https://github.com/pezkuwichain/pezkuwi-sdk/issues/324>).
pub struct RemoveStorage<P: Get<&'static str>, S: Get<&'static str>, DbWeight: Get<RuntimeDbWeight>>( pub struct RemoveStorage<P: Get<&'static str>, S: Get<&'static str>, DbWeight: Get<RuntimeDbWeight>>(
PhantomData<(P, S, DbWeight)>, PhantomData<(P, S, DbWeight)>,
); );
@@ -170,7 +170,7 @@ pub mod pezpallet {
#[pezpallet::hooks] #[pezpallet::hooks]
impl<T: Config> Hooks<BlockNumberFor<T>> for Pezpallet<T> { impl<T: Config> Hooks<BlockNumberFor<T>> for Pezpallet<T> {
fn on_initialize(n: BlockNumberFor<T>) -> Weight { fn on_initialize(n: BlockNumberFor<T>) -> Weight {
// TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/160 - Replace this with benchmarked weights. // TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/303 - Replace this with benchmarked weights.
let mut weight = Weight::zero(); let mut weight = Weight::zero();
let db_weight = T::DbWeight::get(); let db_weight = T::DbWeight::get();
+4 -4
View File
@@ -274,7 +274,7 @@ pub mod pezpallet {
type SpendFunds: SpendFunds<Self, I>; type SpendFunds: SpendFunds<Self, I>;
/// DEPRECATED: associated with `spend_local` call and will be removed in May 2025. /// DEPRECATED: associated with `spend_local` call and will be removed in May 2025.
/// Refer to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/122> for migration to `spend`. /// Refer to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/267> for migration to `spend`.
/// ///
/// The maximum number of approvals that can wait in the spending queue. /// The maximum number of approvals that can wait in the spending queue.
/// ///
@@ -329,14 +329,14 @@ pub mod pezpallet {
} }
/// DEPRECATED: associated with `spend_local` call and will be removed in May 2025. /// DEPRECATED: associated with `spend_local` call and will be removed in May 2025.
/// Refer to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/122> for migration to `spend`. /// Refer to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/267> for migration to `spend`.
/// ///
/// Number of proposals that have been made. /// Number of proposals that have been made.
#[pezpallet::storage] #[pezpallet::storage]
pub type ProposalCount<T, I = ()> = StorageValue<_, ProposalIndex, ValueQuery>; pub type ProposalCount<T, I = ()> = StorageValue<_, ProposalIndex, ValueQuery>;
/// DEPRECATED: associated with `spend_local` call and will be removed in May 2025. /// DEPRECATED: associated with `spend_local` call and will be removed in May 2025.
/// Refer to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/122> for migration to `spend`. /// Refer to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/267> for migration to `spend`.
/// ///
/// Proposals that have been made. /// Proposals that have been made.
#[pezpallet::storage] #[pezpallet::storage]
@@ -354,7 +354,7 @@ pub mod pezpallet {
StorageValue<_, BalanceOf<T, I>, ValueQuery>; StorageValue<_, BalanceOf<T, I>, ValueQuery>;
/// DEPRECATED: associated with `spend_local` call and will be removed in May 2025. /// DEPRECATED: associated with `spend_local` call and will be removed in May 2025.
/// Refer to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/122> for migration to `spend`. /// Refer to <https://github.com/pezkuwichain/pezkuwi-sdk/issues/267> for migration to `spend`.
/// ///
/// Proposal indices that have been approved but not yet awarded. /// Proposal indices that have been approved but not yet awarded.
#[pezpallet::storage] #[pezpallet::storage]
@@ -181,7 +181,7 @@ pub trait Backend<Block: BlockT>:
/// chain or descendants of it. /// chain or descendants of it.
/// ///
/// Returns `Ok(None)` if `base_hash` is not found in search space. /// Returns `Ok(None)` if `base_hash` is not found in search space.
// TODO: document time complexity of this, see [#1444](https://github.com/pezkuwichain/pezkuwi-sdk/issues/18) // TODO: document time complexity of this, see [#1444](https://github.com/pezkuwichain/pezkuwi-sdk/issues/331)
fn longest_containing( fn longest_containing(
&self, &self,
base_hash: Block::Hash, base_hash: Block::Hash,
@@ -96,7 +96,7 @@ fn unavailable_yet<R: Default>(name: &str) -> R {
tracing::error!( tracing::error!(
target: LOG_TARGET, target: LOG_TARGET,
"The {:?} API is not available for offchain workers yet. Follow \ "The {:?} API is not available for offchain workers yet. Follow \
https://github.com/pezkuwichain/pezkuwi-sdk/issues/19 for details", https://github.com/pezkuwichain/pezkuwi-sdk/issues/332 for details",
name name
); );
Default::default() Default::default()
@@ -21,7 +21,7 @@
//! The implementation has been primarily designed to be used in slow hosted //! The implementation has been primarily designed to be used in slow hosted
//! targets (e.g. wasm32) and offloads the most computationally expensive //! targets (e.g. wasm32) and offloads the most computationally expensive
//! operations to the host by leveraging the //! operations to the host by leveraging the
//! [arkworks-extensions](https://github.com/pezkuwichain/arkworks-extensions) //! [arkworks-extensions](https://github.com/paritytech/arkworks-extensions)
//! library and Bizinikiwi's host functions. //! library and Bizinikiwi's host functions.
//! //!
//! The exported types are organized and named in a way that mirrors the structure //! The exported types are organized and named in a way that mirrors the structure
@@ -524,7 +524,7 @@ pub struct OuterEnumsIR<T: Form = MetaForm> {
/// The type of the outer `RuntimeEvent` enum. /// The type of the outer `RuntimeEvent` enum.
pub event_enum_ty: T::Type, pub event_enum_ty: T::Type,
/// The module error type of the /// The module error type of the
/// [`DispatchError::Module`](https://docs.rs/sp-runtime/24.0.0/pezsp_runtime/enum.DispatchError.html#variant.Module) variant. /// [`DispatchError::Module`](https://docs.rs/sp-runtime/24.0.0/sp_runtime/enum.DispatchError.html#variant.Module) variant.
/// ///
/// The `Module` variant will be 5 scale encoded bytes which are normally decoded into /// The `Module` variant will be 5 scale encoded bytes which are normally decoded into
/// an `{ index: u8, error: [u8; 4] }` struct. This type ID points to an enum type which /// an `{ index: u8, error: [u8; 4] }` struct. This type ID points to an enum type which
+1 -1
View File
@@ -47,7 +47,7 @@ pub type Page = u32;
/// Representation of a staking account, which may be a stash or controller account. /// Representation of a staking account, which may be a stash or controller account.
/// ///
/// Note: once the controller is completely deprecated, this enum can also be deprecated in favor of /// Note: once the controller is completely deprecated, this enum can also be deprecated in favor of
/// the stash account. Tracking issue: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/28>. /// the stash account. Tracking issue: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/198>.
#[derive(Clone, Debug)] #[derive(Clone, Debug)]
pub enum StakingAccount<AccountId> { pub enum StakingAccount<AccountId> {
Stash(AccountId), Stash(AccountId),
@@ -142,7 +142,7 @@ impl ParseRuntimeVersion {
let warning = Warning::new_deprecated("RuntimeVersion") let warning = Warning::new_deprecated("RuntimeVersion")
.old("state_version") .old("state_version")
.new("system_version)") .new("system_version)")
.help_link("https://github.com/pezkuwichain/pezkuwi-sdk/issues/118") .help_link("https://github.com/pezkuwichain/pezkuwi-sdk/issues/263")
.span(field_name.span()) .span(field_name.span())
.build_or_panic(); .build_or_panic();
warnings.push(warning); warnings.push(warning);
@@ -27,7 +27,7 @@ use std::{borrow::Cow, path::PathBuf};
const ERROR_CANNOT_BUILD_GENESIS: &str = "The runtime returned \ const ERROR_CANNOT_BUILD_GENESIS: &str = "The runtime returned \
an error when trying to build the genesis storage. Please ensure that all pallets \ an error when trying to build the genesis storage. Please ensure that all pallets \
define a genesis config that can be built. This can be tested with: \ define a genesis config that can be built. This can be tested with: \
https://github.com/pezkuwichain/pezkuwi-sdk/issues/115"; https://github.com/pezkuwichain/pezkuwi-sdk/issues/260";
/// Warn when using the chain spec to generate the genesis state. /// Warn when using the chain spec to generate the genesis state.
pub const WARN_SPEC_GENESIS_CTOR: &'static str = "Using the chain spec instead of the runtime to \ pub const WARN_SPEC_GENESIS_CTOR: &'static str = "Using the chain spec instead of the runtime to \
@@ -485,7 +485,7 @@ where
loop { loop {
// This loop can hit the node with very rapid requests, occasionally causing it to // This loop can hit the node with very rapid requests, occasionally causing it to
// error out in CI (https://github.com/pezkuwichain/pezkuwi-sdk/issues/14), so we retry. // error out in CI (https://github.com/pezkuwichain/pezkuwi-sdk/issues/327), so we retry.
let retry_strategy = let retry_strategy =
FixedInterval::new(Self::KEYS_PAGE_RETRY_INTERVAL).take(Self::MAX_RETRIES); FixedInterval::new(Self::KEYS_PAGE_RETRY_INTERVAL).take(Self::MAX_RETRIES);
let get_page_closure = let get_page_closure =
@@ -64,7 +64,7 @@ pub(crate) fn check(target: RuntimeTarget) -> Result<CargoCommandVersioned, Stri
if !cargo_command.supports_bizinikiwi_runtime_env(target) { if !cargo_command.supports_bizinikiwi_runtime_env(target) {
return Err(colorize_error_message( return Err(colorize_error_message(
"Cannot compile a RISC-V runtime: no compatible Rust compiler found!\n\ "Cannot compile a RISC-V runtime: no compatible Rust compiler found!\n\
Install a toolchain from here and try again: https://github.com/pezkuwichain/rustc-rv32e-toolchain/", Install a toolchain from here and try again: https://github.com/paritytech/rustc-rv32e-toolchain",
)); ));
} }
@@ -529,7 +529,7 @@ fn create_project_cargo_toml(
// TODO: Remove this once a new version of `bitvec` (which uses a new version of `radium` // TODO: Remove this once a new version of `bitvec` (which uses a new version of `radium`
// which doesn't have this problem) is released on crates.io. // which doesn't have this problem) is released on crates.io.
let radium_patch = toml::toml! { let radium_patch = toml::toml! {
radium = { git = "https://github.com/pezkuwichain/radium-0.7-fork.git", rev = "a5da15a15c90fd169d661d206cf0db592487f52b" } radium = { git = "https://github.com/paritytech/radium-0.7-fork", rev = "a5da15a15c90fd169d661d206cf0db592487f52b" }
}; };
let mut patch = wasm_workspace_toml let mut patch = wasm_workspace_toml
+2 -2
View File
@@ -7,8 +7,8 @@
//! third-parties, and are therefore subject to more variability. Any further resources may be added //! third-parties, and are therefore subject to more variability. Any further resources may be added
//! by opening a pull request to the `pezkuwi-sdk` repository. //! by opening a pull request to the `pezkuwi-sdk` repository.
//! //!
//! - [Pezkuwi NFT Marketplace Tutorial by Pezkuwi Fellow Shawn Tabrizi](https://www.shawntabrizi.com/bizinikiwi-collectables-workshop/) //! - [Pezkuwi NFT Marketplace Tutorial by Pezkuwi Fellow Shawn Tabrizi](https://www.shawntabrizi.com/substrate-collectables-workshop/)
//! - [HEZ Code School](https://pezkuwichain.io/docs/introduction) //! - [HEZ Code School](https://pezkuwichain.io/docs/introduction)
//! - [Pezkuwi Developers Github Organization](https://github.com/polkadot-developers/) //! - [Pezkuwi Developers Github Organization](https://github.com/polkadot-developers/)
//! - [Pezkuwi Blockchain Academy](https://github.com/pezkuwichain/pezkuwi_blockchain-academy) //! - [Pezkuwi Blockchain Academy](https://github.com/pezkuwichain/kurdistan_blockchain-akademy)
//! - [Pezkuwi Wiki](https://wiki.network.pezkuwichain.io/) //! - [Pezkuwi Wiki](https://wiki.network.pezkuwichain.io/)
+1 -1
View File
@@ -3,7 +3,7 @@
//! This guide will teach you how to enable storage weight reclaiming for a teyrchain. The //! This guide will teach you how to enable storage weight reclaiming for a teyrchain. The
//! explanations in this guide assume a project structure similar to the one detailed in //! explanations in this guide assume a project structure similar to the one detailed in
//! the [bizinikiwi documentation](crate::pezkuwi_sdk::bizinikiwi#anatomy-of-a-binary-crate). Full //! the [bizinikiwi documentation](crate::pezkuwi_sdk::bizinikiwi#anatomy-of-a-binary-crate). Full
//! technical details are available in the original [pull request](https://github.com/pezkuwichain/pezkuwi-sdk/issues/111). //! technical details are available in the original [pull request](https://github.com/pezkuwichain/pezkuwi-sdk/issues/257).
//! //!
//! # What is PoV reclaim? //! # What is PoV reclaim?
//! When a teyrchain submits a block to a relay chain like Pezkuwi or Kusama, it sends the block //! When a teyrchain submits a block to a relay chain like Pezkuwi or Kusama, it sends the block
+1 -1
View File
@@ -204,7 +204,7 @@
//! Idiomatic FRAME pallets often use Builder pattern to define their initial state. //! Idiomatic FRAME pallets often use Builder pattern to define their initial state.
//! //!
//! > The Pezkuwi Blockchain Academy's Rust entrance exam has a //! > The Pezkuwi Blockchain Academy's Rust entrance exam has a
//! > [section](https://github.com/pezkuwichain/pezkuwi_blockchain-academy/blob/main/src/m_builder.rs) //! > [section](https://github.com/pezkuwichain/kurdistan_blockchain-akademy/blob/main/src/m_builder.rs)
//! > on this that you can use to learn the Builder Pattern. //! > on this that you can use to learn the Builder Pattern.
//! //!
//! Let's see how we can implement a better test setup using this pattern. First, we define a //! Let's see how we can implement a better test setup using this pattern. First, we define a
+2 -2
View File
@@ -29,7 +29,7 @@
//! > To achieve this, we often use [`docify`](https://github.com/sam0x17/docify), a nifty invention //! > To achieve this, we often use [`docify`](https://github.com/sam0x17/docify), a nifty invention
//! > of `@sam0x17`. //! > of `@sam0x17`.
//! //!
//! Also see: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/109>. //! Also see: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/255>.
//! //!
//! ## Scope //! ## Scope
//! //!
@@ -132,7 +132,7 @@
//! So long as not deployed in `crates.io`, please notice that all of the information in this crate, //! So long as not deployed in `crates.io`, please notice that all of the information in this crate,
//! namely in [`crate::guides`] and such are compatible with the master branch of `pezkuwi-sdk`. A //! namely in [`crate::guides`] and such are compatible with the master branch of `pezkuwi-sdk`. A
//! few solutions have been proposed to improve this, please see //! few solutions have been proposed to improve this, please see
//! [here](https://github.com/pezkuwichain/pezkuwi-sdk/issues/146). //! [here](https://github.com/pezkuwichain/pezkuwi-sdk/issues/289).
//! //!
//! ## How to Develop Locally //! ## How to Develop Locally
//! //!
+3 -3
View File
@@ -89,7 +89,7 @@
//! build their WASM files as a part of normal build command (e.g. `cargo build`). Once built, the //! build their WASM files as a part of normal build command (e.g. `cargo build`). Once built, the
//! wasm file is placed in `./target/{debug|release}/wbuild/{runtime_name}/{runtime_name}.wasm`. //! wasm file is placed in `./target/{debug|release}/wbuild/{runtime_name}/{runtime_name}.wasm`.
//! //!
//! In order to ensure that the WASM build is **deterministic**, the [Bizinikiwi Runtime Toolbox (srtool)](https://github.com/pezkuwichain/srtool) can be used. //! In order to ensure that the WASM build is **deterministic**, the [Bizinikiwi Runtime Toolbox (srtool)](https://github.com/paritytech/srtool) can be used.
//! //!
//! ### Anatomy of a Binary Crate //! ### Anatomy of a Binary Crate
//! //!
@@ -108,7 +108,7 @@
//! //!
//! > The above two are conventions, not rules. //! > The above two are conventions, not rules.
//! //!
//! > See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/94> for an update on how the node side //! > See <https://github.com/pezkuwichain/pezkuwi-sdk/issues/241> for an update on how the node side
//! > components are being amalgamated. //! > components are being amalgamated.
//! //!
//! ## Teyrchain? //! ## Teyrchain?
@@ -130,7 +130,7 @@
//! - [`pezsc_consensus_aura`] //! - [`pezsc_consensus_aura`]
//! - [`pezsc_consensus_babe`] //! - [`pezsc_consensus_babe`]
//! - [`pezsc_consensus_grandpa`] //! - [`pezsc_consensus_grandpa`]
//! - [`pezsc_consensus_beefy`] (TODO: @adrian, add some high level docs <https://github.com/pezkuwichain/pezkuwi-sdk/issues/162>) //! - [`pezsc_consensus_beefy`] (TODO: @adrian, add some high level docs <https://github.com/pezkuwichain/pezkuwi-sdk/issues/305>)
//! - [`pezsc_consensus_manual_seal`] //! - [`pezsc_consensus_manual_seal`]
//! - [`pezsc_consensus_pow`] //! - [`pezsc_consensus_pow`]
+3 -3
View File
@@ -41,7 +41,7 @@
//! //!
//! [![Bizinikiwi-license](https://img.shields.io/badge/License-Apache2.0-blue)](https://github.com/pezkuwichain/pezkuwi-sdk/blob/master/bizinikiwi/LICENSE-APACHE2) //! [![Bizinikiwi-license](https://img.shields.io/badge/License-Apache2.0-blue)](https://github.com/pezkuwichain/pezkuwi-sdk/blob/master/bizinikiwi/LICENSE-APACHE2)
//! [![GitHub //! [![GitHub
//! Repo](https://img.shields.io/badge/github-frame-2324CC85)](https://github.com/pezkuwichain/pezkuwi-sdk/blob/master/bizinikiwi/frame) //! Repo](https://img.shields.io/badge/github-frame-2324CC85)](https://github.com/pezkuwichain/pezkuwi-sdk/blob/master/bizinikiwi/pezframe)
//! //!
//! [`frame`] is the framework used to create Bizinikiwi-based application logic, aka. runtimes. //! [`frame`] is the framework used to create Bizinikiwi-based application logic, aka. runtimes.
//! Learn more about the distinction of a runtime and node in //! Learn more about the distinction of a runtime and node in
@@ -118,8 +118,8 @@
//! //!
//! - [`parity-scale-codec`](https://github.com/pezkuwichain/parity-scale-codec) //! - [`parity-scale-codec`](https://github.com/pezkuwichain/parity-scale-codec)
//! - [`parity-db`](https://github.com/pezkuwichain/parity-db) //! - [`parity-db`](https://github.com/pezkuwichain/parity-db)
//! - [`trie`](https://github.com/pezkuwichain/trie) //! - [`trie`](https://github.com/paritytech/trie)
//! - [`parity-common`](https://github.com/pezkuwichain/parity-common) //! - [`parity-common`](https://github.com/paritytech/parity-common)
//! //!
//! ## Trophy Section: Notable Downstream Projects //! ## Trophy Section: Notable Downstream Projects
//! //!
+1 -1
View File
@@ -1,6 +1,6 @@
//! # Smart Contracts //! # Smart Contracts
//! //!
//! TODO: @cmichi <https://github.com/pezkuwichain/pezkuwi-sdk/issues/161> //! TODO: @cmichi <https://github.com/pezkuwichain/pezkuwi-sdk/issues/304>
//! //!
//! - WASM and EVM based, pezpallet-contracts and pezpallet-evm. //! - WASM and EVM based, pezpallet-contracts and pezpallet-evm.
//! - single-daap-chain, transition from ink! to FRAME. //! - single-daap-chain, transition from ink! to FRAME.
+2 -2
View File
@@ -9,10 +9,10 @@
//! //!
//! The following templates are maintained as a part of the `pezkuwi-sdk` repository: //! The following templates are maintained as a part of the `pezkuwi-sdk` repository:
//! //!
//! - [`minimal-template`](https://github.com/pezkuwichain/pezkuwi-sdk/issues/25): A minimal //! - [`minimal-template`](https://github.com/pezkuwichain/pezkuwi-sdk/issues/195): A minimal
//! template that contains the least amount of features to be a functioning blockchain. Suitable //! template that contains the least amount of features to be a functioning blockchain. Suitable
//! for learning and testing. //! for learning and testing.
//! - [`solochain-template`](https://github.com/pezkuwichain/pezkuwi-sdk/issues/25): Formerly known //! - [`solochain-template`](https://github.com/pezkuwichain/pezkuwi-sdk/issues/195): Formerly known
//! as "bizinikiwi-node-template", is a white-labeled bizinikiwi-based blockchain (aka. solochain) //! as "bizinikiwi-node-template", is a white-labeled bizinikiwi-based blockchain (aka. solochain)
//! that contains moderate features, such as a basic consensus engine and some FRAME pallets. This //! that contains moderate features, such as a basic consensus engine and some FRAME pallets. This
//! template can act as a good starting point for those who want to launch a solochain. //! template can act as a good starting point for those who want to launch a solochain.
+1 -1
View File
@@ -5,7 +5,7 @@
//! //!
//! ## Overview //! ## Overview
//! //!
//! XCM is a standard, specification of which lives in the [xcm format repo](https://github.com/pezkuwichain/xcm-format). //! XCM is a standard, specification of which lives in the [xcm format repo](https://github.com/polkadot-fellows/xcm-format).
//! It's agnostic both in programming language and blockchain platform, which means it could be used //! It's agnostic both in programming language and blockchain platform, which means it could be used
//! in Rust in Pezkuwi, or in Go or C++ in any other platform like Cosmos or Ethereum. //! in Rust in Pezkuwi, or in Go or C++ in any other platform like Cosmos or Ethereum.
//! //!
+1 -1
View File
@@ -1,7 +1,7 @@
//! # Bizinikiwi CLI //! # Bizinikiwi CLI
//! //!
//! Let's see some examples of typical CLI arguments used when setting up and running a //! Let's see some examples of typical CLI arguments used when setting up and running a
//! Bizinikiwi-based blockchain. We use the [`solochain-template`](https://github.com/pezkuwichain/pezkuwi-sdk/issues/25) //! Bizinikiwi-based blockchain. We use the [`solochain-template`](https://github.com/pezkuwichain/pezkuwi-sdk/issues/195)
//! on these examples. //! on these examples.
//! //!
//! #### Checking the available CLI arguments //! #### Checking the available CLI arguments
@@ -6,7 +6,7 @@
//! ## Background //! ## Background
//! //!
//! Pezkuwi-SDK offers the ability to query and subscribe storages directly. However what it does //! Pezkuwi-SDK offers the ability to query and subscribe storages directly. However what it does
//! not have is [view functions](https://github.com/pezkuwichain/pezkuwi-sdk/issues/101). This is an //! not have is [view functions](https://github.com/pezkuwichain/pezkuwi-sdk/issues/247). This is an
//! essential feature to avoid duplicated logic between runtime and the client SDK. Custom RPC was //! essential feature to avoid duplicated logic between runtime and the client SDK. Custom RPC was
//! used as a solution. It allow the RPC node to expose new RPCs that clients can be used to query //! used as a solution. It allow the RPC node to expose new RPCs that clients can be used to query
//! computed properties. //! computed properties.
+1 -1
View File
@@ -151,5 +151,5 @@
//! } //! }
//! ``` //! ```
//! //!
//! Please read [this issue](https://github.com/pezkuwichain/pezkuwi-sdk/issues/155) for one //! Please read [this issue](https://github.com/pezkuwichain/pezkuwi-sdk/issues/298) for one
//! instance of the consensus issues caused by this mistake. //! instance of the consensus issues caused by this mistake.
@@ -84,7 +84,7 @@
//! //!
//! Consider the fact that in principle, an offchain worker code written using the above API is no //! Consider the fact that in principle, an offchain worker code written using the above API is no
//! different than an equivalent written with an _actual offchain interaction library_, such as //! different than an equivalent written with an _actual offchain interaction library_, such as
//! [Pezkuwi-JS](https://polkadot.js.org/docs/), or any of the other ones listed [here](https://github.com/bizinikiwi-developer-hub/awesome-bizinikiwi?tab=readme-ov-file#client-libraries). //! [Pezkuwi-JS](https://polkadot.js.org/docs/), or any of the other ones listed [here](https://github.com/substrate-developer-hub/awesome-substrate?tab=readme-ov-file#client-libraries).
//! //!
//! They can both read from the state, and have no means of updating the state, other than the route //! They can both read from the state, and have no means of updating the state, other than the route
//! of submitting an extrinsic to the chain. Therefore, it is worth thinking twice before embedding //! of submitting an extrinsic to the chain. Therefore, it is worth thinking twice before embedding
@@ -5,7 +5,7 @@
//! //!
//! > As of now, many of these important types are generated within the internals of //! > As of now, many of these important types are generated within the internals of
//! > [`construct_runtime`], and there is no easy way for you to visually know they exist. //! > [`construct_runtime`], and there is no easy way for you to visually know they exist.
//! > [#pezkuwi-sdk#1378](https://github.com/pezkuwichain/pezkuwi-sdk/issues/105) is meant to //! > [#pezkuwi-sdk#1378](https://github.com/pezkuwichain/pezkuwi-sdk/issues/251) is meant to
//! > significantly improve this. Exploring the rust-docs of a runtime, such as [`runtime`] which is //! > significantly improve this. Exploring the rust-docs of a runtime, such as [`runtime`] which is
//! > defined in this module is as of now the best way to learn about these types. //! > defined in this module is as of now the best way to learn about these types.
//! //!
@@ -104,7 +104,7 @@
#![doc = docify::embed!("./src/reference_docs/frame_runtime_types.rs", custom_runtime_call_usages)] #![doc = docify::embed!("./src/reference_docs/frame_runtime_types.rs", custom_runtime_call_usages)]
//! //!
//! > Once Rust's "_Associated Type Bounds RFC_" is usable, this syntax can be used to //! > Once Rust's "_Associated Type Bounds RFC_" is usable, this syntax can be used to
//! > simplify the above scenario. See [this](https://github.com/pezkuwichain/pezkuwi-sdk/issues/133) //! > simplify the above scenario. See [this](https://github.com/pezkuwichain/pezkuwi-sdk/issues/278)
//! > issue for more information. //! > issue for more information.
//! //!
//! ### Asserting Equality of Multiple Runtime Composite Enums //! ### Asserting Equality of Multiple Runtime Composite Enums
@@ -87,8 +87,8 @@
//! - Touching too many storage keys and resulting in an excessively large PoV. //! - Touching too many storage keys and resulting in an excessively large PoV.
//! - Taking too long to execute. //! - Taking too long to execute.
//! //!
//! [`try-runtime-cli`](https://github.com/pezkuwichain/try-runtime-cli) has a sub-command //! [`try-runtime-cli`](https://github.com/paritytech/try-runtime-cli) has a sub-command
//! [`on-runtime-upgrade`](https://pezkuwichain.github.io/try-runtime-cli/try_runtime_core/commands/enum.Action.html#variant.OnRuntimeUpgrade) //! [`on-runtime-upgrade`](https://paritytech.github.io/try-runtime-cli/try_runtime_core/commands/enum.Action.html#variant.OnRuntimeUpgrade)
//! which is designed to help with exactly this. //! which is designed to help with exactly this.
//! //!
//! Developers MUST run this command before deploying migrations to ensure they will not //! Developers MUST run this command before deploying migrations to ensure they will not
@@ -100,7 +100,7 @@
//! //!
//! ### Note on the Manipulability of PoV Size and Execution Time //! ### Note on the Manipulability of PoV Size and Execution Time
//! //!
//! While [`try-runtime-cli`](https://github.com/pezkuwichain/try-runtime-cli) can help ensure with //! While [`try-runtime-cli`](https://github.com/paritytech/try-runtime-cli) can help ensure with
//! very high certainty that a migration will succeed given **existing** on-chain state, it cannot //! very high certainty that a migration will succeed given **existing** on-chain state, it cannot
//! prevent a malicious actor from manipulating state in a way that will cause the migration to take //! prevent a malicious actor from manipulating state in a way that will cause the migration to take
//! longer or produce a PoV much larger than previously measured. //! longer or produce a PoV much larger than previously measured.
+1 -1
View File
@@ -100,7 +100,7 @@
//! //!
//! You may notice the trait [`Currency`](`pezframe_support::traits::Currency`) with similar //! You may notice the trait [`Currency`](`pezframe_support::traits::Currency`) with similar
//! functionality is also used in the codebase, however this trait is deprecated and existing logic //! functionality is also used in the codebase, however this trait is deprecated and existing logic
//! is in the process of being migrated to [`fungible`](`pezframe_support::traits::fungible`) ([tracking issue](https://github.com/pezkuwichain/pezkuwi-sdk/issues/102)). //! is in the process of being migrated to [`fungible`](`pezframe_support::traits::fungible`) ([tracking issue](https://github.com/pezkuwichain/pezkuwi-sdk/issues/248)).
//! //!
//! ## Fungible Token Trait Implementations in FRAME //! ## Fungible Token Trait Implementations in FRAME
//! //!
+5 -5
View File
@@ -30,7 +30,7 @@
//! //!
//! > The notorious `service.rs` in any node template is a good example of this. //! > The notorious `service.rs` in any node template is a good example of this.
//! //!
//! A [trend](https://github.com/pezkuwichain/pezkuwi-sdk/issues/97) has already been undergoing in //! A [trend](https://github.com/pezkuwichain/pezkuwi-sdk/issues/243) has already been undergoing in
//! order to de-couple the node and the runtime for a long time. The north star of this effort is //! order to de-couple the node and the runtime for a long time. The north star of this effort is
//! twofold : //! twofold :
//! //!
@@ -174,7 +174,7 @@
//! [`pezsc_consensus_manual_seal`] under the hood, and has no restrictions on the runtime's //! [`pezsc_consensus_manual_seal`] under the hood, and has no restrictions on the runtime's
//! consensus. //! consensus.
//! //!
//! [This](https://github.com/pezkuwichain/pezkuwi-sdk/issues/143) future improvement to OmniNode //! [This](https://github.com/pezkuwichain/pezkuwi-sdk/issues/286) future improvement to OmniNode
//! aims to make such checks automatic. //! aims to make such checks automatic.
//! //!
//! ### Runtime conventions //! ### Runtime conventions
@@ -196,6 +196,6 @@
//! [`--dev-block-time`]: pezkuwi_omni_node_lib::cli::Cli::dev_block_time //! [`--dev-block-time`]: pezkuwi_omni_node_lib::cli::Cli::dev_block_time
//! [`pezkuwi-omni-node`]: https://crates.io/crates/polkadot-omni-node //! [`pezkuwi-omni-node`]: https://crates.io/crates/polkadot-omni-node
//! [`chain-spec-builder`]: https://crates.io/crates/pezstaging-chain-spec-builder //! [`chain-spec-builder`]: https://crates.io/crates/pezstaging-chain-spec-builder
//! [`pezcumulus-pezpallet-teyrchain-system`]: https://docs.rs/pezcumulus-pezpallet-parachain-system/latest/pezcumulus_pezpallet_parachain_system/ //! [`pezcumulus-pezpallet-teyrchain-system`]: https://docs.rs/cumulus-pallet-parachain-system/latest/cumulus_pallet_parachain_system/
//! [`pezframe-system`]: https://docs.rs/pezframe-system/latest/pezframe_system/ //! [`pezframe-system`]: https://docs.rs/frame-system/latest/frame_system/
//! [`block number`]: https://docs.rs/pezframe-system/latest/pezframe_system/pezpallet/storage_types/struct.Number.html //! [`block number`]: https://docs.rs/frame-system/latest/frame_system/pallet/storage_types/struct.Number.html
@@ -108,7 +108,7 @@
//! //!
//! ## Additional Resources //! ## Additional Resources
//! //!
//! - <https://github.com/pezkuwichain/pezkuwi-sdk/issues/13> //! - <https://github.com/pezkuwichain/pezkuwi-sdk/issues/326>
//! - [Bizinikiwi Seminar - Traits and Generic Types](https://www.youtube.com/watch?v=6cp10jVWNl4) //! - [Bizinikiwi Seminar - Traits and Generic Types](https://www.youtube.com/watch?v=6cp10jVWNl4)
//! - <https://exchange.pezkuwichain.app/questions/2228/type-casting-to-trait-t-as-config> //! - <https://exchange.pezkuwichain.app/questions/2228/type-casting-to-trait-t-as-config>
#![allow(unused)] #![allow(unused)]
@@ -115,7 +115,7 @@
//! infrastructure of native code. However, neither of the two arguments strongly hold and the //! infrastructure of native code. However, neither of the two arguments strongly hold and the
//! native runtime is being fully removed from the node-sdk. //! native runtime is being fully removed from the node-sdk.
//! //!
//! See: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/97> //! See: <https://github.com/pezkuwichain/pezkuwi-sdk/issues/243>
//! //!
//! > Also, note that the flags [`pezsc_cli::ExecutionStrategy::Native`] is already a noop and all //! > Also, note that the flags [`pezsc_cli::ExecutionStrategy::Native`] is already a noop and all
//! > chains built with Bizinikiwi only use WASM execution. //! > chains built with Bizinikiwi only use WASM execution.
+1 -1
View File
@@ -516,7 +516,7 @@ pub mod pezpallet {
pub type PalletOperatingMode<T: Config<I>, I: 'static = ()> = pub type PalletOperatingMode<T: Config<I>, I: 'static = ()> =
StorageValue<_, MessagesOperatingMode, ValueQuery>; StorageValue<_, MessagesOperatingMode, ValueQuery>;
// TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/89: let's limit number of // TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/236: let's limit number of
// possible opened lanes && use it to constraint maps below // possible opened lanes && use it to constraint maps below
/// Map of lane id => inbound lane data. /// Map of lane id => inbound lane data.
+1 -1
View File
@@ -202,7 +202,7 @@ parameter_types! {
#[derive_impl(pezframe_system::config_preludes::TestDefaultConfig)] #[derive_impl(pezframe_system::config_preludes::TestDefaultConfig)]
impl pezframe_system::Config for TestRuntime { impl pezframe_system::Config for TestRuntime {
type Block = ThisChainBlock; type Block = ThisChainBlock;
// TODO: remove when https://github.com/pezkuwichain/pezkuwi-sdk/issues/120 merged // TODO: remove when https://github.com/pezkuwichain/pezkuwi-sdk/issues/265 merged
type BlockHashCount = ConstU32<10>; type BlockHashCount = ConstU32<10>;
type AccountData = pezpallet_balances::AccountData<ThisChainBalance>; type AccountData = pezpallet_balances::AccountData<ThisChainBalance>;
type DbWeight = DbWeight; type DbWeight = DbWeight;
@@ -225,7 +225,7 @@ impl<T: Config<I>, I: 'static> Pezpallet<T, I> {
return; return;
} }
// TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/83 we either need fishermens // TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/231 we either need fishermens
// to watch this rule violation (suspended, but keep sending new messages), or we need a // to watch this rule violation (suspended, but keep sending new messages), or we need a
// hard limit for that like other XCM queues have // hard limit for that like other XCM queues have
+4 -4
View File
@@ -200,7 +200,7 @@ pub mod pezpallet {
/// Runtime's universal location. /// Runtime's universal location.
type UniversalLocation: Get<InteriorLocation>; type UniversalLocation: Get<InteriorLocation>;
// TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/80 remove `ChainId` and // TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/228 remove `ChainId` and
// replace it with the `NetworkId` - then we'll be able to use // replace it with the `NetworkId` - then we'll be able to use
// `T as pezpallet_bridge_messages::Config<T::BridgeMessagesPalletInstance>::BridgedChain::NetworkId` // `T as pezpallet_bridge_messages::Config<T::BridgeMessagesPalletInstance>::BridgedChain::NetworkId`
/// Bridged network as relative location of bridged `GlobalConsensus`. /// Bridged network as relative location of bridged `GlobalConsensus`.
@@ -295,7 +295,7 @@ pub mod pezpallet {
/// The states after this call: bridge is `Opened`, outbound lane is `Opened`, inbound lane /// The states after this call: bridge is `Opened`, outbound lane is `Opened`, inbound lane
/// is `Opened`. /// is `Opened`.
#[pezpallet::call_index(0)] #[pezpallet::call_index(0)]
#[pezpallet::weight(Weight::zero())] // TODO:(bridges-v2) - https://github.com/pezkuwichain/pezkuwi-sdk/issues/87 - add benchmarks impl #[pezpallet::weight(Weight::zero())] // TODO:(bridges-v2) - https://github.com/pezkuwichain/pezkuwi-sdk/issues/234 - add benchmarks impl
pub fn open_bridge( pub fn open_bridge(
origin: OriginFor<T>, origin: OriginFor<T>,
bridge_destination_universal_location: Box<VersionedInteriorLocation>, bridge_destination_universal_location: Box<VersionedInteriorLocation>,
@@ -333,7 +333,7 @@ pub mod pezpallet {
/// The states after this call: everything is either `Closed`, or purged from the /// The states after this call: everything is either `Closed`, or purged from the
/// runtime storage. /// runtime storage.
#[pezpallet::call_index(1)] #[pezpallet::call_index(1)]
#[pezpallet::weight(Weight::zero())] // TODO:(bridges-v2) - https://github.com/pezkuwichain/pezkuwi-sdk/issues/87 - add benchmarks impl #[pezpallet::weight(Weight::zero())] // TODO:(bridges-v2) - https://github.com/pezkuwichain/pezkuwi-sdk/issues/234 - add benchmarks impl
pub fn close_bridge( pub fn close_bridge(
origin: OriginFor<T>, origin: OriginFor<T>,
bridge_destination_universal_location: Box<VersionedInteriorLocation>, bridge_destination_universal_location: Box<VersionedInteriorLocation>,
@@ -343,7 +343,7 @@ pub mod pezpallet {
let locations = let locations =
Self::bridge_locations_from_origin(origin, bridge_destination_universal_location)?; Self::bridge_locations_from_origin(origin, bridge_destination_universal_location)?;
// TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/81 - may do refund here, if // TODO: https://github.com/pezkuwichain/pezkuwi-sdk/issues/229 - may do refund here, if
// bridge/lanes are already closed + for messages that are not pruned // bridge/lanes are already closed + for messages that are not pruned
// update bridge metadata - this also guarantees that the bridge is in the proper state // update bridge metadata - this also guarantees that the bridge is in the proper state
+4 -4
View File
@@ -108,7 +108,7 @@ pub trait Chain: Send + Sync + 'static {
/// A type that fulfills the abstract idea of what a Bizinikiwi block number is. /// A type that fulfills the abstract idea of what a Bizinikiwi block number is.
// Constraints come from the associated Number type of `pezsp_runtime::traits::Header` // Constraints come from the associated Number type of `pezsp_runtime::traits::Header`
// See here for more info: // See here for more info:
// https://docs.rs/sp-runtime/latest/pezsp_runtime/traits/trait.Header.html#associatedtype.Number // https://docs.rs/sp-runtime/latest/sp_runtime/traits/trait.Header.html#associatedtype.Number
// //
// Note that the `AsPrimitive<usize>` trait is required by the GRANDPA justification // Note that the `AsPrimitive<usize>` trait is required by the GRANDPA justification
// verifier, and is not usually part of a Bizinikiwi Header's Number type. // verifier, and is not usually part of a Bizinikiwi Header's Number type.
@@ -129,7 +129,7 @@ pub trait Chain: Send + Sync + 'static {
/// A type that fulfills the abstract idea of what a Bizinikiwi hash is. /// A type that fulfills the abstract idea of what a Bizinikiwi hash is.
// Constraints come from the associated Hash type of `pezsp_runtime::traits::Header` // Constraints come from the associated Hash type of `pezsp_runtime::traits::Header`
// See here for more info: // See here for more info:
// https://docs.rs/sp-runtime/latest/pezsp_runtime/traits/trait.Header.html#associatedtype.Hash // https://docs.rs/sp-runtime/latest/sp_runtime/traits/trait.Header.html#associatedtype.Hash
type Hash: Parameter type Hash: Parameter
+ Member + Member
+ MaybeSerializeDeserialize + MaybeSerializeDeserialize
@@ -147,12 +147,12 @@ pub trait Chain: Send + Sync + 'static {
/// that produces hashes) is. /// that produces hashes) is.
// Constraints come from the associated Hashing type of `pezsp_runtime::traits::Header` // Constraints come from the associated Hashing type of `pezsp_runtime::traits::Header`
// See here for more info: // See here for more info:
// https://docs.rs/sp-runtime/latest/pezsp_runtime/traits/trait.Header.html#associatedtype.Hashing // https://docs.rs/sp-runtime/latest/sp_runtime/traits/trait.Header.html#associatedtype.Hashing
type Hasher: HashT<Output = Self::Hash>; type Hasher: HashT<Output = Self::Hash>;
/// A type that fulfills the abstract idea of what a Bizinikiwi header is. /// A type that fulfills the abstract idea of what a Bizinikiwi header is.
// See here for more info: // See here for more info:
// https://docs.rs/sp-runtime/latest/pezsp_runtime/traits/trait.Header.html // https://docs.rs/sp-runtime/latest/sp_runtime/traits/trait.Header.html
type Header: Parameter type Header: Parameter
+ HeaderT<Number = Self::BlockNumber, Hash = Self::Hash> + HeaderT<Number = Self::BlockNumber, Hash = Self::Hash>
+ HeaderIdProvider<Self::Header> + HeaderIdProvider<Self::Header>
@@ -31,7 +31,7 @@ pub trait Environment<C: Chain>: Send + Sync {
async fn header_id_by_hash(&self, hash: HashOf<C>) -> Result<HeaderIdOf<C>, Error>; async fn header_id_by_hash(&self, hash: HashOf<C>) -> Result<HeaderIdOf<C>, Error>;
} }
// TODO (https://github.com/pezkuwichain/pezkuwi-sdk/issues/84): remove `Environment` trait // TODO (https://github.com/pezkuwichain/pezkuwi-sdk/issues/232): remove `Environment` trait
// after test client is implemented // after test client is implemented
#[async_trait] #[async_trait]
impl<C: Chain, T: crate::client::Client<C>> Environment<C> for T { impl<C: Chain, T: crate::client::Client<C>> Environment<C> for T {
@@ -78,7 +78,7 @@ impl<C: Chain, E: Environment<C>> TransactionTracker<C, E> {
Self { environment, stall_timeout, transaction_hash, subscription } Self { environment, stall_timeout, transaction_hash, subscription }
} }
// TODO (https://github.com/pezkuwichain/pezkuwi-sdk/issues/84): remove me after // TODO (https://github.com/pezkuwichain/pezkuwi-sdk/issues/232): remove me after
// test client is implemented // test client is implemented
/// Converts self into tracker with different environment. /// Converts self into tracker with different environment.
pub fn switch_environment<NewE: Environment<C>>( pub fn switch_environment<NewE: Environment<C>>(
@@ -73,7 +73,7 @@ pub enum Destination {
AccountId32 { id: [u8; 32] }, AccountId32 { id: [u8; 32] },
/// The funds will deposited into the sovereign account of destination teyrchain `para_id` on /// The funds will deposited into the sovereign account of destination teyrchain `para_id` on
/// AssetHub, Account `id` on the destination teyrchain will receive the funds via a /// AssetHub, Account `id` on the destination teyrchain will receive the funds via a
/// reserve-backed transfer. See <https://github.com/pezkuwichain/xcm-format#depositreserveasset> /// reserve-backed transfer. See <https://github.com/polkadot-fellows/xcm-format#depositreserveasset>
ForeignAccountId32 { ForeignAccountId32 {
para_id: u32, para_id: u32,
id: [u8; 32], id: [u8; 32],
@@ -82,7 +82,7 @@ pub enum Destination {
}, },
/// The funds will deposited into the sovereign account of destination teyrchain `para_id` on /// The funds will deposited into the sovereign account of destination teyrchain `para_id` on
/// AssetHub, Account `id` on the destination teyrchain will receive the funds via a /// AssetHub, Account `id` on the destination teyrchain will receive the funds via a
/// reserve-backed transfer. See <https://github.com/pezkuwichain/xcm-format#depositreserveasset> /// reserve-backed transfer. See <https://github.com/polkadot-fellows/xcm-format#depositreserveasset>
ForeignAccountId20 { ForeignAccountId20 {
para_id: u32, para_id: u32,
id: [u8; 20], id: [u8; 20],
+1 -1
View File
@@ -307,7 +307,7 @@ pub struct RunCmd {
/// building blocks that do not fit in the max_pov_size. It is a percentage of the max_pov_size /// building blocks that do not fit in the max_pov_size. It is a percentage of the max_pov_size
/// configuration of the relay-chain. /// configuration of the relay-chain.
/// ///
/// It will be removed once <https://github.com/pezkuwichain/pezkuwi-sdk/issues/23> is fixed. /// It will be removed once <https://github.com/pezkuwichain/pezkuwi-sdk/issues/193> is fixed.
#[arg(long)] #[arg(long)]
pub experimental_max_pov_percentage: Option<u32>, pub experimental_max_pov_percentage: Option<u32>,
@@ -224,7 +224,7 @@ where
// produce multiple blocks per slot which very likely would fail on chain. Thus, we have // produce multiple blocks per slot which very likely would fail on chain. Thus, we have
// this "hack" to only produce one block per slot per relay chain fork. // this "hack" to only produce one block per slot per relay chain fork.
// //
// With https://github.com/pezkuwichain/pezkuwi-sdk/issues/127 this implementation will be // With https://github.com/pezkuwichain/pezkuwi-sdk/issues/272 this implementation will be
// obsolete and also the underlying issue will be fixed. // obsolete and also the underlying issue will be fixed.
if last_processed_slot >= *claim.slot() if last_processed_slot >= *claim.slot()
&& last_relay_chain_block < *relay_parent_header.number() && last_relay_chain_block < *relay_parent_header.number()
@@ -102,7 +102,7 @@ pub struct Params<BI, CIDP, Client, Backend, RClient, CHP, Proposer, CS> {
/// Whether we should reinitialize the collator config (i.e. we are transitioning to aura). /// Whether we should reinitialize the collator config (i.e. we are transitioning to aura).
pub reinitialize: bool, pub reinitialize: bool,
/// The maximum percentage of the maximum PoV size that the collator can use. /// The maximum percentage of the maximum PoV size that the collator can use.
/// It will be removed once <https://github.com/pezkuwichain/pezkuwi-sdk/issues/23> is fixed. /// It will be removed once <https://github.com/pezkuwichain/pezkuwi-sdk/issues/193> is fixed.
pub max_pov_percentage: Option<u32>, pub max_pov_percentage: Option<u32>,
} }
@@ -429,7 +429,7 @@ where
} else { } else {
// Set the block limit to 85% of the maximum PoV size. // Set the block limit to 85% of the maximum PoV size.
// //
// Once https://github.com/pezkuwichain/pezkuwi-sdk/issues/23 issue is // Once https://github.com/pezkuwichain/pezkuwi-sdk/issues/193 issue is
// fixed, the reservation should be removed. // fixed, the reservation should be removed.
validation_data.max_pov_size * 85 / 100 validation_data.max_pov_size * 85 / 100
} as usize; } as usize;

Some files were not shown because too many files have changed in this diff Show More