Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Update substrate #457

Merged
merged 1 commit into from
Oct 3, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
328 changes: 191 additions & 137 deletions Cargo.lock

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions cli/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -116,12 +116,12 @@ pub fn run<W>(worker: W, version: cli::VersionInfo) -> error::Result<()> where
}.map_err(|e| format!("{:?}", e))
}),
cli::ParseAndPrepare::BuildSpec(cmd) => cmd.run(load_spec),
cli::ParseAndPrepare::ExportBlocks(cmd) => cmd.run_with_builder::<(), _, _, _, _, _>(|config|
cli::ParseAndPrepare::ExportBlocks(cmd) => cmd.run_with_builder::<(), _, _, _, _, _, _>(|config|
Ok(service::new_chain_ops(config)?), load_spec, worker),
cli::ParseAndPrepare::ImportBlocks(cmd) => cmd.run_with_builder::<(), _, _, _, _, _>(|config|
cli::ParseAndPrepare::ImportBlocks(cmd) => cmd.run_with_builder::<(), _, _, _, _, _, _>(|config|
Ok(service::new_chain_ops(config)?), load_spec, worker),
cli::ParseAndPrepare::PurgeChain(cmd) => cmd.run(load_spec),
cli::ParseAndPrepare::RevertChain(cmd) => cmd.run_with_builder::<(), _, _, _, _>(|config|
cli::ParseAndPrepare::RevertChain(cmd) => cmd.run_with_builder::<(), _, _, _, _, _>(|config|
Ok(service::new_chain_ops(config)?), load_spec),
cli::ParseAndPrepare::CustomCommand(PolkadotSubCommands::ValidationWorker(args)) => {
service::run_validation_worker(&args.mem_id)?;
Expand Down
2 changes: 1 addition & 1 deletion runtime/src/claims.rs
Original file line number Diff line number Diff line change
Expand Up @@ -363,7 +363,7 @@ mod tests {
with_externalities(&mut new_test_ext(), || {
assert_eq!(Claims::total(), 100);
assert_eq!(Claims::claims(&alice_eth()), Some(100));
assert_eq!(Claims::claims(&Default::default()), None);
assert_eq!(Claims::claims(&EthereumAddress::default()), None);
});
}

Expand Down
13 changes: 8 additions & 5 deletions runtime/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ use sr_primitives::{
};
use version::RuntimeVersion;
use grandpa::{AuthorityId as GrandpaId, fg_primitives};
use babe_primitives::AuthorityId as BabeId;
use babe_primitives::{AuthorityId as BabeId, AuthoritySignature as BabeSignature};
use elections::VoteIndex;
#[cfg(any(feature = "std", test))]
use version::NativeVersion;
Expand All @@ -56,7 +56,7 @@ use srml_support::{
parameter_types, construct_runtime, traits::{SplitTwoWays, Currency}
};
use authority_discovery_primitives::{AuthorityId as EncodedAuthorityId, Signature as EncodedSignature};
use im_online::sr25519::{AuthorityId as ImOnlineId, AuthoritySignature as ImOnlineSignature};
use im_online::sr25519::AuthorityId as ImOnlineId;
use system::offchain::TransactionSubmitter;

#[cfg(feature = "std")]
Expand Down Expand Up @@ -444,7 +444,9 @@ impl im_online::Trait for Runtime {
type ReportUnresponsiveness = ();
}

impl authority_discovery::Trait for Runtime {}
impl authority_discovery::Trait for Runtime {
type AuthorityId = BabeId;
}

impl grandpa::Trait for Runtime {
type Event = Event;
Expand Down Expand Up @@ -702,17 +704,18 @@ impl_runtime_apis! {
}

fn verify(payload: &Vec<u8>, signature: &EncodedSignature, authority_id: &EncodedAuthorityId) -> bool {
let signature = match ImOnlineSignature::decode(&mut &signature.0[..]) {
let signature = match BabeSignature::decode(&mut &signature.0[..]) {
Ok(s) => s,
_ => return false,
};

let authority_id = match ImOnlineId::decode(&mut &authority_id.0[..]) {
let authority_id = match BabeId::decode(&mut &authority_id.0[..]) {
Ok(id) => id,
_ => return false,
};

AuthorityDiscovery::verify(payload, signature, authority_id)

}
}

Expand Down
14 changes: 7 additions & 7 deletions runtime/src/parachains.rs
Original file line number Diff line number Diff line change
Expand Up @@ -265,7 +265,7 @@ fn build<T: Trait>(config: &GenesisConfig<T>) {
// no ingress -- a chain cannot be routed to until it is live.
Code::insert(&id, &code);
Heads::insert(&id, &genesis);
<Watermarks<T>>::insert(&id, &sr_primitives::traits::Zero::zero());
<Watermarks<T>>::insert(&id, &T::BlockNumber::zero());
}
}

Expand Down Expand Up @@ -1487,8 +1487,8 @@ mod tests {

with_externalities(&mut new_test_ext(parachains), || {
assert_eq!(Parachains::active_parachains(), vec![5u32.into(), 100u32.into()]);
assert_eq!(Parachains::parachain_code(&5u32.into()), Some(vec![1,2,3]));
assert_eq!(Parachains::parachain_code(&100u32.into()), Some(vec![4,5,6]));
assert_eq!(Parachains::parachain_code(ParaId::from(5u32)), Some(vec![1,2,3]));
assert_eq!(Parachains::parachain_code(ParaId::from(100u32)), Some(vec![4,5,6]));
});
}

Expand All @@ -1502,18 +1502,18 @@ mod tests {
with_externalities(&mut new_test_ext(parachains), || {
assert_eq!(Parachains::active_parachains(), vec![5u32.into(), 100u32.into()]);

assert_eq!(Parachains::parachain_code(&5u32.into()), Some(vec![1,2,3]));
assert_eq!(Parachains::parachain_code(&100u32.into()), Some(vec![4,5,6]));
assert_eq!(Parachains::parachain_code(ParaId::from(5u32)), Some(vec![1,2,3]));
assert_eq!(Parachains::parachain_code(ParaId::from(100u32)), Some(vec![4,5,6]));

assert_ok!(Parachains::register_parachain(Origin::ROOT, 99u32.into(), vec![7,8,9], vec![1, 1, 1]));

assert_eq!(Parachains::active_parachains(), vec![5u32.into(), 99u32.into(), 100u32.into()]);
assert_eq!(Parachains::parachain_code(&99u32.into()), Some(vec![7,8,9]));
assert_eq!(Parachains::parachain_code(ParaId::from(99u32)), Some(vec![7,8,9]));

assert_ok!(Parachains::deregister_parachain(Origin::ROOT, 5u32.into()));

assert_eq!(Parachains::active_parachains(), vec![99u32.into(), 100u32.into()]);
assert_eq!(Parachains::parachain_code(&5u32.into()), None);
assert_eq!(Parachains::parachain_code(ParaId::from(5u32)), None);
});
}

Expand Down
36 changes: 18 additions & 18 deletions runtime/src/slots.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1033,7 +1033,7 @@ mod tests {

run_to_block(9);
assert_eq!(Slots::onboard_queue(1), vec![0.into()]);
assert_eq!(Slots::onboarding(&0.into()),
assert_eq!(Slots::onboarding(ParaId::from(0)),
Some((1, IncomingParachain::Unset(NewBidder { who: 1, sub: 0 })))
);
assert_eq!(Slots::deposit_held(&0.into()), 1);
Expand All @@ -1052,7 +1052,7 @@ mod tests {

run_to_block(9);
assert_eq!(Slots::deposit_held(&0.into()), 1);
assert_eq!(Slots::deposits(&0.into())[0], 0);
assert_eq!(Slots::deposits(ParaId::from(0))[0], 0);

run_to_block(50);
assert_eq!(Slots::deposit_held(&0.into()), 0);
Expand All @@ -1069,7 +1069,7 @@ mod tests {

run_to_block(9);
assert_eq!(Slots::deposit_held(&0.into()), 1);
assert_eq!(Slots::deposits(&0.into())[0], 0);
assert_eq!(Slots::deposits(ParaId::from(0))[0], 0);

run_to_block(49);
assert_eq!(Slots::deposit_held(&0.into()), 1);
Expand Down Expand Up @@ -1152,17 +1152,17 @@ mod tests {
run_to_block(9);
assert_eq!(Slots::onboard_queue(1), vec![0.into()]);
assert_eq!(
Slots::onboarding(&0.into()),
Slots::onboarding(ParaId::from(0)),
Some((1, IncomingParachain::Unset(NewBidder { who: 1, sub: 0 })))
);
assert_eq!(Slots::onboard_queue(2), vec![1.into()]);
assert_eq!(
Slots::onboarding(&1.into()),
Slots::onboarding(ParaId::from(1)),
Some((2, IncomingParachain::Unset(NewBidder { who: 2, sub: 0 })))
);
assert_eq!(Slots::onboard_queue(4), vec![2.into()]);
assert_eq!(
Slots::onboarding(&2.into()),
Slots::onboarding(ParaId::from(2)),
Some((4, IncomingParachain::Unset(NewBidder { who: 3, sub: 0 })))
);
});
Expand Down Expand Up @@ -1200,26 +1200,26 @@ mod tests {
run_to_block(9);
assert_eq!(Slots::onboard_queue(1), vec![0.into(), 3.into()]);
assert_eq!(
Slots::onboarding(&0.into()),
Slots::onboarding(ParaId::from(0)),
Some((1, IncomingParachain::Unset(NewBidder { who: 1, sub: 0 })))
);
assert_eq!(
Slots::onboarding(&3.into()),
Slots::onboarding(ParaId::from(3)),
Some((1, IncomingParachain::Unset(NewBidder { who: 4, sub: 1 })))
);
assert_eq!(Slots::onboard_queue(2), vec![1.into()]);
assert_eq!(
Slots::onboarding(&1.into()),
Slots::onboarding(ParaId::from(1)),
Some((2, IncomingParachain::Unset(NewBidder { who: 2, sub: 0 })))
);
assert_eq!(Slots::onboard_queue(3), vec![4.into()]);
assert_eq!(
Slots::onboarding(&4.into()),
Slots::onboarding(ParaId::from(4)),
Some((3, IncomingParachain::Unset(NewBidder { who: 5, sub: 1 })))
);
assert_eq!(Slots::onboard_queue(4), vec![2.into()]);
assert_eq!(
Slots::onboarding(&2.into()),
Slots::onboarding(ParaId::from(2)),
Some((4, IncomingParachain::Unset(NewBidder { who: 3, sub: 0 })))
);

Expand Down Expand Up @@ -1324,13 +1324,13 @@ mod tests {
assert_ok!(Slots::bid_renew(Origin::signed(ParaId::from(0).into_account()), 2, 2, 2, 3));

run_to_block(20);
assert_eq!(Balances::free_balance(&ParaId::from(0).into_account()), 2);
assert_eq!(Balances::free_balance::<u64>(ParaId::from(0).into_account()), 2);

assert_ok!(Slots::new_auction(Origin::ROOT, 5, 2));
assert_ok!(Slots::bid_renew(Origin::signed(ParaId::from(0).into_account()), 3, 3, 3, 4));

run_to_block(30);
assert_eq!(Balances::free_balance(&ParaId::from(0).into_account()), 1);
assert_eq!(Balances::free_balance::<u64>(ParaId::from(0).into_account()), 1);
});
}

Expand All @@ -1347,8 +1347,8 @@ mod tests {
assert_eq!(Slots::onboard_queue(2), vec![]);
assert_eq!(Slots::onboard_queue(3), vec![]);
assert_eq!(Slots::onboard_queue(4), vec![0.into()]);
assert_eq!(Slots::onboarding(
&0.into()),
assert_eq!(
Slots::onboarding(ParaId::from(0)),
Some((4, IncomingParachain::Unset(NewBidder { who: 1, sub: 0 })))
);
assert_eq!(Slots::deposit_held(&0.into()), 5);
Expand All @@ -1374,7 +1374,7 @@ mod tests {
run_to_block(9);
assert_eq!(Slots::onboard_queue(1), vec![0.into()]);
assert_eq!(
Slots::onboarding(&0.into()),
Slots::onboarding(ParaId::from(0)),
Some((1, IncomingParachain::Unset(NewBidder { who: 5, sub: 0 })))
);
assert_eq!(Slots::deposit_held(&0.into()), 5);
Expand All @@ -1401,8 +1401,8 @@ mod tests {

run_to_block(9);
assert_eq!(Slots::onboard_queue(1), vec![0.into()]);
assert_eq!(Slots::onboarding(
&0.into()),
assert_eq!(
Slots::onboarding(ParaId::from(0)),
Some((1, IncomingParachain::Unset(NewBidder { who: 3, sub: 0 })))
);
assert_eq!(Slots::deposit_held(&0.into()), 3);
Expand Down
6 changes: 3 additions & 3 deletions service/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ impl Default for CustomConfiguration {
}

/// Chain API type for the transaction pool.
pub type TxChainApi<Backend, Executor> = transaction_pool::ChainApi<
pub type TxChainApi<Backend, Executor> = transaction_pool::FullChainApi<
client::Client<Backend, Executor, Block, RuntimeApi>,
Block,
>;
Expand All @@ -87,7 +87,7 @@ macro_rules! new_full_start {
Ok(client::LongestChain::new(backend.clone()))
})?
.with_transaction_pool(|config, client|
Ok(transaction_pool::txpool::Pool::new(config, transaction_pool::ChainApi::new(client)))
Ok(transaction_pool::txpool::Pool::new(config, transaction_pool::FullChainApi::new(client)))
)?
.with_import_queue(|_config, client, mut select_chain, _| {
let select_chain = select_chain.take()
Expand Down Expand Up @@ -338,7 +338,7 @@ pub fn new_light(config: Configuration<CustomConfiguration, GenesisConfig>)
Ok(LongestChain::new(backend.clone()))
})?
.with_transaction_pool(|config, client|
Ok(TransactionPool::new(config, transaction_pool::ChainApi::new(client)))
Ok(TransactionPool::new(config, transaction_pool::FullChainApi::new(client)))
)?
.with_import_queue_and_fprb(|_config, client, backend, fetcher, _select_chain, _| {
let fetch_checker = fetcher
Expand Down
2 changes: 1 addition & 1 deletion test-parachains/adder/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ build = "build.rs"

[dependencies]
parachain = { package = "polkadot-parachain", path = "../../parachain/", default-features = false, features = [ "wasm-api" ] }
codec = { package = "parity-scale-codec", version = "~1.0.0", default-features = false, features = ["derive"] }
codec = { package = "parity-scale-codec", version = "1.0.0", default-features = false, features = ["derive"] }
tiny-keccak = "1.5.0"
dlmalloc = { version = "0.1.3", features = [ "global" ] }

Expand Down