From 20104e98ff1713b6c81b0251b43d060d4e672d55 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Thu, 28 Nov 2019 10:44:51 +0100 Subject: [PATCH 01/54] Make availability-store compile for WASM --- .gitlab-ci.yml | 21 +++++++++++++++++++-- availability-store/Cargo.toml | 4 +++- availability-store/src/lib.rs | 3 ++- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e175b10c8924..6716fc755959 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -40,7 +40,7 @@ variables: .docker-env: &docker-env retry: max: 2 - when: + when: - runner_system_failure - unknown_failure - api_failure @@ -131,6 +131,23 @@ test-linux-stable: &test - sccache -s +check-web-wasm: &test + stage: test + <<: *test-refs + <<: *docker-env + <<: *compiler_info + script: + # WASM support is in progress. As more and more crates support WASM, we + # should add entries here. See https://github.com/paritytech/polkadot/issues/625 + - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-availability-store + - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-executor + - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-erasure-coding + - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-parachain + - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-primitives + - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-rpc + - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-runtime + - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-statement-table + - sccache -s build-linux-release: &build @@ -209,7 +226,7 @@ publish-docker-release: - docker build --build-arg VCS_REF="${CI_COMMIT_SHA}" --build-arg BUILD_DATE="$(date -u '+%Y-%m-%dT%H:%M:%SZ')" - --tag $CONTAINER_IMAGE:$VERSION + --tag $CONTAINER_IMAGE:$VERSION --tag $CONTAINER_IMAGE:$EXTRATAG . - docker push $CONTAINER_IMAGE:$VERSION - docker push $CONTAINER_IMAGE:$EXTRATAG diff --git a/availability-store/Cargo.toml b/availability-store/Cargo.toml index 0052b8f819bd..9dc4e5611e52 100644 --- a/availability-store/Cargo.toml +++ b/availability-store/Cargo.toml @@ -12,5 +12,7 @@ log = "0.4.8" codec = { package = "parity-scale-codec", version = "1.1.0", default-features = false, features = ["derive"] } substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } kvdb = { git = "https://github.com/paritytech/parity-common", rev="b0317f649ab2c665b7987b8475878fc4d2e1f81d" } -kvdb-rocksdb = { git = "https://github.com/paritytech/parity-common", rev="b0317f649ab2c665b7987b8475878fc4d2e1f81d" } kvdb-memorydb = { git = "https://github.com/paritytech/parity-common", rev="b0317f649ab2c665b7987b8475878fc4d2e1f81d" } + +[target.'cfg(not(target_os = "unknown"))'.dependencies] +kvdb-rocksdb = { git = "https://github.com/paritytech/parity-common", rev="b0317f649ab2c665b7987b8475878fc4d2e1f81d" } diff --git a/availability-store/src/lib.rs b/availability-store/src/lib.rs index 5e7960d141a6..f91304f203e7 100644 --- a/availability-store/src/lib.rs +++ b/availability-store/src/lib.rs @@ -22,7 +22,6 @@ use codec::{Encode, Decode}; use kvdb::{KeyValueDB, DBTransaction}; -use kvdb_rocksdb::{Database, DatabaseConfig}; use polkadot_primitives::Hash; use polkadot_primitives::parachain::{Id as ParaId, BlockData, Message}; use log::warn; @@ -74,7 +73,9 @@ pub struct Store { impl Store { /// Create a new `Store` with given config on disk. + #[cfg(not(target_os = "unknown"))] pub fn new(config: Config) -> io::Result { + use kvdb_rocksdb::{Database, DatabaseConfig}; let mut db_config = DatabaseConfig::with_columns(Some(columns::NUM_COLUMNS)); db_config.memory_budget = config.cache_size; From 6f97dbb786750d854cf8f7a56c6a336ea5979228 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Thu, 28 Nov 2019 12:47:45 +0100 Subject: [PATCH 02/54] Use --manifest-path instead --- .gitlab-ci.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6716fc755959..95db59141262 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -139,14 +139,14 @@ check-web-wasm: &test script: # WASM support is in progress. As more and more crates support WASM, we # should add entries here. See https://github.com/paritytech/polkadot/issues/625 - - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-availability-store - - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-executor - - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-erasure-coding - - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-parachain - - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-primitives - - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-rpc - - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-runtime - - time cargo build --locked --target=wasm32-unknown-unknown -p polkadot-statement-table + - time cargo build --locked --target=wasm32-unknown-unknown --manifest-path availability-store/Cargo.toml + - time cargo build --locked --target=wasm32-unknown-unknown --manifest-path executor/Cargo.toml + - time cargo build --locked --target=wasm32-unknown-unknown --manifest-path erasure-coding/Cargo.toml + - time cargo build --locked --target=wasm32-unknown-unknown --manifest-path parachain/Cargo.toml + - time cargo build --locked --target=wasm32-unknown-unknown --manifest-path primitives/Cargo.toml + - time cargo build --locked --target=wasm32-unknown-unknown --manifest-path rpc/Cargo.toml + - time cargo build --locked --target=wasm32-unknown-unknown --manifest-path runtime/Cargo.toml + - time cargo build --locked --target=wasm32-unknown-unknown --manifest-path statement-table/Cargo.toml - sccache -s From cceb6b72f5677a1c43d2cd61bd525539054f0c01 Mon Sep 17 00:00:00 2001 From: Ashley Date: Fri, 29 Nov 2019 15:47:14 +0100 Subject: [PATCH 03/54] Make validation work on wasm! --- validation/Cargo.toml | 11 ++-- validation/src/attestation_service.rs | 74 +++++++++-------------- validation/src/collation.rs | 4 +- validation/src/error.rs | 3 +- validation/src/lib.rs | 55 +++++++++++------ validation/src/shared_table/includable.rs | 4 +- validation/src/shared_table/mod.rs | 6 +- 7 files changed, 81 insertions(+), 76 deletions(-) diff --git a/validation/Cargo.toml b/validation/Cargo.toml index 2d6f2bd10a34..910088e87287 100644 --- a/validation/Cargo.toml +++ b/validation/Cargo.toml @@ -5,16 +5,15 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -futures = "0.1.17" -futures03 = { package = "futures", version = "0.3.1", features = ["compat"] } +futures01 = { package = "futures", version = "0.1.17" } +futures = { version = "0.3.1", features = ["compat"] } futures-timer = "2.0" -async-std = { version = "1.0.1", features = ["unstable"] } + parking_lot = "0.9.0" -tokio = "0.1.22" +tokio = { version = "0.2.1", features = ["rt-core", "blocking"] } derive_more = "0.14.1" log = "0.4.8" -exit-future = "0.1.4" -tokio-executor = { version = "0.2.0-alpha.6", features = ["blocking"] } +exit-future = { git = "https://github.com/expenses/exit-future", branch = "modernize" } codec = { package = "parity-scale-codec", version = "1.1.0", default-features = false, features = ["derive"] } availability_store = { package = "polkadot-availability-store", path = "../availability-store" } parachain = { package = "polkadot-parachain", path = "../parachain" } diff --git a/validation/src/attestation_service.rs b/validation/src/attestation_service.rs index a1cd90e5175f..527fbdf09a14 100644 --- a/validation/src/attestation_service.rs +++ b/validation/src/attestation_service.rs @@ -23,16 +23,15 @@ /// such as candidate verification while performing event-driven work /// on a local event loop. -use std::{thread, time::{Duration, Instant}, sync::Arc}; +use std::{thread, time::Duration, sync::Arc}; use client::{BlockchainEvents, BlockBody}; use sp_blockchain::{HeaderBackend, Result as ClientResult}; use block_builder::BlockBuilderApi; use consensus::SelectChain; use availability_store::Store as AvailabilityStore; -use futures::prelude::*; -use futures03::{TryStreamExt as _, StreamExt as _}; -use log::error; +use futures01::prelude::*; +use futures::{StreamExt, FutureExt, Future, future::{ready, select}}; use polkadot_primitives::{Block, BlockId}; use polkadot_primitives::parachain::{CandidateReceipt, ParachainHost}; use runtime_primitives::traits::{ProvideRuntimeApi}; @@ -40,12 +39,12 @@ use babe_primitives::BabeApi; use keystore::KeyStorePtr; use sr_api::ApiExt; -use tokio::{timer::Interval, runtime::current_thread::Runtime as LocalRuntime}; -use log::{warn, debug}; +use tokio::{runtime::Runtime as LocalRuntime}; +use log::warn; use super::{Network, Collators}; -type TaskExecutor = Arc + Send>> + Send + Sync>; +type TaskExecutor = futures::executor::ThreadPool; /// Gets a list of the candidates in a block. pub(crate) fn fetch_candidates>(client: &P, block: &BlockId) @@ -75,11 +74,10 @@ pub(crate) fn fetch_candidates>(client: &P, block: &BlockId) // NOTE: this will need to be changed to finality notification rather than // block import notifications when the consensus switches to non-instant finality. fn prune_unneeded_availability

(client: Arc

, availability_store: AvailabilityStore) - -> impl Future + Send + -> impl Future + Send + Unpin where P: Send + Sync + BlockchainEvents + BlockBody + 'static { client.finality_notification_stream() - .map(|v| Ok::<_, ()>(v)).compat() .for_each(move |notification| { let hash = notification.hash; let parent_hash = notification.header.parent_hash; @@ -87,11 +85,11 @@ fn prune_unneeded_availability

(client: Arc

, availability_store: Availabili Ok(Some(candidates)) => candidates.map(|c| c.hash()).collect(), Ok(None) => { warn!("Could not extract candidates from block body of imported block {:?}", hash); - return Ok(()) + return ready(()) } Err(e) => { warn!("Failed to fetch block body for imported block {:?}: {:?}", hash, e); - return Ok(()) + return ready(()) } }; @@ -99,7 +97,7 @@ fn prune_unneeded_availability

(client: Arc

, availability_store: Availabili warn!(target: "validation", "Failed to prune unneeded available data: {:?}", e); } - Ok(()) + ready(()) }) } @@ -133,7 +131,6 @@ pub(crate) fn start( ::Future: Send + 'static, SC: SelectChain + 'static, { - const TIMER_DELAY: Duration = Duration::from_secs(5); const TIMER_INTERVAL: Duration = Duration::from_secs(30); let (signal, exit) = ::exit_future::signal(); @@ -145,8 +142,7 @@ pub(crate) fn start( let keystore = keystore.clone(); - client.import_notification_stream() - .map(|v| Ok::<_, ()>(v)).compat() + let notifications = client.import_notification_stream() .for_each(move |notification| { let parent_hash = notification.hash; if notification.is_new_best { @@ -163,52 +159,42 @@ pub(crate) fn start( ); } } - Ok(()) - }) - .select(exit.clone()) - .then(|_| Ok(())) + ready(()) + }); + + select(notifications, exit.clone()) }; let prune_old_sessions = { let select_chain = select_chain.clone(); - let interval = Interval::new( - Instant::now() + TIMER_DELAY, - TIMER_INTERVAL, - ); - - interval + let interval = crate::interval(TIMER_INTERVAL) .for_each(move |_| match select_chain.leaves() { Ok(leaves) => { parachain_validation.retain(|h| leaves.contains(h)); - Ok(()) + ready(()) } Err(e) => { warn!("Error fetching leaves from client: {:?}", e); - Ok(()) + ready(()) } - }) - .map_err(|e| warn!("Timer error {:?}", e)) - .select(exit.clone()) - .then(|_| Ok(())) + }); + + select(interval, exit.clone()).map(|_| ()) }; runtime.spawn(notifications); - if let Err(_) = thread_pool.execute(Box::new(prune_old_sessions)) { - error!("Failed to spawn old sessions pruning task"); - } + thread_pool.spawn_ok(prune_old_sessions); - let prune_available = prune_unneeded_availability(client, availability_store) - .select(exit.clone()) - .then(|_| Ok(())); + let prune_available = futures::future::select( + prune_unneeded_availability(client, availability_store), + exit.clone() + ) + .map(|_| ()); // spawn this on the tokio executor since it's fine on a thread pool. - if let Err(_) = thread_pool.execute(Box::new(prune_available)) { - error!("Failed to spawn available pruning task"); - } + thread_pool.spawn_ok(prune_available); - if let Err(e) = runtime.block_on(exit) { - debug!("BFT event loop error {:?}", e); - } + runtime.block_on(exit); }); ServiceHandle { @@ -220,7 +206,7 @@ pub(crate) fn start( impl Drop for ServiceHandle { fn drop(&mut self) { if let Some(signal) = self.exit_signal.take() { - signal.fire(); + let _ = signal.fire(); } if let Some(thread) = self.thread.take() { diff --git a/validation/src/collation.rs b/validation/src/collation.rs index 4eebd0b3f833..4e2399d33ce1 100644 --- a/validation/src/collation.rs +++ b/validation/src/collation.rs @@ -28,7 +28,7 @@ use polkadot_primitives::{Block, Hash, BlockId, Balance, parachain::{ use runtime_primitives::traits::ProvideRuntimeApi; use parachain::{wasm_executor::{self, ExternalitiesError, ExecutionMode}, MessageRef, UpwardMessageRef}; use trie::TrieConfiguration; -use futures::prelude::*; +use futures01::prelude::*; use log::debug; /// Encapsulates connections to collators and allows collation on any parachain. @@ -112,7 +112,7 @@ impl Future for CollationFetch .get_or_insert_with(move || c.collate(parachain, r).into_future()) .poll(); - futures::try_ready!(poll) + futures01::try_ready!(poll) }; let res = validate_collation( diff --git a/validation/src/error.rs b/validation/src/error.rs index 8160a0b64f56..c3f8301ad5d4 100644 --- a/validation/src/error.rs +++ b/validation/src/error.rs @@ -48,7 +48,8 @@ pub enum Error { DeadlineComputeFailure(std::time::Duration), /// Unable to dispatch agreement future #[display(fmt = "Unable to dispatch agreement future: {:?}", _0)] - Executor(futures::future::ExecuteErrorKind), + Executor(futures01::future::ExecuteErrorKind), + Join(tokio::task::JoinError) } impl std::error::Error for Error { diff --git a/validation/src/lib.rs b/validation/src/lib.rs index f2f453947dcd..df1f808bff09 100644 --- a/validation/src/lib.rs +++ b/validation/src/lib.rs @@ -55,21 +55,29 @@ use polkadot_primitives::parachain::{ use primitives::Pair; use runtime_primitives::traits::{ProvideRuntimeApi, DigestFor}; use futures_timer::Delay; -use async_std::stream::{interval, Interval}; use txpool_api::{TransactionPool, InPoolTransaction}; use attestation_service::ServiceHandle; -use futures::prelude::*; -use futures03::{future::{self, Either}, FutureExt, StreamExt}; +use futures01::prelude::*; +use futures::{ + future::{self, Either, select}, FutureExt, StreamExt, compat::Future01CompatExt, Stream, + stream::unfold +}; use collation::CollationFetch; use dynamic_inclusion::DynamicInclusion; use inherents::InherentData; use sp_timestamp::TimestampInherentData; -use log::{info, debug, warn, trace, error}; +use log::{info, debug, warn, trace}; use keystore::KeyStorePtr; use sr_api::ApiExt; -type TaskExecutor = Arc + Send>> + Send + Sync>; +fn interval(duration: Duration) -> impl Stream + Send + Unpin { + unfold((), move |_| { + futures_timer::Delay::new(duration).map(|_| Some(((), ()))) + }).map(drop) +} + +type TaskExecutor = futures::executor::ThreadPool; pub use self::collation::{ validate_collation, validate_incoming, message_queue_root, egress_roots, Collators, @@ -79,6 +87,8 @@ pub use self::shared_table::{ SharedTable, ParachainWork, PrimedParachainWork, Validated, Statement, SignedStatement, GenericStatement, }; + +#[cfg(not(target_os = "unknown"))] pub use parachain::wasm_executor::{run_worker as run_validation_worker}; mod attestation_service; @@ -402,19 +412,18 @@ impl ParachainValidation where }) }; - let cancellable_work = build_router + let router = build_router .into_future() .map_err(|e| { warn!(target: "validation" , "Failed to build table router: {:?}", e); }) .and_then(with_router) - .select(exit) - .then(|_| Ok(())); + .compat(); + + let cancellable_work = select(exit, router).map(|_| ()); // spawn onto thread pool. - if self.handle.execute(Box::new(cancellable_work)).is_err() { - error!("Failed to spawn cancellable work task"); - } + self.handle.spawn_ok(cancellable_work) } } @@ -601,7 +610,7 @@ impl consensus::Proposer for Proposer where let timing = ProposalTiming { minimum: delay_future, - attempt_propose: interval(ATTEMPT_PROPOSE_EVERY), + attempt_propose: Box::new(interval(ATTEMPT_PROPOSE_EVERY)), enough_candidates: Delay::new(enough_candidates), dynamic_inclusion, last_included: initial_included, @@ -642,7 +651,7 @@ fn current_timestamp() -> u64 { struct ProposalTiming { minimum: Option, - attempt_propose: Interval, + attempt_propose: Box + Send + Unpin>, dynamic_inclusion: DynamicInclusion, enough_candidates: Delay, last_included: usize, @@ -698,7 +707,7 @@ enum CreateProposalState { /// Represents the state when we switch from pending to fired. Switching, /// Block proposing has fired. - Fired(tokio_executor::blocking::Blocking>), + Fired(tokio::task::JoinHandle>), } /// Inner data of the create proposal. @@ -810,7 +819,7 @@ impl CreateProposalData where } } -impl futures03::Future for CreateProposal where +impl futures::Future for CreateProposal where TxPool: TransactionPool + 'static, C: ProvideRuntimeApi + HeaderBackend + Send + Sync + 'static, C::Api: ParachainHost + BlockBuilderApi + ApiExt, @@ -844,18 +853,28 @@ impl futures03::Future for CreateProposal where thus Switching will never be reachable here; qed" ), CreateProposalState::Fired(mut future) => { - let ret = Pin::new(&mut future).poll(cx); + let ret = match Pin::new(&mut future).poll(cx) { + Poll::Ready(res) => { + Poll::Ready(res.map_err(Error::Join).and_then(|res| res)) + }, + Poll::Pending => Poll::Pending + }; self.state = CreateProposalState::Fired(future); return ret }, }; // 2. propose - let mut future = tokio_executor::blocking::run(move || { + let mut future = tokio::task::spawn_blocking(move || { let proposed_candidates = data.table.proposed_set(); data.propose_with(proposed_candidates) }); - let polled = Pin::new(&mut future).poll(cx); + let polled = match Pin::new(&mut future).poll(cx) { + Poll::Ready(res) => { + Poll::Ready(res.map_err(Error::Join).and_then(|res| res)) + }, + Poll::Pending => Poll::Pending + }; self.state = CreateProposalState::Fired(future); polled diff --git a/validation/src/shared_table/includable.rs b/validation/src/shared_table/includable.rs index 873c3af94c40..7752772442e4 100644 --- a/validation/src/shared_table/includable.rs +++ b/validation/src/shared_table/includable.rs @@ -18,8 +18,8 @@ use std::collections::HashMap; -use futures::prelude::*; -use futures::sync::oneshot; +use futures01::prelude::*; +use futures01::sync::oneshot; use polkadot_primitives::Hash; diff --git a/validation/src/shared_table/mod.rs b/validation/src/shared_table/mod.rs index 83de404a6a8a..ce8347ad58c8 100644 --- a/validation/src/shared_table/mod.rs +++ b/validation/src/shared_table/mod.rs @@ -29,7 +29,7 @@ use polkadot_primitives::parachain::{ }; use parking_lot::Mutex; -use futures::prelude::*; +use futures01::prelude::*; use log::{warn, debug}; use bitvec::bitvec; @@ -331,7 +331,7 @@ impl Future for PrimedParachainWork let work = &mut self.inner.work; let candidate = &work.candidate_receipt; - let pov_block = futures::try_ready!(work.fetch.poll()); + let pov_block = futures01::try_ready!(work.fetch.poll()); let validation_res = (self.validate)( &BlockId::hash(self.inner.relay_parent), &Collation { pov: pov_block.clone(), receipt: candidate.clone() }, @@ -574,7 +574,7 @@ mod tests { use substrate_keyring::Sr25519Keyring; use primitives::crypto::UncheckedInto; use polkadot_primitives::parachain::{BlockData, ConsolidatedIngress}; - use futures::future; + use futures01::future; fn pov_block_with_data(data: Vec) -> PoVBlock { PoVBlock { From aaf5e55fffd1367c05687eb34f4365a24e3a34c0 Mon Sep 17 00:00:00 2001 From: Ashley Date: Fri, 29 Nov 2019 17:10:11 +0100 Subject: [PATCH 04/54] Switch to Spawn trait --- validation/src/attestation_service.rs | 14 +++++++++----- validation/src/lib.rs | 11 ++++++----- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/validation/src/attestation_service.rs b/validation/src/attestation_service.rs index 527fbdf09a14..1d1f6e414d59 100644 --- a/validation/src/attestation_service.rs +++ b/validation/src/attestation_service.rs @@ -31,7 +31,7 @@ use block_builder::BlockBuilderApi; use consensus::SelectChain; use availability_store::Store as AvailabilityStore; use futures01::prelude::*; -use futures::{StreamExt, FutureExt, Future, future::{ready, select}}; +use futures::{StreamExt, FutureExt, Future, future::{ready, select}, task::{Spawn, SpawnExt}}; use polkadot_primitives::{Block, BlockId}; use polkadot_primitives::parachain::{CandidateReceipt, ParachainHost}; use runtime_primitives::traits::{ProvideRuntimeApi}; @@ -40,11 +40,11 @@ use keystore::KeyStorePtr; use sr_api::ApiExt; use tokio::{runtime::Runtime as LocalRuntime}; -use log::warn; +use log::{warn, error}; use super::{Network, Collators}; -type TaskExecutor = futures::executor::ThreadPool; +type TaskExecutor = Arc; /// Gets a list of the candidates in a block. pub(crate) fn fetch_candidates>(client: &P, block: &BlockId) @@ -183,7 +183,9 @@ pub(crate) fn start( }; runtime.spawn(notifications); - thread_pool.spawn_ok(prune_old_sessions); + if let Err(_) = thread_pool.spawn(prune_old_sessions) { + error!("Failed to spawn old sessions pruning task"); + } let prune_available = futures::future::select( prune_unneeded_availability(client, availability_store), @@ -192,7 +194,9 @@ pub(crate) fn start( .map(|_| ()); // spawn this on the tokio executor since it's fine on a thread pool. - thread_pool.spawn_ok(prune_available); + if let Err(_) = thread_pool.spawn(prune_available) { + error!("Failed to spawn available pruning task"); + } runtime.block_on(exit); }); diff --git a/validation/src/lib.rs b/validation/src/lib.rs index df1f808bff09..9ebc55c01592 100644 --- a/validation/src/lib.rs +++ b/validation/src/lib.rs @@ -61,24 +61,23 @@ use attestation_service::ServiceHandle; use futures01::prelude::*; use futures::{ future::{self, Either, select}, FutureExt, StreamExt, compat::Future01CompatExt, Stream, - stream::unfold + stream::unfold, task::{Spawn, SpawnExt} }; use collation::CollationFetch; use dynamic_inclusion::DynamicInclusion; use inherents::InherentData; use sp_timestamp::TimestampInherentData; -use log::{info, debug, warn, trace}; +use log::{info, debug, warn, trace, error}; use keystore::KeyStorePtr; use sr_api::ApiExt; +type TaskExecutor = Arc; fn interval(duration: Duration) -> impl Stream + Send + Unpin { unfold((), move |_| { futures_timer::Delay::new(duration).map(|_| Some(((), ()))) }).map(drop) } -type TaskExecutor = futures::executor::ThreadPool; - pub use self::collation::{ validate_collation, validate_incoming, message_queue_root, egress_roots, Collators, }; @@ -423,7 +422,9 @@ impl ParachainValidation where let cancellable_work = select(exit, router).map(|_| ()); // spawn onto thread pool. - self.handle.spawn_ok(cancellable_work) + if self.handle.spawn(cancellable_work).is_err() { + error!("Failed to spawn cancellable work task"); + } } } From 96f1a99491f5ae2957effa58cc1e385014575a32 Mon Sep 17 00:00:00 2001 From: Ashley Date: Fri, 29 Nov 2019 23:31:04 +0100 Subject: [PATCH 05/54] Migrate validation to std futures --- validation/Cargo.toml | 3 +- validation/src/attestation_service.rs | 7 ++- validation/src/collation.rs | 51 ++++++++++++-------- validation/src/error.rs | 3 -- validation/src/lib.rs | 43 +++++++---------- validation/src/shared_table/includable.rs | 16 +++---- validation/src/shared_table/mod.rs | 57 ++++++++++++----------- 7 files changed, 90 insertions(+), 90 deletions(-) diff --git a/validation/Cargo.toml b/validation/Cargo.toml index 910088e87287..36f0410db3ad 100644 --- a/validation/Cargo.toml +++ b/validation/Cargo.toml @@ -5,8 +5,7 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -futures01 = { package = "futures", version = "0.1.17" } -futures = { version = "0.3.1", features = ["compat"] } +futures = "0.3.1" futures-timer = "2.0" parking_lot = "0.9.0" diff --git a/validation/src/attestation_service.rs b/validation/src/attestation_service.rs index 1d1f6e414d59..8658682a14a2 100644 --- a/validation/src/attestation_service.rs +++ b/validation/src/attestation_service.rs @@ -30,7 +30,6 @@ use sp_blockchain::{HeaderBackend, Result as ClientResult}; use block_builder::BlockBuilderApi; use consensus::SelectChain; use availability_store::Store as AvailabilityStore; -use futures01::prelude::*; use futures::{StreamExt, FutureExt, Future, future::{ready, select}, task::{Spawn, SpawnExt}}; use polkadot_primitives::{Block, BlockId}; use polkadot_primitives::parachain::{CandidateReceipt, ParachainHost}; @@ -118,8 +117,8 @@ pub(crate) fn start( max_block_data_size: Option, ) -> ServiceHandle where - C: Collators + Send + Sync + 'static, - ::Future: Send + 'static, + C: Collators + Send + Sync + Unpin + 'static, + C::Collation: Send + Unpin + 'static, P: BlockchainEvents + BlockBody, P: ProvideRuntimeApi + HeaderBackend + Send + Sync + 'static, P::Api: ParachainHost + @@ -128,7 +127,7 @@ pub(crate) fn start( ApiExt, N: Network + Send + Sync + 'static, N::TableRouter: Send + 'static, - ::Future: Send + 'static, + N::BuildTableRouter: Send + Unpin + 'static, SC: SelectChain + 'static, { const TIMER_INTERVAL: Duration = Duration::from_secs(30); diff --git a/validation/src/collation.rs b/validation/src/collation.rs index 4e2399d33ce1..5f32ea94a66a 100644 --- a/validation/src/collation.rs +++ b/validation/src/collation.rs @@ -28,8 +28,9 @@ use polkadot_primitives::{Block, Hash, BlockId, Balance, parachain::{ use runtime_primitives::traits::ProvideRuntimeApi; use parachain::{wasm_executor::{self, ExternalitiesError, ExecutionMode}, MessageRef, UpwardMessageRef}; use trie::TrieConfiguration; -use futures01::prelude::*; use log::debug; +use std::task::{Poll, Context}; +use std::pin::Pin; /// Encapsulates connections to collators and allows collation on any parachain. /// @@ -37,8 +38,9 @@ use log::debug; pub trait Collators: Clone { /// Errors when producing collations. type Error: std::fmt::Debug; + /// A full collation. - type Collation: IntoFuture; + type Collation: futures::Future>; /// Collate on a specific parachain, building on a given relay chain parent hash. /// @@ -61,7 +63,7 @@ pub struct CollationFetch { relay_parent_hash: Hash, relay_parent: BlockId, collators: C, - live_fetch: Option<::Future>, + live_fetch: Option, client: Arc

