Skip to content
Snippets Groups Projects
Select Git revision
  • json-output
  • master default protected
  • elois-ci-refactor
  • gtest
  • hugo/gtest
  • nostr
  • 48-error-base-58-requirement-is-violated
  • no-rename
  • hugo/tx-comments
  • poka/dev
  • hugo/dev
  • tuxmain/mail
  • 0.4.3-gtest-RC1
  • 0.4.3-RC2
  • 0.4.3-RC1
  • 0.4.2
  • 0.4.1
  • 0.4.0
  • 0.3.0
  • 0.2.17
  • 0.2.16
  • 0.2.15
  • 0.2.14
  • 0.2.13
  • 0.2.12
  • 0.2.10
  • 0.2.9
  • 0.2.8
  • 0.2.7
  • 0.2.6
  • 0.2.5
  • 0.2.4
32 results

.gitignore

Blame
    • Nicolas80's avatar
      badf52ce
      Adding db persistence for all SecretFormat of vault keys as well as supporting derivations · badf52ce
      Nicolas80 authored
      * Added "/.idea" exclusion in .gitignore (for when using JetBrains IDEs)
      * Added dialoguer dependency for easier user input handling (see in inputs.rs)
      * Added sea-orm dependency to allow having DB entity mappings and use a local sqlite file database
      * Added rstest test dependency for parameterized tests support
      * Added derivation tests for each SecretFormat (including cesium v1 key derivation, using sp_core::ed25519::Pair)
      * Made a lot of changes to add vault_account and vault_derivation db tables to persist vault keys & derivations
      * Added support for KeyPair::Ed25519 linking to sp_core::ed25519::Pair which can be created from secret seed retrieved from nacl::sign::Keypair (which is created from cesium id + secret)
      ** This was necessary to allow deriving keys from "cesium v1" keys (to be reviewed - it might be a bad idea to permit that from a security point of view)
      * Only kept original (substrate) keyfiles support for migration (use "vault list-files" and "vault migrate")
      * Added possibility to give either "-a" Address or "-v" Vault Name as general option
      * Added extra commands in Vault
      ** list-files: (deprecated)List available key files (needs to be migrated with command "vault migrate" in order to use them)
      ** migrate: (deprecated)Migrate old key files into db (will have to provide password for each key)
      ** 'list' now has sub-commands 'all' or 'root' to show all keys or only root keys (without derivation path)
      ** use: "Use specific vault key (changes the config address)", which will have the same behaviour as `gcli <-a <Address>|-v <VaultName>> config save` (left a FIXME in there to review)
      ** derivation: Add a derivation to an existing (root) vault key
      ** rename: Give a meaningful vault name to a vault key or derivation
      ** remove: Remove a vault key (and potential derivations if it's a root key)
      * Had to bubble up "await" and "async" in a lot of places
      * ...
      badf52ce
      History
      Adding db persistence for all SecretFormat of vault keys as well as supporting derivations
      Nicolas80 authored
      * Added "/.idea" exclusion in .gitignore (for when using JetBrains IDEs)
      * Added dialoguer dependency for easier user input handling (see in inputs.rs)
      * Added sea-orm dependency to allow having DB entity mappings and use a local sqlite file database
      * Added rstest test dependency for parameterized tests support
      * Added derivation tests for each SecretFormat (including cesium v1 key derivation, using sp_core::ed25519::Pair)
      * Made a lot of changes to add vault_account and vault_derivation db tables to persist vault keys & derivations
      * Added support for KeyPair::Ed25519 linking to sp_core::ed25519::Pair which can be created from secret seed retrieved from nacl::sign::Keypair (which is created from cesium id + secret)
      ** This was necessary to allow deriving keys from "cesium v1" keys (to be reviewed - it might be a bad idea to permit that from a security point of view)
      * Only kept original (substrate) keyfiles support for migration (use "vault list-files" and "vault migrate")
      * Added possibility to give either "-a" Address or "-v" Vault Name as general option
      * Added extra commands in Vault
      ** list-files: (deprecated)List available key files (needs to be migrated with command "vault migrate" in order to use them)
      ** migrate: (deprecated)Migrate old key files into db (will have to provide password for each key)
      ** 'list' now has sub-commands 'all' or 'root' to show all keys or only root keys (without derivation path)
      ** use: "Use specific vault key (changes the config address)", which will have the same behaviour as `gcli <-a <Address>|-v <VaultName>> config save` (left a FIXME in there to review)
      ** derivation: Add a derivation to an existing (root) vault key
      ** rename: Give a meaningful vault name to a vault key or derivation
      ** remove: Remove a vault key (and potential derivations if it's a root key)
      * Had to bubble up "await" and "async" in a lot of places
      * ...
    pallet_quota.rs NaN GiB
    
    //! Autogenerated weights for `pallet_quota`
    //!
    //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
    //! DATE: 2023-11-27, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
    //! WORST CASE MAP SIZE: `1000000`
    //! HOSTNAME: `bgallois-ms7d43`, CPU: `12th Gen Intel(R) Core(TM) i3-12100F`
    //! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024
    
    // Executed Command:
    // ./target/release/duniter
    // benchmark
    // pallet
    // --chain
    // dev
    // --wasm-execution=compiled
    // --pallet
    // pallet-quota
    // --extrinsic
    // *
    // --steps
    // 50
    // --repeat
    // 20
    // --output=runtime/common/src/weights/
    
    #![cfg_attr(rustfmt, rustfmt_skip)]
    #![allow(unused_parens)]
    #![allow(unused_imports)]
    #![allow(missing_docs)]
    
    use frame_support::{traits::Get, weights::Weight};
    use core::marker::PhantomData;
    
    /// Weight functions for `pallet_quota`.
    pub struct WeightInfo<T>(PhantomData<T>);
    impl<T: frame_system::Config> pallet_quota::WeightInfo for WeightInfo<T> {
    	/// Storage: Quota RefundQueue (r:1 w:1)
    	/// Proof: Quota RefundQueue (max_values: Some(1), max_size: Some(11266), added: 11761, mode: MaxEncodedLen)
    	fn queue_refund() -> Weight {
    		// Proof Size summary in bytes:
    		//  Measured:  `11288`
    		//  Estimated: `12751`
    		// Minimum execution time: 7_606_000 picoseconds.
    		Weight::from_parts(7_918_000, 0)
    			.saturating_add(Weight::from_parts(0, 12751))
    			.saturating_add(T::DbWeight::get().reads(1))
    			.saturating_add(T::DbWeight::get().writes(1))
    	}
    	/// Storage: Quota IdtyQuota (r:1 w:1)
    	/// Proof: Quota IdtyQuota (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen)
    	fn spend_quota() -> Weight {
    		// Proof Size summary in bytes:
    		//  Measured:  `139`
    		//  Estimated: `3489`
    		// Minimum execution time: 3_580_000 picoseconds.
    		Weight::from_parts(3_726_000, 0)
    			.saturating_add(Weight::from_parts(0, 3489))
    			.saturating_add(T::DbWeight::get().reads(1))
    			.saturating_add(T::DbWeight::get().writes(1))
    	}
    	/// Storage: Quota IdtyQuota (r:1 w:1)
    	/// Proof: Quota IdtyQuota (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen)
    	/// Storage: System Account (r:1 w:0)
    	/// Proof: System Account (max_values: None, max_size: Some(126), added: 2601, mode: MaxEncodedLen)
    	fn try_refund() -> Weight {
    		// Proof Size summary in bytes:
    		//  Measured:  `139`
    		//  Estimated: `3591`
    		// Minimum execution time: 11_309_000 picoseconds.
    		Weight::from_parts(11_843_000, 0)
    			.saturating_add(Weight::from_parts(0, 3591))
    			.saturating_add(T::DbWeight::get().reads(2))
    			.saturating_add(T::DbWeight::get().writes(1))
    	}
    	/// Storage: Quota IdtyQuota (r:1 w:1)
    	/// Proof: Quota IdtyQuota (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen)
    	/// Storage: System Account (r:1 w:0)
    	/// Proof: System Account (max_values: None, max_size: Some(126), added: 2601, mode: MaxEncodedLen)
    	fn do_refund() -> Weight {
    		// Proof Size summary in bytes:
    		//  Measured:  `139`
    		//  Estimated: `3591`
    		// Minimum execution time: 11_283_000 picoseconds.
    		Weight::from_parts(11_694_000, 0)
    			.saturating_add(Weight::from_parts(0, 3591))
    			.saturating_add(T::DbWeight::get().reads(2))
    			.saturating_add(T::DbWeight::get().writes(1))
    	}
    	/// Storage: Quota RefundQueue (r:1 w:1)
    	/// Proof: Quota RefundQueue (max_values: Some(1), max_size: Some(11266), added: 11761, mode: MaxEncodedLen)
    	fn on_process_refund_queue() -> Weight {
    		// Proof Size summary in bytes:
    		//  Measured:  `43`
    		//  Estimated: `12751`
    		// Minimum execution time: 1_456_000 picoseconds.
    		Weight::from_parts(1_569_000, 0)
    			.saturating_add(Weight::from_parts(0, 12751))
    			.saturating_add(T::DbWeight::get().reads(1))
    			.saturating_add(T::DbWeight::get().writes(1))
    	}
    	/// Storage: Quota RefundQueue (r:1 w:1)
    	/// Proof: Quota RefundQueue (max_values: Some(1), max_size: Some(11266), added: 11761, mode: Measured)
    	/// Storage: Quota IdtyQuota (r:1 w:1)
    	/// Proof: Quota IdtyQuota (max_values: None, max_size: Some(24), added: 2499, mode: Measured)
    	/// Storage: System Account (r:1 w:0)
    	/// Proof: System Account (max_values: None, max_size: Some(126), added: 2601, mode: Measured)
    	/// The range of component `i` is `[1, 256]`.
    	fn on_process_refund_queue_elements(i: u32, ) -> Weight {
    		// Proof Size summary in bytes:
    		//  Measured:  `164 + i * (44 ±0)`
    		//  Estimated: `3628 + i * (44 ±0)`
    		// Minimum execution time: 13_671_000 picoseconds.
    		Weight::from_parts(19_531_750, 0)
    			.saturating_add(Weight::from_parts(0, 3628))
    			// Standard Error: 1_057
    			.saturating_add(Weight::from_parts(476_555, 0).saturating_mul(i.into()))
    			.saturating_add(T::DbWeight::get().reads(3))
    			.saturating_add(T::DbWeight::get().writes(2))
    			.saturating_add(Weight::from_parts(0, 44).saturating_mul(i.into()))
    	}
    }