mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-30 15:27:57 +00:00
Relative slots (#2820)
* Initial work on relative slots for BABE * More work * Update core/consensus/babe/src/lib.rs `Aura` → `Babe` Co-Authored-By: Pierre Krieger <pierre.krieger1708@gmail.com> * More work on relative slots * Add missing field in test-runtime * Bump `impl_version` and `authoring_version` * Fix compile errors and warnings * Upgrade dependencies * Update dependencies more * Revert some updates to dependencies Somehow, those broke the build * Fix compilation errors * `Duration` → `u128` in calculations * `slot_duration` is in milleseconds, not seconds * Median algorithm: ignore blocks with slot_num < sl * Fix silly compile error * Store a duration, rather than an instant It is more useful * Fix compilation errors * `INVERSE_NANO` → `NANOS_PER_SEC` Also: `1000_000_000` → `1_000_000_000` Suggested-by: Niklas Adolfsson <niklasadolfsson1@gmail.com> * Un-bump `authoring_version` * Disable median algorithm when `median_required_blocks` is 0 Otherwise it would panic. * Apply suggestions from code review Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com> * Simplify panic * Fix build error * Create `SignedDuration` struct for signed `Duration` values. Suggested-by: Bastian Köcher * Refactor median algorithm into separate function * Add issues for FIXMEs and respond to code review * Fix minor warnings
This commit is contained in:
@@ -51,6 +51,15 @@ pub struct BabeConfiguration {
|
||||
///
|
||||
/// Dynamic thresholds may be supported in the future.
|
||||
pub threshold: u64,
|
||||
|
||||
/// The minimum number of blocks that must be received before running the
|
||||
/// median algorithm to compute the offset between the on-chain time and the
|
||||
/// local time. Currently, only the value provided by this type at genesis
|
||||
/// will be used, but this is subject to change.
|
||||
///
|
||||
/// Blocks less than `self.median_required_blocks` must be generated by an
|
||||
/// *initial validator* ― that is, a node that was a validator at genesis.
|
||||
pub median_required_blocks: u64,
|
||||
}
|
||||
|
||||
#[cfg(feature = "std")]
|
||||
|
||||
Reference in New Issue
Block a user