mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-17 02:01:02 +00:00
Version bump, fixes (#572)
* Bump version, don't propose invalid blocks * Fix build. * Fixes. * More fixes. * Fix tests. * Fix more tests * More tests fixed
This commit is contained in:
@@ -147,8 +147,10 @@ impl<B: LocalBackend<Block>> PolkadotApi for Client<B, LocalCallExecutor<B, Nati
|
||||
fn inherent_extrinsics(&self, at: &BlockId, inherent_data: InherentData) -> Result<Vec<UncheckedExtrinsic>> {
|
||||
use codec::{Encode, Decode};
|
||||
|
||||
let runtime_version = self.runtime_version_at(at)?;
|
||||
|
||||
with_runtime!(self, at, || {
|
||||
let extrinsics = ::runtime::inherent_extrinsics(inherent_data);
|
||||
let extrinsics = ::runtime::inherent_extrinsics(inherent_data, runtime_version);
|
||||
extrinsics.into_iter()
|
||||
.map(|x| x.encode()) // get encoded representation
|
||||
.map(|x| Decode::decode(&mut &x[..])) // get byte-vec equivalent to extrinsic
|
||||
|
||||
@@ -111,7 +111,7 @@ pub struct Concrete;
|
||||
pub const VERSION: RuntimeVersion = RuntimeVersion {
|
||||
spec_name: ver_str!("polkadot"),
|
||||
impl_name: ver_str!("parity-polkadot"),
|
||||
authoring_version: 2,
|
||||
authoring_version: 1,
|
||||
spec_version: 4,
|
||||
impl_version: 0,
|
||||
};
|
||||
@@ -250,7 +250,7 @@ pub mod api {
|
||||
apply_extrinsic => |extrinsic| super::Executive::apply_extrinsic(extrinsic),
|
||||
execute_block => |block| super::Executive::execute_block(block),
|
||||
finalise_block => |()| super::Executive::finalise_block(),
|
||||
inherent_extrinsics => |inherent| super::inherent_extrinsics(inherent),
|
||||
inherent_extrinsics => |(inherent, version)| super::inherent_extrinsics(inherent, version),
|
||||
validator_count => |()| super::Session::validator_count(),
|
||||
validators => |()| super::Session::validators()
|
||||
);
|
||||
|
||||
@@ -22,9 +22,10 @@ use runtime_primitives::traits::{Checkable, AuxLookup};
|
||||
use timestamp::Call as TimestampCall;
|
||||
use parachains::Call as ParachainsCall;
|
||||
use staking::Call as StakingCall;
|
||||
use version::RuntimeVersion;
|
||||
|
||||
/// Produces the list of inherent extrinsics.
|
||||
pub fn inherent_extrinsics(data: ::primitives::InherentData) -> Vec<UncheckedExtrinsic> {
|
||||
pub fn inherent_extrinsics(data: ::primitives::InherentData, runtime_version: RuntimeVersion) -> Vec<UncheckedExtrinsic> {
|
||||
let make_inherent = |function| UncheckedExtrinsic::new(
|
||||
Extrinsic {
|
||||
signed: Default::default(),
|
||||
@@ -39,7 +40,7 @@ pub fn inherent_extrinsics(data: ::primitives::InherentData) -> Vec<UncheckedExt
|
||||
make_inherent(Call::Parachains(ParachainsCall::set_heads(data.parachain_heads))),
|
||||
];
|
||||
|
||||
if !data.offline_indices.is_empty() {
|
||||
if !data.offline_indices.is_empty() && runtime_version.spec_version == 4 {
|
||||
inherent.push(make_inherent(
|
||||
Call::Staking(StakingCall::note_missed_proposal(data.offline_indices))
|
||||
));
|
||||
|
||||
@@ -64,6 +64,7 @@ fn staging_testnet_config_genesis() -> GenesisConfig {
|
||||
validator_count: 12,
|
||||
sessions_per_era: 12, // 1 hour per era
|
||||
bonding_duration: 24, // 1 day per bond.
|
||||
offline_slash_grace: 0,
|
||||
}),
|
||||
democracy: Some(DemocracyConfig {
|
||||
launch_period: 12 * 60 * 24, // 1 day per public referendum
|
||||
@@ -139,6 +140,7 @@ fn testnet_genesis(initial_authorities: Vec<AuthorityId>) -> GenesisConfig {
|
||||
bonding_duration: 2,
|
||||
early_era_slash: 0,
|
||||
session_reward: 0,
|
||||
offline_slash_grace: 0,
|
||||
}),
|
||||
democracy: Some(DemocracyConfig {
|
||||
launch_period: 9,
|
||||
|
||||
Reference in New Issue
Block a user