1. Dec 20, 2019
  2. Dec 19, 2019
    • Shawn Tabrizi's avatar
      Fix Fees in Substrate (#4421) · 36c7fcfa
      Shawn Tabrizi authored
      * Fix fees
      
      * Add comment to explain saturated multiply accumulate
      
      * Fix final fee calculation
      
      * Fix doc
      
      * improve doc
      
      * grumble
      
      * Update tests
      
      * Fix executor tests
      36c7fcfa
    • Bastian Köcher's avatar
      Make `decl_error!` errors usable (#4449) · fef0e752
      Bastian Köcher authored
      * Make `decl_error!` errors usable
      
      This pr implements support for returning errors of different pallets in
      a pallet. These errors need to be declared with `decl_error!`.
      
      The pr changes the following:
      
      - Each dispatchable function now returns a `DispatchResult` which is an
      alias for `Result<(), DispatchError>`.
      - `DispatchError` is an enum that has 4 variants:
        - `Other`: For storing string error messages
        - `CannotLookup`: Variant that is returned when something returns a
        `sp_runtime::LookupError`
        - `BadOrigin`: Variant that is returned for any kind of bad origin
        - `Module`: The error of a specific module. Contains the `index`,
        `error` and the `message`. The index is the index of the module in
        `construct_runtime!`. `error` is the index of the error in the error
        enum declared by `decl_error!`. `message` is the message to the error
        variant (this will not be encoded).
      - `construct_runtime!` now creates a new struct `ModuleToIndex`. This
      struct implements the trait `ModuleToIndex`.
      - `frame_system::Trait` has a new associated type: `ModuleToIndex` that
      expects the `ModuleToIndex` generated by `construct_runtime!`.
      - All error strings returned in any module are being converted now to `DispatchError`.
      - `BadOrigin` is the default error returned by any type that implements `EnsureOrigin`.
      
      * Fix frame system benchmarks
      fef0e752
  3. Dec 17, 2019
  4. Dec 16, 2019
    • Tomasz Drwięga's avatar
      [big refactor] Remove crate aliasing. (#4395) · 40a16efe
      Tomasz Drwięga authored
      * Rename: Phase 1.
      
      * Unify codec.
      
      * Fixing: Phase 2
      
      * Fixing: Phase 3.
      
      * Fixing: Phase 4.
      
      * Fixing: Phase 5.
      
      * Fixing: Phase 6.
      
      * Fixing: Phase 7.
      
      * Fixing: Phase 8. Tests
      
      * Fixing: Phase 9. Tests!!!
      
      * Fixing: Phase 10. Moar tests!
      
      * Finally done!
      
      * More fixes.
      
      * Rename primitives:: to sp_core::
      
      * Apply renames in finality-grandpa.
      
      * Fix benches.
      
      * Fix benches 2.
      
      * Revert node-template.
      
      * Fix frame-system in our modules.
      40a16efe
  5. Dec 14, 2019
    • cheme's avatar
      Fix key collision for child trie (#4162) · 9f4c7b78
      cheme authored
      * In progress, runtime io must switch to future proof root +
      child_specific (unique id) + u32 type.
      
      * Switch interface, sr-io seems ok, rpc could use similar interface to
      sr-io, genesis json broken if there is child trie in existing encoding
      genesis.
      
      * test from previous implementation.
      
      * fix proving test.
      
      * Restore Keyspacedb from other branch, only apply to child trie.
      
      * Removing unneeded child_info from child root (child info are stored
      if things changed, otherwhise the root does not change).
      
      * Switch rpc to use same format as ext: more future proof.
      
      * use root from child info for trie backend essence.
      
      * Breaking long lines.
      
      * Update doc and clean pr a bit.
      
      * fix error type
      
      * Restore removed doc on merge and update sr-io doc.
      
      * Switch child storage api to use directly unique id, if managed id
      where to be put in place, the api will change at this time.
      
      * Clean deprecated host interface from child.
      
      * Removing assertion on child info (can fail depending on root
      memoization).
      
      * merging child info in the overlay when possible.
      
      * child iteration by prefix using child_info.
      
      * Using ChainInfo in frame support. ChainInfo gets redesign to avoid
      buffers allocation on every calls.
      
      * Add length of root to the data of child info.
      
      * comments
      
      * Encode compact.
      
      * Remove child info with root.
      
      * Fix try_update condition.
      
      * Comment Ext child root caching.
      
      * Replace tuples by struct with field
      
      * remove StorageTuple alias.
      
      * Fix doc tests, and remove StorageOverlay and ChildStorageOverlay
      aliases.
      9f4c7b78
  6. Dec 13, 2019
    • Pierre Krieger's avatar
      Extract consensus_gossip.rs and put it in its own crate (#4284) · 723148f1
      Pierre Krieger authored
      
      
      * Extract gossiping system from network
      
      * Finish porting GRANDPA tests
      
      * Try put correct engine ID
      
      * Fix messages encoding
      
      * Fix communication tests
      
      * Use a threads pool to spawn stuff
      
      * Fix compilation everywhere
      
      * Fix bad merge conflict
      
      * Remove dependency on async-std
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      * More suggestions
      
      * Remove network startup GP future
      
      * Update to futures_timer
      
      * adjust wait_when_behind test
      
      * Pass correct Roles after handshake
      
      * Revert "adjust wait_when_behind test"
      
      This reverts commit 9e310244.
      
      * Crate root documentation
      
      * Remove MessageRecipient
      
      * Address concerns
      
      * Fix more concerns
      
      * Forgot Cargo.lock
      723148f1
  7. Dec 11, 2019
    • Benjamin Kampmann's avatar
      Fix folder names in client and test (#4360) · b5414b65
      Benjamin Kampmann authored
      * client/rpc/api -> client/rpc-api
      
      * client/util/wasm-builder-runner -> utils/wasm-builder-runner
      
      * client/grafana-data-source -> utils/grafana-data-source
      
      * test/utils -> test-utils
      
      * fix moved path
      
      * Update Cargo.lock
      
      * Update Cargo.lock
      b5414b65
    • 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
    • Benjamin Kampmann's avatar
      Fix folder names in primitives (#4358) · 824009b4
      Benjamin Kampmann authored
      * sr-arithmetic -> arithmetic
      
      * sr-sandbox -> sandbox
      
      * primitives/sr-staking-primitives -> primitives/staking
      
      * primitives/sr-version -> primitives/version
      
      * primitives/block-builder/runtime-api -> primitives/block-builder
      824009b4
  8. Dec 10, 2019
  9. Dec 09, 2019
  10. Dec 07, 2019
  11. Dec 06, 2019
  12. Dec 05, 2019
  13. Dec 03, 2019
    • Bryant Eisenbach's avatar
      fix: Typo granpda -> grandpa (#4286) · fc6914cd
      Bryant Eisenbach authored and asynchronous rob's avatar asynchronous rob committed
      fc6914cd
    • Max Inden's avatar
      client: Introduce --sentry-nodes flag (#4285) · e2e3c246
      Max Inden authored
      * client/authority-discovery: Add smoke tests for intervall_at
      
      * client/authority-discovery: Fix interval_at to fire on start
      
      * .maintain/sentry-node: Update docker compose file
      
      * client: Introduce --sentry-nodes flag
      
      Enable operators to specify the public addresses of sentry nodes infront
      of a validator node so that the validator node can announce the sentry
      node addresses instead of its own public addresses on the DHT via the
      authority discovery module.
      
      * client/authority-discovery: Break lines at 100 characters
      
      Limit line length to 100 instead of 120 characters.
      e2e3c246
    • Keith Ingram's avatar
      Council members (#4279) · 186f9f87
      Keith Ingram authored
      186f9f87
  14. Dec 02, 2019
  15. Dec 01, 2019
  16. Nov 29, 2019
  17. Nov 28, 2019
    • Arkadiy Paronyan's avatar
      Check block CLI command (#4240) · 4031142b
      Arkadiy Paronyan authored
      * Check block operation
      
      * Update client/cli/src/lib.rs
      
      * Update client/cli/src/params.rs
      4031142b
    • Svyatoslav Nikolsky's avatar
      Recover transaction pool on light client (#3833) · 2ffaf054
      Svyatoslav Nikolsky authored
      
      
      * recover tx pool on light client
      
      * revert local tests fix
      
      * removed import renamings
      
      * futures03::Future -> std::future::Future
      
      * Update core/transaction-pool/graph/src/error.rs
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * replace remove_from_ready with remove_invalid
      
      * avoid excess hashing
      
      * debug -> warn
      
      * TransactionPool + BasicTransactionPool
      
      * pause future tx reject when resubmitting
      
      * bump impl_version to make CI happy
      
      * and revert back local test fixes
      
      * alter doc to restart CI
      
      * Transaction::clone() -> Transaction::duplicate()
      
      * transactions -> updated_tranasctions
      
      * remove explicit consensus-common ref
      
      * ::std:: -> std::
      
      * manual set/unset flag -> calling clusore with given flag value
      
      * removed comments
      
      * removed force argument
      
      * BestIterator -> Box<Iterator>
      
      * separate crate for TxPool + Maintainer trait
      
      * long line fix
      
      * pos-merge fix
      
      * fix benches compilation
      
      * Rename txpoolapi to txpool_api
      
      * Clean up.
      
      * Finalize merge.
      
      * post-merge fix
      
      * Move transaction pool api to primitives directly.
      
      * Consistent naming for txpool-runtime-api
      
      * Warn about missing docs.
      
      * Move  abstraction for offchain calls to tx-pool-api.
      
      * Merge RPC instantiation.
      
      * Update cargo.lock
      
      * Post merge fixes.
      
      * Avoid depending on client.
      
      * Fix build
      2ffaf054
    • Bastian Köcher's avatar
      The storage runtime interface should not enforce a hash type (#4231) · b9e7f09a
      Bastian Köcher authored
      
      
      * The storage runtime interface should not enforce a hash type
      
      Currently the runtime interface enforces `H256` as hash type, but in the
      future people could use whatever they want as hash type. The hash type
      always needs to match between the runtime and the node, but that is
      already required.
      
      * Update primitives/externalities/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <[email protected]>
      b9e7f09a
  18. Nov 27, 2019
    • asynchronous rob's avatar
      safe multi-era slashing for NPoS (#3846) · b853a4f9
      asynchronous rob authored
      
      
      * define slashing spans
      
      * tests and pruning for slashing-spans record
      
      * validators get slashed before nominators
      
      * apply slash to nominators as well
      
      * chill and end slashing spans
      
      * actually perform slashes
      
      * integration (tests failing)
      
      * prune metadata
      
      * fix compilation
      
      * some tests for slashing and metadata garbage collection
      
      * correctly pass session index to slash handler
      
      * test span-max property for nominators and validators
      
      * test that slashes are summed correctly
      
      * reward value computation
      
      * implement rewarding
      
      * add comment about rewards
      
      * do not adjust slash fraction in offences module
      
      * fix offences tests
      
      * remove unused new_offenders field
      
      * update runtime version
      
      * fix up some docs
      
      * fix some CI failures
      
      * remove no-std incompatible vec! invocation
      
      * try to fix span-max rounding error
      
      * Update srml/staking/src/slashing.rs
      
      Fix type: winow -> window
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * slashes from prior spans don't kick validator again
      
      * more information for nominators, suppression
      
      * ensure ledger is consistent with itself post-slash
      
      * implement slash out of unlocking funds also
      
      * slashing: create records to be applied after-the-fact
      
      * queue slashes for a few eras later
      
      * method for canceling deferred slashes
      
      * attempt to fix test in CI
      
      * storage migration for `Nominators`
      
      * update node-runtime to use SlashDeferDuration
      
      * adjust migration entry-points somewhat
      
      * fix migration compilation
      
      * add manual Vec import to migration
      
      * enable migrations feature in node-runtime
      
      * bump runtime version
      
      * update to latest master crate renames
      
      * update to use ensure-origin
      
      * Apply suggestions from code review
      
      use `ensure!`
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * fix multi-slash removal
      
      * initialize storage version to current in genesis
      
      * add test for version initialization
      b853a4f9
    • thiolliere's avatar
      Implement all storage after prefix (#4227) · a512dcdd
      thiolliere authored
      * Implement all storage after prefix
      
      * fix test, bump version and fix doc
      
      * bump metadata version
      
      * Update frame/support/procedural/src/storage/storage_struct.rs
      a512dcdd
  19. Nov 26, 2019
    • Benjamin Kampmann's avatar
      Remove all (non-dev) `client` references from `frame`, activate dependency enforcer (#4184) · b3a7c8e4
      Benjamin Kampmann authored
      * Move transaction pool to primitives
      
      * move backend, errors into primitives
      
      * remove unused client depencies
      
      * Move rpc-api into primitives
      
      * Move peerset back to client
      
      * Move rpc/api back to client, move palette/support/rpc into utils
      
      * move support-rpc into subfolder
      
      * move system-rpc into utils
      
      * move transaction-pool  and -graph back into client
      
      * fix broken imports
      
      * Clean up test primitives
      
      * Make support test utils independent of frame
      
      * remove unnecessary node dependencies from service
      
      * Reactivate dependency script:
       - only enforce the now achieved status quo will remain
       - allow for primitives to depend on /client for now without failing
       - more discriptive error message so people understand, what it wants
       - minor fix to differentiative between ../client and /client (which may be a subfolder)
       - don't allow this to fail anylonger.
      
      * fix doc comment
      
      * 'Should not' rather than 'must not'.
      
      * Revert unwanted dependency changes
      
      * fix faulty import
      
      * fixup derive_more version
      
      * fix wrong import path
      b3a7c8e4