mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-19 22:51:03 +00:00
Upgrade to substrate rc4 release (#131)
* Upgrade to substrate rc4 release * Fix up test-node/service * Fix up client node config * Fix up remaining compilation errors * Fmt * Remove fixme * Fix test * Release v0.10.0
This commit is contained in:
@@ -1,3 +1,8 @@
|
|||||||
|
# Version 0.10.0 (2020-06-19)
|
||||||
|
|
||||||
|
* Upgrade to substrate rc4 release [#131](https://github.com/paritytech/substrate-subxt/pull/131)
|
||||||
|
* Support unsigned extrinsics. [#130](https://github.com/paritytech/substrate-subxt/pull/130)
|
||||||
|
|
||||||
# Version 0.9.0 (2020-06-25)
|
# Version 0.9.0 (2020-06-25)
|
||||||
|
|
||||||
* Events sub [#126](https://github.com/paritytech/substrate-subxt/pull/126)
|
* Events sub [#126](https://github.com/paritytech/substrate-subxt/pull/126)
|
||||||
|
|||||||
+13
-13
@@ -3,7 +3,7 @@ members = [".", "client", "proc-macro", "test-node"]
|
|||||||
|
|
||||||
[package]
|
[package]
|
||||||
name = "substrate-subxt"
|
name = "substrate-subxt"
|
||||||
version = "0.9.0"
|
version = "0.10.0"
|
||||||
authors = ["Parity Technologies <admin@parity.io>"]
|
authors = ["Parity Technologies <admin@parity.io>"]
|
||||||
edition = "2018"
|
edition = "2018"
|
||||||
|
|
||||||
@@ -30,16 +30,16 @@ serde_json = "1.0.55"
|
|||||||
url = "2.1.1"
|
url = "2.1.1"
|
||||||
codec = { package = "parity-scale-codec", version = "1.3", default-features = false, features = ["derive", "full"] }
|
codec = { package = "parity-scale-codec", version = "1.3", default-features = false, features = ["derive", "full"] }
|
||||||
|
|
||||||
frame-metadata = { version = "11.0.0-rc3", package = "frame-metadata" }
|
frame-metadata = { version = "11.0.0-rc4", package = "frame-metadata" }
|
||||||
frame-support = { version = "2.0.0-rc3", package = "frame-support" }
|
frame-support = { version = "2.0.0-rc4", package = "frame-support" }
|
||||||
sp-runtime = { version = "2.0.0-rc3", package = "sp-runtime" }
|
sp-runtime = { version = "2.0.0-rc4", package = "sp-runtime" }
|
||||||
sp-version = { version = "2.0.0-rc3", package = "sp-version" }
|
sp-version = { version = "2.0.0-rc4", package = "sp-version" }
|
||||||
pallet-indices = { version = "2.0.0-rc3", package = "pallet-indices" }
|
pallet-indices = { version = "2.0.0-rc4", package = "pallet-indices" }
|
||||||
hex = "0.4.2"
|
hex = "0.4.2"
|
||||||
sp-rpc = { version = "2.0.0-rc3", package = "sp-rpc" }
|
sp-rpc = { version = "2.0.0-rc4", package = "sp-rpc" }
|
||||||
sp-core = { version = "2.0.0-rc3", package = "sp-core" }
|
sp-core = { version = "2.0.0-rc4", package = "sp-core" }
|
||||||
sc-rpc-api = { version = "0.8.0-rc3", package = "sc-rpc-api" }
|
sc-rpc-api = { version = "0.8.0-rc4", package = "sc-rpc-api" }
|
||||||
sp-transaction-pool = { version = "2.0.0-rc3", package = "sp-transaction-pool" }
|
sp-transaction-pool = { version = "2.0.0-rc4", package = "sp-transaction-pool" }
|
||||||
substrate-subxt-client = { version = "0.1.0", path = "client", optional = true }
|
substrate-subxt-client = { version = "0.1.0", path = "client", optional = true }
|
||||||
substrate-subxt-proc-macro = { version = "0.9.0", path = "proc-macro" }
|
substrate-subxt-proc-macro = { version = "0.9.0", path = "proc-macro" }
|
||||||
|
|
||||||
@@ -47,9 +47,9 @@ substrate-subxt-proc-macro = { version = "0.9.0", path = "proc-macro" }
|
|||||||
async-std = { version = "=1.5.0", features = ["attributes"] }
|
async-std = { version = "=1.5.0", features = ["attributes"] }
|
||||||
env_logger = "0.7.1"
|
env_logger = "0.7.1"
|
||||||
wabt = "0.9.2"
|
wabt = "0.9.2"
|
||||||
frame-system = { version = "2.0.0-rc3", package = "frame-system" }
|
frame-system = { version = "2.0.0-rc4", package = "frame-system" }
|
||||||
pallet-balances = { version = "2.0.0-rc3", package = "pallet-balances" }
|
pallet-balances = { version = "2.0.0-rc4", package = "pallet-balances" }
|
||||||
sp-keyring = { version = "2.0.0-rc3", package = "sp-keyring" }
|
sp-keyring = { version = "2.0.0-rc4", package = "sp-keyring" }
|
||||||
substrate-subxt-client = { version = "0.1.0", path = "client" }
|
substrate-subxt-client = { version = "0.1.0", path = "client" }
|
||||||
tempdir = "0.3.7"
|
tempdir = "0.3.7"
|
||||||
test-node = { path = "test-node" }
|
test-node = { path = "test-node" }
|
||||||
|
|||||||
+3
-3
@@ -17,10 +17,10 @@ futures = { version = "0.3.5", features = ["compat"] }
|
|||||||
futures01 = { package = "futures", version = "0.1.29" }
|
futures01 = { package = "futures", version = "0.1.29" }
|
||||||
jsonrpsee = "0.1.0"
|
jsonrpsee = "0.1.0"
|
||||||
log = "0.4.8"
|
log = "0.4.8"
|
||||||
sc-network = { version = "0.8.0-rc3", default-features = false }
|
sc-network = { version = "0.8.0-rc4", default-features = false }
|
||||||
sc-service = { version = "0.8.0-rc3", default-features = false }
|
sc-service = { version = "0.8.0-rc4", default-features = false }
|
||||||
serde_json = "1.0.55"
|
serde_json = "1.0.55"
|
||||||
sp-keyring = "2.0.0-rc3"
|
sp-keyring = "2.0.0-rc4"
|
||||||
thiserror = "1.0.20"
|
thiserror = "1.0.20"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
|
|||||||
+7
-2
@@ -208,12 +208,13 @@ fn start_subxt_client<C: ChainSpec + 'static, S: AbstractService>(
|
|||||||
impl_version: config.impl_version,
|
impl_version: config.impl_version,
|
||||||
chain_spec: Box::new(config.chain_spec),
|
chain_spec: Box::new(config.chain_spec),
|
||||||
role: config.role.into(),
|
role: config.role.into(),
|
||||||
task_executor: std::sync::Arc::new(move |fut, ty| {
|
task_executor: (move |fut, ty| {
|
||||||
match ty {
|
match ty {
|
||||||
TaskType::Async => task::spawn(fut),
|
TaskType::Async => task::spawn(fut),
|
||||||
TaskType::Blocking => task::spawn_blocking(|| task::block_on(fut)),
|
TaskType::Blocking => task::spawn_blocking(|| task::block_on(fut)),
|
||||||
};
|
};
|
||||||
}),
|
})
|
||||||
|
.into(),
|
||||||
database: config.db,
|
database: config.db,
|
||||||
keystore: KeystoreConfig::InMemory,
|
keystore: KeystoreConfig::InMemory,
|
||||||
max_runtime_instances: 8,
|
max_runtime_instances: 8,
|
||||||
@@ -231,6 +232,7 @@ fn start_subxt_client<C: ChainSpec + 'static, S: AbstractService>(
|
|||||||
pruning: Default::default(),
|
pruning: Default::default(),
|
||||||
rpc_cors: Default::default(),
|
rpc_cors: Default::default(),
|
||||||
rpc_http: Default::default(),
|
rpc_http: Default::default(),
|
||||||
|
rpc_ipc: Default::default(),
|
||||||
rpc_ws: Default::default(),
|
rpc_ws: Default::default(),
|
||||||
rpc_ws_max_connections: Default::default(),
|
rpc_ws_max_connections: Default::default(),
|
||||||
rpc_methods: Default::default(),
|
rpc_methods: Default::default(),
|
||||||
@@ -240,6 +242,8 @@ fn start_subxt_client<C: ChainSpec + 'static, S: AbstractService>(
|
|||||||
tracing_targets: Default::default(),
|
tracing_targets: Default::default(),
|
||||||
transaction_pool: Default::default(),
|
transaction_pool: Default::default(),
|
||||||
wasm_method: Default::default(),
|
wasm_method: Default::default(),
|
||||||
|
base_path: Default::default(),
|
||||||
|
informant_output_format: Default::default(),
|
||||||
};
|
};
|
||||||
|
|
||||||
log::info!("{}", service_config.impl_name);
|
log::info!("{}", service_config.impl_name);
|
||||||
@@ -329,6 +333,7 @@ mod tests {
|
|||||||
test_node::chain_spec::ChainSpec::from_json_bytes(bytes).unwrap();
|
test_node::chain_spec::ChainSpec::from_json_bytes(bytes).unwrap();
|
||||||
let tmp = TempDir::new("subxt-").expect("failed to create tempdir");
|
let tmp = TempDir::new("subxt-").expect("failed to create tempdir");
|
||||||
let config = SubxtClientConfig {
|
let config = SubxtClientConfig {
|
||||||
|
// base_path:
|
||||||
impl_name: "substrate-subxt-light-client",
|
impl_name: "substrate-subxt-light-client",
|
||||||
impl_version: "0.0.1",
|
impl_version: "0.0.1",
|
||||||
author: "David Craven",
|
author: "David Craven",
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ async-std = { version = "=1.5.0", features = ["attributes"] }
|
|||||||
codec = { package = "parity-scale-codec", version = "1.3.0", features = ["derive"] }
|
codec = { package = "parity-scale-codec", version = "1.3.0", features = ["derive"] }
|
||||||
env_logger = "0.7.1"
|
env_logger = "0.7.1"
|
||||||
pretty_assertions = "0.6.1"
|
pretty_assertions = "0.6.1"
|
||||||
sp-keyring = "2.0.0-rc3"
|
sp-keyring = "2.0.0-rc4"
|
||||||
substrate-subxt = { path = ".." }
|
substrate-subxt = { path = ".." }
|
||||||
trybuild = "1.0.30"
|
trybuild = "1.0.30"
|
||||||
|
|
||||||
|
|||||||
+2
-1
@@ -30,6 +30,7 @@ use serde::de::DeserializeOwned;
|
|||||||
use sp_runtime::{
|
use sp_runtime::{
|
||||||
traits::{
|
traits::{
|
||||||
AtLeast32Bit,
|
AtLeast32Bit,
|
||||||
|
AtLeast32BitUnsigned,
|
||||||
Bounded,
|
Bounded,
|
||||||
CheckEqual,
|
CheckEqual,
|
||||||
Extrinsic,
|
Extrinsic,
|
||||||
@@ -67,7 +68,7 @@ pub trait System {
|
|||||||
+ MaybeSerializeDeserialize
|
+ MaybeSerializeDeserialize
|
||||||
+ Debug
|
+ Debug
|
||||||
+ MaybeDisplay
|
+ MaybeDisplay
|
||||||
+ AtLeast32Bit
|
+ AtLeast32BitUnsigned
|
||||||
+ Default
|
+ Default
|
||||||
+ Bounded
|
+ Bounded
|
||||||
+ Copy
|
+ Copy
|
||||||
|
|||||||
+2
-2
@@ -244,7 +244,7 @@ impl<T: Runtime> Client<T> {
|
|||||||
/// Get a block hash. By default returns the latest block hash
|
/// Get a block hash. By default returns the latest block hash
|
||||||
pub async fn block_hash(
|
pub async fn block_hash(
|
||||||
&self,
|
&self,
|
||||||
block_number: Option<BlockNumber<T>>,
|
block_number: Option<BlockNumber>,
|
||||||
) -> Result<Option<T::Hash>, Error> {
|
) -> Result<Option<T::Hash>, Error> {
|
||||||
let hash = self.rpc.block_hash(block_number).await?;
|
let hash = self.rpc.block_hash(block_number).await?;
|
||||||
Ok(hash)
|
Ok(hash)
|
||||||
@@ -578,7 +578,7 @@ mod tests {
|
|||||||
|
|
||||||
// create raw payload with AccoundId and sign it
|
// create raw payload with AccoundId and sign it
|
||||||
let raw_payload = client
|
let raw_payload = client
|
||||||
.create_unsigned(
|
.create_payload(
|
||||||
balances::TransferCall {
|
balances::TransferCall {
|
||||||
to: &dest,
|
to: &dest,
|
||||||
amount: 10_000,
|
amount: 10_000,
|
||||||
|
|||||||
+6
-17
@@ -37,7 +37,6 @@ use jsonrpsee::{
|
|||||||
},
|
},
|
||||||
Client,
|
Client,
|
||||||
};
|
};
|
||||||
use num_traits::bounds::Bounded;
|
|
||||||
use sc_rpc_api::state::ReadProof;
|
use sc_rpc_api::state::ReadProof;
|
||||||
use serde::Serialize;
|
use serde::Serialize;
|
||||||
use sp_core::{
|
use sp_core::{
|
||||||
@@ -83,23 +82,15 @@ pub type ChainBlock<T> =
|
|||||||
|
|
||||||
/// Wrapper for NumberOrHex to allow custom From impls
|
/// Wrapper for NumberOrHex to allow custom From impls
|
||||||
#[derive(Serialize)]
|
#[derive(Serialize)]
|
||||||
#[serde(bound = "<T as System>::BlockNumber: Serialize")]
|
pub struct BlockNumber(NumberOrHex);
|
||||||
pub struct BlockNumber<T: System>(NumberOrHex<<T as System>::BlockNumber>);
|
|
||||||
|
|
||||||
impl<T> From<NumberOrHex<<T as System>::BlockNumber>> for BlockNumber<T>
|
impl From<NumberOrHex> for BlockNumber {
|
||||||
where
|
fn from(x: NumberOrHex) -> Self {
|
||||||
T: System,
|
|
||||||
{
|
|
||||||
fn from(x: NumberOrHex<<T as System>::BlockNumber>) -> Self {
|
|
||||||
BlockNumber(x)
|
BlockNumber(x)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T> From<u32> for BlockNumber<T>
|
impl From<u32> for BlockNumber {
|
||||||
where
|
|
||||||
T: System,
|
|
||||||
<T as System>::BlockNumber: From<u32>,
|
|
||||||
{
|
|
||||||
fn from(x: u32) -> Self {
|
fn from(x: u32) -> Self {
|
||||||
NumberOrHex::Number(x.into()).into()
|
NumberOrHex::Number(x.into()).into()
|
||||||
}
|
}
|
||||||
@@ -160,9 +151,7 @@ impl<T: Runtime> Rpc<T> {
|
|||||||
|
|
||||||
/// Fetch the genesis hash
|
/// Fetch the genesis hash
|
||||||
pub async fn genesis_hash(&self) -> Result<T::Hash, Error> {
|
pub async fn genesis_hash(&self) -> Result<T::Hash, Error> {
|
||||||
let block_zero = Some(ListOrValue::Value(NumberOrHex::Number(
|
let block_zero = Some(ListOrValue::Value(NumberOrHex::Number(0)));
|
||||||
T::BlockNumber::min_value(),
|
|
||||||
)));
|
|
||||||
let params = Params::Array(vec![to_json_value(block_zero)?]);
|
let params = Params::Array(vec![to_json_value(block_zero)?]);
|
||||||
let list_or_value: ListOrValue<Option<T::Hash>> =
|
let list_or_value: ListOrValue<Option<T::Hash>> =
|
||||||
self.client.request("chain_getBlockHash", params).await?;
|
self.client.request("chain_getBlockHash", params).await?;
|
||||||
@@ -198,7 +187,7 @@ impl<T: Runtime> Rpc<T> {
|
|||||||
/// Get a block hash, returns hash of latest block by default
|
/// Get a block hash, returns hash of latest block by default
|
||||||
pub async fn block_hash(
|
pub async fn block_hash(
|
||||||
&self,
|
&self,
|
||||||
block_number: Option<BlockNumber<T>>,
|
block_number: Option<BlockNumber>,
|
||||||
) -> Result<Option<T::Hash>, Error> {
|
) -> Result<Option<T::Hash>, Error> {
|
||||||
let block_number = block_number.map(ListOrValue::Value);
|
let block_number = block_number.map(ListOrValue::Value);
|
||||||
let params = Params::Array(vec![to_json_value(block_number)?]);
|
let params = Params::Array(vec![to_json_value(block_number)?]);
|
||||||
|
|||||||
+20
-20
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "test-node"
|
name = "test-node"
|
||||||
version = "2.0.0-rc3"
|
version = "2.0.0-rc4"
|
||||||
authors = ["Anonymous"]
|
authors = ["Anonymous"]
|
||||||
description = "Substrate Node template"
|
description = "Substrate Node template"
|
||||||
edition = "2018"
|
edition = "2018"
|
||||||
@@ -18,25 +18,25 @@ log = "0.4.8"
|
|||||||
structopt = "0.3.15"
|
structopt = "0.3.15"
|
||||||
parking_lot = "0.11.0"
|
parking_lot = "0.11.0"
|
||||||
|
|
||||||
sc-cli = { version = "0.8.0-rc3", features = ["wasmtime"] }
|
sc-cli = { version = "0.8.0-rc4", features = ["wasmtime"] }
|
||||||
sp-core = "2.0.0-rc3"
|
sp-core = "2.0.0-rc4"
|
||||||
sc-executor = { version = "0.8.0-rc3", features = ["wasmtime"] }
|
sc-executor = { version = "0.8.0-rc4", features = ["wasmtime"] }
|
||||||
sc-service = { version = "0.8.0-rc3", features = ["wasmtime"] }
|
sc-service = { version = "0.8.0-rc4", features = ["wasmtime"] }
|
||||||
sp-inherents = "2.0.0-rc3"
|
sp-inherents = "2.0.0-rc4"
|
||||||
sc-transaction-pool = "2.0.0-rc3"
|
sc-transaction-pool = "2.0.0-rc4"
|
||||||
sp-transaction-pool = "2.0.0-rc3"
|
sp-transaction-pool = "2.0.0-rc4"
|
||||||
sc-network = "0.8.0-rc3"
|
sc-network = "0.8.0-rc4"
|
||||||
sc-consensus-aura = "0.8.0-rc3"
|
sc-consensus-aura = "0.8.0-rc4"
|
||||||
sp-consensus-aura = "0.8.0-rc3"
|
sp-consensus-aura = "0.8.0-rc4"
|
||||||
sp-consensus = "0.8.0-rc3"
|
sp-consensus = "0.8.0-rc4"
|
||||||
sc-consensus = "0.8.0-rc3"
|
sc-consensus = "0.8.0-rc4"
|
||||||
sc-finality-grandpa = "0.8.0-rc3"
|
sc-finality-grandpa = "0.8.0-rc4"
|
||||||
sp-finality-grandpa = "2.0.0-rc3"
|
sp-finality-grandpa = "2.0.0-rc4"
|
||||||
sc-client-api = "2.0.0-rc3"
|
sc-client-api = "2.0.0-rc4"
|
||||||
sp-runtime = "2.0.0-rc3"
|
sp-runtime = "2.0.0-rc4"
|
||||||
sc-basic-authorship = "0.8.0-rc3"
|
sc-basic-authorship = "0.8.0-rc4"
|
||||||
|
|
||||||
test-node-runtime = { version = "2.0.0-rc3", path = "runtime" }
|
test-node-runtime = { version = "2.0.0-rc4", path = "runtime" }
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
substrate-build-script-utils = "2.0.0-rc3"
|
substrate-build-script-utils = "2.0.0-rc4"
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "test-node-runtime"
|
name = "test-node-runtime"
|
||||||
version = "2.0.0-rc3"
|
version = "2.0.0-rc4"
|
||||||
authors = ["Anonymous"]
|
authors = ["Anonymous"]
|
||||||
edition = "2018"
|
edition = "2018"
|
||||||
license = "Unlicense"
|
license = "Unlicense"
|
||||||
@@ -13,29 +13,29 @@ targets = ["x86_64-unknown-linux-gnu"]
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
codec = { package = "parity-scale-codec", version = "1.3.1", default-features = false, features = ["derive"] }
|
codec = { package = "parity-scale-codec", version = "1.3.1", default-features = false, features = ["derive"] }
|
||||||
|
|
||||||
aura = { version = "2.0.0-rc3", default-features = false, package = "pallet-aura" }
|
aura = { version = "2.0.0-rc4", default-features = false, package = "pallet-aura" }
|
||||||
balances = { version = "2.0.0-rc3", default-features = false, package = "pallet-balances" }
|
balances = { version = "2.0.0-rc4", default-features = false, package = "pallet-balances" }
|
||||||
frame-support = { version = "2.0.0-rc3", default-features = false }
|
frame-support = { version = "2.0.0-rc4", default-features = false }
|
||||||
grandpa = { version = "2.0.0-rc3", default-features = false, package = "pallet-grandpa" }
|
grandpa = { version = "2.0.0-rc4", default-features = false, package = "pallet-grandpa" }
|
||||||
randomness-collective-flip = { version = "2.0.0-rc3", default-features = false, package = "pallet-randomness-collective-flip" }
|
randomness-collective-flip = { version = "2.0.0-rc4", default-features = false, package = "pallet-randomness-collective-flip" }
|
||||||
sudo = { version = "2.0.0-rc3", default-features = false, package = "pallet-sudo" }
|
sudo = { version = "2.0.0-rc4", default-features = false, package = "pallet-sudo" }
|
||||||
system = { version = "2.0.0-rc3", default-features = false, package = "frame-system" }
|
system = { version = "2.0.0-rc4", default-features = false, package = "frame-system" }
|
||||||
timestamp = { version = "2.0.0-rc3", default-features = false, package = "pallet-timestamp" }
|
timestamp = { version = "2.0.0-rc4", default-features = false, package = "pallet-timestamp" }
|
||||||
transaction-payment = { version = "2.0.0-rc3", default-features = false, package = "pallet-transaction-payment" }
|
transaction-payment = { version = "2.0.0-rc4", default-features = false, package = "pallet-transaction-payment" }
|
||||||
frame-executive = { version = "2.0.0-rc3", default-features = false }
|
frame-executive = { version = "2.0.0-rc4", default-features = false }
|
||||||
serde = { version = "1.0.114", optional = true, features = ["derive"] }
|
serde = { version = "1.0.114", optional = true, features = ["derive"] }
|
||||||
sp-api = { version = "2.0.0-rc3", default-features = false }
|
sp-api = { version = "2.0.0-rc4", default-features = false }
|
||||||
sp-block-builder = { default-features = false, version = "2.0.0-rc3" }
|
sp-block-builder = { default-features = false, version = "2.0.0-rc4" }
|
||||||
sp-consensus-aura = { version = "0.8.0-rc3", default-features = false }
|
sp-consensus-aura = { version = "0.8.0-rc4", default-features = false }
|
||||||
sp-core = { version = "2.0.0-rc3", default-features = false }
|
sp-core = { version = "2.0.0-rc4", default-features = false }
|
||||||
sp-inherents = { default-features = false, version = "2.0.0-rc3" }
|
sp-inherents = { default-features = false, version = "2.0.0-rc4" }
|
||||||
sp-io = { version = "2.0.0-rc3", default-features = false }
|
sp-io = { version = "2.0.0-rc4", default-features = false }
|
||||||
sp-offchain = { version = "2.0.0-rc3", default-features = false }
|
sp-offchain = { version = "2.0.0-rc4", default-features = false }
|
||||||
sp-runtime = { version = "2.0.0-rc3", default-features = false }
|
sp-runtime = { version = "2.0.0-rc4", default-features = false }
|
||||||
sp-session = { version = "2.0.0-rc3", default-features = false }
|
sp-session = { version = "2.0.0-rc4", default-features = false }
|
||||||
sp-std = { version = "2.0.0-rc3", default-features = false }
|
sp-std = { version = "2.0.0-rc4", default-features = false }
|
||||||
sp-transaction-pool = { version = "2.0.0-rc3", default-features = false }
|
sp-transaction-pool = { version = "2.0.0-rc4", default-features = false }
|
||||||
sp-version = { version = "2.0.0-rc3", default-features = false }
|
sp-version = { version = "2.0.0-rc4", default-features = false }
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
wasm-builder-runner = { version = "1.0.5", package = "substrate-wasm-builder-runner" }
|
wasm-builder-runner = { version = "1.0.5", package = "substrate-wasm-builder-runner" }
|
||||||
|
|||||||
@@ -181,6 +181,8 @@ parameter_types! {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl system::Trait for Runtime {
|
impl system::Trait for Runtime {
|
||||||
|
/// The basic call filter to use in dispatchable.
|
||||||
|
type BaseCallFilter = ();
|
||||||
/// The identifier used to distinguish between accounts.
|
/// The identifier used to distinguish between accounts.
|
||||||
type AccountId = AccountId;
|
type AccountId = AccountId;
|
||||||
/// The aggregated dispatch type that is available for extrinsics.
|
/// The aggregated dispatch type that is available for extrinsics.
|
||||||
|
|||||||
@@ -145,7 +145,7 @@ pub fn new_full(config: Configuration) -> Result<impl AbstractService, ServiceEr
|
|||||||
let provider = client as Arc<dyn StorageAndProofProvider<_, _>>;
|
let provider = client as Arc<dyn StorageAndProofProvider<_, _>>;
|
||||||
Ok(Arc::new(GrandpaFinalityProofProvider::new(backend, provider)) as _)
|
Ok(Arc::new(GrandpaFinalityProofProvider::new(backend, provider)) as _)
|
||||||
})?
|
})?
|
||||||
.build()?;
|
.build_full()?;
|
||||||
|
|
||||||
if role.is_authority() {
|
if role.is_authority() {
|
||||||
let proposer = sc_basic_authorship::ProposerFactory::new(
|
let proposer = sc_basic_authorship::ProposerFactory::new(
|
||||||
@@ -177,19 +177,20 @@ pub fn new_full(config: Configuration) -> Result<impl AbstractService, ServiceEr
|
|||||||
|
|
||||||
// the AURA authoring task is considered essential, i.e. if it
|
// the AURA authoring task is considered essential, i.e. if it
|
||||||
// fails we take down the service with it.
|
// fails we take down the service with it.
|
||||||
service.spawn_essential_task("aura", aura);
|
service
|
||||||
|
.spawn_essential_task_handle()
|
||||||
|
.spawn_blocking("aura", aura);
|
||||||
}
|
}
|
||||||
|
|
||||||
// if the node isn't actively participating in consensus then it doesn't
|
// if the node isn't actively participating in consensus then it doesn't
|
||||||
// need a keystore, regardless of which protocol we use below.
|
// need a keystore, regardless of which protocol we use below.
|
||||||
let keystore = if role.is_authority() {
|
let keystore = if role.is_authority() {
|
||||||
Some(service.keystore())
|
Some(service.keystore() as sp_core::traits::BareCryptoStorePtr)
|
||||||
} else {
|
} else {
|
||||||
None
|
None
|
||||||
};
|
};
|
||||||
|
|
||||||
let grandpa_config = sc_finality_grandpa::Config {
|
let grandpa_config = sc_finality_grandpa::Config {
|
||||||
// #1578 make this available through chainspec
|
|
||||||
gossip_duration: Duration::from_millis(333),
|
gossip_duration: Duration::from_millis(333),
|
||||||
justification_period: 512,
|
justification_period: 512,
|
||||||
name: Some(name),
|
name: Some(name),
|
||||||
@@ -219,7 +220,7 @@ pub fn new_full(config: Configuration) -> Result<impl AbstractService, ServiceEr
|
|||||||
|
|
||||||
// the GRANDPA voter task is considered infallible, i.e.
|
// the GRANDPA voter task is considered infallible, i.e.
|
||||||
// if it fails we take down the service with it.
|
// if it fails we take down the service with it.
|
||||||
service.spawn_essential_task(
|
service.spawn_essential_task_handle().spawn_blocking(
|
||||||
"grandpa-voter",
|
"grandpa-voter",
|
||||||
sc_finality_grandpa::run_grandpa_voter(grandpa_config)?,
|
sc_finality_grandpa::run_grandpa_voter(grandpa_config)?,
|
||||||
);
|
);
|
||||||
@@ -299,5 +300,5 @@ pub fn new_light(config: Configuration) -> Result<impl AbstractService, ServiceE
|
|||||||
let provider = client as Arc<dyn StorageAndProofProvider<_, _>>;
|
let provider = client as Arc<dyn StorageAndProofProvider<_, _>>;
|
||||||
Ok(Arc::new(GrandpaFinalityProofProvider::new(backend, provider)) as _)
|
Ok(Arc::new(GrandpaFinalityProofProvider::new(backend, provider)) as _)
|
||||||
})?
|
})?
|
||||||
.build()
|
.build_light()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user