From 23b4fc5e2f92edc8ae04193cd86b44462e1c0404 Mon Sep 17 00:00:00 2001 From: ascjones Date: Wed, 30 Mar 2022 11:41:30 +0100 Subject: [PATCH 1/5] Update to WIP subxt and povstats branches --- Cargo.lock | 14 +++++++------- Cargo.toml | 4 ++-- macro/Cargo.toml | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 90e26a56..4252c18d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1543,7 +1543,7 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "povstats" version = "0.1.0" -source = "git+https://github.com/athei/povstats#0858473494b09c38d88d48ed9258824356507a6e" +source = "git+https://github.com/ascjones/povstats?branch=aj/runtime-metadata-constants#50df1158d03ec05676cfb1da54bba3d53757932b" dependencies = [ "clap", "futures", @@ -2535,8 +2535,8 @@ checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] name = "subxt" -version = "0.18.1" -source = "git+https://github.com/paritytech/subxt?branch=at-block-stats#16d4306dfa7725d11c1c7f0539b4b3e3f0d99443" +version = "0.19.0" +source = "git+https://github.com/paritytech/subxt?branch=aj/runtime-constants#3cc2c420093da85dcfa56e4bea0098b0deb2816a" dependencies = [ "async-trait", "bitvec", @@ -2559,8 +2559,8 @@ dependencies = [ [[package]] name = "subxt-codegen" -version = "0.18.1" -source = "git+https://github.com/paritytech/subxt?branch=at-block-stats#16d4306dfa7725d11c1c7f0539b4b3e3f0d99443" +version = "0.19.0" +source = "git+https://github.com/paritytech/subxt?branch=aj/runtime-constants#3cc2c420093da85dcfa56e4bea0098b0deb2816a" dependencies = [ "async-trait", "darling", @@ -2577,8 +2577,8 @@ dependencies = [ [[package]] name = "subxt-macro" -version = "0.18.1" -source = "git+https://github.com/paritytech/subxt?branch=at-block-stats#16d4306dfa7725d11c1c7f0539b4b3e3f0d99443" +version = "0.19.0" +source = "git+https://github.com/paritytech/subxt?branch=aj/runtime-constants#3cc2c420093da85dcfa56e4bea0098b0deb2816a" dependencies = [ "async-trait", "darling", diff --git a/Cargo.toml b/Cargo.toml index 12bbf62c..e373ccae 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,10 +14,10 @@ codec = { package = "parity-scale-codec", version = "3", default-features = fals contract-metadata = { package = "contract-metadata", git = "https://github.com/paritytech/cargo-contract", branch = "master" } serde_json = "1.0.79" clap = { version = "3.1.6", features = ["derive"] } -subxt = { git = "https://github.com/paritytech/subxt", package = "subxt", branch = "at-block-stats" } +subxt = { git = "https://github.com/paritytech/subxt", package = "subxt", branch = "aj/runtime-constants" } futures = "0.3.21" parity-wasm = "0.42.2" -povstats = { git = "https://github.com/athei/povstats" } +povstats = { git = "https://github.com/ascjones/povstats", branch = "aj/runtime-metadata-constants" } # substrate sp-core = "6.0.0" diff --git a/macro/Cargo.toml b/macro/Cargo.toml index c3c4c123..a5d4108e 100644 --- a/macro/Cargo.toml +++ b/macro/Cargo.toml @@ -8,7 +8,7 @@ proc-macro = true [dependencies] heck = "0.4.0" -subxt-codegen = { git = "https://github.com/paritytech/subxt", package = "subxt-codegen", branch = "at-block-stats" } +subxt-codegen = { git = "https://github.com/paritytech/subxt", package = "subxt-codegen", branch = "aj/runtime-constants" } ink_metadata = "3.0.0-rc8" contract-metadata = "0.5.1" proc-macro2 = "1.0.36" From 6887f8e676248af3408078a40af544595313f270 Mon Sep 17 00:00:00 2001 From: ascjones Date: Thu, 31 Mar 2022 11:53:49 +0100 Subject: [PATCH 2/5] Update to subxt master --- Cargo.lock | 9 ++++----- Cargo.toml | 2 +- macro/Cargo.toml | 2 +- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6ecd9ae7..1fbb7fa1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1639,11 +1639,10 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "povstats" version = "0.1.0" -source = "git+https://github.com/ascjones/povstats?branch=aj/runtime-metadata-constants#50df1158d03ec05676cfb1da54bba3d53757932b" +source = "git+https://github.com/ascjones/povstats?branch=aj/runtime-metadata-constants#8ee8e55b6d64a78a53922848db9940bff50fae70" dependencies = [ "clap", "futures", - "once_cell", "parity-scale-codec", "subxt", "tokio", @@ -2646,7 +2645,7 @@ checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] name = "subxt" version = "0.19.0" -source = "git+https://github.com/paritytech/subxt?branch=aj/runtime-constants#3cc2c420093da85dcfa56e4bea0098b0deb2816a" +source = "git+https://github.com/paritytech/subxt?branch=master#cc0b1ec84acae528a5172ce87398bfef48e9cf2d" dependencies = [ "async-trait", "bitvec", @@ -2670,7 +2669,7 @@ dependencies = [ [[package]] name = "subxt-codegen" version = "0.19.0" -source = "git+https://github.com/paritytech/subxt?branch=aj/runtime-constants#3cc2c420093da85dcfa56e4bea0098b0deb2816a" +source = "git+https://github.com/paritytech/subxt?branch=master#cc0b1ec84acae528a5172ce87398bfef48e9cf2d" dependencies = [ "async-trait", "darling", @@ -2688,7 +2687,7 @@ dependencies = [ [[package]] name = "subxt-macro" version = "0.19.0" -source = "git+https://github.com/paritytech/subxt?branch=aj/runtime-constants#3cc2c420093da85dcfa56e4bea0098b0deb2816a" +source = "git+https://github.com/paritytech/subxt?branch=master#cc0b1ec84acae528a5172ce87398bfef48e9cf2d" dependencies = [ "async-trait", "darling", diff --git a/Cargo.toml b/Cargo.toml index 172f7ce8..76bc14ed 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,7 +15,7 @@ contract-metadata = { package = "contract-metadata", git = "https://github.com/p serde = { version = "1.0.136", default-features = false, features = ["derive"] } serde_json = "1.0.79" clap = { version = "3.1.6", features = ["derive"] } -subxt = { git = "https://github.com/paritytech/subxt", package = "subxt", branch = "aj/runtime-constants" } +subxt = { git = "https://github.com/paritytech/subxt", package = "subxt", branch = "master" } futures = "0.3.21" parity-wasm = "0.42.2" povstats = { git = "https://github.com/ascjones/povstats", branch = "aj/runtime-metadata-constants" } diff --git a/macro/Cargo.toml b/macro/Cargo.toml index a5d4108e..32c68524 100644 --- a/macro/Cargo.toml +++ b/macro/Cargo.toml @@ -8,7 +8,7 @@ proc-macro = true [dependencies] heck = "0.4.0" -subxt-codegen = { git = "https://github.com/paritytech/subxt", package = "subxt-codegen", branch = "aj/runtime-constants" } +subxt-codegen = { git = "https://github.com/paritytech/subxt", package = "subxt-codegen", branch = "master" } ink_metadata = "3.0.0-rc8" contract-metadata = "0.5.1" proc-macro2 = "1.0.36" From 88a97160b92c7e32735a91caf0bee5195aeba966 Mon Sep 17 00:00:00 2001 From: ascjones Date: Thu, 31 Mar 2022 12:03:08 +0100 Subject: [PATCH 3/5] Fix errors after updating to subxt master --- src/canvas/mod.rs | 4 ++-- src/canvas/runner.rs | 7 +++---- src/canvas/xts.rs | 13 +++++++------ 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/canvas/mod.rs b/src/canvas/mod.rs index a10d138d..528d3dba 100644 --- a/src/canvas/mod.rs +++ b/src/canvas/mod.rs @@ -6,14 +6,14 @@ use futures::{future, TryStreamExt}; use povstats::substrate as api; use sp_core::sr25519; use sp_keyring::AccountKeyring; -use subxt::{DefaultConfig, DefaultExtra, PairSigner}; +use subxt::{DefaultConfig, PairSigner}; use xts::ContractsApi; pub type Balance = u128; pub type Gas = u64; pub type AccountId = ::AccountId; pub type Hash = ::Hash; -pub type Signer = PairSigner, sr25519::Pair>; +pub type Signer = PairSigner; /// Trait implemented by [`smart_bench_macro::contract`] for all contract constructors. pub trait InkConstructor: codec::Encode { diff --git a/src/canvas/runner.rs b/src/canvas/runner.rs index 56fd2eeb..39c73ed0 100644 --- a/src/canvas/runner.rs +++ b/src/canvas/runner.rs @@ -3,7 +3,6 @@ use codec::Encode; use color_eyre::eyre; use futures::{future, StreamExt, TryStream, TryStreamExt}; use sp_runtime::traits::{BlakeTwo256, Hash as _}; -use subxt::Signer as _; pub const DEFAULT_STORAGE_DEPOSIT_LIMIT: Option = None; @@ -137,8 +136,8 @@ impl BenchRunner { while let Some(Ok(info)) = failed_or_instantiated_events.next().await { match info.event { (Some(failed), None) => { - let (pallet_idx, error_idx) = - subxt::HasModuleError::module_error_indices(&failed.dispatch_error).ok_or( + let error_data = + subxt::HasModuleError::module_error_data(&failed.dispatch_error).ok_or( eyre::eyre!("Failed to find error details for {:?},", failed), )?; let details = self @@ -146,7 +145,7 @@ impl BenchRunner { .api .client .metadata() - .error(pallet_idx, error_idx)?; + .error(error_data.pallet_index, error_data.error_index())?; return Err(eyre::eyre!( "Instantiate Extrinsic Failed: {:?}", details.description() diff --git a/src/canvas/xts.rs b/src/canvas/xts.rs index 6fb6b34e..5444f671 100644 --- a/src/canvas/xts.rs +++ b/src/canvas/xts.rs @@ -6,19 +6,20 @@ use jsonrpsee::{ }; use serde::Serialize; use sp_core::{Bytes, H256}; -use subxt::{rpc::NumberOrHex, DefaultConfig, DefaultExtra, Signer as _}; +use subxt::{rpc::NumberOrHex, DefaultConfig, PolkadotExtrinsicParams}; const DRY_RUN_GAS_LIMIT: u64 = 500_000_000_000; +type RuntimeApi = api::RuntimeApi>; + pub struct ContractsApi { - pub api: api::RuntimeApi>, + pub api: RuntimeApi, ws_client: WsClient, } impl ContractsApi { pub async fn new(client: subxt::Client, url: &str) -> color_eyre::Result { - let api = - client.to_runtime_api::>>(); + let api = client.to_runtime_api::(); let ws_client = WsClientBuilder::default().build(&url).await?; Ok(Self { api, ws_client }) } @@ -68,7 +69,7 @@ impl ContractsApi { .tx() .contracts() .instantiate_with_code(value, gas_limit, storage_deposit_limit, code, data, salt) - .sign_and_submit(signer) + .sign_and_submit_default(signer) .await?; Ok(tx_hash) @@ -118,7 +119,7 @@ impl ContractsApi { storage_deposit_limit, data, ) - .sign_and_submit(signer) + .sign_and_submit_default(signer) .await?; Ok(tx_hash) From ba3e7b4235d09cc566613594b9a704f32d787b08 Mon Sep 17 00:00:00 2001 From: ascjones Date: Mon, 4 Apr 2022 12:24:08 +0100 Subject: [PATCH 4/5] Use povstats origin master --- Cargo.lock | 2 +- Cargo.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1fbb7fa1..a0fab048 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1639,7 +1639,7 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "povstats" version = "0.1.0" -source = "git+https://github.com/ascjones/povstats?branch=aj/runtime-metadata-constants#8ee8e55b6d64a78a53922848db9940bff50fae70" +source = "git+https://github.com/ascjones/povstats?branch=aj/runtime-metadata-constants#1de41797315ba01ef84a3c92e80e2a93a32f779d" dependencies = [ "clap", "futures", diff --git a/Cargo.toml b/Cargo.toml index 76bc14ed..40f9cb57 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,8 +17,8 @@ serde_json = "1.0.79" clap = { version = "3.1.6", features = ["derive"] } subxt = { git = "https://github.com/paritytech/subxt", package = "subxt", branch = "master" } futures = "0.3.21" -parity-wasm = "0.42.2" -povstats = { git = "https://github.com/ascjones/povstats", branch = "aj/runtime-metadata-constants" } +parity-wasm = "0.42.2"S +povstats = { git = "https://github.com/athei/povstats", branch = "master" } jsonrpsee = { version = "0.9.0", features = ["ws-client"] } pallet-contracts-primitives = "6.0.0" From eef61416247fa9ea53b034e09ad94203b8bff726 Mon Sep 17 00:00:00 2001 From: ascjones Date: Mon, 4 Apr 2022 12:24:42 +0100 Subject: [PATCH 5/5] Fix manifest --- Cargo.lock | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a0fab048..a2432867 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1639,7 +1639,7 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "povstats" version = "0.1.0" -source = "git+https://github.com/ascjones/povstats?branch=aj/runtime-metadata-constants#1de41797315ba01ef84a3c92e80e2a93a32f779d" +source = "git+https://github.com/athei/povstats?branch=master#317a788fdf8a52fb1a2f5286919e3f550f5b8c24" dependencies = [ "clap", "futures", diff --git a/Cargo.toml b/Cargo.toml index 40f9cb57..41c1d2aa 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ serde_json = "1.0.79" clap = { version = "3.1.6", features = ["derive"] } subxt = { git = "https://github.com/paritytech/subxt", package = "subxt", branch = "master" } futures = "0.3.21" -parity-wasm = "0.42.2"S +parity-wasm = "0.42.2" povstats = { git = "https://github.com/athei/povstats", branch = "master" } jsonrpsee = { version = "0.9.0", features = ["ws-client"] } pallet-contracts-primitives = "6.0.0"