1. Feb 11, 2020
  2. Jan 31, 2020
  3. Jan 30, 2020
    • Cecile Tonglet's avatar
      CLI API refactoring and improvement (#4692) · 26e37ff6
      Cecile Tonglet authored
      It changes the way we extended the CLI functionalities of substrate to allow more flexibility. (If this was not clear, here is another version: it changes the `sc_cli` API to allow more flexibility).
      
      This touches a few important things:
       - the startup of the async task with tokei:
          This was in node and node-template and I moved it to substrate. The idea is to have 1 time the code that handles unix signals (SIGTERM and SIGINT) properly. It is however possible to make this more generic to wait for a future instead and provide only a helper for the basic handling of SIGTERM and SIGINT.
       - increased the version of structopt and tokei
       - no more use of structopt internal's API
       - less use of generics
      
      Related to #4643 and https://github.com/paritytech/cumulus/pull/42: the implementation of "into_configuration" and "get_config" are similar but with better flexibility so it is now possible in cumulus to have the command-line arguments only of the run command for polkadot if we want
      
      Related to https://github.com/paritytech/cumulus/issues/24 and https://github.com/paritytech/cumulus/issues/34 : it will now be possible to make a configuration struct for polkadot with some overrides of the default parameters much more easily.
      26e37ff6
  4. Jan 29, 2020
  5. Jan 27, 2020
    • Web3 Philosopher's avatar
      Manual Seal (#4143) · 03ffa5a5
      Web3 Philosopher authored
      
      
      * instant/manual seal
      
      unbounded queues are evil
      
      Apply suggestions from code review
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      add fork tests, docs, remove todos
      
      moar docs
      
      Update client/consensus/manual-seal/src/rpc.rs
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      remove unbound generic, parameter, docs, deps, code style changes
      
      Apply suggestions from code review
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      code style chnges
      
      remove unused deps, remove dep renames, check if block is empty before importing, use ? for error propagation
      
      fix tests
      
      log errors for instant seal
      
      use debug
      
      code style changes, updated copyright dates
      
      use txpool::Pool instead of BasicPool, code style changes
      
      fixed tests
      
      * fix tests
      
      * requested changes from review
      
      * check inherents len
      
      * rebase
      03ffa5a5
  6. Jan 21, 2020
    • Pierre Krieger's avatar
      Pass an executor through the Configuration (#4688) · 6ee1244e
      Pierre Krieger authored
      * Pass an executor through the Configuration
      
      * Make tasks_executor mandatory
      
      * Fix tests
      6ee1244e
    • Bastian Köcher's avatar
      Make debug builds more usable (#4683) · cb9c1818
      Bastian Köcher authored
      * Make debug builds more usable
      
      This pr makes debug builds more usable in terms of `cargo run -- --dev`.
      
      1. `--dev` activates `--execution native`, iff `--execution` is not
      given or no sub `--execution-*` is given.
      2. It was probably a mistake to compile WASM in debug for a debug build.
      So, we now build the WASM binary always as `release` (if not requested
      differently by the user). So, we trade compilation time for a better
      debug experience.
      
      * Make sure we only overwrite default values
      
      * Make it work
      
      * Apply suggestion
      cb9c1818
  7. Jan 20, 2020
  8. Jan 16, 2020
  9. Jan 14, 2020
    • Ashley's avatar
      Update the service to std futures (#4447) · 410ce114
      Ashley authored
      * Switch service to futures03
      
      * Fix tests
      
      * Fix service test and cli
      
      * Re-add Executor trait to SpawnTaskHandle
      
      * Fix node-service
      
      * Update babe
      
      * Fix browser node
      
      * Update aura
      
      * Revert back to tokio-executor to fix runtime panic
      
      * Add todo item
      
      * Fix service tests again
      
      * Timeout test futures
      
      * Fix tests
      
      * nits
      
      * Fix service test
      
      * Remove zstd patch
      
      * Re-add futures01 to aura and babe tests as a dev-dep
      
      * Change failing test to tee
      
      * Fix node
      
      * Upgrade tokio
      
      * fix society
      
      * Start switching grandpa to stable futures
      
      * Revert "Start switching grandpa to stable futures"
      
      This reverts commit 9c197634
      
      .
      
      * Fix utils
      
      * Revert substrate service test
      
      * Revert gitlab
      
      Co-authored-by: default avatarthiolliere <[email protected]>
      410ce114
  10. Jan 05, 2020
  11. Dec 28, 2019
    • Bastian Köcher's avatar
      Fix cli for structopt 0.3.7 and pin to that version (#4509) · 43ee8a35
      Bastian Köcher authored
      * Fix cli for structopt 0.3.7 and pin to that version
      
      This is just some hotfix to make everything compile. In the future it
      will require another pr to not depend on internals of StructOpt, but
      that will probably also require some additions to StructOpt itself. To
      not break the code again with another StructOpt, this also pins the
      StructOpt version.
      
      * Fix benches
      
      * Fix for fix
      43ee8a35
  12. Dec 20, 2019
  13. Dec 11, 2019
    • Benjamin Kampmann's avatar
      Clean up crate names and locations (#4361) · 9ce7e1f7
      Benjamin Kampmann authored
      * rename crate: sp-transaction-pool-api -> sp-transaction-pool
      
      * move primitives/core/derive-debug -> primitives/derive-debug; primitives/core/storage -> primitives/storage
      
      * rename crate sp-core-storage -> sp-storage
      
      * rename and move: test/utils/transaction-factory -> client/transaction-factory
      
      * move transaction-factory -> node/transaction-factory
      
      * fix missing rename
      
      * Move chain-spec-builder into bin/utils
      
      * move subkey into bin/utils
      
      * Update new subkey location
      
      * Update docs to reflect new location for utils
      
      * fixing import name
      9ce7e1f7
  14. Dec 02, 2019
    • Benjamin Kampmann's avatar
      The crate rename (#4223) · 28c329e0
      Benjamin Kampmann authored
      * Adding script for rename, could be applicable for nodes on top of it, too
      
      * add stderr and gitlab ci features
      
      * apply script
      
      * fix now minor details in expected stderr
      
      * Update the Cargo.lock
      
      * fix name: sc-transaction -> sc-tracing
      
      * fix rename in script, too
      28c329e0
  15. Nov 29, 2019
  16. Nov 28, 2019
  17. Nov 22, 2019
    • Ashley's avatar
      Upgrade from futures-preview to futures 0.3.1, and remove futures 0.1 where... · aee12ee6
      Ashley authored
      Upgrade from futures-preview to futures 0.3.1, and remove futures 0.1 where currently possible (#4083)
      
      * Migrate node and node-template
      
      * Migrate srml
      
      * Simple changes
      
      * Add async-std for interval
      
      * Fix test-runtime warning
      
      * Small changes
      
      * move futures01 in core/rpc to dev-deps
      
      * Change wasm CI builds
      
      * Switch to async-std 1.0.1
      
      * Remove async-std dep of network
      
      * Add modified lockfile
      
      * Fix node cli browser build
      
      * Remove authority-discovery async-std dep
      
      * Add Send + Sync to interval dyn stream
      aee12ee6
  18. Nov 14, 2019
    • Benjamin Kampmann's avatar
      Reorganising the repository - external renames and moves (#4074) · f44873dc
      Benjamin Kampmann authored
      * Adding first rough ouline of the repository structure
      
      * Remove old CI stuff
      
      * add title
      
      * formatting fixes
      
      * move node-exits job's script to scripts dir
      
      * Move docs into subdir
      
      * move to bin
      
      * move maintainence scripts, configs and helpers into its own dir
      
      * add .local to ignore
      
      * move core->client
      
      * start up 'test' area
      
      * move test client
      
      * move test runtime
      
      * make test move compile
      
      * Add dependencies rule enforcement.
      
      * Fix indexing.
      
      * Update docs to reflect latest changes
      
      * Moving /srml->/paint
      
      * update docs
      
      * move client/sr-* -> primitives/
      
      * clean old readme
      
      * remove old broken code in rhd
      
      * update lock
      
      * Step 1.
      
      * starting to untangle client
      
      * Fix after merge.
      
      * start splitting out client interfaces
      
      * move children and blockchain interfaces
      
      * Move trie and state-machine to primitives.
      
      * Fix WASM builds.
      
      * fixing broken imports
      
      * more interface moves
      
      * move backend and light to interfaces
      
      * move CallExecutor
      
      * move cli off client
      
      * moving around more interfaces
      
      * re-add consensus crates into the mix
      
      * fix subkey path
      
      * relieve client from executor
      
      * starting to pull out client from grandpa
      
      * move is_decendent_of out of client
      
      * grandpa still depends on client directly
      
      * lemme tests pass
      
      * rename srml->paint
      
      * Make it compile.
      
      * rename interfaces->client-api
      
      * Move keyring to primitives.
      
      * fixup libp2p dep
      
      * fix broken use
      
      * allow dependency enforcement to fail
      
      * move fork-tree
      
      * Moving wasm-builder
      
      * make env
      
      * move build-script-utils
      
      * fixup broken crate depdencies and names
      
      * fix imports for authority discovery
      
      * fix typo
      
      * update cargo.lock
      
      * fixing imports
      
      * Fix paths and add missing crates
      
      * re-add missing crates
      f44873dc
  19. Nov 01, 2019
  20. Oct 31, 2019
    • Pierre Krieger's avatar
      Add the code for compiling node-cli for WASM-browser (#3974) · afc63040
      Pierre Krieger authored
      
      
      * Extract CLI to separate module in node/cli
      
      * Make node/cli compile for WASM
      
      * More work on node/cli browser
      
      * More work on browser node
      
      * More work
      
      * More work
      
      * Purge a bit the CI script
      
      * More clean up
      
      * Remove substrate-finality-grandpa from the CI
      
      Its tests use tokio, which fails to compile.
      
      * Address review
      
      * Add rocksdb feature to the service
      
      * Fix substrate-service WASM CI
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Don't WASM-compile substrate-service altogether
      afc63040
  21. Oct 29, 2019
    • André Silva's avatar
      node: add sentry mode flag (#3959) · 893909d0
      André Silva authored
      * node: add sentry mode flag
      
      * cli: extend docs on validator and sentry modes
      
      * service: add missing field in test Configuration
      
      * node: Display instead of Debug when printing node role
      893909d0
  22. Oct 23, 2019
  23. Oct 12, 2019
  24. Sep 28, 2019
    • Tomasz Drwięga's avatar
      ChainSpec extensions (#3692) · d1401df7
      Tomasz Drwięga authored
      * Add some chainspec tests and make sure we validate it.
      
      * Manual implementation of Extension + Forks definitions.
      
      * Move chain spec to separate crate.
      
      * Allow using ChainSpec with extensions.
      
      * Renames.
      
      * Implement Extension derive.
      
      * Implement Extension for Forks.
      
      * Support specifying fork blocks.
      
      * make for_blocks work
      
      * Support forks correctly.
      
      * Add a bunch of docs.
      
      * Make fork blocks optional.
      
      * Add missing docs.
      
      * Fix build.
      
      * Use struct for check_block params.
      
      * Fix tests?
      
      * Clean up.
      d1401df7
  25. Aug 27, 2019
    • Pierre Krieger's avatar
      Service factory refactor (#3382) · d14e727b
      Pierre Krieger authored
      * Move Service::new to a macro
      
      * Move function calls to macros
      
      * Extract offchain_workers and start_rpc in separate function
      
      In follow-up commits, we want to be able to directly call maintain_transaction_pool, offchain_workers, and start_rpc, without having to implement the Components trait.
      This commit is a preliminary step: we extract the code to freestanding functions.
      
      * Introduce an AbstractService trait
      
      * Introduce NewService as an implementation detail of Service
      
      * Implement traits on NewService instead
      
      Instead of implementing AbstractService, Future, and Executor on Service, we implement them on NewService instead.
      
      The implementations of AbstractService, Future, and Executor on Service still exist, but they just wrap to the respective implementations for NewService.
      
      * Move components creation back to macro invocation
      
      Instead of having multiple $build_ parameters passed to the macro, let's group them all into one.
      
      This change is necessary for the follow-up commits, because we are going to call new_impl! only after all the components have already been built.
      
      * Add a $block parameter to new_impl
      
      This makes it possible to be explicit as what the generic parameter of the NewServiceis, without relying on type inference.
      
      * Introduce the ServiceBuilder struct
      
      Introduces a new builder-like ServiceBuilder struct that creates a NewService.
      
      * Macro-ify import_blocks, export_blocks and revert_chain
      
      Similar to the introduction of new_impl!, we extract the actual code into a macro, letting us get rid of the Components and Factory traits
      
      * Add export_blocks, import_blocks and revert_chain methods on ServiceBuilder
      
      Can be used as a replacement for the chain_ops::* methods
      
      * Add run_with_builder
      
      Instead of just run, adds run_with_builder to ParseAndPrepareExport/Import/Revert. This lets you run these operations with a ServiceBuilder instead of a ServiceFactory.
      
      * Transition node and node-template to ServiceBuilder
      
      * Transition transaction-factory to the new service factory
      
      This is technically a breaking change, but the transaction-factory crate is only ever used from within substrate-node, which this commit updates as well.
      
      * Remove old service factory
      
      * Adjust the AbstractService trait to be more usable
      
      We slightly change the trait bounds in order to make all the methods usable.
      
      * Make substrate-service-test compile
      
      * Fix the node-cli tests
      
      * Remove the old API
      
      * Remove the components module
      
      * Fix indentation on chain_ops
      
      * Line widths
      
      * Fix bad line widths commit
      
      * Line widths again 🤦
      
      
      
      * Fix the sync test
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Address some concerns
      
      * Remove TelemetryOnConnect
      
      * Remove informant::start
      
      * Update jsonrpc
      
      * Rename factory to builder
      
      * Line widths 😩
      d14e727b
  26. Aug 12, 2019
  27. Aug 11, 2019
    • Pierre Krieger's avatar
      Refactor parse_and_execute (#3358) · e0f5dd9f
      Pierre Krieger authored
      
      
      * Refactor `parse_and_execute`
      
      Adds a new function named `parse_and_prepare`, which prepares the environment and parses the command.
      Contrary to `parse_and_execute`, `parse_and_prepare` returns a struct that permis the user to execute the command, as opposed to execute it itself.
      
      `parse_and_execute` has been modified to use `parse_and_prepare` internally.
      
      * Embed dispatch functions directly into run()
      
      After the previous commit, we now have a lot of functions whose only one is to call other functions. And these other functions are called only from one location.
      Let's merge these two for clarity.
      
      * Deprecate parse_and_execute and replace it in node and node-template
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      e0f5dd9f
  28. Aug 08, 2019
    • Pierre Krieger's avatar
      Service various cleanups (#3238) · a8449beb
      Pierre Krieger authored
      * Remove generic from sign()
      
      * Remove mandatory RuntimeGenesis trait req
      
      * Remove requirement from Configuration
      
      * Relax trait bounds of core/cli
      
      * Move method
      
      * The config field is no longer public
      
      * Remove Components from bounds of functions
      
      * Implement DerefMut for LightComponents
      
      * Implement Executor for Full/LightComponents
      
      * Fix bad merge
      
      * Fix forgotten config()
      
      * Fix build
      a8449beb
  29. Jul 29, 2019
  30. Jun 26, 2019
    • Pierre Krieger's avatar
      Remove tokio dependencies (#2935) · 2393e9b5
      Pierre Krieger authored
      * Remove dependencies on tokio
      
      * Make service not depend on tokio
      
      * Fix service tests
      
      * Manually poll the import queue if failed to start
      
      * Spawn all tasks at the end
      
      * Remove executor from TelemetryOnConnect
      
      * Remove TaskExecutor from offchain workers
      
      * Remove TaskExecutor from AuthoritySetup
      
      * Remove TaskExecutor from service
      
      * Remove tokio dependency from RPC
      
      * Remove finality-grandpa from WASM checks
      
      * Fix offchain tests
      
      * Line widths
      
      * Fix RPC tests
      
      * Fix service tests
      
      * Fix bad futures polling
      
      * Address some concerns
      
      * Better error handling
      
      * Is it the connectivity test that's not passing? I don't know, let's try
      
      * Revert "Is it the connectivity test that's not passing? I don't know, let's try"
      
      This reverts commit 28bbe51f.
      
      * Fix test
      2393e9b5
  31. May 28, 2019
    • Michael Müller's avatar
      Transaction factory (#2481) · 7e7185ce
      Michael Müller authored
      
      
      * Fix typos
      
      * Add transaction factory
      
      `cargo run -- purge-chain -y --chain dev && cargo run -- --dev --transaction-factory 10`
      
      * Fix comment and remove build deps
      
      * Move crate to test-utils
      
      * Switch from flag to subcommand
      
      `cargo run -- factory --dev --num 5`
      
      * Decouple factory from node specifics
      
      * Introduce different manufacturing modes
      
      * Remove unrelated changes
      
      * Update Cargo.lock
      
      * Use SelectChain to fetch best block
      
      * Improve expect proof
      
      * Panic if factory executed with unsupported chain spec
      
      * Link ToDo comments to follow-up ticket
      
      * Address comments and improve style
      
      * Remove unused dependencies
      
      * Fix indent level
      
      * Replace naked unwrap
      
      * Update node/cli/src/factory_impl.rs
      
      * Fix typo
      
      * Use inherent_extrinsics instead of timestamp
      
      * Generalize factory and remove saturated conversions
      
      * Format imports
      
      * Make it clearer that database needs to be empty
      
      * Ensure factory settings
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update test-utils/transaction-factory/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Fix match guard syntax
      
      * Simplify import, remove empty line
      
      * Update node/cli/Cargo.toml
      
      * Update lockfile
      7e7185ce
  32. May 23, 2019
  33. May 14, 2019
  34. May 01, 2019
  35. Apr 03, 2019
  36. Mar 06, 2019
  37. Feb 25, 2019
  38. Feb 20, 2019