Skip to content
Snippets Groups Projects
  1. Feb 15, 2025
  2. Nov 07, 2024
  3. Nov 05, 2024
    • Nazar Mokrynskyi's avatar
      Remove `sp_runtime::RuntimeString` and replace with `Cow<'static, str>` or... · c5444f38
      Nazar Mokrynskyi authored
      Remove `sp_runtime::RuntimeString` and replace with `Cow<'static, str>` or `String` depending on use case (#5693)
      
      # Description
      
      As described in https://github.com/paritytech/polkadot-sdk/issues/4001
      `RuntimeVersion` was not encoded consistently using serde. Turned out it
      was a remnant of old times and no longer actually needed. As such I
      removed it completely in this PR and replaced with `Cow<'static, str>`
      for spec/impl names and `String` for error cases.
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/4001.
      
      ## Integration
      
      For downstream projects the upgrade will primarily consist of following
      two changes:
      ```diff
      #[sp_version::runtime_version]
      pub const VERSION: RuntimeVersion = RuntimeVersion {
      -	spec_name: create_runtime_str!("statemine"),
      -	impl_name: create_runtime_str!("statemine"),
      +	spec_name: alloc::borrow::Cow::Borrowed("statemine"),
      +	impl_name: alloc::borrow::Cow::Borrowed("statemine"),
      ```
      ```diff
      		fn dispatch_benchmark(
      			config: frame_benchmarking::BenchmarkConfig
      -		) -> Result<Vec<frame_benchmarking::BenchmarkBatch>, sp_runtime::RuntimeString> {
      +		) -> Result<Vec<frame_benchmarking::BenchmarkBatch>, alloc::string::String> {
      ```
      
      SCALE encoding/decoding remains the same as before, but serde encoding
      in runtime has changed from bytes to string (it was like this in `std`
      environment already), which most projects shouldn't have issues with. I
      consider the impact of serde encoding here low due to the type only
      being used in runtime version struct and mostly limited to runtime
      internals, where serde encoding/decoding of this data structure is quite
      unlikely (though we did hit exactly this edge-case ourselves
      :sweat_smile:
      
      ).
      
      ## Review Notes
      
      Most of the changes are trivial and mechanical, the only non-trivial
      change is in
      `substrate/primitives/version/proc-macro/src/decl_runtime_version.rs`
      where macro call expectation in `sp_version::runtime_version`
      implementation was replaced with function call expectation.
      
      # Checklist
      
      * [x] My PR includes a detailed description as outlined in the
      "Description" and its two subsections above.
      * [ ] My PR follows the [labeling requirements](
      
      https://github.com/paritytech/polkadot-sdk/blob/master/docs/contributor/CONTRIBUTING.md#Process
      ) of this project (at minimum one label for `T` required)
      * External contributors: ask maintainers to put the right label on your
      PR.
      * [ ] I have made corresponding changes to the documentation (if
      applicable)
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarGuillaume Thiolliere <guillaume.thiolliere@parity.io>
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
  4. Nov 04, 2024
    • Iulian Barbu's avatar
      templates: make node compilation optional (#5954) · 2a849174
      Iulian Barbu authored
      # Description
      
      Closes #5940  
      
      ## Integration
      
      Node devs that rely on templates' nodes binaries for minimal or
      parachain would need to follow the updated templates' README.mds again
      to find how to build the nodes' binaries.
      
      ## Review Notes
      
      Conditional compilation of virtual workspaces would compile the
      `members` list as if we passed `--workspace` flag to `cargo build` ,
      except when adding a `default-members` list which will be used for any
      cargo command executed in the virtual workspace root. To build the full
      members list needs passing `--workspace` flag.
      
      Other options investigated:
      - feature guard the `node` crate by defining a feature in the `node`
      crate, but it feels too complex since all code needs to be feature
      guarded. I haven't tried it but technically speaking it might work. I
      think though it looks awkward and my opinion is that the alternative is
      better.
      - defining features in the virtual workspace's Cargo.toml doesn't work
      (thought that I might create a feature that will have a dependency on
      the `node` crate and then not passing the feature to cargo build results
      in ignoring the `node` crate)
      - skipping compilation by using an environment variable, read in the
      build script, that will exit compilation abruptly if not set, but I
      couldn't make it work.
      - exclude the crate from the members list and build it specifically by
      passing `--package minimal-template-node` flag to the `cargo build`
      command. This has the disadvantage of not allowing IDEs based on rust
      analyzer to index/compile the node crate.
      
      My conclusion is that any option would require two commands to build the
      template, one with the node and one without, and both must be included
      in the README or templates usage documentation. If it comes which ones
      to pick I am in favor of the `default-members` option, which requires
      minimal intervention and expresses how cargo commands are executed on
      top of the workspace members, and what's left out from regular usage.
      
      ### Testing
      
      Testing was conducted as described bellow:
      
      - [x] zombienet with `minimal-template-node` , `parachain-template-node`
      and `polkadot-omni-node`. Things work as expected.
      - [x] no chopsticks testing was conducted - feels a bit out of scope for
      OmniNode related docs and overall testing when promoting it over the
      templates' nodes.
      - [x] testing the changes for the sync templates workflow (ignore the
      added comment from the Cargo.tomls, it was removed here on this branch:
      [99bff3e2](https://github.com/paritytech/polkadot-sdk/pull/5954/commits/99bff3e2
      
      )):
      [minimal](https://github.com/paritytech-stg/polkadot-sdk-minimal-template/pull/22/files#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542R9),
      [parachain](https://github.com/paritytech-stg/polkadot-sdk-parachain-template/pull/19/files#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542R9),
      [solochain](https://github.com/paritytech-stg/polkadot-sdk-solochain-template/pull/17/files#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542R9).
      The links correspond to PRs opened by a bot after manually starting the
      sync-templates workflow on `paritytech-stg` org to test the end result
      of the `Cargo.toml` changes.
      
      ---------
      
      Signed-off-by: default avatarIulian Barbu <iulian.barbu@parity.io>
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
  5. Sep 04, 2024
  6. Jun 25, 2024
    • Sebastian Kunert's avatar
      chain-spec-builder: Add support for `codeSubstitutes` (#4685) · 3c213726
      Sebastian Kunert authored
      While working on https://github.com/paritytech/polkadot-sdk/pull/4600 I
      found that it would be nice if `chain-spec-builder` supported
      `codeSubstitutes`. After this PR is merged you can do:
      
      ```
      chain-spec-builder add-code-substitute chain_spec.json my_runtime.compact.compressed.wasm 1234
      ```
      
      In addition, the `chain-spec-builder` was silently removing
      `relay_chain` and `para_id` fields when used on parachain chain-specs.
      This is now fixed by providing a custom chain-spec extension that has
      these fields marked as optional.
  7. Jun 13, 2024
  8. May 31, 2024
  9. May 27, 2024
  10. Apr 04, 2024
    • Michal Kucharczyk's avatar
      `GenesisConfig` presets for runtime (#2714) · f910a15c
      Michal Kucharczyk authored
      The runtime now can provide a number of predefined presets of
      `RuntimeGenesisConfig` struct. This presets are intended to be used in
      different deployments, e.g.: `local`, `staging`, etc, and should be
      included into the corresponding chain-specs.
      
      Having `GenesisConfig` presets in runtime allows to fully decouple node
      from runtime types (the problem is described in #1984).
      
      **Summary of changes:**
      - The `GenesisBuilder` API was adjusted to enable this functionality
      (and provide better naming - #150):
         ```rust
          fn preset_names() -> Vec<PresetId>;
      fn get_preset(id: Option<PresetId>) -> Option<serde_json::Value>;
      //`None` means default
          fn build_state(value: serde_json::Value);
          pub struct PresetId(Vec<u8>);
         ```
      
      - **Breaking change**: Old `create_default_config` method was removed,
      `build_config` was renamed to `build_state`. As a consequence a node
      won't be able to interact with genesis config for older runtimes. The
      cleanup was made for sake of API simplicity. Also IMO maintaining
      compatibility with old API is not so crucial.
      - Reference implementation was provided for `substrate-test-runtime` and
      `rococo` runtimes. For rococo new
      [`genesis_configs_presets`](https://github.com/paritytech/polkadot-sdk/blob/3b41d66b/polkadot/runtime/rococo/src/genesis_config_presets.rs#L530)
      module was added and is used in `GenesisBuilder`
      [_presets-related_](https://github.com/paritytech/polkadot-sdk/blob/3b41d66b/polkadot/runtime/rococo/src/lib.rs#L2462-L2485)
      methods.
      
      - The `chain-spec-builder` util was also improved and allows to
      ([_doc_](https://github.com/paritytech/polkadot-sdk/blob/3b41d66b/substrate/bin/utils/chain-spec-builder/src/lib.rs#L19)):
         - list presets provided by given runtime (`list-presets`),
      - display preset or default config provided by the runtime
      (`display-preset`),
         - build chain-spec using named preset (`create ... named-preset`),
      
      
      - The `ChainSpecBuilder` is extended with
      [`with_genesis_config_preset_name`](https://github.com/paritytech/polkadot-sdk/blob/3b41d66b/substrate/client/chain-spec/src/chain_spec.rs#L447)
      method which allows to build chain-spec using named preset provided by
      the runtime. Sample usage on the node side
      [here](https://github.com/paritytech/polkadot-sdk/blob/2caffaae
      
      /polkadot/node/service/src/chain_spec.rs#L404).
      
      Implementation of #1984.
      fixes: #150
      part of: #25
      
      ---------
      
      Co-authored-by: default avatarSebastian Kunert <skunert49@gmail.com>
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
  11. Mar 26, 2024
    • Dcompoze's avatar
      Fix spelling mistakes across the whole repository (#3808) · 002d9260
      Dcompoze authored
      **Update:** Pushed additional changes based on the review comments.
      
      **This pull request fixes various spelling mistakes in this
      repository.**
      
      Most of the changes are contained in the first **3** commits:
      
      - `Fix spelling mistakes in comments and docs`
      
      - `Fix spelling mistakes in test names`
      
      - `Fix spelling mistakes in error messages, panic messages, logs and
      tracing`
      
      Other source code spelling mistakes are separated into individual
      commits for easier reviewing:
      
      - `Fix the spelling of 'authority'`
      
      - `Fix the spelling of 'REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY'`
      
      - `Fix the spelling of 'prev_enqueud_messages'`
      
      - `Fix the spelling of 'endpoint'`
      
      - `Fix the spelling of 'children'`
      
      - `Fix the spelling of 'PenpalSiblingSovereignAccount'`
      
      - `Fix the spelling of 'PenpalSudoAccount'`
      
      - `Fix the spelling of 'insufficient'`
      
      - `Fix the spelling of 'PalletXcmExtrinsicsBenchmark'`
      
      - `Fix the spelling of 'subtracted'`
      
      - `Fix the spelling of 'CandidatePendingAvailability'`
      
      - `Fix the spelling of 'exclusive'`
      
      - `Fix the spelling of 'until'`
      
      - `Fix the spelling of 'discriminator'`
      
      - `Fix the spelling of 'nonexistent'`
      
      - `Fix the spelling of 'subsystem'`
      
      - `Fix the spelling of 'indices'`
      
      - `Fix the spelling of 'committed'`
      
      - `Fix the spelling of 'topology'`
      
      - `Fix the spelling of 'response'`
      
      - `Fix the spelling of 'beneficiary'`
      
      - `Fix the spelling of 'formatted'`
      
      - `Fix the spelling of 'UNKNOWN_PROOF_REQUEST'`
      
      - `Fix the spelling of 'succeeded'`
      
      - `Fix the spelling of 'reopened'`
      
      - `Fix the spelling of 'proposer'`
      
      - `Fix the spelling of 'InstantiationNonce'`
      
      - `Fix the spelling of 'depositor'`
      
      - `Fix the spelling of 'expiration'`
      
      - `Fix the spelling of 'phantom'`
      
      - `Fix the spelling of 'AggregatedKeyValue'`
      
      - `Fix the spelling of 'randomness'`
      
      - `Fix the spelling of 'defendant'`
      
      - `Fix the spelling of 'AquaticMammal'`
      
      - `Fix the spelling of 'transactions'`
      
      - `Fix the spelling of 'PassingTracingSubscriber'`
      
      - `Fix the spelling of 'TxSignaturePayload'`
      
      - `Fix the spelling of 'versioning'`
      
      - `Fix the spelling of 'descendant'`
      
      - `Fix the spelling of 'overridden'`
      
      - `Fix the spelling of 'network'`
      
      Let me know if this structure is adequate.
      
      **Note:** The usage of the words `Merkle`, `Merkelize`, `Merklization`,
      `Merkelization`, `Merkleization`, is somewhat inconsistent but I left it
      as it is.
      
      ~~**Note:** In some places the term `Receival` is used to refer to
      message reception, IMO `Reception` is the correct word here, but I left
      it as it is.~~
      
      ~~**Note:** In some places the term `Overlayed` is used instead of the
      more acceptable version `Overlaid` but I also left it as it is.~~
      
      ~~**Note:** In some places the term `Applyable` is used instead of the
      correct version `Applicable` but I also left it as it is.~~
      
      **Note:** Some usage of British vs American english e.g. `judgement` vs
      `judgment`, `initialise` vs `initialize`, `optimise` vs `optimize` etc.
      are both present in different places, but I suppose that's
      understandable given the number of contributors.
      
      ~~**Note:** There is a spelling mistake in `.github/CODEOWNERS` but it
      triggers errors in CI when I make changes to it, so I left it as it
      is.~~
  12. Dec 16, 2023
  13. Nov 21, 2023
  14. Nov 08, 2023
  15. Nov 05, 2023
    • Michal Kucharczyk's avatar
      `chain-spec`: getting ready for native-runtime-free world (#1256) · 8ba7a6ab
      Michal Kucharczyk authored
      
      This PR prepares chains specs for _native-runtime-free_  world.
      
      This PR has following changes:
      - `substrate`:
        - adds support for:
      - JSON based `GenesisConfig` to `ChainSpec` allowing interaction with
      runtime `GenesisBuilder` API.
      - interacting with arbitrary runtime wasm blob to[
      `chain-spec-builder`](https://github.com/paritytech/substrate/blob/3ef576eaeb3f42610e85daecc464961cf1295570/bin/utils/chain-spec-builder/src/lib.rs#L46)
      command line util,
      - removes
      [`code`](https://github.com/paritytech/substrate/blob/3ef576eaeb3f42610e85daecc464961cf1295570/frame/system/src/lib.rs#L660)
      from `system_pallet`
        - adds `code` to the `ChainSpec`
      - deprecates
      [`ChainSpec::from_genesis`](https://github.com/paritytech/substrate/blob/3ef576eaeb3f42610e85daecc464961cf1295570/client/chain-spec/src/chain_spec.rs#L263),
      but also changes the signature of this method extending it with `code`
      argument.
      [`ChainSpec::builder()`](https://github.com/paritytech/substrate/blob/20bee680ed098be7239cf7a6b804cd4de267983e/client/chain-spec/src/chain_spec.rs#L507)
      should be used instead.
      - `polkadot`:
      - all references to `RuntimeGenesisConfig` in `node/service` are
      removed,
      - all
      `(kusama|polkadot|versi|rococo|wococo)_(staging|dev)_genesis_config`
      functions now return the JSON patch for default runtime `GenesisConfig`,
        - `ChainSpecBuilder` is used, `ChainSpec::from_genesis` is removed,
      
      - `cumulus`:
        - `ChainSpecBuilder` is used, `ChainSpec::from_genesis` is removed,
      - _JSON_ patch configuration used instead of `RuntimeGenesisConfig
      struct` in all chain specs.
        
      ---------
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarJavier Viola <javier@parity.io>
      Co-authored-by: default avatarDavide Galassi <davxy@datawok.net>
      Co-authored-by: default avatarFrancisco Aguirre <franciscoaguirreperez@gmail.com>
      Co-authored-by: default avatarKevin Krone <kevin@parity.io>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
  16. Oct 09, 2023
    • David Emett's avatar
      Mixnet integration (#1346) · a808a3a0
      David Emett authored
      
      See #1345, <https://github.com/paritytech/substrate/pull/14207>.
      
      This adds all the necessary mixnet components, and puts them together in
      the "kitchen-sink" node/runtime. The components added are:
      
      - A pallet (`frame/mixnet`). This is responsible for determining the
      current mixnet session and phase, and the mixnodes to use in each
      session. It provides a function that validators can call to register a
      mixnode for the next session. The logic of this pallet is very similar
      to that of the `im-online` pallet.
      - A service (`client/mixnet`). This implements the core mixnet logic,
      building on the `mixnet` crate. The service communicates with other
      nodes using notifications sent over the "mixnet" protocol.
      - An RPC interface. This currently only supports sending transactions
      over the mixnet.
      
      ---------
      
      Co-authored-by: default avatarDavid Emett <dave@sp4m.net>
      Co-authored-by: default avatarJavier Viola <javier@parity.io>
  17. Jul 23, 2023
  18. Jul 19, 2023
    • Kian Paimani's avatar
      add doc-only `substrate` entry point crate (#14581) · 817c97d6
      Kian Paimani authored
      
      * add doc-only substrate entry point crate
      
      * document a few more things
      
      * add more
      
      * fix width
      
      * Update primitives/io/src/lib.rs
      
      Co-authored-by: default avatarGonçalo Pestana <g6pestana@gmail.com>
      
      * add link
      
      * update cargo toml file
      
      * fix sp-io docs
      
      * improve
      
      * small update
      
      * add license
      
      * satisfy license job
      
      * add a line about FRAME
      
      * CI happy now
      
      * make CI more happy
      
      * Let the check run for the whole workspace
      
      * Forward the substrate node again as default run
      
      * update binary names
      
      * upate verison test
      
      * Fix fix fix
      
      * Fix
      
      * rename to substrate-node in more places
      
      * Revert "rename to substrate-node in more places"
      
      This reverts commit 66960f84a1b6f1f7c638b4040e28e9fbabb8adf5.
      
      * fix
      
      * Fix build pipeline
      
      * Fix properly plus add some docs
      
      ---------
      
      Co-authored-by: default avatarGonçalo Pestana <g6pestana@gmail.com>
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
      817c97d6
  19. May 26, 2023
    • juangirini's avatar
      Soft deprecate GenesisConfig (#14210) · 34b2a56a
      juangirini authored
      * soft deprecate genesisconfig
      
      * temporarily add a deprecation attr
      
      * update tests
      
      * update mocks
      
      * update genesis config
      
      * update genesis config
      
      * update genesis config
      
      * update genesis config
      
      * remove deprecation warning
      
      * update deprecation comment
      
      ---------
      
      Co-authored-by: parity-processbot <>
      34b2a56a
  20. Mar 20, 2023
    • Davide Galassi's avatar
      Keystore overhaul (iter 2) (#13634) · 480396fe
      Davide Galassi authored
      * Remove bloat about remote keystore
      
      * Update docs and remove unused 'KeystoreRef' trait
      
      * Use wherever possible, MemoryKeystore for testing
      
      * Remove unrequired fully qualified method syntax for Keystore
      480396fe
  21. Mar 17, 2023
    • Davide Galassi's avatar
      Keystore overhaul (#13615) · f110941b
      Davide Galassi authored
      * Remove 'supported_keys' 'sign_with_any' and 'sign_with_all' from keystore trait
      
      * Remove the aync keystore
      
      * Renaming:
      - SyncCryptoStore -> Keystore
      - SyncCryptoStorePtr -> KeystorePtr
      - KeyStore -> MemoryKeystore
      
      * Fix authority discovery worker and tests
      
      * Rename 'insert_unknown' to 'insert'
      
      * Remove leftover
      f110941b
  22. Feb 21, 2023
    • Vivek Pandya's avatar
      Remove years from copyright notes. (#13415) · bc53b9a0
      Vivek Pandya authored
      * Change copyright year to 2023 from 2022
      
      * Fix incorrect update of copyright year
      
      * Remove years from copy right header
      
      * Fix remaining files
      
      * Fix typo in a header and remove update-copyright.sh
      bc53b9a0
  23. Oct 18, 2022
    • Sebastian Kunert's avatar
      Bump clap to 4.0.x and adjust to best practices (#12381) · f687db40
      Sebastian Kunert authored
      
      * Bump clap to 3.2.22
      
      * Replace `from_os_str` with `value_parser`
      
      * Replace `from_str` and `try_from_str` with `value_parser`
      
      * Move possible_values to the new format
      
      * Remove unwanted print
      
      * Add missing match branch
      
      * Update clap to 4.0.9 and make it compile
      
      * Replace deprecated `clap` macro with `command` and `value`
      
      * Move remaining `clap` attributes to `arg`
      
      * Remove no-op value_parsers
      
      * Adjust value_parser for state_version
      
      * Remove "deprecated" feature flag and bump to 4.0.11
      
      * Improve range
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * Apply suggestions
      
      * Trigger CI
      
      * Fix unused error warning
      
      * Fix doc errors
      
      * Fix ArgGroup naming conflict
      
      * Change default_value to default_value_t
      
      * Use 1.. instead of 0..
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      f687db40
  24. May 12, 2022
  25. Apr 30, 2022
  26. Jan 24, 2022
  27. Jan 05, 2022
  28. Jan 03, 2022
  29. Dec 13, 2021
  30. Jul 22, 2021
  31. Jul 21, 2021
  32. May 13, 2021
    • Alexander Theißen's avatar
      contracts: Move `Schedule` from Storage to `Config` (#8773) · 1ac95b6b
      Alexander Theißen authored
      * Move `Schedule` from Storage to Config
      
      * Updated CHANGELOG
      
      * Fix nits from review
      
      * Fix migration
      
      * Print the debug buffer as tracing message
      
      * Use `debug` instead of `trace` and update README
      
      * Add additional assert to test
      
      * Rename `schedule_version` to `instruction_weights_version`
      
      * Fixed typo
      
      * Added more comments to wat fixtures
      
      * Add clarification for the `debug_message` field
      1ac95b6b
  33. Apr 05, 2021
  34. Jan 04, 2021
    • Bastian Köcher's avatar
      Happy new year (#7814) · e3e651f7
      Bastian Köcher authored
      * Happy new year
      
      Updates the copyright years and fixes wrong license headers.
      
      * Fix the template
      
      * Split HEADER into HEADER-APACHE & HEADER-GPL
      e3e651f7
  35. Oct 08, 2020
    • Rakan Alhneiti's avatar
      Async keystore + Authority-Discovery async/await (#7000) · 3aa4bfac
      Rakan Alhneiti authored
      
      * Asyncify sign_with
      
      * Asyncify generate/get keys
      
      * Complete BareCryptoStore asyncification
      
      * Cleanup
      
      * Rebase
      
      * Add Proxy
      
      * Inject keystore proxy into extensions
      
      * Implement some methods
      
      * Await on send
      
      * Cleanup
      
      * Send result over the oneshot channel sender
      
      * Process one future at a time
      
      * Fix cargo stuff
      
      * Asyncify sr25519_vrf_sign
      
      * Cherry-pick and fix changes
      
      * Introduce SyncCryptoStore
      
      * SQUASH ME WITH THE first commit
      
      * Implement into SyncCryptoStore
      
      * Implement BareCryptoStore for KeystoreProxyAdapter
      
      * authority-discovery
      
      * AURA
      
      * BABE
      
      * finality-grandpa
      
      * offchain-workers
      
      * benchmarking-cli
      
      * sp_io
      
      * test-utils
      
      * application-crypto
      
      * Extensions and RPC
      
      * Client Service
      
      * bin
      
      * Update cargo.lock
      
      * Implement BareCryptoStore on proxy directly
      
      * Simplify proxy setup
      
      * Fix authority-discover
      
      * Pass async keystore to authority-discovery
      
      * Fix tests
      
      * Use async keystore in authority-discovery
      
      * Rename BareCryptoStore to CryptoStore
      
      * WIP
      
      * Remote mutable borrow in CryptoStore trait
      
      * Implement Keystore with backends
      
      * Remove Proxy implementation
      
      * Fix service builder and keystore user-crates
      
      * Fix tests
      
      * Rework authority-discovery after refactoring
      
      * futures::select!
      
      * Fix multiple mut borrows in authority-discovery
      
      * Merge fixes
      
      * Require sync
      
      * Restore Cargo.lock
      
      * PR feedback - round 1
      
      * Remove Keystore and use LocalKeystore directly
      
      Also renamed KeystoreParams to KeystoreContainer
      
      * Join
      
      * Remove sync requirement
      
      * Fix keystore tests
      
      * Fix tests
      
      * client/authority-discovery: Remove event stream dynamic dispatching
      
      With authority-discovery moving from a poll based future to an `async`
      future Rust has difficulties propagating the `Sync` trade through the
      generated state machine.
      
      Instead of using dynamic dispatching, use a trait parameter to specify
      the DHT event stream.
      
      * Make it compile
      
      * Fix submit_transaction
      
      * Fix block_on issue
      
      * Use await in async context
      
      * Fix manual seal keystore
      
      * Fix authoring_blocks test
      
      * fix aura authoring_blocks
      
      * Try to fix tests for auth-discovery
      
      * client/authority-discovery: Fix lookup_throttling test
      
      * client/authority-discovery: Fix triggers_dht_get_query test
      
      * Fix epoch_authorship_works
      
      * client/authority-discovery: Remove timing assumption in unit test
      
      * client/authority-discovery: Revert changes to termination test
      
      * PR feedback
      
      * Remove deadcode and mark test code
      
      * Fix test_sync
      
      * Use the correct keyring type
      
      * Return when from_service stream is closed
      
      * Convert SyncCryptoStore to a trait
      
      * Fix line width
      
      * Fix line width - take 2
      
      * Remove unused import
      
      * Fix keystore instantiation
      
      * PR feedback
      
      * Remove KeystoreContainer
      
      * Revert "Remove KeystoreContainer"
      
      This reverts commit ea4a37c7d74f9772b93d974e05e4498af6192730.
      
      * Take a ref of keystore
      
      * Move keystore to dev-dependencies
      
      * Address some PR feedback
      
      * Missed one
      
      * Pass keystore reference - take 2
      
      * client/finality-grandpa: Use `Arc<dyn CryptoStore>` instead of SyncXXX
      
      Instead of using `SyncCryptoStorePtr` within `client/finality-grandpa`,
      which is a type alias for `Arc<dyn SyncCryptoStore>`, use `Arc<dyn
      CryptoStore>`. Benefits are:
      
      1. No additional mental overhead of a `SyncCryptoStorePtr`.
      
      2. Ability for new code to use the asynchronous methods of `CryptoStore`
      instead of the synchronous `SyncCryptoStore` methods within
      `client/finality-granpa` without the need for larger refactorings.
      
      Note: This commit uses `Arc<dyn CryptoStore>` instead of
      `CryptoStorePtr`, as I find the type signature more descriptive. This is
      subjective and in no way required.
      
      * Remove SyncCryptoStorePtr
      
      * Remove KeystoreContainer & SyncCryptoStorePtr
      
      * PR feedback
      
      * *: Use CryptoStorePtr whereever possible
      
      * *: Define SyncCryptoStore as a pure extension trait of CryptoStore
      
      * Follow up to SyncCryptoStore extension trait
      
      * Adjust docs for SyncCryptoStore as Ben suggested
      
      * Cleanup unnecessary requirements
      
      * sp-keystore
      
      * Use async_std::task::block_on in keystore
      
      * Fix block_on std requirement
      
      * Update primitives/keystore/src/lib.rs
      
      Co-authored-by: default avatarMax Inden <mail@max-inden.de>
      
      * Fix wasm build
      
      * Remove unused var
      
      * Fix wasm compilation - take 2
      
      * Revert async-std in keystore
      
      * Fix indent
      
      * Fix version and copyright
      
      * Cleanup feature = "std"
      
      * Auth Discovery: Ignore if from_service is cloed
      
      * Max's suggestion
      
      * Revert async-std usage for block_on
      
      * Address PR feedback
      
      * Fix example offchain worker build
      
      * Address PR feedback
      
      * Update Cargo.lock
      
      * Move unused methods to test helper functions
      
      * Restore accidentally deleted cargo.lock files
      
      * Fix unused imports
      
      Co-authored-by: default avatarMax Inden <mail@max-inden.de>
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      3aa4bfac
  36. Jul 21, 2020
  37. May 18, 2020
  38. May 15, 2020
  39. Apr 08, 2020
  40. Apr 07, 2020
    • Cecile Tonglet's avatar
      CLI: refactoring: remove Options from sc_service::Configuration's fields (#5271) · 3da069e3
      Cecile Tonglet authored
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * Rename IntoConfiguration to CliConfiguration
      
      * Renamed into_configuration to create_configuration
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * Move keystore params to its own module
      
      * Use in-memory keystore even for build-spec
      
      * Enforce proper value for node name
      
      * dev_key_seed
      
      * Telemetry endpoints
      
      * rustfmt
      
      * Converted all RunCmd
      
      * rustfmt
      
      * Added export-blocks
      
      * Missed something
      
      * Removed config_path in NetworkConfiguration (not used)
      
      * Fixed warnings
      
      * public_addresses is used but never set, keeping it
      
      * Merge Configuration.node and NetworkConfiguration.node_name
      
      ...because they are the same thing
      
      * Added: import-blocks
      
      * Adding a proc_macro to help impl SubstrateCli
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * Re-export spec_factory from sc_cli
      
      * Re-added all the commands
      
      * Refactored node_key_params
      
      * Fixed previous refucktoring
      
      * Clean-up and removed full_version()
      
      * Renamed get_is_dev to not confuse with Configuration field
      
      * Fixed sc-cli-derive example
      
      * Fixing tests
      
      * Fixing tests and removing some (will re-add later)
      
      * Fixing more tests
      
      * Removes the need of type parameter
      
      * Converting bin/node and simplifying API
      
      * Converting more
      
      * Converting last command
      
      * WIP
      
      Forked at: d6aa8e95
      
      
      Parent branch: origin/master
      
      * Fixing tests and added default for WasmExecutionMethod
      
      * Fixing stuff
      
      * Fixed something I broke oops
      
      * Update Cargo.lock
      
      * Moving things around
      
      * Convert everything to Result
      
      * Added new macros to simplify the impl of CliConfiguration
      
      * Added a macro to generate CliConfiguration automatically for subcommands
      
      * Revert... too many macros (this one is not really useful)
      
      This reverts commit 9c516dd38b40fbc420b02c1f8e61d5b2b1a4e434.
      
      * Renamed is_dev to get_is_dev
      
      Good enough for now
      
      * Fixed name roles (this is plural, not singular)
      
      * Clean-up
      
      * Re-export NodeKeyConfig and TelemetryEndpoints from sc_service
      
      * Improve styling/formatting
      
      * Added copyrights
      
      * Added doc and fixed warnings
      
      * Added myself to code owners
      
      * Yes it is needed according to the history
      
      * Revert formatting
      
      * Fixing conflict
      
      * Updated build.rs
      
      * Cargo.lock
      
      * Clean-up
      
      * Update client/cli-derive/Cargo.toml
      
      Co-Authored-By: default avatarSeun Lanlege <seunlanlege@gmail.com>
      
      * Fail if using proc_macro and build.rs is not set properly
      
      * Dropped all get_ in front of methods
      
      * Clean-up
      
      * Fixing proc macro missing env var
      
      * Get the configuration inside the Runtime (needed for polkadot)
      
      * Clean-up
      
      * Get is_dev from argument like the others
      
      * Get chain ID instead of chain spec from shared params
      
      * &self is passed to spec_factory/load_spec
      
      * Wrong text
      
      * Fix example
      
      * Officialize macro and made a cool doc
      
      * Renamed spec_factory to load_spec (substrate_cli_configuration)
      
      * Removed not so useful ChainSpec
      
      * Renamed SubstrateCLI to SubstrateCli
      
      * Added changelog for impl_version being full now
      
      * Renamed Runtime to Runner
      
      * Update changelog to show example
      
      * Removed option on database cache size
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * Fix on removal of option
      
      * typo
      
      * Clean-up imports
      
      * Added info in Cargo.toml
      
      * typo
      
      * remarks
      
      * Moved function for build.rs to substrate-build-script-utils
      
      * Fixed example & test of cli-derive
      
      * Moved function for build.rs to substrate-build-script-utils
      
      * Renamed substrate_cli_configuration to substrate_cli oops
      
      It implements SubstrateCli not CliConfiguration!
      
      * Added documentation and wrapper macro
      
      * Removed option on database cache size
      
      * Removed option on database cache size
      
      * Clean-up
      
      * Reduce risk of errors due to typos
      
      * Removed option on database cache size
      
      * Added NOTE as suggested
      
      * Added doc as suggested
      
      * Fixed test
      
      * typo
      
      * renamed runtime to runner
      
      * Fixed weird argument
      
      * More commas
      
      * Moved client/cli-derive to client/cli/derive
      
      * Added 7 tests for the macros
      
      * Improve error message
      
      * Upgrade assert_cmd
      
      * Fixing missing stuff
      
      * Fixed unused import
      
      * Improve SubstrateCli doc
      
      * Applied suggestions
      
      * Fix and clean-up imports
      
      * Started replacing macros WIP
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * Started removing substrate_cli
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * WIP
      
      Forked at: d6aa8e95
      Parent branch: origin/master
      
      * WIP
      
      Forked at: d6aa8e95
      
      
      Parent branch: origin/master
      
      * fixed bug introduced while refactoring
      
      * Renamed NetworkConfigurationParams to NetworkParams for consistency sake
      
      * Fixed test
      
      * Update client/cli/src/commands/runcmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/commands/runcmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/commands/export_blocks_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/commands/check_block_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update bin/node/cli/src/command.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update bin/node/cli/src/command.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/commands/export_blocks_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Revert "Update client/cli/src/commands/export_blocks_cmd.rs"
      
      This reverts commit 5906776953392c02beac6bc0bf50f8cbe1a12a01.
      
      * Revert "Update client/cli/src/commands/check_block_cmd.rs"
      
      This reverts commit f705f42b7f3d732be001141afee210fe46a1ef47.
      
      * Revert "Update client/cli/src/commands/export_blocks_cmd.rs"
      
      This reverts commit 8d57c0550164449e6eb2d3bacb04c750c714fcea.
      
      * Revert "Update client/cli/src/commands/runcmd.rs"
      
      This reverts commit 93e74cf5d2e1c0dc49cdff8608d59fc40fc59338.
      
      * Revert "Update client/cli/src/commands/runcmd.rs"
      
      This reverts commit 11d527ba345c0d79f0d3b5b071933d95474d0614.
      
      * Update client/cli/src/commands/export_blocks_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/commands/import_blocks_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/commands/purge_chain_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Changed ::sc_cli to $crate in the macro
      
      * fixed tests
      
      * fixed conflicts
      
      * Fixing test
      
      * Update client/cli/src/commands/purge_chain_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/params/pruning_params.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Remove comment as suggested
      
      * Apply suggestion
      
      * Update client/cli/src/commands/purge_chain_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/commands/purge_chain_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/commands/purge_chain_cmd.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update utils/frame/benchmarking-cli/src/command.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/runner.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/runner.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/runner.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/params/pruning_params.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/params/node_key_params.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/params/network_params.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Update client/cli/src/config.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Added doc
      
      * Fixed error introduced after applying suggestion
      
      * Revert "Update client/cli/src/params/pruning_params.rs"
      
      This reverts commit 0574d06a4f1efd86e94c1214420a12e7a4be0099.
      
      * Print error
      
      * Apply suggestions from code review
      
      * Remove useless Results
      
      * Fixed CI failing on polkadot approval
      
      Co-authored-by: default avatarSeun Lanlege <seunlanlege@gmail.com>
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      3da069e3