, max_block_data_size: Option, } @@ -97,41 +99,50 @@ impl CollationFetch { } } -impl Future for CollationFetch - where P::Api: ParachainHost, +impl futures::Future for CollationFetch + where + P::Api: ParachainHost, + C: Collators + Unpin, + P: ProvideRuntimeApi, + ::Collation: Unpin, { - type Item = (Collation, OutgoingMessages); - type Error = C::Error; + type Output = Result<(Collation, OutgoingMessages),C::Error>; + + fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { + let this = Pin::into_inner(self); - fn poll(&mut self) -> Poll<(Collation, OutgoingMessages), C::Error> { loop { let collation = { - let parachain = self.parachain.clone(); - let (r, c) = (self.relay_parent_hash, &self.collators); - let poll = self.live_fetch - .get_or_insert_with(move || c.collate(parachain, r).into_future()) - .poll(); + let parachain = this.parachain.clone(); + let (r, c) = (this.relay_parent_hash, &this.collators); - futures01::try_ready!(poll) + let future = this.live_fetch + .get_or_insert_with(move || c.collate(parachain, r)); + + match Pin::new(future).poll(cx) { + Poll::Ready(Ok(c)) => c, + Poll::Ready(Err(err)) => return Poll::Ready(Err(err)), + Poll::Pending => return Poll::Pending + } }; let res = validate_collation( - &*self.client, - &self.relay_parent, + &*this.client, + &this.relay_parent, &collation, - self.max_block_data_size, + this.max_block_data_size, ); match res { Ok(e) => { - return Ok(Async::Ready((collation, e))) + return Poll::Ready(Ok((collation, e))) } Err(e) => { debug!("Failed to validate parachain due to API error: {}", e); // just continue if we got a bad collation or failed to validate - self.live_fetch = None; - self.collators.note_bad_collator(collation.receipt.collator) + this.live_fetch = None; + this.collators.note_bad_collator(collation.receipt.collator) } } } diff --git a/validation/src/error.rs b/validation/src/error.rs index c3f8301ad5d4..ea29e1dff740 100644 --- a/validation/src/error.rs +++ b/validation/src/error.rs @@ -46,9 +46,6 @@ pub enum Error { Timer(std::io::Error), #[display(fmt = "Failed to compute deadline of now + {:?}", _0)] DeadlineComputeFailure(std::time::Duration), - /// Unable to dispatch agreement future - #[display(fmt = "Unable to dispatch agreement future: {:?}", _0)] - Executor(futures01::future::ExecuteErrorKind), Join(tokio::task::JoinError) } diff --git a/validation/src/lib.rs b/validation/src/lib.rs index 9ebc55c01592..59002ee66052 100644 --- a/validation/src/lib.rs +++ b/validation/src/lib.rs @@ -58,10 +58,9 @@ use futures_timer::Delay; use txpool_api::{TransactionPool, InPoolTransaction}; use attestation_service::ServiceHandle; -use futures01::prelude::*; use futures::{ - future::{self, Either, select}, FutureExt, StreamExt, compat::Future01CompatExt, Stream, - stream::unfold, task::{Spawn, SpawnExt} + future::{self, Either, select}, FutureExt, StreamExt, Stream, + stream::unfold, task::{Spawn, SpawnExt}, }; use collation::CollationFetch; use dynamic_inclusion::DynamicInclusion; @@ -111,7 +110,7 @@ pub trait TableRouter: Clone { /// Errors when fetching data from the network. type Error: std::fmt::Debug; /// Future that resolves when candidate data is fetched. - type FetchValidationProof: IntoFuture; + type FetchValidationProof: futures::Future>; /// Call with local candidate data. This will make the data available on the network, /// and sign, import, and broadcast a statement about the candidate. @@ -123,16 +122,13 @@ pub trait TableRouter: Clone { /// A long-lived network which can create parachain statement and BFT message routing processes on demand. pub trait Network { - /// The error type of asynchronously building the table router. - type Error: std::fmt::Debug; - /// The table router type. This should handle importing of any statements, /// routing statements to peers, and driving completion of any `StatementProducers`. type TableRouter: TableRouter; /// The future used for asynchronously building the table router. /// This should not fail. - type BuildTableRouter: IntoFuture; + type BuildTableRouter: futures::Future; /// Instantiate a table router using the given shared table. /// Also pass through any outgoing messages to be broadcast to peers. @@ -263,13 +259,13 @@ struct ParachainValidation { } impl ParachainValidation where - C: Collators + Send + 'static, + C: Collators + Send + Unpin + 'static, N: Network, P: ProvideRuntimeApi + HeaderBackend + BlockBody + Send + Sync + 'static, P::Api: ParachainHost + BlockBuilderApi + ApiExt, - ::Future: Send + 'static, + C::Collation: Send + Unpin + 'static, N::TableRouter: Send + 'static, - ::Future: Send + 'static, + N::BuildTableRouter: Unpin + Send + 'static, { /// Get an attestation table for given parent hash. /// @@ -401,23 +397,16 @@ impl ParachainValidation where e, ), } - - Ok(()) + futures::future::ready(()) } Err(e) => { warn!(target: "validation", "Failed to collate candidate: {:?}", e); - Ok(()) + futures::future::ready(()) } }) }; - let router = build_router - .into_future() - .map_err(|e| { - warn!(target: "validation" , "Failed to build table router: {:?}", e); - }) - .and_then(with_router) - .compat(); + let router = build_router.map(with_router); let cancellable_work = select(exit, router).map(|_| ()); @@ -447,8 +436,8 @@ pub struct ProposerFactory { } impl ProposerFactory where - C: Collators + Send + Sync + 'static, - ::Future: Send + 'static, + C: Collators + Send + Sync + Unpin + 'static, + C::Collation: Send + Unpin + 'static, P: BlockchainEvents + BlockBody, P: ProvideRuntimeApi + HeaderBackend + Send + Sync + 'static, P::Api: ParachainHost + @@ -457,7 +446,7 @@ impl ProposerFactory where ApiExt, N: Network + Send + Sync + 'static, N::TableRouter: Send + 'static, - ::Future: Send + 'static, + N::BuildTableRouter: Send + Unpin + 'static, TxPool: TransactionPool, SC: SelectChain + 'static, { @@ -506,7 +495,7 @@ impl ProposerFactory where } impl consensus::Environment for ProposerFactory where - C: Collators + Send + 'static, + C: Collators + Send + Unpin + 'static, N: Network, TxPool: TransactionPool + 'static, P: ProvideRuntimeApi + HeaderBackend + BlockBody + Send + Sync + 'static, @@ -514,9 +503,9 @@ impl consensus::Environment for ProposerFactory + BabeApi + ApiExt, - ::Future: Send + 'static, + C::Collation: Send + Unpin + 'static, N::TableRouter: Send + 'static, - ::Future: Send + 'static, + N::BuildTableRouter: Send + Unpin + 'static, SC: SelectChain, { type Proposer = Proposer; diff --git a/validation/src/shared_table/includable.rs b/validation/src/shared_table/includable.rs index 7752772442e4..414b7fb01352 100644 --- a/validation/src/shared_table/includable.rs +++ b/validation/src/shared_table/includable.rs @@ -17,9 +17,10 @@ //! Implements a future which resolves when all of the candidates referenced are includable. use std::collections::HashMap; +use std::pin::Pin; +use std::task::{Poll, Context}; -use futures01::prelude::*; -use futures01::sync::oneshot; +use futures::channel::oneshot; use polkadot_primitives::Hash; @@ -94,12 +95,11 @@ impl IncludabilitySender { /// Future that resolves when all the candidates within are includable. pub struct Includable(oneshot::Receiver<()>); -impl Future for Includable { - type Item = (); - type Error = oneshot::Canceled; +impl futures::Future for Includable { + type Output = Result<(), oneshot::Canceled>; - fn poll(&mut self) -> Poll<(), oneshot::Canceled> { - self.0.poll() + fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { + Pin::new(&mut Pin::into_inner(self).0).poll(cx) } } @@ -132,6 +132,6 @@ mod tests { sender.update_candidate(hash1, true); assert!(sender.is_complete()); - recv.wait().unwrap(); + futures::executor::block_on(recv).unwrap(); } } diff --git a/validation/src/shared_table/mod.rs b/validation/src/shared_table/mod.rs index ce8347ad58c8..4e527979d7ae 100644 --- a/validation/src/shared_table/mod.rs +++ b/validation/src/shared_table/mod.rs @@ -19,6 +19,8 @@ use std::collections::hash_map::{HashMap, Entry}; use std::sync::Arc; +use std::pin::Pin; +use std::task::{Poll, Context}; use availability_store::{Data, Store as AvailabilityStore}; use table::{self, Table, Context as TableContextTrait}; @@ -29,7 +31,6 @@ use polkadot_primitives::parachain::{ }; use parking_lot::Mutex; -use futures01::prelude::*; use log::{warn, debug}; use bitvec::bitvec; @@ -139,7 +140,7 @@ impl SharedTableInner { statement: table::SignedStatement, max_block_data_size: Option, ) -> Option::Future, + R::FetchValidationProof >> { let summary = self.table.import_statement(context, statement)?; self.update_trackers(&summary.candidate, context); @@ -173,7 +174,7 @@ impl SharedTableInner { None } Some(candidate) => { - let fetch = router.fetch_pov_block(candidate).into_future(); + let fetch = router.fetch_pov_block(candidate); Some(Work { candidate_receipt: candidate.clone(), @@ -266,7 +267,7 @@ pub struct ParachainWork { max_block_data_size: Option, } -impl ParachainWork { +impl ParachainWork { /// Prime the parachain work with an API reference for extracting /// chain information. pub fn prime(self, api: Arc

) @@ -318,22 +319,27 @@ pub struct PrimedParachainWork { validate: F, } -impl Future for PrimedParachainWork +impl futures::Future for PrimedParachainWork where - Fetch: Future, - F: FnMut(&BlockId, &Collation) -> Result, + Fetch: futures::Future> + Unpin, + F: FnMut(&BlockId, &Collation) -> Result + Unpin, Err: From<::std::io::Error>, { - type Item = Validated; - type Error = Err; + type Output = Result; - fn poll(&mut self) -> Poll { - let work = &mut self.inner.work; + fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { + let this = Pin::into_inner(self); + let work = &mut this.inner.work; let candidate = &work.candidate_receipt; - let pov_block = futures01::try_ready!(work.fetch.poll()); - let validation_res = (self.validate)( - &BlockId::hash(self.inner.relay_parent), + let pov_block = match Pin::new(&mut work.fetch).poll(cx) { + Poll::Ready(Ok(block)) => block, + Poll::Ready(Err(err)) => return Poll::Ready(Err(err)), + Poll::Pending => return Poll::Pending, + }; + + let validation_res = (this.validate)( + &BlockId::hash(this.inner.relay_parent), &Collation { pov: pov_block.clone(), receipt: candidate.clone() }, ); @@ -352,8 +358,8 @@ impl Future for PrimedParachainWork .map(|(_target, root, data)| (root, data)) .collect(); - self.inner.availability_store.make_available(Data { - relay_parent: self.inner.relay_parent, + this.inner.availability_store.make_available(Data { + relay_parent: this.inner.relay_parent, parachain_id: work.candidate_receipt.parachain_index, candidate_hash, block_data: pov_block.block_data.clone(), @@ -367,7 +373,7 @@ impl Future for PrimedParachainWork } }; - Ok(Async::Ready(Validated { + Poll::Ready(Ok(Validated { statement: validity_statement, result, })) @@ -440,7 +446,7 @@ impl SharedTable { router: &R, statement: table::SignedStatement, ) -> Option::Future, + R::FetchValidationProof, >> { self.inner.lock().import_remote_statement(&*self.context, router, statement, self.max_block_data_size) } @@ -456,7 +462,7 @@ impl SharedTable { R: TableRouter, I: IntoIterator, U: ::std::iter::FromIterator::Future, + R::FetchValidationProof, >>>, { let mut inner = self.inner.lock(); @@ -574,7 +580,8 @@ mod tests { use substrate_keyring::Sr25519Keyring; use primitives::crypto::UncheckedInto; use polkadot_primitives::parachain::{BlockData, ConsolidatedIngress}; - use futures01::future; + use futures::future; + use futures::executor::block_on; fn pov_block_with_data(data: Vec) -> PoVBlock { PoVBlock { @@ -587,7 +594,7 @@ mod tests { struct DummyRouter; impl TableRouter for DummyRouter { type Error = ::std::io::Error; - type FetchValidationProof = future::FutureResult; + type FetchValidationProof = future::Ready>; fn local_collation(&self, _collation: Collation, _outgoing: OutgoingMessages) { } @@ -727,7 +734,7 @@ mod tests { let hash = candidate.hash(); - let producer: ParachainWork> = ParachainWork { + let producer: ParachainWork>> = ParachainWork { work: Work { candidate_receipt: candidate, fetch: future::ok(pov_block.clone()), @@ -737,8 +744,7 @@ mod tests { max_block_data_size: None, }; - let validated = producer.prime_with(|_, _| Ok(OutgoingMessages { outgoing_messages: Vec::new() })) - .wait() + let validated = block_on(producer.prime_with(|_, _| Ok(OutgoingMessages { outgoing_messages: Vec::new() }))) .unwrap(); assert_eq!(validated.pov_block(), &pov_block); @@ -778,8 +784,7 @@ mod tests { max_block_data_size: None, }; - let validated = producer.prime_with(|_, _| Ok(OutgoingMessages { outgoing_messages: Vec::new() })) - .wait() + let validated = block_on(producer.prime_with(|_, _| Ok(OutgoingMessages { outgoing_messages: Vec::new() }))) .unwrap(); assert_eq!(validated.pov_block(), &pov_block); From 322cca5224fdca0a29d88ff91700ef704a9d0c2a Mon Sep 17 00:00:00 2001 From: Ashley Date: Sat, 30 Nov 2019 00:31:55 +0100 Subject: [PATCH 06/54] Migrate network to std futures --- network/Cargo.toml | 2 +- network/src/collator_pool.rs | 12 +-- network/src/lib.rs | 40 ++++----- network/src/router.rs | 40 +++++---- network/src/tests/mod.rs | 4 +- network/src/tests/validation.rs | 38 +++++---- network/src/validation.rs | 142 ++++++++++++++------------------ 7 files changed, 137 insertions(+), 141 deletions(-) diff --git a/network/Cargo.toml b/network/Cargo.toml index f72253a80751..c8dee198cb8e 100644 --- a/network/Cargo.toml +++ b/network/Cargo.toml @@ -18,7 +18,7 @@ sr-primitives = { git = "https://github.com/paritytech/substrate", branch = "pol futures = "0.1" futures03 = { package = "futures", version = "0.3.1", features = ["compat"] } log = "0.4.8" -exit-future = "0.1.4" +exit-future = { git = "https://github.com/expenses/exit-future", branch = "modernize" } substrate-client = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } diff --git a/network/src/collator_pool.rs b/network/src/collator_pool.rs index 76d38218e95e..3229c9f827a9 100644 --- a/network/src/collator_pool.rs +++ b/network/src/collator_pool.rs @@ -20,7 +20,7 @@ use codec::{Encode, Decode}; use polkadot_primitives::Hash; use polkadot_primitives::parachain::{CollatorId, Id as ParaId, Collation}; use substrate_network::PeerId; -use futures::sync::oneshot; +use futures03::channel::oneshot; use std::collections::hash_map::{HashMap, Entry}; use std::time::{Duration, Instant}; @@ -196,7 +196,7 @@ impl CollatorPool { } /// Wait for a collation from a parachain. - pub fn await_collation(&mut self, relay_parent: Hash, para_id: ParaId, sender: oneshot::Sender) { + pub fn await_collation(&mut self, relay_parent: Hash, para_id: ParaId, sender: futures03::channel::oneshot::Sender) { self.collations.entry((relay_parent, para_id)) .or_insert_with(CollationSlot::blank_now) .entries @@ -230,7 +230,7 @@ mod tests { use polkadot_primitives::parachain::{ CandidateReceipt, BlockData, PoVBlock, HeadData, ConsolidatedIngress, }; - use futures::Future; + use futures03::executor::block_on; fn make_pov(block_data: Vec) -> PoVBlock { PoVBlock { @@ -292,8 +292,8 @@ mod tests { pov: make_pov(vec![4, 5, 6]), }); - rx1.wait().unwrap(); - rx2.wait().unwrap(); + block_on(rx1).unwrap(); + block_on(rx2).unwrap(); assert_eq!(pool.collators.get(&primary).map(|ids| &ids.1).unwrap(), &peer_id); } @@ -322,7 +322,7 @@ mod tests { let (tx, rx) = oneshot::channel(); pool.await_collation(relay_parent, para_id, tx); - rx.wait().unwrap(); + block_on(rx).unwrap(); } #[test] diff --git a/network/src/lib.rs b/network/src/lib.rs index 750fcb12e36e..aa6324a7dbef 100644 --- a/network/src/lib.rs +++ b/network/src/lib.rs @@ -26,9 +26,7 @@ pub mod validation; pub mod gossip; use codec::{Decode, Encode}; -use futures::sync::oneshot; -use futures::prelude::*; -use futures03::{channel::mpsc, compat::Compat, StreamExt}; +use futures03::channel::mpsc; use polkadot_primitives::{Block, Hash, Header}; use polkadot_primitives::parachain::{ Id as ParaId, BlockData, CollatorId, CandidateReceipt, Collation, PoVBlock, @@ -47,6 +45,8 @@ use self::local_collations::LocalCollations; use log::{trace, debug, warn}; use std::collections::{HashMap, HashSet}; +use std::pin::Pin; +use std::task::{Context as PollContext, Poll}; use crate::gossip::{POLKADOT_ENGINE_ID, GossipMessage}; @@ -109,7 +109,7 @@ impl NetworkService for PolkadotNetworkService { Err(_) => mpsc::unbounded().1, // return empty channel. }; - GossipMessageStream::new(Box::new(Compat::new(topic_stream.map(Ok)))) + GossipMessageStream::new(Box::new(topic_stream)) } fn gossip_message(&self, topic: Hash, message: GossipMessage) { @@ -152,32 +152,34 @@ impl GossipService for consensus_gossip::ConsensusGossip { /// A stream of gossip messages and an optional sender for a topic. pub struct GossipMessageStream { - topic_stream: Box + Send>, + topic_stream: Box + Unpin + Send>, } impl GossipMessageStream { /// Create a new instance with the given topic stream. - pub fn new(topic_stream: Box + Send>) -> Self { + pub fn new(topic_stream: Box + Unpin + Send>) -> Self { Self { topic_stream, } } } -impl Stream for GossipMessageStream { +impl futures03::Stream for GossipMessageStream { type Item = (GossipMessage, Option); - type Error = (); - fn poll(&mut self) -> Poll, Self::Error> { + fn poll_next(self: Pin<&mut Self>, cx: &mut PollContext) -> Poll> { + let this = Pin::into_inner(self); + loop { - let msg = match futures::try_ready!(self.topic_stream.poll()) { - Some(msg) => msg, - None => return Ok(Async::Ready(None)), + let msg = match Pin::new(&mut this.topic_stream).poll_next(cx) { + Poll::Ready(Some(msg)) => msg, + Poll::Ready(None) => return Poll::Ready(None), + Poll::Pending => return Poll::Pending, }; debug!(target: "validation", "Processing statement for live validation leaf-work"); if let Ok(gmsg) = GossipMessage::decode(&mut &msg.message[..]) { - return Ok(Async::Ready(Some((gmsg, msg.sender)))) + return Poll::Ready(Some((gmsg, msg.sender))) } } } @@ -194,7 +196,7 @@ struct PoVBlockRequest { validation_leaf: Hash, candidate_hash: Hash, block_data_hash: Hash, - sender: oneshot::Sender, + sender: futures03::channel::oneshot::Sender, canon_roots: StructuredUnroutedIngress, } @@ -331,8 +333,8 @@ impl PolkadotProtocol { candidate: &CandidateReceipt, relay_parent: Hash, canon_roots: StructuredUnroutedIngress, - ) -> oneshot::Receiver { - let (tx, rx) = oneshot::channel(); + ) -> futures03::channel::oneshot::Receiver { + let (tx, rx) = futures03::channel::oneshot::channel(); self.pending.push(PoVBlockRequest { attempted_peers: Default::default(), @@ -658,7 +660,7 @@ impl Specialization for PolkadotProtocol { let retain = peer != &who; if !retain { // swap with a dummy value which will be dropped immediately. - let (sender, _) = oneshot::channel(); + let (sender, _) = futures03::channel::oneshot::channel(); pending.push(::std::mem::replace(val, PoVBlockRequest { attempted_peers: Default::default(), validation_leaf: Default::default(), @@ -753,8 +755,8 @@ impl PolkadotProtocol { } } - fn await_collation(&mut self, relay_parent: Hash, para_id: ParaId) -> oneshot::Receiver { - let (tx, rx) = oneshot::channel(); + fn await_collation(&mut self, relay_parent: Hash, para_id: ParaId) -> futures03::channel::oneshot::Receiver { + let (tx, rx) = futures03::channel::oneshot::channel(); debug!(target: "p_net", "Attempting to get collation for parachain {:?} on relay parent {:?}", para_id, relay_parent); self.collators.await_collation(relay_parent, para_id, tx); rx diff --git a/network/src/router.rs b/network/src/router.rs index 91bce3dae02b..950d571e820c 100644 --- a/network/src/router.rs +++ b/network/src/router.rs @@ -32,8 +32,9 @@ use polkadot_primitives::parachain::{ OutgoingMessages, CandidateReceipt, ParachainHost, ValidatorIndex, Collation, PoVBlock, }; use crate::gossip::{RegisteredMessageValidator, GossipMessage, GossipStatement}; - -use futures::prelude::*; +use futures03::task::SpawnExt; +use futures03::TryFutureExt; +use futures03::FutureExt; use parking_lot::Mutex; use log::{debug, trace}; @@ -58,14 +59,16 @@ pub(crate) fn attestation_topic(parent_hash: Hash) -> Hash { /// dropped when it is not required anymore. Otherwise, it will stick around in memory /// infinitely. pub(crate) fn checked_statements(network: &N, topic: Hash) -> - impl Stream { + impl futures03::Stream { // spin up a task in the background that processes all incoming statements // validation has been done already by the gossip validator. // this will block internally until the gossip messages stream is obtained. + use futures03::StreamExt; + network.gossip_messages_for(topic) .filter_map(|msg| match msg.0 { - GossipMessage::Statement(s) => Some(s.signed_statement), - _ => None + GossipMessage::Statement(s) => futures03::future::ready(Some(s.signed_statement)), + _ => futures03::future::ready(None) }) } @@ -100,7 +103,7 @@ impl Router { /// The returned stream will not terminate, so it is required to make sure that the stream is /// dropped when it is not required anymore. Otherwise, it will stick around in memory /// infinitely. - pub(crate) fn checked_statements(&self) -> impl Stream { + pub(crate) fn checked_statements(&self) -> impl futures03::Stream { checked_statements(&**self.network(), self.attestation_topic) } @@ -129,7 +132,7 @@ impl Router w P::Api: ParachainHost, N: NetworkService, T: Clone + Executor + Send + 'static, - E: Future + Clone + Send + 'static, + E: futures03::Future + Clone + Send + Unpin + 'static, { /// Import a statement whose signature has been checked already. pub(crate) fn import_statement(&self, statement: SignedStatement) { @@ -173,17 +176,22 @@ impl Router w if let Some(work) = producer.map(|p| self.create_work(c_hash, p)) { trace!(target: "validation", "driving statement work to completion"); - let work = work.select2(self.fetcher.exit().clone()).then(|_| Ok(())); - self.fetcher.executor().spawn(work); + + let work = futures03::future::select( + work, + self.fetcher.exit().clone() + ) + .map(|_| ()); + let _ = self.fetcher.executor().spawn(work); } } } } fn create_work(&self, candidate_hash: Hash, producer: ParachainWork) - -> impl Future + Send + 'static + -> impl futures03::Future + Send + 'static where - D: Future + Send + 'static, + D: futures03::Future> + Send + Unpin + 'static, { let table = self.table.clone(); let network = self.network().clone(); @@ -192,7 +200,7 @@ impl Router w let parent_hash = self.parent_hash(); producer.prime(self.fetcher.api().clone()) - .map(move |validated| { + .map_ok(move |validated| { // store the data before broadcasting statements, so other peers can fetch. knowledge.lock().note_candidate( candidate_hash, @@ -212,7 +220,11 @@ impl Router w network.gossip_message(attestation_topic, statement.into()); }) - .map_err(|e| debug!(target: "p_net", "Failed to produce statements: {:?}", e)) + .map(|res| { + if let Err(e) = res { + debug!(target: "p_net", "Failed to produce statements: {:?}", e); + } + }) } } @@ -220,7 +232,7 @@ impl TableRouter for Router wh P::Api: ParachainHost, N: NetworkService, T: Clone + Executor + Send + 'static, - E: Future + Clone + Send + 'static, + E: futures03::Future + Clone + Send + 'static, { type Error = io::Error; type FetchValidationProof = validation::PoVReceiver; diff --git a/network/src/tests/mod.rs b/network/src/tests/mod.rs index 1f7204b50184..d4ddbc24e2ac 100644 --- a/network/src/tests/mod.rs +++ b/network/src/tests/mod.rs @@ -33,7 +33,7 @@ use substrate_network::{ specialization::NetworkSpecialization, }; -use futures::Future; +use futures03::executor::block_on; mod validation; @@ -244,7 +244,7 @@ fn fetches_from_those_with_knowledge() { let pov_block = make_pov(block_data.0); on_message(&mut protocol, &mut ctx, peer_b, Message::PovBlock(2, Some(pov_block.clone()))); drop(protocol); - assert_eq!(recv.wait().unwrap(), pov_block); + assert_eq!(block_on(recv).unwrap(), pov_block); } } diff --git a/network/src/tests/validation.rs b/network/src/tests/validation.rs index 3962326f92f6..5521a1a71ac9 100644 --- a/network/src/tests/validation.rs +++ b/network/src/tests/validation.rs @@ -39,22 +39,23 @@ use sr_primitives::traits::{ApiRef, ProvideRuntimeApi}; use std::collections::HashMap; use std::sync::Arc; -use futures::{prelude::*, sync::mpsc}; +use std::pin::Pin; +use std::task::{Poll, Context}; +use futures03::{prelude::*, channel::mpsc}; use codec::Encode; use super::{TestContext, TestChainContext}; -type TaskExecutor = Arc + Send>> + Send + Sync>; +type TaskExecutor = Arc; #[derive(Clone, Copy)] struct NeverExit; impl Future for NeverExit { - type Item = (); - type Error = (); + type Output = (); - fn poll(&mut self) -> Poll<(), ()> { - Ok(Async::NotReady) + fn poll(self: Pin<&mut Self>, _: &mut Context) -> Poll { + Poll::Pending } } @@ -93,27 +94,28 @@ impl GossipRouter { } impl Future for GossipRouter { - type Item = (); - type Error = (); + type Output = (); + + fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { + let this = Pin::into_inner(self); - fn poll(&mut self) -> Poll<(), ()> { loop { - match self.incoming_messages.poll().unwrap() { - Async::Ready(Some((topic, message))) => self.add_message(topic, message), - Async::Ready(None) => panic!("ended early."), - Async::NotReady => break, + match Pin::new(&mut this.incoming_messages).poll_next(cx) { + Poll::Ready(Some((topic, message))) => this.add_message(topic, message), + Poll::Ready(None) => panic!("ended early."), + Poll::Pending => break, } } loop { - match self.incoming_streams.poll().unwrap() { - Async::Ready(Some((topic, sender))) => self.add_outgoing(topic, sender), - Async::Ready(None) => panic!("ended early."), - Async::NotReady => break, + match Pin::new(&mut this.incoming_streams).poll_next(cx) { + Poll::Ready(Some((topic, sender))) => this.add_outgoing(topic, sender), + Poll::Ready(None) => panic!("ended early."), + Poll::Pending => break, } } - Ok(Async::NotReady) + Poll::Pending } } diff --git a/network/src/validation.rs b/network/src/validation.rs index c3ab009e2079..7cb4bf646fc9 100644 --- a/network/src/validation.rs +++ b/network/src/validation.rs @@ -30,17 +30,18 @@ use polkadot_primitives::parachain::{ ValidatorId, PoVBlock }; -use futures::prelude::*; -use futures::future::{self, Executor as FutureExecutor}; -use futures::sync::oneshot::{self, Receiver}; +use futures03::channel::oneshot::{self, Receiver}; +pub use futures03::task::{Spawn as Executor, SpawnExt}; +use futures03::{StreamExt as _, FutureExt as _, TryFutureExt}; use std::collections::hash_map::{HashMap, Entry}; use std::io; use std::sync::Arc; +use std::pin::Pin; +use std::task::{Poll, Context}; use arrayvec::ArrayVec; use parking_lot::Mutex; -use log::warn; use crate::router::Router; use crate::gossip::{RegisteredMessageValidator, MessageValidationData}; @@ -49,33 +50,6 @@ use super::NetworkService; pub use polkadot_validation::Incoming; -/// An executor suitable for dispatching async consensus tasks. -pub trait Executor { - fn spawn + Send + 'static>(&self, f: F); -} - -/// A wrapped futures::future::Executor. -#[derive(Clone)] -pub struct WrappedExecutor(pub T); - -impl Executor for WrappedExecutor - where T: FutureExecutor + Send + 'static>> -{ - fn spawn + Send + 'static>(&self, f: F) { - if let Err(e) = self.0.execute(Box::new(f)) { - warn!(target: "validation", "could not spawn consensus task: {:?}", e); - } - } -} - -impl Executor for Arc< - dyn futures::future::Executor + Send>> + Send + Sync -> { - fn spawn + Send + 'static>(&self, f: F) { - let _ = FutureExecutor::execute(&**self, Box::new(f)); - } -} - /// Params to instantiate validation work on a block-DAG leaf. pub struct LeafWorkParams { /// The local session key. @@ -123,7 +97,7 @@ impl Clone for ValidationNetwork { impl ValidationNetwork where P: ProvideRuntimeApi + Send + Sync + 'static, P::Api: ParachainHost, - E: Clone + Future + Send + Sync + 'static, + E: Clone + futures03::Future + Send + Sync + 'static, N: NetworkService, T: Clone + Executor + Send + Sync + 'static, { @@ -183,13 +157,13 @@ impl ValidationNetwork where impl ValidationNetwork where N: NetworkService { /// Convert the given `CollatorId` to a `PeerId`. pub fn collator_id_to_peer_id(&self, collator_id: CollatorId) -> - impl Future, Error=()> + Send + impl futures03::Future> + Send { - let (send, recv) = oneshot::channel(); + let (send, recv) = futures03::channel::oneshot::channel(); self.network.with_spec(move |spec, _| { let _ = send.send(spec.collator_id_to_peer_id(&collator_id).cloned()); }); - recv.map_err(|_| ()) + recv.map(|res| res.unwrap_or(None)) } /// Create a `Stream` of checked statements for the given `relay_parent`. @@ -197,7 +171,7 @@ impl ValidationNetwork where N: NetworkService { /// The returned stream will not terminate, so it is required to make sure that the stream is /// dropped when it is not required anymore. Otherwise, it will stick around in memory /// infinitely. - pub fn checked_statements(&self, relay_parent: Hash) -> impl Stream { + pub fn checked_statements(&self, relay_parent: Hash) -> impl futures03::Stream { crate::router::checked_statements(&*self.network, crate::router::attestation_topic(relay_parent)) } } @@ -206,13 +180,13 @@ impl ValidationNetwork where N: NetworkService { impl ParachainNetwork for ValidationNetwork where P: ProvideRuntimeApi + Send + Sync + 'static, P::Api: ParachainHost, - E: Clone + Future + Send + Sync + 'static, + E: Clone + futures03::Future + Send + Sync + Unpin + 'static, N: NetworkService, T: Clone + Executor + Send + Sync + 'static, { type Error = String; type TableRouter = Router; - type BuildTableRouter = Box + Send>; + type BuildTableRouter = Box> + Send + Unpin>; fn communication_for( &self, @@ -233,7 +207,7 @@ impl ParachainNetwork for ValidationNetwork where let executor = self.executor.clone(); let work = build_fetcher .map_err(|e| format!("{:?}", e)) - .map(move |fetcher| { + .map_ok(move |fetcher| { let table_router = Router::new( table, fetcher, @@ -242,8 +216,15 @@ impl ParachainNetwork for ValidationNetwork where let table_router_clone = table_router.clone(); let work = table_router.checked_statements() - .for_each(move |msg| { table_router_clone.import_statement(msg); Ok(()) }); - executor.spawn(work.select(exit).map(|_| ()).map_err(|_| ())); + .for_each(move |msg| { + table_router_clone.import_statement(msg); + futures03::future::ready(()) + }); + + let work = futures03::future::select(work, exit) + .map(|_| ()); + + let _ = executor.spawn(work); table_router }); @@ -258,27 +239,26 @@ pub struct NetworkDown; /// A future that resolves when a collation is received. pub struct AwaitingCollation { - outer: futures::sync::oneshot::Receiver<::futures::sync::oneshot::Receiver>, - inner: Option<::futures::sync::oneshot::Receiver> + outer: futures03::channel::oneshot::Receiver<::futures03::channel::oneshot::Receiver>, + inner: Option> } -impl Future for AwaitingCollation { - type Item = Collation; - type Error = NetworkDown; +impl futures03::Future for AwaitingCollation { + type Output = Result; - fn poll(&mut self) -> Poll { - if let Some(ref mut inner) = self.inner { - return inner - .poll() - .map_err(|_| NetworkDown) + fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { + let this = Pin::into_inner(self); + + if let Some(ref mut inner) = this.inner { + return Pin::new(inner).poll(cx).map_err(|_| NetworkDown) } - match self.outer.poll() { - Ok(futures::Async::Ready(inner)) => { - self.inner = Some(inner); - self.poll() + match Pin::new(&mut this.outer).poll(cx) { + Poll::Ready(Ok(inner)) => { + this.inner = Some(inner); + Pin::new(this).poll(cx) }, - Ok(futures::Async::NotReady) => Ok(futures::Async::NotReady), - Err(_) => Err(NetworkDown) + Poll::Ready(Err(_)) => Poll::Ready(Err(NetworkDown)), + Poll::Pending => Poll::Pending, } } } @@ -292,7 +272,7 @@ impl Collators for ValidationNetwork where type Collation = AwaitingCollation; fn collate(&self, parachain: ParaId, relay_parent: Hash) -> Self::Collation { - let (tx, rx) = ::futures::sync::oneshot::channel(); + let (tx, rx) = futures03::channel::oneshot::channel(); self.network.with_spec(move |spec, _| { let collation = spec.await_collation(relay_parent, parachain); let _ = tx.send(collation); @@ -366,21 +346,20 @@ impl Knowledge { /// receiver for incoming data. #[derive(Clone)] pub struct IncomingReceiver { - inner: future::Shared> + inner: futures03::future::Shared> } -impl Future for IncomingReceiver { - type Item = Incoming; - type Error = io::Error; +impl futures03::Future for IncomingReceiver { + type Output = Result; - fn poll(&mut self) -> Poll { - match self.inner.poll() { - Ok(Async::NotReady) => Ok(Async::NotReady), - Ok(Async::Ready(i)) => Ok(Async::Ready(Incoming::clone(&*i))), - Err(_) => Err(io::Error::new( + fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { + match Pin::new(&mut Pin::into_inner(self).inner).poll(cx) { + Poll::Ready(Ok(i)) => Poll::Ready(Ok(Incoming::clone(&i))), + Poll::Ready(Err(_)) => Poll::Ready(Err(io::Error::new( io::ErrorKind::Other, "Sending end of channel hung up", - )), + ))), + Poll::Pending => Poll::Pending, } } } @@ -586,25 +565,26 @@ pub struct PoVReceiver { inner: Option> } -impl Future for PoVReceiver { - type Item = PoVBlock; - type Error = io::Error; +impl futures03::Future for PoVReceiver { + type Output = Result; + + fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { + let this = Pin::into_inner(self); - fn poll(&mut self) -> Poll { let map_err = |_| io::Error::new( io::ErrorKind::Other, "Sending end of channel hung up", ); - if let Some(ref mut inner) = self.inner { - return inner.poll().map_err(map_err); + if let Some(ref mut inner) = this.inner { + return Pin::new(inner).poll(cx).map_err(map_err); } - match self.outer.poll().map_err(map_err)? { - Async::Ready(inner) => { - self.inner = Some(inner); - self.poll() + match Pin::new(&mut this.outer).poll(cx).map_err(map_err)? { + Poll::Ready(inner) => { + this.inner = Some(inner); + Pin::new(this).poll(cx) } - Async::NotReady => Ok(Async::NotReady), + Poll::Pending => Poll::Pending, } } } @@ -670,7 +650,7 @@ impl LeafWorkDataFetcher where P::Api: ParachainHost, N: NetworkService, T: Clone + Executor + Send + 'static, - E: Future + Clone + Send + 'static, + E: futures03::Future + Clone + Send + 'static, { /// Fetch PoV block for the given candidate receipt. pub fn fetch_pov_block(&self, candidate: &CandidateReceipt) -> PoVReceiver { @@ -692,7 +672,7 @@ impl LeafWorkDataFetcher where ); let candidate = candidate.clone(); - let (tx, rx) = ::futures::sync::oneshot::channel(); + let (tx, rx) = futures03::channel::oneshot::channel(); self.network.with_spec(move |spec, ctx| { if let Ok(Some(canon_roots)) = canon_roots { let inner_rx = spec.fetch_pov_block(ctx, &candidate, parent_hash, canon_roots); From 1c9cf0427c0e2d15c4b6d52b91d67d4a3963e30d Mon Sep 17 00:00:00 2001 From: Ashley Date: Sat, 30 Nov 2019 01:16:35 +0100 Subject: [PATCH 07/54] Final changes to validation --- validation/src/lib.rs | 11 +++++++---- validation/src/shared_table/mod.rs | 4 ++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/validation/src/lib.rs b/validation/src/lib.rs index 59002ee66052..0f74387e8639 100644 --- a/validation/src/lib.rs +++ b/validation/src/lib.rs @@ -59,8 +59,8 @@ use txpool_api::{TransactionPool, InPoolTransaction}; use attestation_service::ServiceHandle; use futures::{ - future::{self, Either, select}, FutureExt, StreamExt, Stream, - stream::unfold, task::{Spawn, SpawnExt}, + future::{self, Either, select}, FutureExt, StreamExt, Stream, TryFutureExt, stream::unfold, + task::{Spawn, SpawnExt}, }; use collation::CollationFetch; use dynamic_inclusion::DynamicInclusion; @@ -122,13 +122,16 @@ pub trait TableRouter: Clone { /// A long-lived network which can create parachain statement and BFT message routing processes on demand. pub trait Network { + /// The error type of asynchronously building the table router. + type Error: std::fmt::Debug; + /// The table router type. This should handle importing of any statements, /// routing statements to peers, and driving completion of any `StatementProducers`. type TableRouter: TableRouter; /// The future used for asynchronously building the table router. /// This should not fail. - type BuildTableRouter: futures::Future; + type BuildTableRouter: futures::Future>; /// Instantiate a table router using the given shared table. /// Also pass through any outgoing messages to be broadcast to peers. @@ -406,7 +409,7 @@ impl ParachainValidation where }) }; - let router = build_router.map(with_router); + let router = build_router.map_ok(with_router); let cancellable_work = select(exit, router).map(|_| ()); diff --git a/validation/src/shared_table/mod.rs b/validation/src/shared_table/mod.rs index 4e527979d7ae..b2e0c11b413c 100644 --- a/validation/src/shared_table/mod.rs +++ b/validation/src/shared_table/mod.rs @@ -267,13 +267,13 @@ pub struct ParachainWork { max_block_data_size: Option, } -impl ParachainWork { +impl ParachainWork { /// Prime the parachain work with an API reference for extracting /// chain information. pub fn prime(self, api: Arc

) -> PrimedParachainWork< Fetch, - impl Send + FnMut(&BlockId, &Collation) -> Result, + impl Send + FnMut(&BlockId, &Collation) -> Result + Unpin, > where P: Send + Sync + 'static, From 73563253d95962657108820ae130a8d3f3093ee8 Mon Sep 17 00:00:00 2001 From: Ashley Date: Sat, 30 Nov 2019 11:39:09 +0100 Subject: [PATCH 08/54] Tidy up network --- network/Cargo.toml | 3 +-- network/src/collator_pool.rs | 6 ++--- network/src/lib.rs | 21 +++++++++-------- network/src/router.rs | 26 ++++++++++----------- network/src/tests/mod.rs | 2 +- network/src/tests/validation.rs | 4 ++-- network/src/validation.rs | 41 +++++++++++++++++---------------- 7 files changed, 51 insertions(+), 52 deletions(-) diff --git a/network/Cargo.toml b/network/Cargo.toml index c8dee198cb8e..b42205971675 100644 --- a/network/Cargo.toml +++ b/network/Cargo.toml @@ -15,8 +15,7 @@ codec = { package = "parity-scale-codec", version = "1.1.0", default-features = substrate-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } sr-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -futures = "0.1" -futures03 = { package = "futures", version = "0.3.1", features = ["compat"] } +futures = { version = "0.3.1", features = ["compat"] } log = "0.4.8" exit-future = { git = "https://github.com/expenses/exit-future", branch = "modernize" } substrate-client = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } diff --git a/network/src/collator_pool.rs b/network/src/collator_pool.rs index 3229c9f827a9..2eb4a3cbb1cf 100644 --- a/network/src/collator_pool.rs +++ b/network/src/collator_pool.rs @@ -20,7 +20,7 @@ use codec::{Encode, Decode}; use polkadot_primitives::Hash; use polkadot_primitives::parachain::{CollatorId, Id as ParaId, Collation}; use substrate_network::PeerId; -use futures03::channel::oneshot; +use futures::channel::oneshot; use std::collections::hash_map::{HashMap, Entry}; use std::time::{Duration, Instant}; @@ -196,7 +196,7 @@ impl CollatorPool { } /// Wait for a collation from a parachain. - pub fn await_collation(&mut self, relay_parent: Hash, para_id: ParaId, sender: futures03::channel::oneshot::Sender) { + pub fn await_collation(&mut self, relay_parent: Hash, para_id: ParaId, sender: oneshot::Sender) { self.collations.entry((relay_parent, para_id)) .or_insert_with(CollationSlot::blank_now) .entries @@ -230,7 +230,7 @@ mod tests { use polkadot_primitives::parachain::{ CandidateReceipt, BlockData, PoVBlock, HeadData, ConsolidatedIngress, }; - use futures03::executor::block_on; + use futures::executor::block_on; fn make_pov(block_data: Vec) -> PoVBlock { PoVBlock { diff --git a/network/src/lib.rs b/network/src/lib.rs index aa6324a7dbef..ccd7ade067ef 100644 --- a/network/src/lib.rs +++ b/network/src/lib.rs @@ -26,7 +26,8 @@ pub mod validation; pub mod gossip; use codec::{Decode, Encode}; -use futures03::channel::mpsc; +use futures::channel::{oneshot, mpsc}; +use futures::prelude::*; use polkadot_primitives::{Block, Hash, Header}; use polkadot_primitives::parachain::{ Id as ParaId, BlockData, CollatorId, CandidateReceipt, Collation, PoVBlock, @@ -152,19 +153,19 @@ impl GossipService for consensus_gossip::ConsensusGossip { /// A stream of gossip messages and an optional sender for a topic. pub struct GossipMessageStream { - topic_stream: Box + Unpin + Send>, + topic_stream: Box + Unpin + Send>, } impl GossipMessageStream { /// Create a new instance with the given topic stream. - pub fn new(topic_stream: Box + Unpin + Send>) -> Self { + pub fn new(topic_stream: Box + Unpin + Send>) -> Self { Self { topic_stream, } } } -impl futures03::Stream for GossipMessageStream { +impl Stream for GossipMessageStream { type Item = (GossipMessage, Option); fn poll_next(self: Pin<&mut Self>, cx: &mut PollContext) -> Poll> { @@ -196,7 +197,7 @@ struct PoVBlockRequest { validation_leaf: Hash, candidate_hash: Hash, block_data_hash: Hash, - sender: futures03::channel::oneshot::Sender, + sender: oneshot::Sender, canon_roots: StructuredUnroutedIngress, } @@ -333,8 +334,8 @@ impl PolkadotProtocol { candidate: &CandidateReceipt, relay_parent: Hash, canon_roots: StructuredUnroutedIngress, - ) -> futures03::channel::oneshot::Receiver { - let (tx, rx) = futures03::channel::oneshot::channel(); + ) -> oneshot::Receiver { + let (tx, rx) = oneshot::channel(); self.pending.push(PoVBlockRequest { attempted_peers: Default::default(), @@ -660,7 +661,7 @@ impl Specialization for PolkadotProtocol { let retain = peer != &who; if !retain { // swap with a dummy value which will be dropped immediately. - let (sender, _) = futures03::channel::oneshot::channel(); + let (sender, _) = oneshot::channel(); pending.push(::std::mem::replace(val, PoVBlockRequest { attempted_peers: Default::default(), validation_leaf: Default::default(), @@ -755,8 +756,8 @@ impl PolkadotProtocol { } } - fn await_collation(&mut self, relay_parent: Hash, para_id: ParaId) -> futures03::channel::oneshot::Receiver { - let (tx, rx) = futures03::channel::oneshot::channel(); + fn await_collation(&mut self, relay_parent: Hash, para_id: ParaId) -> oneshot::Receiver { + let (tx, rx) = oneshot::channel(); debug!(target: "p_net", "Attempting to get collation for parachain {:?} on relay parent {:?}", para_id, relay_parent); self.collators.await_collation(relay_parent, para_id, tx); rx diff --git a/network/src/router.rs b/network/src/router.rs index 950d571e820c..5b43f5499592 100644 --- a/network/src/router.rs +++ b/network/src/router.rs @@ -32,9 +32,9 @@ use polkadot_primitives::parachain::{ OutgoingMessages, CandidateReceipt, ParachainHost, ValidatorIndex, Collation, PoVBlock, }; use crate::gossip::{RegisteredMessageValidator, GossipMessage, GossipStatement}; -use futures03::task::SpawnExt; -use futures03::TryFutureExt; -use futures03::FutureExt; + +use futures::prelude::*; +use futures::task::SpawnExt; use parking_lot::Mutex; use log::{debug, trace}; @@ -59,16 +59,14 @@ pub(crate) fn attestation_topic(parent_hash: Hash) -> Hash { /// dropped when it is not required anymore. Otherwise, it will stick around in memory /// infinitely. pub(crate) fn checked_statements(network: &N, topic: Hash) -> - impl futures03::Stream { + impl Stream { // spin up a task in the background that processes all incoming statements // validation has been done already by the gossip validator. // this will block internally until the gossip messages stream is obtained. - use futures03::StreamExt; - network.gossip_messages_for(topic) .filter_map(|msg| match msg.0 { - GossipMessage::Statement(s) => futures03::future::ready(Some(s.signed_statement)), - _ => futures03::future::ready(None) + GossipMessage::Statement(s) => future::ready(Some(s.signed_statement)), + _ => future::ready(None) }) } @@ -103,7 +101,7 @@ impl Router { /// The returned stream will not terminate, so it is required to make sure that the stream is /// dropped when it is not required anymore. Otherwise, it will stick around in memory /// infinitely. - pub(crate) fn checked_statements(&self) -> impl futures03::Stream { + pub(crate) fn checked_statements(&self) -> impl Stream { checked_statements(&**self.network(), self.attestation_topic) } @@ -132,7 +130,7 @@ impl Router w P::Api: ParachainHost, N: NetworkService, T: Clone + Executor + Send + 'static, - E: futures03::Future + Clone + Send + Unpin + 'static, + E: Future + Clone + Send + Unpin + 'static, { /// Import a statement whose signature has been checked already. pub(crate) fn import_statement(&self, statement: SignedStatement) { @@ -177,7 +175,7 @@ impl Router w if let Some(work) = producer.map(|p| self.create_work(c_hash, p)) { trace!(target: "validation", "driving statement work to completion"); - let work = futures03::future::select( + let work = futures::future::select( work, self.fetcher.exit().clone() ) @@ -189,9 +187,9 @@ impl Router w } fn create_work(&self, candidate_hash: Hash, producer: ParachainWork) - -> impl futures03::Future + Send + 'static + -> impl Future + Send + 'static where - D: futures03::Future> + Send + Unpin + 'static, + D: Future> + Send + Unpin + 'static, { let table = self.table.clone(); let network = self.network().clone(); @@ -232,7 +230,7 @@ impl TableRouter for Router wh P::Api: ParachainHost, N: NetworkService, T: Clone + Executor + Send + 'static, - E: futures03::Future + Clone + Send + 'static, + E: Future + Clone + Send + 'static, { type Error = io::Error; type FetchValidationProof = validation::PoVReceiver; diff --git a/network/src/tests/mod.rs b/network/src/tests/mod.rs index d4ddbc24e2ac..f6c3ab75ee81 100644 --- a/network/src/tests/mod.rs +++ b/network/src/tests/mod.rs @@ -33,7 +33,7 @@ use substrate_network::{ specialization::NetworkSpecialization, }; -use futures03::executor::block_on; +use futures::executor::block_on; mod validation; diff --git a/network/src/tests/validation.rs b/network/src/tests/validation.rs index 5521a1a71ac9..e7d0e6891a8c 100644 --- a/network/src/tests/validation.rs +++ b/network/src/tests/validation.rs @@ -41,12 +41,12 @@ use std::collections::HashMap; use std::sync::Arc; use std::pin::Pin; use std::task::{Poll, Context}; -use futures03::{prelude::*, channel::mpsc}; +use futures::{prelude::*, channel::mpsc}; use codec::Encode; use super::{TestContext, TestChainContext}; -type TaskExecutor = Arc; +type TaskExecutor = Arc; #[derive(Clone, Copy)] struct NeverExit; diff --git a/network/src/validation.rs b/network/src/validation.rs index 7cb4bf646fc9..9e54fb2a17f8 100644 --- a/network/src/validation.rs +++ b/network/src/validation.rs @@ -30,9 +30,10 @@ use polkadot_primitives::parachain::{ ValidatorId, PoVBlock }; -use futures03::channel::oneshot::{self, Receiver}; -pub use futures03::task::{Spawn as Executor, SpawnExt}; -use futures03::{StreamExt as _, FutureExt as _, TryFutureExt}; +use futures::prelude::*; +use futures::task::SpawnExt; +pub use futures::task::Spawn as Executor; +use futures::channel::oneshot::{self, Receiver}; use std::collections::hash_map::{HashMap, Entry}; use std::io; @@ -97,7 +98,7 @@ impl Clone for ValidationNetwork { impl ValidationNetwork where P: ProvideRuntimeApi + Send + Sync + 'static, P::Api: ParachainHost, - E: Clone + futures03::Future + Send + Sync + 'static, + E: Clone + Future + Send + Sync + 'static, N: NetworkService, T: Clone + Executor + Send + Sync + 'static, { @@ -157,9 +158,9 @@ impl ValidationNetwork where impl ValidationNetwork where N: NetworkService { /// Convert the given `CollatorId` to a `PeerId`. pub fn collator_id_to_peer_id(&self, collator_id: CollatorId) -> - impl futures03::Future> + Send + impl Future> + Send { - let (send, recv) = futures03::channel::oneshot::channel(); + let (send, recv) = oneshot::channel(); self.network.with_spec(move |spec, _| { let _ = send.send(spec.collator_id_to_peer_id(&collator_id).cloned()); }); @@ -171,7 +172,7 @@ impl ValidationNetwork where N: NetworkService { /// The returned stream will not terminate, so it is required to make sure that the stream is /// dropped when it is not required anymore. Otherwise, it will stick around in memory /// infinitely. - pub fn checked_statements(&self, relay_parent: Hash) -> impl futures03::Stream { + pub fn checked_statements(&self, relay_parent: Hash) -> impl Stream { crate::router::checked_statements(&*self.network, crate::router::attestation_topic(relay_parent)) } } @@ -180,13 +181,13 @@ impl ValidationNetwork where N: NetworkService { impl ParachainNetwork for ValidationNetwork where P: ProvideRuntimeApi + Send + Sync + 'static, P::Api: ParachainHost, - E: Clone + futures03::Future + Send + Sync + Unpin + 'static, + E: Clone + Future + Send + Sync + Unpin + 'static, N: NetworkService, T: Clone + Executor + Send + Sync + 'static, { type Error = String; type TableRouter = Router; - type BuildTableRouter = Box> + Send + Unpin>; + type BuildTableRouter = Box> + Send + Unpin>; fn communication_for( &self, @@ -218,10 +219,10 @@ impl ParachainNetwork for ValidationNetwork where let work = table_router.checked_statements() .for_each(move |msg| { table_router_clone.import_statement(msg); - futures03::future::ready(()) + futures::future::ready(()) }); - let work = futures03::future::select(work, exit) + let work = futures::future::select(work, exit) .map(|_| ()); let _ = executor.spawn(work); @@ -239,11 +240,11 @@ pub struct NetworkDown; /// A future that resolves when a collation is received. pub struct AwaitingCollation { - outer: futures03::channel::oneshot::Receiver<::futures03::channel::oneshot::Receiver>, - inner: Option> + outer: oneshot::Receiver>, + inner: Option> } -impl futures03::Future for AwaitingCollation { +impl Future for AwaitingCollation { type Output = Result; fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { @@ -272,7 +273,7 @@ impl Collators for ValidationNetwork where type Collation = AwaitingCollation; fn collate(&self, parachain: ParaId, relay_parent: Hash) -> Self::Collation { - let (tx, rx) = futures03::channel::oneshot::channel(); + let (tx, rx) = oneshot::channel(); self.network.with_spec(move |spec, _| { let collation = spec.await_collation(relay_parent, parachain); let _ = tx.send(collation); @@ -346,10 +347,10 @@ impl Knowledge { /// receiver for incoming data. #[derive(Clone)] pub struct IncomingReceiver { - inner: futures03::future::Shared> + inner: future::Shared> } -impl futures03::Future for IncomingReceiver { +impl Future for IncomingReceiver { type Output = Result; fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { @@ -565,7 +566,7 @@ pub struct PoVReceiver { inner: Option> } -impl futures03::Future for PoVReceiver { +impl Future for PoVReceiver { type Output = Result; fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { @@ -650,7 +651,7 @@ impl LeafWorkDataFetcher where P::Api: ParachainHost, N: NetworkService, T: Clone + Executor + Send + 'static, - E: futures03::Future + Clone + Send + 'static, + E: Future + Clone + Send + 'static, { /// Fetch PoV block for the given candidate receipt. pub fn fetch_pov_block(&self, candidate: &CandidateReceipt) -> PoVReceiver { @@ -672,7 +673,7 @@ impl LeafWorkDataFetcher where ); let candidate = candidate.clone(); - let (tx, rx) = futures03::channel::oneshot::channel(); + let (tx, rx) = oneshot::channel(); self.network.with_spec(move |spec, ctx| { if let Ok(Some(canon_roots)) = canon_roots { let inner_rx = spec.fetch_pov_block(ctx, &candidate, parent_hash, canon_roots); From 0c4fe8331bdc9665ac2427eb8c795112ac728d70 Mon Sep 17 00:00:00 2001 From: Ashley Date: Sat, 30 Nov 2019 11:45:59 +0100 Subject: [PATCH 09/54] Tidy up validation --- Cargo.lock | 38 +++++++++++++++++------ validation/src/attestation_service.rs | 5 +-- validation/src/collation.rs | 6 ++-- validation/src/lib.rs | 18 +++++------ validation/src/shared_table/includable.rs | 7 +++-- validation/src/shared_table/mod.rs | 7 +++-- 6 files changed, 51 insertions(+), 30 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f4db3f0089c6..d12ac45338c0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -427,6 +427,11 @@ dependencies = [ "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "bytes" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "c2-chacha" version = "0.2.3" @@ -941,6 +946,15 @@ dependencies = [ "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "exit-future" +version = "0.2.0" +source = "git+https://github.com/expenses/exit-future?branch=modernize#e56d51d0ea98d07bc0c8e724fbe164f5da2faeab" +dependencies = [ + "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "faerie" version = "0.13.0" @@ -3539,8 +3553,7 @@ name = "polkadot-network" version = "0.7.0" dependencies = [ "arrayvec 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "exit-future 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", + "exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=modernize)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3734,11 +3747,9 @@ dependencies = [ name = "polkadot-validation" version = "0.7.0" dependencies = [ - "async-std 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "bitvec 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "derive_more 0.14.1 (registry+https://github.com/rust-lang/crates.io-index)", - "exit-future 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", + "exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=modernize)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "futures-timer 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3765,8 +3776,7 @@ dependencies = [ "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.2.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -5959,6 +5969,15 @@ dependencies = [ "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tokio" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", + "pin-project-lite 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tokio-buf" version = "0.1.1" @@ -6026,8 +6045,6 @@ version = "0.2.0-alpha.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures-util-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-sync 0.2.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -6894,6 +6911,7 @@ dependencies = [ "checksum byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0fc10e8cc6b2580fda3f36eb6dc5316657f812a3df879a44a66fc9f0fdbc4855" "checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5" "checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" +"checksum bytes 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1c85319f157e4e26c703678e68e26ab71a46c0199286fa670b21cc9fec13d895" "checksum c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb" "checksum c_linked_list 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4964518bd3b4a8190e832886cdc0da9794f12e8e6c1613a9e90ff331c4c8724b" "checksum cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)" = "aa87058dce70a3ff5621797f1506cb837edd02ac4c0ae642b4542dce802908b8" @@ -6952,6 +6970,7 @@ dependencies = [ "checksum errno 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "c2a071601ed01b988f896ab14b95e67335d1eeb50190932a1320f7fe3cadc84e" "checksum errno-dragonfly 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "14ca354e36190500e1e1fb267c647932382b54053c50b14970856c0b00a35067" "checksum exit-future 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d8013f441e38e31c670e7f34ec8f1d5d3a2bd9d303c1ff83976ca886005e8f48" +"checksum exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=modernize)" = "" "checksum faerie 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f902f2af041f6c7177a2a04f805687cdc71e69c7cbef059a2755d8923f4cd7a8" "checksum failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "f8273f13c977665c5db7eb2b99ae520952fe5ac831ae4cd09d80c4c7042b5ed9" "checksum failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0bc225b78e0391e4b8683440bf2e63c2deeeb2ce5189eab46e2b68c6d3725d08" @@ -7369,6 +7388,7 @@ dependencies = [ "checksum tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d8a021c69bb74a44ccedb824a046447e2c84a01df9e5c20779750acb38e11b2" "checksum tiny-keccak 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2953ca5148619bc99695c1274cb54c5275bbb913c6adad87e72eaf8db9787f69" "checksum tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)" = "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6" +"checksum tokio 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2e765bf9f550bd9b8a970633ca3b56b8120c4b6c5dcbe26a93744cb02fee4b17" "checksum tokio-buf 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8fb220f46c53859a4b7ec083e41dec9778ff0b1851c0942b211edb89e0ccdc46" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" "checksum tokio-codec 0.2.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)" = "9f5d22fd1e84bd4045d28813491cb7d7caae34d45c80517c2213f09a85e8787a" diff --git a/validation/src/attestation_service.rs b/validation/src/attestation_service.rs index 8658682a14a2..3d5a9c18a5ad 100644 --- a/validation/src/attestation_service.rs +++ b/validation/src/attestation_service.rs @@ -30,7 +30,8 @@ use sp_blockchain::{HeaderBackend, Result as ClientResult}; use block_builder::BlockBuilderApi; use consensus::SelectChain; use availability_store::Store as AvailabilityStore; -use futures::{StreamExt, FutureExt, Future, future::{ready, select}, task::{Spawn, SpawnExt}}; +use futures::prelude::*; +use futures::{future::{ready, select}, task::{Spawn, SpawnExt}}; use polkadot_primitives::{Block, BlockId}; use polkadot_primitives::parachain::{CandidateReceipt, ParachainHost}; use runtime_primitives::traits::{ProvideRuntimeApi}; @@ -186,7 +187,7 @@ pub(crate) fn start( error!("Failed to spawn old sessions pruning task"); } - let prune_available = futures::future::select( + let prune_available = select( prune_unneeded_availability(client, availability_store), exit.clone() ) diff --git a/validation/src/collation.rs b/validation/src/collation.rs index 5f32ea94a66a..d6a7d7689b39 100644 --- a/validation/src/collation.rs +++ b/validation/src/collation.rs @@ -28,6 +28,7 @@ use polkadot_primitives::{Block, Hash, BlockId, Balance, parachain::{ use runtime_primitives::traits::ProvideRuntimeApi; use parachain::{wasm_executor::{self, ExternalitiesError, ExecutionMode}, MessageRef, UpwardMessageRef}; use trie::TrieConfiguration; +use futures::prelude::*; use log::debug; use std::task::{Poll, Context}; use std::pin::Pin; @@ -38,9 +39,8 @@ use std::pin::Pin; pub trait Collators: Clone { /// Errors when producing collations. type Error: std::fmt::Debug; - /// A full collation. - type Collation: futures::Future>; + type Collation: Future>; /// Collate on a specific parachain, building on a given relay chain parent hash. /// @@ -99,7 +99,7 @@ impl CollationFetch { } } -impl futures::Future for CollationFetch +impl Future for CollationFetch where P::Api: ParachainHost, C: Collators + Unpin, diff --git a/validation/src/lib.rs b/validation/src/lib.rs index 0f74387e8639..d9a840526049 100644 --- a/validation/src/lib.rs +++ b/validation/src/lib.rs @@ -58,10 +58,8 @@ use futures_timer::Delay; use txpool_api::{TransactionPool, InPoolTransaction}; use attestation_service::ServiceHandle; -use futures::{ - future::{self, Either, select}, FutureExt, StreamExt, Stream, TryFutureExt, stream::unfold, - task::{Spawn, SpawnExt}, -}; +use futures::prelude::*; +use futures::{future::{self, Either, select, ready}, stream::unfold, task::{Spawn, SpawnExt}}; use collation::CollationFetch; use dynamic_inclusion::DynamicInclusion; use inherents::InherentData; @@ -110,7 +108,7 @@ pub trait TableRouter: Clone { /// Errors when fetching data from the network. type Error: std::fmt::Debug; /// Future that resolves when candidate data is fetched. - type FetchValidationProof: futures::Future>; + type FetchValidationProof: Future>; /// Call with local candidate data. This will make the data available on the network, /// and sign, import, and broadcast a statement about the candidate. @@ -131,7 +129,7 @@ pub trait Network { /// The future used for asynchronously building the table router. /// This should not fail. - type BuildTableRouter: futures::Future>; + type BuildTableRouter: Future>; /// Instantiate a table router using the given shared table. /// Also pass through any outgoing messages to be broadcast to peers. @@ -400,11 +398,11 @@ impl ParachainValidation where e, ), } - futures::future::ready(()) + ready(()) } Err(e) => { warn!(target: "validation", "Failed to collate candidate: {:?}", e); - futures::future::ready(()) + ready(()) } }) }; @@ -644,7 +642,7 @@ fn current_timestamp() -> u64 { struct ProposalTiming { minimum: Option, - attempt_propose: Box + Send + Unpin>, + attempt_propose: Box + Send + Unpin>, dynamic_inclusion: DynamicInclusion, enough_candidates: Delay, last_included: usize, @@ -812,7 +810,7 @@ impl CreateProposalData where } } -impl futures::Future for CreateProposal where +impl Future for CreateProposal where TxPool: TransactionPool + 'static, C: ProvideRuntimeApi + HeaderBackend + Send + Sync + 'static, C::Api: ParachainHost + BlockBuilderApi + ApiExt, diff --git a/validation/src/shared_table/includable.rs b/validation/src/shared_table/includable.rs index 414b7fb01352..22ba64983af0 100644 --- a/validation/src/shared_table/includable.rs +++ b/validation/src/shared_table/includable.rs @@ -17,10 +17,11 @@ //! Implements a future which resolves when all of the candidates referenced are includable. use std::collections::HashMap; -use std::pin::Pin; -use std::task::{Poll, Context}; +use futures::prelude::*; use futures::channel::oneshot; +use std::pin::Pin; +use std::task::{Poll, Context}; use polkadot_primitives::Hash; @@ -95,7 +96,7 @@ impl IncludabilitySender { /// Future that resolves when all the candidates within are includable. pub struct Includable(oneshot::Receiver<()>); -impl futures::Future for Includable { +impl Future for Includable { type Output = Result<(), oneshot::Canceled>; fn poll(self: Pin<&mut Self>, cx: &mut Context) -> Poll { diff --git a/validation/src/shared_table/mod.rs b/validation/src/shared_table/mod.rs index b2e0c11b413c..df3fa9b17f4a 100644 --- a/validation/src/shared_table/mod.rs +++ b/validation/src/shared_table/mod.rs @@ -31,6 +31,7 @@ use polkadot_primitives::parachain::{ }; use parking_lot::Mutex; +use futures::prelude::*; use log::{warn, debug}; use bitvec::bitvec; @@ -267,7 +268,7 @@ pub struct ParachainWork { max_block_data_size: Option, } -impl ParachainWork { +impl ParachainWork { /// Prime the parachain work with an API reference for extracting /// chain information. pub fn prime(self, api: Arc

) @@ -319,9 +320,9 @@ pub struct PrimedParachainWork { validate: F, } -impl futures::Future for PrimedParachainWork +impl Future for PrimedParachainWork where - Fetch: futures::Future> + Unpin, + Fetch: Future> + Unpin, F: FnMut(&BlockId, &Collation) -> Result + Unpin, Err: From<::std::io::Error>, { From 93fb6428501bac612a1675cf3b6e3d26f5bbc7c2 Mon Sep 17 00:00:00 2001 From: Ashley Date: Sun, 1 Dec 2019 12:21:25 +0100 Subject: [PATCH 10/54] Switch branch --- Cargo.lock | 1625 +++++++++++---------- availability-store/Cargo.toml | 2 +- cli/Cargo.toml | 2 +- collator/Cargo.toml | 12 +- erasure-coding/Cargo.toml | 4 +- executor/Cargo.toml | 2 +- network/Cargo.toml | 16 +- parachain/Cargo.toml | 4 +- primitives/Cargo.toml | 16 +- rpc/Cargo.toml | 12 +- runtime/Cargo.toml | 88 +- service/Cargo.toml | 50 +- statement-table/Cargo.toml | 2 +- test-parachains/adder/Cargo.toml | 2 +- test-parachains/adder/collator/Cargo.toml | 6 +- validation/Cargo.toml | 34 +- 16 files changed, 946 insertions(+), 931 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d12ac45338c0..a8af097882c7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -16,7 +16,7 @@ dependencies = [ "dlmalloc 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-parachain 0.7.0", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "substrate-wasm-builder-runner 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -33,9 +33,9 @@ dependencies = [ "polkadot-collator 0.7.0", "polkadot-parachain 0.7.0", "polkadot-primitives 0.7.0", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -374,6 +374,19 @@ dependencies = [ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "broadcaster" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures-channel 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-sink 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-util 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "bs58" version = "0.2.5" @@ -949,8 +962,9 @@ dependencies = [ [[package]] name = "exit-future" version = "0.2.0" -source = "git+https://github.com/expenses/exit-future?branch=modernize#e56d51d0ea98d07bc0c8e724fbe164f5da2faeab" +source = "git+https://github.com/expenses/exit-future?branch=broadcast#91714a1f03ef62362ac0aefd1df6f46e17a41463" dependencies = [ + "broadcaster 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1068,7 +1082,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "fork-tree" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1076,58 +1090,58 @@ dependencies = [ [[package]] name = "frame-executive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "frame-metadata" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "frame-support" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "bitmask 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "frame-metadata 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-support-procedural 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-metadata 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-support-procedural 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "paste 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-arithmetic 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-arithmetic 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "tracing 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "frame-support-procedural" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support-procedural-tools 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support-procedural-tools 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "syn 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1136,9 +1150,9 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support-procedural-tools-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support-procedural-tools-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1148,7 +1162,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1158,27 +1172,27 @@ dependencies = [ [[package]] name = "frame-system" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "frame-system-rpc-runtime-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -1465,7 +1479,7 @@ dependencies = [ [[package]] name = "grafana-data-source" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "async-std 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "chrono 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2811,286 +2825,286 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-authorship" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-authorship 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-authorship 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-babe" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "hex-literal 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-balances" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-collective" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-democracy" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-elections-phragmen" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-finality-tracker" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-grandpa" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-finality-grandpa-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-finality-grandpa-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-im-online" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-authorship 0.1.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-authorship 0.1.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-indices" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-membership" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-nicks" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-offences" version = "1.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-randomness-collective-flip" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-session" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "pallet-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "pallet-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-staking" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-authorship 0.1.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-authorship 0.1.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-staking-reward-curve" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3101,88 +3115,88 @@ dependencies = [ [[package]] name = "pallet-sudo" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-timestamp" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-transaction-payment" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-transaction-payment-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-transaction-payment-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-transaction-payment-rpc" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "jsonrpc-core 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core-client 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-derive 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "pallet-transaction-payment-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "pallet-transaction-payment-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-rpc-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-rpc-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "pallet-treasury" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -3490,7 +3504,7 @@ dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-primitives 0.7.0", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -3502,7 +3516,7 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-service 0.7.0", "structopt 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-cli 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-cli 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3520,12 +3534,12 @@ dependencies = [ "polkadot-runtime 0.7.0", "polkadot-service 0.7.0", "polkadot-validation 0.7.0", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3536,8 +3550,8 @@ dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-primitives 0.7.0", "reed-solomon-erasure 4.0.0 (git+https://github.com/paritytech/reed-solomon-erasure)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -3545,7 +3559,7 @@ name = "polkadot-executor" version = "0.7.0" dependencies = [ "polkadot-runtime 0.7.0", - "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -3553,7 +3567,7 @@ name = "polkadot-network" version = "0.7.0" dependencies = [ "arrayvec 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=modernize)", + "exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=broadcast)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3561,13 +3575,13 @@ dependencies = [ "polkadot-availability-store 0.7.0", "polkadot-primitives 0.7.0", "polkadot-validation 0.7.0", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -3583,8 +3597,8 @@ dependencies = [ "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "shared_memory 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "wasmi 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3594,18 +3608,18 @@ name = "polkadot-primitives" version = "0.7.0" dependencies = [ "bitvec 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", - "pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-parachain 0.7.0", "pretty_assertions 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-serializer 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-serializer 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -3613,14 +3627,14 @@ name = "polkadot-rpc" version = "0.7.0" dependencies = [ "jsonrpc-core 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "pallet-transaction-payment-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "pallet-transaction-payment-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "polkadot-primitives 0.7.0", "polkadot-runtime 0.7.0", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-frame-rpc-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-frame-rpc-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -3628,36 +3642,36 @@ name = "polkadot-runtime" version = "0.7.0" dependencies = [ "bitvec 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", - "frame-executive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "frame-system-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-executive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "frame-system-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "hex-literal 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "pallet-authority-discovery 0.1.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-authorship 0.1.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-collective 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-democracy 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-elections-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-im-online 0.1.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-indices 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-membership 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-nicks 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-offences 1.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-randomness-collective-flip 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-staking 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-staking-reward-curve 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-sudo 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-transaction-payment 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-transaction-payment-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-treasury 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "pallet-authority-discovery 0.1.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-authorship 0.1.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-collective 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-democracy 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-elections-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-im-online 0.1.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-indices 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-membership 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-nicks 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-offences 1.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-randomness-collective-flip 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-staking 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-staking-reward-curve 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-sudo 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-transaction-payment 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-transaction-payment-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-treasury 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-parachain 0.7.0", "polkadot-primitives 0.7.0", @@ -3666,23 +3680,23 @@ dependencies = [ "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-transaction-pool-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-offchain-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-serializer 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-transaction-pool-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-offchain-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-serializer 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "substrate-wasm-builder-runner 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-db 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3698,9 +3712,9 @@ dependencies = [ "hex-literal 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-im-online 0.1.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "pallet-staking 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-im-online 0.1.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "pallet-staking 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-availability-store 0.7.0", "polkadot-executor 0.7.0", @@ -3709,29 +3723,29 @@ dependencies = [ "polkadot-rpc 0.7.0", "polkadot-runtime 0.7.0", "polkadot-validation 0.7.0", - "sc-transaction-pool 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sc-transaction-pool 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "slog 2.5.2 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-authority-discovery 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-finality-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-finality-grandpa-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-service 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-authority-discovery 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-finality-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-finality-grandpa-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-service 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -3740,7 +3754,7 @@ version = "0.7.0" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-primitives 0.7.0", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -3749,11 +3763,11 @@ version = "0.7.0" dependencies = [ "bitvec 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "derive_more 0.14.1 (registry+https://github.com/rust-lang/crates.io-index)", - "exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=modernize)", + "exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=broadcast)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "futures-timer 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-availability-store 0.7.0", @@ -3761,21 +3775,21 @@ dependencies = [ "polkadot-primitives 0.7.0", "polkadot-runtime 0.7.0", "polkadot-statement-table 0.7.0", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-finality-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-finality-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "tokio 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -4283,7 +4297,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4296,45 +4310,45 @@ dependencies = [ "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-rpc-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-rpc-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sc-transaction-graph" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sc-transaction-pool" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sc-transaction-graph 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-transaction-pool-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sc-transaction-graph 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-transaction-pool-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -4612,74 +4626,74 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "sp-authorship" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sp-blockchain" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "lru 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sp-finality-tracker" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sp-timestamp" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sp-transaction-pool-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sp-transaction-pool-runtime-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -4690,21 +4704,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "sr-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-api-proc-macro 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api-proc-macro 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sr-api-proc-macro" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4716,37 +4730,37 @@ dependencies = [ [[package]] name = "sr-arithmetic" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "integer-sqrt 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-debug-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-debug-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sr-io" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-runtime-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-runtime-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sr-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4754,39 +4768,39 @@ dependencies = [ "paste 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-arithmetic 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-arithmetic 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sr-staking-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "sr-std" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" [[package]] name = "sr-version" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "impl-serde 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -4871,19 +4885,19 @@ dependencies = [ [[package]] name = "substrate-application-crypto" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-authority-discovery" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4895,25 +4909,25 @@ dependencies = [ "prost 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "prost-build 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-authority-discovery-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] @@ -4930,48 +4944,48 @@ dependencies = [ [[package]] name = "substrate-block-builder" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-block-builder-runtime-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-chain-spec" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-chain-spec-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-chain-spec-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-chain-spec-derive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4982,7 +4996,7 @@ dependencies = [ [[package]] name = "substrate-cli" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "ansi_term 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", "app_dirs 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4999,18 +5013,18 @@ dependencies = [ "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rpassword 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "structopt 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-panic-handler 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-service 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-tracing 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-panic-handler 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-service 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-tracing 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -5018,7 +5032,7 @@ dependencies = [ [[package]] name = "substrate-client" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5029,28 +5043,28 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-client-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5061,28 +5075,28 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-client-db" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "kvdb 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5092,25 +5106,25 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-consensus-babe" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", - "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "futures-timer 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5124,46 +5138,46 @@ dependencies = [ "pdqselect 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "schnorrkel 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-slots 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-uncles 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-slots 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-uncles 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-consensus-babe-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "schnorrkel 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-slots 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-slots 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-consensus-common" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5172,50 +5186,50 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-consensus-slots" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "futures-timer 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-consensus-uncles" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-authorship 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-authorship 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-debug-derive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5225,7 +5239,7 @@ dependencies = [ [[package]] name = "substrate-executor" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)", "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5239,15 +5253,15 @@ dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-wasm 0.41.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-panic-handler 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-runtime-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-serializer 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-wasm-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-panic-handler 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-runtime-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-serializer 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-wasm-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "wasmi 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "wasmtime-environ 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "wasmtime-jit 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5257,20 +5271,20 @@ dependencies = [ [[package]] name = "substrate-externalities" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "environmental 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives-storage 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives-storage 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-finality-grandpa" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "finality-grandpa 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", - "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5278,18 +5292,18 @@ dependencies = [ "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-finality-grandpa-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-finality-grandpa-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "tokio-executor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -5297,22 +5311,22 @@ dependencies = [ [[package]] name = "substrate-finality-grandpa-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-frame-rpc-system" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "frame-system-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-system-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core-client 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5320,55 +5334,55 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-inherents" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-keyring" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "strum 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-keystore" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "subtle 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "substrate-network" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5376,7 +5390,7 @@ dependencies = [ "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)", "erased-serde 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "futures-timer 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5394,16 +5408,16 @@ dependencies = [ "slog 2.5.2 (registry+https://github.com/rust-lang/crates.io-index)", "slog_derive 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-arithmetic 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-peerset 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-arithmetic 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-peerset 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "unsigned-varint 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5413,7 +5427,7 @@ dependencies = [ [[package]] name = "substrate-offchain" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5427,29 +5441,29 @@ dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-offchain-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-offchain-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "threadpool 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "substrate-offchain-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-panic-handler" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5458,7 +5472,7 @@ dependencies = [ [[package]] name = "substrate-peerset" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5469,17 +5483,17 @@ dependencies = [ [[package]] name = "substrate-phragmen" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5502,12 +5516,12 @@ dependencies = [ "schnorrkel 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "substrate-bip39 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-debug-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives-storage 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-runtime-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-debug-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives-storage 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-runtime-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "tiny-bip39 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "tiny-keccak 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5518,18 +5532,18 @@ dependencies = [ [[package]] name = "substrate-primitives-storage" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "impl-serde 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-debug-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-debug-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-rpc" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5538,36 +5552,36 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sc-rpc-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sc-rpc-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-rpc-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-rpc-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-rpc-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-rpc-servers" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "jsonrpc-core 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-http-server 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5576,28 +5590,28 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-runtime-interface" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "environmental 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-runtime-interface-proc-macro 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-wasm-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-runtime-interface-proc-macro 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-wasm-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-runtime-interface-proc-macro" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "Inflector 0.11.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5609,7 +5623,7 @@ dependencies = [ [[package]] name = "substrate-serializer" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5618,44 +5632,44 @@ dependencies = [ [[package]] name = "substrate-service" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", - "exit-future 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=broadcast)", "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "grafana-data-source 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "grafana-data-source 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sc-transaction-pool 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sc-transaction-pool 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", "slog 2.5.2 (registry+https://github.com/rust-lang/crates.io-index)", - "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sp-transaction-pool-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-chain-spec 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-client-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-offchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-rpc-servers 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-tracing 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sp-transaction-pool-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-chain-spec 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-client-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-offchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-rpc-servers 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-tracing 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "sysinfo 0.9.6 (registry+https://github.com/rust-lang/crates.io-index)", "target_info 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5666,28 +5680,28 @@ dependencies = [ [[package]] name = "substrate-session" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-state-db" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", ] [[package]] name = "substrate-state-machine" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5695,10 +5709,10 @@ dependencies = [ "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-panic-handler 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-panic-handler 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "trie-db 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-root 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -5706,7 +5720,7 @@ dependencies = [ [[package]] name = "substrate-telemetry" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5728,25 +5742,25 @@ dependencies = [ [[package]] name = "substrate-tracing" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ - "grafana-data-source 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "grafana-data-source 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "tracing-core 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "substrate-trie" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "memory-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", + "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)", "trie-db 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-root 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -5759,7 +5773,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "substrate-wasm-interface" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#229f71565da196566c4c52ea7be49f42b8f3352f" +source = "git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future#dc9782865fd99ee0a6b24272d566f4dd4319a892" dependencies = [ "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "wasmi 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6902,6 +6916,7 @@ dependencies = [ "checksum block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774" "checksum block-padding 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" "checksum broadcaster 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "07a1446420a56f1030271649ba0da46d23239b3a68c73591cea5247f15a788a0" +"checksum broadcaster 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "dad5c90ca2c2414701f979c92a776c15341f8194d2881ca58274905638f8b873" "checksum bs58 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c95ee6bba9d950218b6cc910cf62bc9e0a171d0f4537e3627b0f54d08549b188" "checksum bs58 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b170cd256a3f9fa6b9edae3e44a7dfdfc77e8124dbc3e2612d75f9c3e2396dae" "checksum bstr 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8d6c2c5b58ab920a4f5aeaaca34b4488074e8cc7596af94e6f8c6ff247c60245" @@ -6970,7 +6985,7 @@ dependencies = [ "checksum errno 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "c2a071601ed01b988f896ab14b95e67335d1eeb50190932a1320f7fe3cadc84e" "checksum errno-dragonfly 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "14ca354e36190500e1e1fb267c647932382b54053c50b14970856c0b00a35067" "checksum exit-future 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d8013f441e38e31c670e7f34ec8f1d5d3a2bd9d303c1ff83976ca886005e8f48" -"checksum exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=modernize)" = "" +"checksum exit-future 0.2.0 (git+https://github.com/expenses/exit-future?branch=broadcast)" = "" "checksum faerie 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f902f2af041f6c7177a2a04f805687cdc71e69c7cbef059a2755d8923f4cd7a8" "checksum failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "f8273f13c977665c5db7eb2b99ae520952fe5ac831ae4cd09d80c4c7042b5ed9" "checksum failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0bc225b78e0391e4b8683440bf2e63c2deeeb2ce5189eab46e2b68c6d3725d08" @@ -6983,15 +6998,15 @@ dependencies = [ "checksum fixedbitset 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "86d4de0081402f5e88cdac65c8dcdcc73118c1a7a465e2a05f0da05843a8ea33" "checksum flate2 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6bd6d6f4752952feb71363cffc9ebac9411b75b87c6ab6058c40c8900cf43c0f" "checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" -"checksum fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum frame-executive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum frame-metadata 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum frame-support-procedural 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum frame-support-procedural-tools 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum frame-support-procedural-tools-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum frame-system-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum frame-executive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum frame-metadata 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum frame-support-procedural 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum frame-support-procedural-tools 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum frame-support-procedural-tools-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum frame-system-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" "checksum fs-swap 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "921d332c89b3b61a826de38c61ee5b6e02c56806cade1b0e5d81bd71f57a71bb" "checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" @@ -7025,7 +7040,7 @@ dependencies = [ "checksum glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" "checksum globset 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "925aa2cac82d8834e2b2a4415b6f6879757fb5c0928fc445ae76461a12eed8f2" "checksum goblin 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5e6040506480da04a63de51a478e8021892d65d8411f29b2a422c2648bdd8bcb" -"checksum grafana-data-source 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum grafana-data-source 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" "checksum h2 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)" = "a5b34c246847f938a410a03c5458c7fee2274436675e76d8b903c08efc29c462" "checksum h2 0.2.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0f107db1419ef8271686187b1a5d47c6431af4a7f4d98b495e7b7fc249bb0a78" "checksum hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" @@ -7148,30 +7163,30 @@ dependencies = [ "checksum once_cell 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "891f486f630e5c5a4916c7e16c4b24a53e78c860b646e9f8e005e4f16847bfed" "checksum opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" -"checksum pallet-authority-discovery 0.1.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-authorship 0.1.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-collective 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-democracy 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-elections-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-im-online 0.1.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-indices 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-membership 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-nicks 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-offences 1.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-randomness-collective-flip 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-staking 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-staking-reward-curve 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-sudo 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-transaction-payment 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-transaction-payment-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-transaction-payment-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum pallet-treasury 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum pallet-authority-discovery 0.1.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-authorship 0.1.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-collective 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-democracy 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-elections-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-im-online 0.1.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-indices 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-membership 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-nicks 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-offences 1.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-randomness-collective-flip 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-staking 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-staking-reward-curve 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-sudo 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-transaction-payment 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-transaction-payment-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-transaction-payment-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum pallet-treasury 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" "checksum parity-bytes 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0c276d76c5333b8c2579e02d49a06733a55b8282d2d9b13e8d53b6406bd7e30a" "checksum parity-multiaddr 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "045b3c7af871285146300da35b1932bb6e4639b66c7c98e85d06a32cbc4e8fa7" "checksum parity-multiaddr 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "82afcb7461eae5d122543d8be1c57d306ed89af2d6ff7f8b0f5a3cc8f7e511bc" @@ -7259,9 +7274,9 @@ dependencies = [ "checksum rw-stream-sink 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9cbe61c20455d3015b2bb7be39e1872310283b8e5a52f5b242b0ac7581fe78" "checksum ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" -"checksum sc-rpc-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sc-transaction-graph 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sc-transaction-pool 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum sc-rpc-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sc-transaction-graph 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sc-transaction-pool 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" "checksum schnorrkel 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)" = "eacd8381b3c37840c9c9f40472af529e49975bdcbc24f83c31059fd6539023d3" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d" @@ -7292,21 +7307,21 @@ dependencies = [ "checksum snow 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "91eecae35b461ed26bda7a76bea2cc5bda2bf4b8dd06761879f19e6fdd50c2dd" "checksum soketto 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "bceb1a3a15232d013d9a3b7cac9e5ce8e2313f348f01d4bc1097e5e53aa07095" "checksum sourcefile 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4bf77cb82ba8453b42b6ae1d692e4cdc92f9a47beaf89a847c8be83f4e328ad3" -"checksum sp-authorship 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sp-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sp-transaction-pool-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum sp-authorship 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sp-blockchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sp-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sp-timestamp 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sp-transaction-pool-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sp-transaction-pool-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" "checksum spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" -"checksum sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sr-api-proc-macro 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sr-arithmetic 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum sr-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sr-api-proc-macro 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sr-arithmetic 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sr-staking-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum sr-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" "checksum stream-cipher 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8131256a5896cabcf5eb04f4d6dacbe1aefda854b0d9896e09cb58829ec5638c" @@ -7317,55 +7332,55 @@ dependencies = [ "checksum structopt-derive 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea692d40005b3ceba90a9fe7a78fa8d4b82b0ce627eebbffc329aab850f3410e" "checksum strum 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6138f8f88a16d90134763314e3fc76fa3ed6a7db4725d6acf9a3ef95a3188d22" "checksum strum_macros 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0054a7df764039a6cd8592b9de84be4bec368ff081d203a7d5371cbfa8e65c81" -"checksum substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-authority-discovery 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum substrate-application-crypto 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-authority-discovery 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-authority-discovery-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" "checksum substrate-bip39 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3be511be555a3633e71739a79e4ddff6a6aaa6579fa6114182a51d72c3eb93c5" -"checksum substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-chain-spec 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-chain-spec-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-cli 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-client-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-consensus-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-consensus-slots 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-consensus-uncles 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-debug-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-finality-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-finality-grandpa-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-frame-rpc-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-offchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-offchain-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-panic-handler 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-peerset 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-primitives-storage 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-rpc-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-rpc-servers 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-runtime-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-runtime-interface-proc-macro 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-serializer 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-service 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-state-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-tracing 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum substrate-block-builder 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-block-builder-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-chain-spec 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-chain-spec-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-cli 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-client-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-consensus-babe 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-consensus-babe-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-consensus-common 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-consensus-slots 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-consensus-uncles 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-debug-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-executor 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-finality-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-finality-grandpa-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-frame-rpc-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-keyring 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-keystore 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-network 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-offchain 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-offchain-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-panic-handler 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-peerset 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-primitives-storage 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-rpc 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-rpc-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-rpc-servers 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-runtime-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-runtime-interface-proc-macro 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-serializer 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-service 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-session 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-state-db 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-state-machine 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-telemetry 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-tracing 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" +"checksum substrate-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" "checksum substrate-wasm-builder-runner 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "bd48273fe9d7f92c1f7d6c1c537bb01c8068f925b47ad2cd8367e11dc32f8550" -"checksum substrate-wasm-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum substrate-wasm-interface 2.0.0 (git+https://github.com/paritytech/substrate?branch=ashley-update-exit-future)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab3af2eb31c42e8f0ccf43548232556c42737e01a96db6e1777b0be108e79799" "checksum syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)" = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5" diff --git a/availability-store/Cargo.toml b/availability-store/Cargo.toml index 2c76666686ba..520137a20ac6 100644 --- a/availability-store/Cargo.toml +++ b/availability-store/Cargo.toml @@ -10,7 +10,7 @@ polkadot-primitives = { path = "../primitives" } parking_lot = "0.9.0" log = "0.4.8" codec = { package = "parity-scale-codec", version = "1.1.0", default-features = false, features = ["derive"] } -substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } kvdb = "0.1.1" kvdb-memorydb = "0.1.2" diff --git a/cli/Cargo.toml b/cli/Cargo.toml index fb8c79a7b1c8..afe728dccbb2 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -11,7 +11,7 @@ tokio = "0.1.22" futures = { version = "0.3.1", features = ["compat"] } futures01 = { package = "futures", version = "0.1.29" } structopt = "0.3.4" -cli = { package = "substrate-cli", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +cli = { package = "substrate-cli", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } service = { package = "polkadot-service", path = "../service" } [features] diff --git a/collator/Cargo.toml b/collator/Cargo.toml index 59b2e2192999..e317a9aed2d8 100644 --- a/collator/Cargo.toml +++ b/collator/Cargo.toml @@ -8,11 +8,11 @@ edition = "2018" [dependencies] futures01 = { package = "futures", version = "0.1.17" } futures = { version = "0.3.1", features = ["compat"] } -client = { package = "substrate-client", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -client-api = { package = "substrate-client-api", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -primitives = { package = "substrate-primitives", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -substrate-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -consensus_common = { package = "substrate-consensus-common", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +client = { package = "substrate-client", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +client-api = { package = "substrate-client-api", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +primitives = { package = "substrate-primitives", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +substrate-network = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +consensus_common = { package = "substrate-consensus-common", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } polkadot-runtime = { path = "../runtime" } polkadot-primitives = { path = "../primitives" } polkadot-cli = { path = "../cli" } @@ -24,4 +24,4 @@ tokio = "0.1.22" futures-timer = "1.0" [dev-dependencies] -keyring = { package = "substrate-keyring", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +keyring = { package = "substrate-keyring", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } diff --git a/erasure-coding/Cargo.toml b/erasure-coding/Cargo.toml index a188b11dd0c4..8a44bd399745 100644 --- a/erasure-coding/Cargo.toml +++ b/erasure-coding/Cargo.toml @@ -8,5 +8,5 @@ edition = "2018" primitives = { package = "polkadot-primitives", path = "../primitives" } reed_solomon = { package = "reed-solomon-erasure", git = "https://github.com/paritytech/reed-solomon-erasure" } codec = { package = "parity-scale-codec", version = "1.1.0", default-features = false, features = ["derive"] } -substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -trie = { package = "substrate-trie", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +trie = { package = "substrate-trie", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } diff --git a/executor/Cargo.toml b/executor/Cargo.toml index 272ac4e6c464..9fe3abd1942f 100644 --- a/executor/Cargo.toml +++ b/executor/Cargo.toml @@ -6,5 +6,5 @@ description = "Polkadot node implementation in Rust." edition = "2018" [dependencies] -substrate-executor = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +substrate-executor = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } polkadot-runtime = { path = "../runtime" } diff --git a/network/Cargo.toml b/network/Cargo.toml index b42205971675..8b832839482c 100644 --- a/network/Cargo.toml +++ b/network/Cargo.toml @@ -12,15 +12,15 @@ av_store = { package = "polkadot-availability-store", path = "../availability-st polkadot-validation = { path = "../validation" } polkadot-primitives = { path = "../primitives" } codec = { package = "parity-scale-codec", version = "1.1.0", default-features = false, features = ["derive"] } -substrate-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -sr-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +substrate-network = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +sr-primitives = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } futures = { version = "0.3.1", features = ["compat"] } log = "0.4.8" -exit-future = { git = "https://github.com/expenses/exit-future", branch = "modernize" } -substrate-client = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +exit-future = { git = "https://github.com/expenses/exit-future", branch = "broadcast" } +substrate-client = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } [dev-dependencies] -substrate-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -sr-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +substrate-keyring = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +sr-api = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } diff --git a/parachain/Cargo.toml b/parachain/Cargo.toml index a6b27771def7..38b695c48766 100644 --- a/parachain/Cargo.toml +++ b/parachain/Cargo.toml @@ -10,8 +10,8 @@ codec = { package = "parity-scale-codec", version = "1.1.0", default-features = wasmi = { version = "0.4.5", optional = true } derive_more = { version = "0.14.1", optional = true } serde = { version = "1.0.102", default-features = false, features = [ "derive" ] } -rstd = { package = "sr-std", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +rstd = { package = "sr-std", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future", default-features = false } +substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future", default-features = false } lazy_static = { version = "1.4.0", optional = true } parking_lot = { version = "0.7.1", optional = true } log = { version = "0.4.8", optional = true } diff --git a/primitives/Cargo.toml b/primitives/Cargo.toml index e264bdf55d6c..7c7ca53f3d19 100644 --- a/primitives/Cargo.toml +++ b/primitives/Cargo.toml @@ -7,18 +7,18 @@ edition = "2018" [dependencies] serde = { version = "1.0.102", optional = true, features = ["derive"] } parity-scale-codec = { version = "1.1.0", default-features = false, features = ["bit-vec", "derive"] } -primitives = { package = "substrate-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -application-crypto = { package = "substrate-application-crypto", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sr-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -sr-version = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -rstd = { package = "sr-std", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -runtime_primitives = { package = "sr-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +primitives = { package = "substrate-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +application-crypto = { package = "substrate-application-crypto", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +sr-api = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future", default-features = false } +sr-version = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +rstd = { package = "sr-std", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +runtime_primitives = { package = "sr-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } polkadot-parachain = { path = "../parachain", default-features = false } bitvec = { version = "0.15.2", default-features = false, features = ["alloc"] } -babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } [dev-dependencies] -substrate-serializer = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +substrate-serializer = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } pretty_assertions = "0.5.1" [features] diff --git a/rpc/Cargo.toml b/rpc/Cargo.toml index 08074a498b18..6b3a918295d0 100644 --- a/rpc/Cargo.toml +++ b/rpc/Cargo.toml @@ -5,13 +5,13 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -client = { package = "substrate-client", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +client = { package = "substrate-client", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } jsonrpc-core = "14.0.3" polkadot-primitives = { path = "../primitives" } -sr-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -substrate-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -txpool-api = { package = "sp-transaction-pool-api", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -frame-rpc-system = { package = "substrate-frame-rpc-system", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +sr-primitives = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +substrate-rpc = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +txpool-api = { package = "sp-transaction-pool-api", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +frame-rpc-system = { package = "substrate-frame-rpc-system", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } polkadot-runtime = { path = "../runtime" } diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index 03fc88df3603..43f0ad57fa49 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -14,49 +14,49 @@ safe-mix = { version = "1.0.0", default-features = false } serde = { version = "1.0.102", default-features = false } serde_derive = { version = "1.0.102", optional = true } -authority-discovery-primitives = { package = "substrate-authority-discovery-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -babe-primitives = { package = "substrate-consensus-babe-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sr-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -inherents = { package = "substrate-inherents", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -offchain-primitives = { package = "substrate-offchain-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -rstd = { package = "sr-std", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sr-io = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sr-primitives = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sr-staking-primitives = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -substrate-primitives = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -substrate-serializer = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -substrate-session = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -version = { package = "sr-version", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -tx-pool-api = { package = "sp-transaction-pool-runtime-api", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -block-builder-api = { package = "substrate-block-builder-runtime-api", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +authority-discovery-primitives = { package = "substrate-authority-discovery-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +babe-primitives = { package = "substrate-consensus-babe-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +sr-api = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future", default-features = false } +inherents = { package = "substrate-inherents", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +offchain-primitives = { package = "substrate-offchain-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +rstd = { package = "sr-std", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +sr-io = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +sr-primitives = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +sr-staking-primitives = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +substrate-primitives = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +substrate-serializer = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +substrate-session = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +version = { package = "sr-version", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +tx-pool-api = { package = "sp-transaction-pool-runtime-api", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +block-builder-api = { package = "substrate-block-builder-runtime-api", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } -authority-discovery = { package = "pallet-authority-discovery", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -authorship = { package = "pallet-authorship", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -balances = { package = "pallet-balances", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -transaction-payment = { package = "pallet-transaction-payment", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -collective = { package = "pallet-collective", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -democracy = { package = "pallet-democracy", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -elections-phragmen = { package = "pallet-elections-phragmen", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -executive = { package = "frame-executive", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -finality-tracker = { package = "pallet-finality-tracker", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -grandpa = { package = "pallet-grandpa", git = "https://github.com/paritytech/substrate", default-features = false, features = ["migrate-authorities"], branch = "polkadot-master" } -im-online = { package = "pallet-im-online", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -indices = { package = "pallet-indices", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -membership = { package = "pallet-membership", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -nicks = { package = "pallet-nicks", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -offences = { package = "pallet-offences", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -randomness-collective-flip = { package = "pallet-randomness-collective-flip", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -session = { package = "pallet-session", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -frame-support = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -staking = { package = "pallet-staking", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -pallet-staking-reward-curve = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -sudo = { package = "pallet-sudo", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -system = { package = "frame-system", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -system_rpc_runtime_api = { package = "frame-system-rpc-runtime-api", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -timestamp = { package = "pallet-timestamp", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -treasury = { package = "pallet-treasury", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +authority-discovery = { package = "pallet-authority-discovery", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +authorship = { package = "pallet-authorship", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +balances = { package = "pallet-balances", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +transaction-payment = { package = "pallet-transaction-payment", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +collective = { package = "pallet-collective", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +democracy = { package = "pallet-democracy", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +elections-phragmen = { package = "pallet-elections-phragmen", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +executive = { package = "frame-executive", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +finality-tracker = { package = "pallet-finality-tracker", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +grandpa = { package = "pallet-grandpa", git = "https://github.com/paritytech/substrate", default-features = false, features = ["migrate-authorities"], branch = "ashley-update-exit-future" } +im-online = { package = "pallet-im-online", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +indices = { package = "pallet-indices", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +membership = { package = "pallet-membership", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +nicks = { package = "pallet-nicks", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +offences = { package = "pallet-offences", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +randomness-collective-flip = { package = "pallet-randomness-collective-flip", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +session = { package = "pallet-session", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +frame-support = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +staking = { package = "pallet-staking", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +pallet-staking-reward-curve = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +sudo = { package = "pallet-sudo", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +system = { package = "frame-system", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +system_rpc_runtime_api = { package = "frame-system-rpc-runtime-api", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +timestamp = { package = "pallet-timestamp", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +treasury = { package = "pallet-treasury", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } primitives = { package = "polkadot-primitives", path = "../primitives", default-features = false } polkadot-parachain = { path = "../parachain", default-features = false } @@ -65,8 +65,8 @@ polkadot-parachain = { path = "../parachain", default-features = false } hex-literal = "0.2.1" libsecp256k1 = "0.3.2" tiny-keccak = "1.5.0" -keyring = { package = "substrate-keyring", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -substrate-trie = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +keyring = { package = "substrate-keyring", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +substrate-trie = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } trie-db = "0.16.0" serde_json = "1.0.41" diff --git a/service/Cargo.toml b/service/Cargo.toml index 8322382d1298..e7907942bf5c 100644 --- a/service/Cargo.toml +++ b/service/Cargo.toml @@ -20,28 +20,28 @@ polkadot-runtime = { path = "../runtime" } polkadot-executor = { path = "../executor" } polkadot-network = { path = "../network" } polkadot-rpc = { path = "../rpc" } -sr-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -sr-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -sr-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -primitives = { package = "substrate-primitives", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -client = { package = "substrate-client", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -client-api = { package = "substrate-client-api", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -client-db = { package = "substrate-client-db", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -substrate-executor = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -substrate-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -consensus_common = { package = "substrate-consensus-common", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -grandpa = { package = "substrate-finality-grandpa", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -grandpa_primitives = { package = "substrate-finality-grandpa-primitives", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -inherents = { package = "substrate-inherents", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -service = { package = "substrate-service", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -telemetry = { package = "substrate-telemetry", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -txpool = { package = "sc-transaction-pool", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -txpool-api = { package = "sp-transaction-pool-api", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -substrate-keystore = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -pallet-babe = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -pallet-staking = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -im-online = { package = "pallet-im-online", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -authority-discovery = { package = "substrate-authority-discovery", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -authority-discovery-primitives = { package = "substrate-authority-discovery-primitives", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -babe = { package = "substrate-consensus-babe", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -babe-primitives = { package = "substrate-consensus-babe-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +sr-io = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +sr-api = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +sr-primitives = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +primitives = { package = "substrate-primitives", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +client = { package = "substrate-client", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +client-api = { package = "substrate-client-api", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +client-db = { package = "substrate-client-db", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +substrate-executor = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +substrate-network = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +consensus_common = { package = "substrate-consensus-common", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +grandpa = { package = "substrate-finality-grandpa", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +grandpa_primitives = { package = "substrate-finality-grandpa-primitives", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +inherents = { package = "substrate-inherents", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +service = { package = "substrate-service", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +telemetry = { package = "substrate-telemetry", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +txpool = { package = "sc-transaction-pool", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +txpool-api = { package = "sp-transaction-pool-api", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +substrate-keystore = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +pallet-babe = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +pallet-staking = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +im-online = { package = "pallet-im-online", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } +authority-discovery = { package = "substrate-authority-discovery", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +authority-discovery-primitives = { package = "substrate-authority-discovery-primitives", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +babe = { package = "substrate-consensus-babe", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +babe-primitives = { package = "substrate-consensus-babe-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } diff --git a/statement-table/Cargo.toml b/statement-table/Cargo.toml index d5c364d05b31..cd3ee50022dc 100644 --- a/statement-table/Cargo.toml +++ b/statement-table/Cargo.toml @@ -6,5 +6,5 @@ edition = "2018" [dependencies] codec = { package = "parity-scale-codec", version = "1.1.0", default-features = false, features = ["derive"] } -substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } primitives = { package = "polkadot-primitives", path = "../primitives" } diff --git a/test-parachains/adder/Cargo.toml b/test-parachains/adder/Cargo.toml index cc3c44b8b918..fea87ea0789b 100644 --- a/test-parachains/adder/Cargo.toml +++ b/test-parachains/adder/Cargo.toml @@ -13,7 +13,7 @@ tiny-keccak = "1.5.0" dlmalloc = { version = "0.1.3", features = [ "global" ] } # We need to make sure the global allocator is disabled until we have support of full substrate externalities -runtime-io = { package = "sr-io", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false, features = [ "disable_allocator" ] } +runtime-io = { package = "sr-io", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future", default-features = false, features = [ "disable_allocator" ] } [build-dependencies] wasm-builder-runner = { package = "substrate-wasm-builder-runner", version = "1.0.4" } diff --git a/test-parachains/adder/collator/Cargo.toml b/test-parachains/adder/collator/Cargo.toml index 8dd785990902..118d98529d81 100644 --- a/test-parachains/adder/collator/Cargo.toml +++ b/test-parachains/adder/collator/Cargo.toml @@ -9,9 +9,9 @@ adder = { path = ".." } parachain = { package = "polkadot-parachain", path = "../../../parachain" } collator = { package = "polkadot-collator", path = "../../../collator" } primitives = { package = "polkadot-primitives", path = "../../../primitives" } -substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -client = { package = "substrate-client", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -client-api = { package = "substrate-client-api", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +substrate-primitives = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +client = { package = "substrate-client", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +client-api = { package = "substrate-client-api", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } parking_lot = "0.9.0" ctrlc = { version = "3.1.3", features = ["termination"] } futures = "0.3.1" diff --git a/validation/Cargo.toml b/validation/Cargo.toml index 36f0410db3ad..d65f93791a2c 100644 --- a/validation/Cargo.toml +++ b/validation/Cargo.toml @@ -12,29 +12,29 @@ parking_lot = "0.9.0" tokio = { version = "0.2.1", features = ["rt-core", "blocking"] } derive_more = "0.14.1" log = "0.4.8" -exit-future = { git = "https://github.com/expenses/exit-future", branch = "modernize" } +exit-future = { git = "https://github.com/expenses/exit-future", branch = "broadcast" } codec = { package = "parity-scale-codec", version = "1.1.0", default-features = false, features = ["derive"] } availability_store = { package = "polkadot-availability-store", path = "../availability-store" } parachain = { package = "polkadot-parachain", path = "../parachain" } polkadot-primitives = { path = "../primitives" } polkadot-runtime = { path = "../runtime" } table = { package = "polkadot-statement-table", path = "../statement-table" } -grandpa = { package = "substrate-finality-grandpa", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -inherents = { package = "substrate-inherents", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -consensus = { package = "substrate-consensus-common", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -primitives = { package = "substrate-primitives", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -txpool-api = { package = "sp-transaction-pool-api", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -client = { package = "substrate-client-api", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -sr-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -sp-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -block-builder = { package = "substrate-block-builder", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -trie = { package = "substrate-trie", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -runtime_primitives = { package = "sr-primitives", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +grandpa = { package = "substrate-finality-grandpa", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +inherents = { package = "substrate-inherents", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +consensus = { package = "substrate-consensus-common", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +primitives = { package = "substrate-primitives", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +txpool-api = { package = "sp-transaction-pool-api", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +client = { package = "substrate-client-api", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +sr-api = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +sp-timestamp = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +block-builder = { package = "substrate-block-builder", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +trie = { package = "substrate-trie", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +runtime_primitives = { package = "sr-primitives", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } bitvec = { version = "0.15.2", default-features = false, features = ["alloc"] } -runtime_babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -babe-primitives = { package = "substrate-consensus-babe-primitives", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -keystore = { package = "substrate-keystore", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +runtime_babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +babe-primitives = { package = "substrate-consensus-babe-primitives", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +keystore = { package = "substrate-keystore", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } [dev-dependencies] -substrate-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +substrate-keyring = { git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } From 04ffe72e868be57841d31f01eec1b90423a595d6 Mon Sep 17 00:00:00 2001 From: Ashley Date: Sun, 1 Dec 2019 19:28:16 +0100 Subject: [PATCH 11/54] Migrate service --- service/Cargo.toml | 11 +++++++---- service/src/lib.rs | 40 ++++++++++++++++++++++++++++------------ 2 files changed, 35 insertions(+), 16 deletions(-) diff --git a/service/Cargo.toml b/service/Cargo.toml index 4f676b28d89f..a0b01d25c59a 100644 --- a/service/Cargo.toml +++ b/service/Cargo.toml @@ -8,9 +8,8 @@ edition = "2018" parking_lot = "0.9.0" lazy_static = "1.4.0" log = "0.4.8" -futures = "0.1.29" -futures03 = { package = "futures", version = "0.3.1", features = ["compat"] } -exit-future = "0.1.4" +futures = "0.3.1" +futures01 = { package = "futures", version = "0.1.29" } slog = "2.5.2" hex-literal = "0.2.1" av_store = { package = "polkadot-availability-store", path = "../availability-store" } @@ -33,7 +32,7 @@ consensus_common = { package = "substrate-consensus-common", git = "https://gith grandpa = { package = "substrate-finality-grandpa", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } grandpa_primitives = { package = "substrate-finality-grandpa-primitives", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } inherents = { package = "substrate-inherents", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } -service = { package = "substrate-service", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } +service = { package = "substrate-service", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future", default-features = false } telemetry = { package = "substrate-telemetry", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } txpool = { package = "sc-transaction-pool", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } txpool-api = { package = "sp-transaction-pool-api", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } @@ -45,3 +44,7 @@ authority-discovery = { package = "substrate-authority-discovery", git = "https: authority-discovery-primitives = { package = "substrate-authority-discovery-primitives", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } babe = { package = "substrate-consensus-babe", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } babe-primitives = { package = "substrate-consensus-babe-primitives", git = "https://github.com/paritytech/substrate", default-features = false, branch = "ashley-update-exit-future" } + +[features] +default = ["rocksdb"] +rocksdb = ["service/rocksdb"] diff --git a/service/src/lib.rs b/service/src/lib.rs index 63731c61ac8c..fadaffac35dd 100644 --- a/service/src/lib.rs +++ b/service/src/lib.rs @@ -18,7 +18,8 @@ pub mod chain_spec; -use futures::sync::mpsc; +use futures01::sync::mpsc; +use futures::{FutureExt, TryFutureExt, task::{Spawn, SpawnError, FutureObj}}; use client::LongestChain; use std::sync::Arc; use std::time::Duration; @@ -44,8 +45,21 @@ pub use primitives::Blake2Hasher; pub use sr_primitives::traits::ProvideRuntimeApi; pub use substrate_network::specialization::NetworkSpecialization; pub use chain_spec::ChainSpec; +#[cfg(not(target_os = "unknown"))] pub use consensus::run_validation_worker; +/// A wrapped futures01::future::Executor. +#[derive(Clone)] +struct WrappedExecutor(pub T); + +impl Spawn for WrappedExecutor + where T: futures01::future::Executor + Send + 'static>> +{ + fn spawn_obj(&self, future: FutureObj<'static, ()>) -> Result<(), SpawnError> { + self.0.execute(Box::new(future.map(Ok).compat())) + .map_err(|_| SpawnError::shutdown()) + } +} /// Polkadot-specific configuration. pub struct CustomConfiguration { /// Set to `Some` with a collator `CollatorId` and desired parachain @@ -151,11 +165,7 @@ pub fn new_full(config: Configuration) >, ServiceError> { use substrate_network::DhtEvent; - use futures03::{ - compat::Stream01CompatExt, - stream::StreamExt, - future::{FutureExt, TryFutureExt}, - }; + use futures::{compat::Stream01CompatExt, stream::StreamExt}; let is_collator = config.custom.collating_for.is_some(); let is_authority = config.roles.is_authority() && !is_collator; @@ -236,10 +246,16 @@ pub fn new_full(config: Configuration) let mut path = PathBuf::from(db_path); path.push("availability"); - av_store::Store::new(::av_store::Config { - cache_size: None, - path, - })? + #[cfg(not(target_os = "unknown"))] + { + av_store::Store::new(::av_store::Config { + cache_size: None, + path, + })? + } + + #[cfg(target_os = "unknown")] + av_store::Store::new_in_memory() }; { @@ -255,7 +271,7 @@ pub fn new_full(config: Configuration) service.on_exit(), gossip_validator, service.client(), - polkadot_network::validation::WrappedExecutor(service.spawn_task_handle()), + WrappedExecutor(service.spawn_task_handle()), ); let proposer = consensus::ProposerFactory::new( client.clone(), @@ -263,7 +279,7 @@ pub fn new_full(config: Configuration) validation_network.clone(), validation_network, service.transaction_pool(), - Arc::new(service.spawn_task_handle()), + Arc::new(WrappedExecutor(service.spawn_task_handle())), service.keystore(), availability_store, polkadot_runtime::constants::time::SLOT_DURATION, From 408288b05292d952944a6b8e1f2bcf9cf259a040 Mon Sep 17 00:00:00 2001 From: Ashley Date: Sun, 1 Dec 2019 19:28:33 +0100 Subject: [PATCH 12/54] Get polkadot to compile via wasm! --- Cargo.lock | 1 - Cargo.toml | 10 +++++++--- cli/Cargo.toml | 5 +++-- cli/src/lib.rs | 25 ++++++++----------------- src/main.rs | 5 +++-- 5 files changed, 21 insertions(+), 25 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f3160f7b22cb..d9fa60393da0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3698,7 +3698,6 @@ dependencies = [ name = "polkadot-service" version = "0.7.1" dependencies = [ - "exit-future 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", diff --git a/Cargo.toml b/Cargo.toml index e2748dc1653c..6c8738afb0bc 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,10 +10,10 @@ build = "build.rs" edition = "2018" [dependencies] -cli = { package = "polkadot-cli", path = "cli" } +cli = { package = "polkadot-cli", path = "cli", default-features = false } futures = "0.3.1" -ctrlc = { version = "3.1.3", features = ["termination"] } -service = { package = "polkadot-service", path = "service" } +ctrlc = { version = "3.1.3", features = ["termination"], optional = true } +service = { package = "polkadot-service", path = "service", default-features = false } [build-dependencies] vergen = "3.0.4" @@ -47,3 +47,7 @@ maintenance = { status = "actively-developed" } [profile.release] # Polkadot runtime requires unwinding. panic = "unwind" + +[features] +default = ["rocksdb", "ctrlc"] +rocksdb = ["cli/rocksdb", "service/rocksdb"] diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 2a2603e84b81..270aca0d8956 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -12,8 +12,9 @@ futures = { version = "0.3.1", features = ["compat"] } futures01 = { package = "futures", version = "0.1.29" } structopt = "0.3.4" cli = { package = "substrate-cli", git = "https://github.com/paritytech/substrate", branch = "ashley-update-exit-future" } -service = { package = "polkadot-service", path = "../service" } +service = { package = "polkadot-service", path = "../service", default-features = false } [features] -default = [ "wasmtime" ] +default = [ "wasmtime", "rocksdb" ] wasmtime = [ "cli/wasmtime" ] +rocksdb = [ "service/rocksdb" ] diff --git a/cli/src/lib.rs b/cli/src/lib.rs index 780af01f2b23..8714909deb91 100644 --- a/cli/src/lib.rs +++ b/cli/src/lib.rs @@ -23,7 +23,7 @@ mod chain_spec; use chain_spec::ChainSpec; use futures::{Future, FutureExt, TryFutureExt, future::select, channel::oneshot, compat::Future01CompatExt}; -use tokio::runtime::Runtime; +pub use tokio::runtime::Runtime; use std::sync::Arc; use log::{info, error}; use structopt::StructOpt; @@ -37,8 +37,6 @@ pub use cli::{VersionInfo, IntoExit, NoCustom}; pub use cli::{display_role, error}; type BoxedFuture = Box + Send>; -/// Abstraction over an executor that lets you spawn tasks in the background. -pub type TaskExecutor = Arc + Send + Sync>; fn load_spec(id: &str) -> Result, String> { Ok(match ChainSpec::from(id) { @@ -62,7 +60,7 @@ pub trait Worker: IntoExit { fn configuration(&self) -> service::CustomConfiguration { Default::default() } /// Do work and schedule exit. - fn work(self, service: &S, executor: TaskExecutor) -> Self::Work + fn work(self, service: &S, executor: &Runtime) -> Self::Work where S: AbstractService, @@ -147,6 +145,7 @@ pub fn run(worker: W, version: cli::VersionInfo) -> error::Result<()> where cli::ParseAndPrepare::RevertChain(cmd) => cmd.run_with_builder::<(), _, _, _, _, _>(|config| Ok(service::new_chain_ops(config)?), load_spec), cli::ParseAndPrepare::CustomCommand(PolkadotSubCommands::ValidationWorker(args)) => { + #[cfg(not(target_os = "unknown"))] service::run_validation_worker(&args.mem_id)?; Ok(()) } @@ -168,32 +167,24 @@ fn run_until_exit( { let (exit_send, exit) = oneshot::channel(); - let executor = runtime.executor(); let informant = cli::informant::build(&service); - let future = select(exit, informant) - .map(|_| Ok(())) - .compat(); + let future = select(exit, informant); - executor.spawn(future); + let informant_handle = runtime.spawn(future); // we eagerly drop the service so that the internal exit future is fired, // but we need to keep holding a reference to the global telemetry guard let _telemetry = service.telemetry(); - let work = worker.work(&service, Arc::new(executor)); + let work = worker.work(&service, &runtime); let service = service .map_err(|err| error!("Error while running Service: {}", err)) .compat(); - let future = select(service, work) - .map(|_| Ok::<_, ()>(())) - .compat(); + let future = select(service, work);; let _ = runtime.block_on(future); let _ = exit_send.send(()); - use futures01::Future; - - // TODO [andre]: timeout this future substrate/#1318 - let _ = runtime.shutdown_on_idle().wait(); + let _ = runtime.block_on(informant_handle); Ok(()) } diff --git a/src/main.rs b/src/main.rs index 842f70cbe42a..17dee361102f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -18,7 +18,7 @@ #![warn(missing_docs)] -use cli::{AbstractService, VersionInfo, TaskExecutor}; +use cli::{AbstractService, VersionInfo, Runtime}; use futures::channel::oneshot; use futures::{future, FutureExt}; @@ -33,6 +33,7 @@ impl cli::IntoExit for Worker { let (exit_send, exit) = oneshot::channel(); let exit_send_cell = RefCell::new(Some(exit_send)); + #[cfg(not(target_os = "unknown"))] ctrlc::set_handler(move || { if let Some(exit_send) = exit_send_cell.try_borrow_mut().expect("signal handler not reentrant; qed").take() { exit_send.send(()).expect("Error sending exit notification"); @@ -45,7 +46,7 @@ impl cli::IntoExit for Worker { impl cli::Worker for Worker { type Work = ::Exit; - fn work(self, _: &S, _: TaskExecutor) -> Self::Work + fn work(self, _: &S, _: &Runtime) -> Self::Work where S: AbstractService, From e5e399c20f1dc4e1023ee57773dcdd9ab2a0a14b Mon Sep 17 00:00:00 2001 From: Ashley Date: Mon, 2 Dec 2019 10:45:02 +0100 Subject: [PATCH 13/54] Add browser-demo --- Cargo.toml | 10 +-- browser-demo/.gitignore | 1 + browser-demo/README.md | 9 +++ browser-demo/build.sh | 3 + browser-demo/favicon.png | Bin 0 -> 10338 bytes browser-demo/index.html | 39 +++++++++++ browser-demo/ws.js | 148 +++++++++++++++++++++++++++++++++++++++ cli/Cargo.toml | 4 ++ cli/src/browser.rs | 0 9 files changed, 207 insertions(+), 7 deletions(-) create mode 100644 browser-demo/.gitignore create mode 100644 browser-demo/README.md create mode 100755 browser-demo/build.sh create mode 100644 browser-demo/favicon.png create mode 100644 browser-demo/index.html create mode 100644 browser-demo/ws.js create mode 100644 cli/src/browser.rs diff --git a/Cargo.toml b/Cargo.toml index 6c8738afb0bc..e2748dc1653c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,10 +10,10 @@ build = "build.rs" edition = "2018" [dependencies] -cli = { package = "polkadot-cli", path = "cli", default-features = false } +cli = { package = "polkadot-cli", path = "cli" } futures = "0.3.1" -ctrlc = { version = "3.1.3", features = ["termination"], optional = true } -service = { package = "polkadot-service", path = "service", default-features = false } +ctrlc = { version = "3.1.3", features = ["termination"] } +service = { package = "polkadot-service", path = "service" } [build-dependencies] vergen = "3.0.4" @@ -47,7 +47,3 @@ maintenance = { status = "actively-developed" } [profile.release] # Polkadot runtime requires unwinding. panic = "unwind" - -[features] -default = ["rocksdb", "ctrlc"] -rocksdb = ["cli/rocksdb", "service/rocksdb"] diff --git a/browser-demo/.gitignore b/browser-demo/.gitignore new file mode 100644 index 000000000000..0c6117d9fb83 --- /dev/null +++ b/browser-demo/.gitignore @@ -0,0 +1 @@ +pkg \ No newline at end of file diff --git a/browser-demo/README.md b/browser-demo/README.md new file mode 100644 index 000000000000..2ff1cc54f5db --- /dev/null +++ b/browser-demo/README.md @@ -0,0 +1,9 @@ +# How to run this demo + +```sh +cargo install wasm-pack # If necessary + +wasm-pack build --target web --out-dir ./browser-demo/pkg --no-typescript --release ./.. -- --no-default-features --features "browser" + +xdg-open index.html +``` diff --git a/browser-demo/build.sh b/browser-demo/build.sh new file mode 100755 index 000000000000..ed8349bf2b5f --- /dev/null +++ b/browser-demo/build.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env sh +wasm-pack build --target web --out-dir ./browser-demo/pkg --no-typescript --release ../cli -- --no-default-features --features "browser" +python -m SimpleHTTPServer 8000 diff --git a/browser-demo/favicon.png b/browser-demo/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..8a4548ce34dfa220f612080820cfde778a39cb8f GIT binary patch literal 10338 zcmYLP1yoaS+(wZQfk{a_5mcmyv>+u2qR5bj(d7VXk&w|jQbIxLPKhB5DS^?QA~Be> zGziGpzKj3wJKu9I=j@F4zQ5;ve)Zn>E>cVL2@Mq+6$uFmjk?-nZ4#18f){_3q`)_D zIm|2x$>n3MXF4jp|8W2QeLg-uetv!d0RcflK_MX_VPRnr5fKOg(F;6y@IXvVOdNoO zxP*j+q@<*jl$1088EF|AnTHP_$^wwPz@tZxgej~>gnm} z128Z!Ff=eUG&BNWY;0^|YyvZZ!CuI668y0eJoTwX?Ici?fT1iz@&(H#c`TcMo?D0G^(nZ{ED| zdgJxh>n#9pZ*LzTA739|KVLrp@7}%h_xDHmBLWbJfPjF&z`&rOpx~h3kl^5ukdV;O z(6G?3@UZZR@bHL;h{(vusK}`3sAyz#G!lu7iHV7giH(bmjf;zmkB?7CNJvabe4m*3 z{{8!;q@?8JF(<4>F)0B z>FMq5?d$FB@9P`r?;ji(7#tiN8XO!R8X6fM9vvAO9UU1P9UUJVn;0LToR|QvsmaOd zsi_~+(=$JQ0N2l%nc1H|=VoW;=jMQGVSXOFu&{{5E-qr178h|#OTTcqVf>&8^?Rx3{)-wzqe8cJ_96_xJV=_64TdJb+BN zWTYh5ft@eU`+KYNcD5M{XM?7``7t`@lo-?TqSWw8gC-HkVTpdIuznK{@L`HO%;X5( z5npN=E#+pjd4(c{(Js@-utc}8IBqBXov{8J_{6U^N!lLFkfj7X+1Fy7)$nv6ImVJx z?szijH$G>mSslenblh}AbvmYNFFMuu+U?xF-Dm5u5_I5ROAA7tIsQ2E6d|K5sIz3o$M{LPA|;*R$&mtt|s+o)K?&I~!SYvz&J zUjGn_sjC7^uk`#E;;Xr=-rLo|&?ll9?E9Uu(VJyPzH$BsT7&NGlLW6TR_SA&1=Hth zH8Lf7gWmae?sYz$?uc)d5dX5%++|DERP^5_&yI&);?}a0md`rJgIP==`wy$!v|#5c z&PU@1@^-S5*fhaDO>_Vkv{5(3*Cv`tK>c25fgh(yJ8=3!h%%D1ycF^bWcTT#@|8 z-)Tz2MKd0Ldz^G$1?7bGt;T#B60MjA<6Zc1=3kZ>m@KuSu(?x?<82xa9Q;AErED;w zyTu~iV6?Jgn<3iNnpJ<%N#3t@5v+M?f_LV56HWV`prv&-4)+-PDS%@`+qRQYcl{Ps zPLiMDcrs09FDO6)BPG!!%ryYCh&LY+fCHHupIijy~r}< zAD8;VY8TXy>PTNoj$4g2;qB1WLnb|kqx|;CVqKSEP2Q)G$ko3>H-0*IEU1)c(kVTY z`r_lC4}Zx|4D&L?cz&-I%w?enme1tvsMmYz?s-7Vb%XOItVPGO*z@VS+Mq;X`?wn| zad@{v6gqQF-fJdR$r1nVXvA$IS1)yn1(RRqAOx(Jm4L$Tg60jSnj8f!zB|eOnT8bIQ!mi=P?1()@I&* zOct9!6~1Ek-iT($r;vHIVNB2YTZDzl=fddy7Au0q&WMdte>-IKOJ&DuaJ6drr^Raq zSkvRL2AGLM;l?Wf|I;lQu4W8Gd(Xsf;xFzUnPJXkc8#igt6Ue_6d$Gp(dWA7hNTcvXf2m>OAJxw3PMweYvTYuO3RHmQD4iG7xToc z3Cu-aNpHyzn;@gG&aKumM(=??$YPP&43== z-J_r-ig=)MnPL;r{pNy1Q9Xz0%e3{Y2F%xH-%oamRD5!8rnBUXO`!d_WglwA^O5T+ z&j`muuj83ASAIr z{u6YDe`V*Ue!1pL@T%W^nMvKz_j{kLU>t<(K59S_wuR%|+)Ky=w?R{W)Ke{0_7~-M zLH)me*SifGe%&^~=+JsUaXF!|fqg(|odmZ+Mzas{^dfuhaYf0#iuWD5Jm0Fbh9lx9 z#mgB8#i@?gtf?JfKm)*VLK#vb%&2K~7E`kJE+>d|Tm2#?M$vURmUX)q*MP{t&Xn&r zw1H9M5-+%EudZwJvv6;{>k8eM))9n`ZpMEExv?=zPj-?VCwczU+eS)tX4Tm(o%A$(cELHx zsEws~$`57#yey??x~Evu^$pC7+T#DIYAk{-XL57Ys6~-j<&k3Uw=;g_(T`qMe|N)q z^eYFhI2;MZnlQV^h2kD;Q!3$Uxbwg&Lv^1C0Nw0}jjDU~KqV!eMP09zyfP}3E zraWBw0p|5R>3jwRuo!{F3UK6Apt&N%?H2yU3flg)4^4zrb!o zX2L-FSnL#odt_oX3iP&5={w%q;5NosK@TTYSW_>58GZ5!G=l~T$=SQp9ejW$&WP}Y zm~WXhg3;9&>R>%yY63ExdFBU^$YrKC86_oe?cG*zxlOz)iQYm^Rn-AB%8yG z)n*Q|^sKDch)zS&1~y$!#YhPF=XO@^P8k+tZVEYMwrZEx9uTuw=KZ0C8T!@ccZ_FP z2N+1+-OY{FDoq@HNxof9m(TFz><`am223(g%ac*nnbQAsiVe&%liM*7D405LHBwm2obNuo@ zc22Mm*Y(QtZ~PORR8~AO@)28+PyZUimthUkC!LSToCY{Ib7CBHY^r{1NIJnDBgfY= zx`L-X`^0al!b|tU>+#AQsD99(EkLuXBI@3{gn#n*?Lm$tPddz1!45S(+tbCk86;| z@OONiC{M^q_!px;8SiJ%lsIjL)a!lCOdN#8)Pv!~LHUS2o`b#ATsv*MAj{F7J7t_x z&6R9MKR|sbPdZ5AW%ReI1I;fe`@PElTKSn!dr1FhP}P>3IyHo5r(P)x>hDT>5!9de z8@Obmfb3Y%1H#H5H7*`VJ&`sXCd1H?{%tLJviJS{&D%(g%P>L!BoPBPN9u?f5`F)$ zL>5klKWQ&6f=$^p42$q#W*s(;{+do^IZ_(st_x;1?tWDkLCeab!u^2 z&)mX;Mj{%M+&n+?*7Y^o6N*_D!g#}rsnu^%2eI@#Y$Jov>ujPlUHIUkS6L#snNKjf z-hxDE<`=*n%hlb_P_d?YsUEjf_jduUZQ?EM>6LfTB(d4uazpil5mKcerzO4!-Bxuo z{Iy#@^~WRqDv+(e7S@DRT#!iyf~g%^xL4@XhTF%~IPF&5ztUL;^Y>eBA^BH-SMn3X zCz%Wvw;lr95h-09=#%J79=w4kjO|*h$FD#)HlmAB2kXI%WT5M-8`84B`9*`~aV?^(keUP2oy7TRE`)8|@aMN@)Ip5pHk3p6~-V?0sQ6JAb3BjF<&S{ zjXjelPp=iD;bfff3a{wc%yzS5?=(E*Kf3&p>$T~>P)iPx?T&6XJ|BNaN zezd57S8i|oKMI_|?J4_+-x^>lG_I+A4Y6Mk;VkTajIHiow16duH<r1S+d5iSMp8kekul)g>V zo^;v@D^e{x&wm&mF}QSwa{`DT)m-@7Y*k3*pB$p66u{J=PV-@wUSU6+w#uKk25lKZ z#$p};C*kk)f!$qvW}p!nIdS)qI45(b3ppGRl;T_H3w`IBez|%PmzqjEfk3rj5j&9qU?7EoZZQVed@X zk!v1)ZBkMU9XF8wzOUVQLi!8**Dr)t@NoO6n6JmL!;K0-sfk#B%{Z?&12<`4c8nS> znf*9K?C+YmFUKf$xF1)IgryKk3=0S5-F`TDtl5ImK z7JHbwt(v{*O{P1hA!B(*-viWjorqlo1t8)juWcx%jwqpC3tRWAMD&aoXiOcH^i2Dt zwNL2TcP<+-FM-)iYREW@)?8=lcSPuuMr`Bby?Mj(ApR@+T*x zxk!mBqt68gyA-e?{%};G_u%iAXOTu1QR{t}o47o+X*5$aA^+~Xj zdE|rod<0~m$f%wn6H;2i*_wJu*|;dr7#~^GWkTS#>OWQJxQkPM%}cbYm-^OIOa>tA z2@$K`ojV#;K`ruc`3!y)*lrJ}I`h_`OGE7LQ9L4EHxmSP zlAHuDLG}M`w)U@=X^6GW&z+rE@KOm7;gpEoQ;H?c<02}H zO`rZ6p;sp1%?|hK$^H0%7SqW5O_EiI+a^b^RepGmSN2A55JV{IHmTEQ)l21==wD7= z$zjy?I$bm+tZ5S=)Tt=1}hv&o0(7>d8$J?8pX+ob=(xmYl| zMNX)}=w{TVU5a2t)?T;=s%#T7g#M1vjfDIAboiJ=B#A!i5+mN?Z)Uj2aj_Uc8A=4D zt_t17I6ij$1rf+j8VCzE`g?Pa-kY(I4;Z+dNf>=TKuQP5^FpYsz9mPb)F4 z_~1Bs62juii;}xs+|D@46N&)&Jg1!862Ea5E1pum4~BzQzdc^Lef4g?iL{54d1)ekjGW%G=kBN{{>7f(A@AESh zws(It?_Z?=@)bg_7yUbeX&01L*zh%S-usEgU#i~kP1397xT$#5yLkk$JGVZoiYX#N6wTjDe0+<= zDqK1>Vw-h4P`qMIu3F~{|F+*ng?dDY*Sl|+4=2Nu+N&-)P25E37wk$$vOe{uxO(KH{M>V*J+k@h7LVHO8S(6?VA$k-hW- z)!xT~|B=Hhvk|a}#j5n$U({yCr>@4Ae_B2x!rfL`X5@+WS%4KUXSJV)%=3e23ErjF&4oT3II(28 zilyjGnL7?~tI|W>`%W&u4I{!zIouE5W?GxweB~Wp(eHt*s)f!)dR}T}DKljpTx+<) z*8|b#>7>(TtDBnW0?NVg16~z$qs6BM`AHb`5s}0v?SU`!14Mf!Xv}y^Rqy3b)2aD+ z)ASYatg4RdN%$2w=Q-Ckg!ysKF29e)?L-dL``(sEIcYP0&~>as#g9eVp}>}48t_H? z1MA~(zc_?~`yQW9W$(37GApS@k4#z-SnEFe?+K}W2b);VjK{0jC28YSCln-BF22zE zgp_nH@ox_;AJpDm;)eUe)c;%tSj0!oQ{t%9vY!I8 z`CQb2pzf4kV5-;i&^uRI>yg1fqc7_o{>AFQovw&o7nyMGc)AB7r&ZVo6_!^335fw~ z)5sAnp~Q~)e9Bq1=a+4uOkN}NOE{1Y_vCfB(mrr17t~cHfchXpzM(R5?&M_hhx&e$ zOWirE+dma9VRZi7yDTljKL29#gNfiUG6=A!fB43ylW@muFEb^%Ji1Mu#rR$n0vLjj z5INmooLwK>QVHbuNqpjXZB^^0P%%h0S3~~_(vPgJvfwE zI-C$7aJ6Fkz}$mN)cCf+X4{GzHOyqWIbY9zQQD+@V%=-m_OJiw3%yCjQZ6daxDmQi@*}hl#aTA3`tqL~8eA}EQe!+`xl-GoeeW0C)fbudU=5#2R`V^2@^57+drNm*UV*Rj5*M~cACs;27*+6qTy_~E*30| zqbTPqbez?^W0S3vjf+?K?rC_%0~MfS7aPr*G8R|-P5xqrWFPNTU15d_-yakO3Xz8; z%`U|aV!Rf>f~tiz^c^46G2zH_iwVV1YNBFOYngvSL5lb?pP@x|!Qe#C_6g*+vCXup z{unxfs)<~YUoR1{%b#$9SH6q_HYv#y(cg{l{xF6*V9c?>Bw9zsLERp?6A?sNrcRlYr&fNT{! z215#S8n2At+q1AYfm4`W(Yy}$mh~d&6;son5iXBEuMsdg(eI;{p-@$g<_c4!wPeMcg|MGg+Mf+#He`bkB0JK?yOdM)^>*-wWlKS~ZY^}CxTk=m+XrO$n#1d=KGAr}9DCGkX;n~cL zDF_M`q}N)K*tu=;Ql^lX zO*^w2q1caWX{NV__76zh{g^m~!e8g0&Hz?ehw%qmeXyNd__k&6?lVBMAa0kN*EhiI zpV!hPN9g_O#4Ler5x`s`H_I5B=SR3S__#%4d>}|w-d=}`106ZJ&79qO^#Bw(aY5(@ zlYQ2IgyOv?m+6l9M;z1+ZVL4ZQ{w|W<#}}aj4w=WsRr8RIQaDVnCA9D43tHkbL3k4 z;|=i2qNv#;+V5c53oBEHLZqzPM6q$q<%%>|)YTSBwyOQpa2~k#0B^=$*6Ecsd)A@H zooc@Zf(Cih68~7LNXlQGd#rI1Y6$OK0WXyEme7s_~KB=N(@`=eq zzYzbu6%3r{x=!p*KBPpr{HM0l*ai} zIxOfWkwl%ElRH83T3A`>vmc#b!nyf{lq5%H&TrdyJUsw4Ee!D-Tup-xPcGXTedy4F z(0kWp`JG`F|4X#LfZ|&C;M-!NT73?xfx8r6*~#ugJdlTu4!Z`BzWNW6BWx$6o$~do zE|WX!1JB6Cv9LquJ(T;m`4)zM|_~#mMGJ9-mtW|6|hKTHr%Hto$LtM zWBQKu>YUsZ`Yw!&wpS-`McjX&(H-FFJ;&>Ek4jfnW5uw-w*itk2b|cF0lDaJfdw%V z%~i3H6ElH(7ksuKS7q|$zRM?_HS1w{H8Jq#?ox&4Y2=MXW{gTLqX%|^YkkjN8)Xzn zdJ^0v->S)oF7P@fISIWJ?elf+!@{~xNlvO4L%A!RV2^yrFsCmz0~(dRlIx0$vj7N; zY0L{0g(DNz(#hH{%tN{iy6R1%)mkXY;{KG{pFb-5)GEh-GQkB& zx&jfu4{V*Sq0T>=vO*@m0HP=z#acB z8oz&y6p;m_qRm}oBbdH4zY!Y$nYY$k?%Jj|%D9^)ve{6?8kS`Cp^ZCRvA%=!Vy00% zDZv3S2Rs|n7>;YC9E6oe??-Fxs!60 zScE(sGsk9_2mj%jxlN zbW2lKz;~6dD|f0L0x90?TAa@#HIO}^k+wCg*c>U3ZEgBHF)H3feO>v+(QSO2S~u^1 zYs8J~A}?>J>1gbM*!O6fstcv<%L_3U)Gj*$xuF6UEZJ{DL|iH_p%{q@D~3M2gg`)O zN3$d|mW$L20ge~zrvi)yn1~9?K(440E-ixG4nGO=1(=1%MEs=To>gTc-xklF3>>Oq zgB}t{aG>7ijI!&(v|Q)k>myRckXq5Ez!c;6s)l%{Bb1KB5EbJ1LTlEou5<0qe^zW* z2y(S2+u@mxs|;JFiHI!c8{@bn-M_YNmm4owka3EM0Vm4!z`IxFsV}<}tlY`OfmJ-}<4~#C%tg;VaDcg59pyYHfOUbyeuwzW2E zg;`@kNfyAW`lD>(0L{&@pyFn5ZaUdH?UF*U%iPiT+>#CbVtCU(5xM}8kLy>Xw5G?q+ z=hO$LJ~osa53#is%tIu3edF+91j7VN?>*qAOxmKQg(9{Ictd=sJTJjQv@%#~2@L$> za1La6{QAgPc2VKmK*MVX4t$^}Qfp59-LdlIj$clfI{(N(P}{q0G2-=R%^NkAs2Amf zl~#C*TE*=jG~6a$&lk?M9!@0UNjt#QZgC?2d+U~t#*9ADb3~CYbKzcXOM> zkA2Oy&4tvpKWYL7{IsB&eO7?QB#NClnuE^Q+rE>oM^gZnhG&}tH=n_eU>w&F5r|jN z&)S>4Rajd^21HicpWl%WGY?(S-W24olWU%oE}Le>3JaF#^CRUWn17ykjP<}#-(#X5 zZ6CjX!J9rILttow&%CTmd4RsEHE>Gemslzw7k;P;)7p)oVksZ4oj z6yqEBqrS+rd_4c)?~QA-%jKAfUd@KIRhb3jdR@(!=wy_c35+n#+jzHDU#~B@SG8(m zIqHsHlTp=pNh*J=!I4`heW_`Mf#t*|lSZje!&0PfrM^J<22=3Ub9ueM)Z0O2WjVkv PrbyIPG#^(enFsw3U`DIs literal 0 HcmV?d00001 diff --git a/browser-demo/index.html b/browser-demo/index.html new file mode 100644 index 000000000000..cf107e64568f --- /dev/null +++ b/browser-demo/index.html @@ -0,0 +1,39 @@ + + + + + Substrate node + + + + + diff --git a/browser-demo/ws.js b/browser-demo/ws.js new file mode 100644 index 000000000000..fa7a499a8a7a --- /dev/null +++ b/browser-demo/ws.js @@ -0,0 +1,148 @@ +// Copyright 2019 Parity Technologies (UK) Ltd. +// This file is part of Substrate. + +// Substrate is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Substrate is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Substrate. If not, see . + +export default () => { + return { + dial: dial, + listen_on: (addr) => { + let err = new Error("Listening on WebSockets is not possible from within a browser"); + err.name = "NotSupportedError"; + throw err; + }, + }; +} + +/// Turns a string multiaddress into a WebSockets string URL. +// TODO: support dns addresses as well +const multiaddr_to_ws = (addr) => { + let parsed = addr.match(/^\/(ip4|ip6|dns4|dns6)\/(.*?)\/tcp\/(.*?)\/(ws|wss|x-parity-ws\/(.*)|x-parity-wss\/(.*))$/); + let proto = 'wss'; + if (parsed[4] == 'ws' || parsed[4] == 'x-parity-ws') { + proto = 'ws'; + } + let url = decodeURIComponent(parsed[5] || parsed[6] || ''); + if (parsed != null) { + if (parsed[1] == 'ip6') { + return proto + "://[" + parsed[2] + "]:" + parsed[3] + url; + } else { + return proto + "://" + parsed[2] + ":" + parsed[3] + url; + } + } + + let err = new Error("Address not supported: " + addr); + err.name = "NotSupportedError"; + throw err; +} + +// Attempt to dial a multiaddress. +const dial = (addr) => { + let ws = new WebSocket(multiaddr_to_ws(addr)); + let reader = read_queue(); + + return new Promise((resolve, reject) => { + // TODO: handle ws.onerror properly after dialing has happened + ws.onerror = (ev) => reject(ev); + ws.onmessage = (ev) => reader.inject_blob(ev.data); + ws.onclose = () => reader.inject_eof(); + ws.onopen = () => resolve({ + read: (function*() { while(ws.readyState == 1) { yield reader.next(); } })(), + write: (data) => { + if (ws.readyState == 1) { + ws.send(data); + return promise_when_ws_finished(ws); + } else { + return Promise.reject("WebSocket is closed"); + } + }, + shutdown: () => {}, + close: () => ws.close() + }); + }); +} + +// Takes a WebSocket object and returns a Promise that resolves when bufferedAmount is 0. +const promise_when_ws_finished = (ws) => { + if (ws.bufferedAmount == 0) { + return Promise.resolve(); + } + + return new Promise((resolve, reject) => { + setTimeout(function check() { + if (ws.bufferedAmount == 0) { + resolve(); + } else { + setTimeout(check, 100); + } + }, 2); + }) +} + +// Creates a queue reading system. +const read_queue = () => { + // State of the queue. + let state = { + // Array of promises resolving to `ArrayBuffer`s, that haven't been transmitted back with + // `next` yet. + queue: new Array(), + // If `resolve` isn't null, it is a "resolve" function of a promise that has already been + // returned by `next`. It should be called with some data. + resolve: null, + }; + + return { + // Inserts a new Blob in the queue. + inject_blob: (blob) => { + if (state.resolve != null) { + var resolve = state.resolve; + state.resolve = null; + + var reader = new FileReader(); + reader.addEventListener("loadend", () => resolve(reader.result)); + reader.readAsArrayBuffer(blob); + } else { + state.queue.push(new Promise((resolve, reject) => { + var reader = new FileReader(); + reader.addEventListener("loadend", () => resolve(reader.result)); + reader.readAsArrayBuffer(blob); + })); + } + }, + + // Inserts an EOF message in the queue. + inject_eof: () => { + if (state.resolve != null) { + var resolve = state.resolve; + state.resolve = null; + resolve(null); + } else { + state.queue.push(Promise.resolve(null)); + } + }, + + // Returns a Promise that yields the next entry as an ArrayBuffer. + next: () => { + if (state.queue.length != 0) { + return state.queue.shift(0); + } else { + if (state.resolve !== null) + throw "Internal error: already have a pending promise"; + return new Promise((resolve, reject) => { + state.resolve = resolve; + }); + } + } + }; +}; diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 270aca0d8956..24ad19474bcf 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -5,6 +5,9 @@ authors = ["Parity Technologies "] description = "Polkadot node implementation in Rust." edition = "2018" +[lib] +crate-type = ["cdylib", "rlib"] + [dependencies] log = "0.4.8" tokio = "0.2.1" @@ -18,3 +21,4 @@ service = { package = "polkadot-service", path = "../service", default-features default = [ "wasmtime", "rocksdb" ] wasmtime = [ "cli/wasmtime" ] rocksdb = [ "service/rocksdb" ] +browser = [] diff --git a/cli/src/browser.rs b/cli/src/browser.rs new file mode 100644 index 000000000000..e69de29bb2d1 From 868f6e51dfdc0a64252acd9adabe7b9ba436b1f4 Mon Sep 17 00:00:00 2001 From: Ashley Date: Mon, 2 Dec 2019 10:51:57 +0100 Subject: [PATCH 14/54] Add initial browser file --- cli/src/browser.rs | 160 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 160 insertions(+) diff --git a/cli/src/browser.rs b/cli/src/browser.rs index e69de29bb2d1..93df41402b9f 100644 --- a/cli/src/browser.rs +++ b/cli/src/browser.rs @@ -0,0 +1,160 @@ +// Copyright 2019 Parity Technologies (UK) Ltd. +// This file is part of Substrate. + +// Substrate is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Substrate is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Substrate. If not, see . + +use crate::ChainSpec; +use futures01::{prelude::*, sync::oneshot, sync::mpsc}; +use libp2p::wasm_ext; +use log::{debug, info}; +use std::sync::Arc; +use substrate_service::{AbstractService, RpcSession, Roles as ServiceRoles, Configuration, config::DatabaseConfig}; +use wasm_bindgen::prelude::*; + +/// Starts the client. +/// +/// You must pass a libp2p transport that supports . +#[wasm_bindgen] +pub fn start_client(wasm_ext: wasm_ext::ffi::Transport) -> Result { + start_inner(wasm_ext) + .map_err(|err| JsValue::from_str(&err.to_string())) +} + +fn start_inner(wasm_ext: wasm_ext::ffi::Transport) -> Result> { + console_error_panic_hook::set_once(); + console_log::init_with_level(log::Level::Info); + + // Build the configuration to pass to the service. + let config = { + let wasm_ext = wasm_ext::ExtTransport::new(wasm_ext); + let chain_spec = ChainSpec::FlamingFir.load().map_err(|e| format!("{:?}", e))?; + let mut config = Configuration::<(), _, _>::default_with_spec_and_base_path(chain_spec, None); + config.network.transport = network::config::TransportConfig::Normal { + wasm_external_transport: Some(wasm_ext.clone()), + allow_private_ipv4: true, + enable_mdns: false, + }; + config.telemetry_external_transport = Some(wasm_ext); + config.roles = ServiceRoles::LIGHT; + config.name = "Browser node".to_string(); + config.database = { + let db = Arc::new(kvdb_memorydb::create(10)); + DatabaseConfig::Custom(db) + }; + config + }; + + info!("Substrate browser node"); + info!(" version {}", config.full_version()); + info!(" by Parity Technologies, 2017-2019"); + info!("Chain specification: {}", config.chain_spec.name()); + info!("Node name: {}", config.name); + info!("Roles: {:?}", config.roles); + + // Create the service. This is the most heavy initialization step. + let mut service = crate::service::new_light(config).map_err(|e| format!("{:?}", e))?; + + // We now dispatch a background task responsible for processing the service. + // + // The main action performed by the code below consists in polling the service with + // `service.poll()`. + // The rest consists in handling RPC requests. + let (rpc_send_tx, mut rpc_send_rx) = mpsc::unbounded::(); + wasm_bindgen_futures::spawn_local(futures01::future::poll_fn(move || { + loop { + match rpc_send_rx.poll() { + Ok(Async::Ready(Some(message))) => { + let fut = service.rpc_query(&message.session, &message.rpc_json); + let _ = message.send_back.send(Box::new(fut)); + }, + Ok(Async::NotReady) => break, + Err(_) | Ok(Async::Ready(None)) => return Ok(Async::Ready(())), + } + } + + loop { + match service.poll().map_err(|_| ())? { + Async::Ready(()) => return Ok(Async::Ready(())), + Async::NotReady => break + } + } + + Ok(Async::NotReady) + })); + + Ok(Client { + rpc_send_tx, + }) +} + +/// A running client. +#[wasm_bindgen] +pub struct Client { + rpc_send_tx: mpsc::UnboundedSender, +} + +struct RpcMessage { + rpc_json: String, + session: RpcSession, + send_back: oneshot::Sender, Error = ()>>>, +} + +#[wasm_bindgen] +impl Client { + /// Allows starting an RPC request. Returns a `Promise` containing the result of that request. + #[wasm_bindgen(js_name = "rpcSend")] + pub fn rpc_send(&mut self, rpc: &str) -> js_sys::Promise { + let rpc_session = RpcSession::new(mpsc::channel(1).0); + let (tx, rx) = oneshot::channel(); + let _ = self.rpc_send_tx.unbounded_send(RpcMessage { + rpc_json: rpc.to_owned(), + session: rpc_session, + send_back: tx, + }); + let fut = rx + .map_err(|_| ()) + .and_then(|fut| fut) + .map(|s| JsValue::from_str(&s.unwrap_or(String::new()))) + .map_err(|_| JsValue::NULL); + wasm_bindgen_futures::future_to_promise(fut) + } + + /// Subscribes to an RPC pubsub endpoint. + #[wasm_bindgen(js_name = "rpcSubscribe")] + pub fn rpc_subscribe(&mut self, rpc: &str, callback: js_sys::Function) { + let (tx, rx) = mpsc::channel(4); + let rpc_session = RpcSession::new(tx); + let (fut_tx, fut_rx) = oneshot::channel(); + let _ = self.rpc_send_tx.unbounded_send(RpcMessage { + rpc_json: rpc.to_owned(), + session: rpc_session.clone(), + send_back: fut_tx, + }); + let fut_rx = fut_rx + .map_err(|_| ()) + .and_then(|fut| fut); + wasm_bindgen_futures::spawn_local(fut_rx.then(|_| Ok(()))); + wasm_bindgen_futures::spawn_local(rx.for_each(move |s| { + match callback.call1(&callback, &JsValue::from_str(&s)) { + Ok(_) => Ok(()), + Err(_) => Err(()), + } + }).then(move |v| { + // We need to keep `rpc_session` alive. + debug!("RPC subscription has ended"); + drop(rpc_session); + v + })); + } +} From 5b33b7a7af08d7a3aa3853b8e4995484fb640d52 Mon Sep 17 00:00:00 2001 From: Ashley Date: Mon, 2 Dec 2019 11:55:51 +0100 Subject: [PATCH 15/54] Add browser-demo --- {browser-demo => cli/browser-demo}/.gitignore | 0 {browser-demo => cli/browser-demo}/README.md | 0 {browser-demo => cli/browser-demo}/build.sh | 2 +- {browser-demo => cli/browser-demo}/favicon.png | Bin {browser-demo => cli/browser-demo}/index.html | 4 ++-- {browser-demo => cli/browser-demo}/ws.js | 0 6 files changed, 3 insertions(+), 3 deletions(-) rename {browser-demo => cli/browser-demo}/.gitignore (100%) rename {browser-demo => cli/browser-demo}/README.md (100%) rename {browser-demo => cli/browser-demo}/build.sh (60%) rename {browser-demo => cli/browser-demo}/favicon.png (100%) rename {browser-demo => cli/browser-demo}/index.html (88%) rename {browser-demo => cli/browser-demo}/ws.js (100%) diff --git a/browser-demo/.gitignore b/cli/browser-demo/.gitignore similarity index 100% rename from browser-demo/.gitignore rename to cli/browser-demo/.gitignore diff --git a/browser-demo/README.md b/cli/browser-demo/README.md similarity index 100% rename from browser-demo/README.md rename to cli/browser-demo/README.md diff --git a/browser-demo/build.sh b/cli/browser-demo/build.sh similarity index 60% rename from browser-demo/build.sh rename to cli/browser-demo/build.sh index ed8349bf2b5f..c16100794ad2 100755 --- a/browser-demo/build.sh +++ b/cli/browser-demo/build.sh @@ -1,3 +1,3 @@ #!/usr/bin/env sh -wasm-pack build --target web --out-dir ./browser-demo/pkg --no-typescript --release ../cli -- --no-default-features --features "browser" +wasm-pack build --target web --out-dir ./browser-demo/pkg --no-typescript --release ./.. -- --no-default-features --features "browser" python -m SimpleHTTPServer 8000 diff --git a/browser-demo/favicon.png b/cli/browser-demo/favicon.png similarity index 100% rename from browser-demo/favicon.png rename to cli/browser-demo/favicon.png diff --git a/browser-demo/index.html b/cli/browser-demo/index.html similarity index 88% rename from browser-demo/index.html rename to cli/browser-demo/index.html index cf107e64568f..c273ae728319 100644 --- a/browser-demo/index.html +++ b/cli/browser-demo/index.html @@ -5,7 +5,7 @@ Substrate node