From 9aa32ef63d935820bf86ab7f42b96ab92fe1f406 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 13 Aug 2020 17:04:30 +0200 Subject: [PATCH 1/3] Fix port number. (#151) --- client/src/lib.rs | 18 ++++++++++-------- src/lib.rs | 2 +- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/client/src/lib.rs b/client/src/lib.rs index a335b11c48..2dabb6aee2 100644 --- a/client/src/lib.rs +++ b/client/src/lib.rs @@ -218,8 +218,8 @@ pub struct SubxtClientConfig { pub chain_spec: C, /// Role of the node. pub role: Role, - /// Enable telemetry. - pub enable_telemetry: bool, + /// Enable telemetry on the given port. + pub telemetry: Option, } impl SubxtClientConfig { @@ -238,10 +238,12 @@ impl SubxtClientConfig { wasm_external_transport: None, use_yamux_flow_control: true, }; - let telemetry_endpoints = if self.enable_telemetry { - let endpoints = - TelemetryEndpoints::new(vec![("/ip4/127.0.0.1/tcp/99000/ws".into(), 0)]) - .expect("valid config; qed"); + let telemetry_endpoints = if let Some(port) = self.telemetry { + let endpoints = TelemetryEndpoints::new(vec![( + format!("/ip4/127.0.0.1/tcp/{}/ws", port), + 0, + )]) + .expect("valid config; qed"); Some(endpoints) } else { None @@ -356,7 +358,7 @@ mod tests { keystore: KeystoreConfig::InMemory, chain_spec, role: Role::Light, - enable_telemetry: false, + telemetry: None, }; let client = ClientBuilder::::new() .set_client( @@ -389,7 +391,7 @@ mod tests { keystore: KeystoreConfig::InMemory, chain_spec: test_node::chain_spec::development_config().unwrap(), role: Role::Authority(AccountKeyring::Alice), - enable_telemetry: false, + telemetry: None, }; let client = ClientBuilder::::new() .set_client( diff --git a/src/lib.rs b/src/lib.rs index b790083cd8..b98755625f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -588,7 +588,7 @@ mod tests { }, chain_spec: test_node::chain_spec::development_config().unwrap(), role: Role::Authority(key), - enable_telemetry: false, + telemetry: None, }; let client = ClientBuilder::new() .set_client( From 59b9c117b76f68ec480729f03ef644954b8b555c Mon Sep 17 00:00:00 2001 From: Yuanchao Sun Date: Fri, 14 Aug 2020 04:06:30 +0800 Subject: [PATCH 2/3] Add a method to fetch an unhashed key, close #100 (#152) * Add a method to fetch an unhashed key, close #100 * Return decoded value * Refactoring --- src/lib.rs | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index b98755625f..e1a75a4011 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -258,6 +258,19 @@ impl Client { &self.metadata } + /// Fetch the value under an unhashed storage key + pub async fn fetch_unhashed( + &self, + key: StorageKey, + hash: Option, + ) -> Result, Error> { + if let Some(data) = self.rpc.storage(&key, hash).await? { + Ok(Some(Decode::decode(&mut &data.0[..])?)) + } else { + Ok(None) + } + } + /// Fetch a StorageKey with an optional block hash. pub async fn fetch>( &self, @@ -265,11 +278,7 @@ impl Client { hash: Option, ) -> Result, Error> { let key = store.key(&self.metadata)?; - if let Some(data) = self.rpc.storage(&key, hash).await? { - Ok(Some(Decode::decode(&mut &data.0[..])?)) - } else { - Ok(None) - } + self.fetch_unhashed::(key, hash).await } /// Fetch a StorageKey that has a default value with an optional block hash. From eac2ce3b2a9d8a3a0e248229e77b00846e50647b Mon Sep 17 00:00:00 2001 From: David Craven Date: Mon, 17 Aug 2020 10:14:26 +0200 Subject: [PATCH 3/3] Different assert. (#153) --- src/lib.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index e1a75a4011..260fff9e2b 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -241,7 +241,7 @@ impl> KeyIter { } } } - debug_assert_eq!(self.buffer.len(), self.count as usize); + debug_assert_eq!(self.buffer.len(), keys.len()); } } } @@ -604,7 +604,7 @@ mod tests { SubxtClient::from_config(config, test_node::service::new_full) .expect("Error creating subxt client"), ) - .set_page_size(2) + .set_page_size(3) .build() .await .expect("Error creating client");