Skip to content
  1. Dec 19, 2019
    • Bastian Köcher's avatar
      Make `decl_error!` errors usable (#4449) · 8e393aa5
      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
      8e393aa5
  2. Dec 17, 2019
  3. Dec 16, 2019
    • Tomasz Drwięga's avatar
      [big refactor] Remove crate aliasing. (#4395) · 8778ca7d
      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.
      8778ca7d
  4. Dec 14, 2019
    • cheme's avatar
      Fix key collision for child trie (#4162) · 0ece5d9e
      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.
      0ece5d9e
  5. Dec 13, 2019
    • Pierre Krieger's avatar
      Extract consensus_gossip.rs and put it in its own crate (#4284) · c66c191b
      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 23cb3a0a6d25ed732c2cd648607bc44ef2ab0919.
      
      * Crate root documentation
      
      * Remove MessageRecipient
      
      * Address concerns
      
      * Fix more concerns
      
      * Forgot Cargo.lock
      c66c191b
  6. Dec 11, 2019
    • Benjamin Kampmann's avatar
      Fix folder names in client and test (#4360) · c5a709a8
      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
      c5a709a8
    • Benjamin Kampmann's avatar
      Clean up crate names and locations (#4361) · 7773daaf
      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
      7773daaf
    • Benjamin Kampmann's avatar
      Fix folder names in primitives (#4358) · df133d6b
      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
      df133d6b
  7. Dec 10, 2019
  8. Dec 09, 2019
  9. Dec 07, 2019
  10. Dec 06, 2019
  11. Dec 05, 2019
  12. Dec 03, 2019
    • Bryant Eisenbach's avatar
      fix: Typo granpda -> grandpa (#4286) · c0712761
      Bryant Eisenbach authored and asynchronous rob's avatar asynchronous rob committed
      c0712761
    • Max Inden's avatar
      client: Introduce --sentry-nodes flag (#4285) · 2de6f82b
      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.
      2de6f82b
    • Keith Ingram's avatar
      Council members (#4279) · 5edc4350
      Keith Ingram authored
      5edc4350
  13. Dec 02, 2019
  14. Dec 01, 2019
  15. Nov 29, 2019
  16. Nov 28, 2019
    • Arkadiy Paronyan's avatar
      Check block CLI command (#4240) · 504e2f8b
      Arkadiy Paronyan authored
      * Check block operation
      
      * Update client/cli/src/lib.rs
      
      * Update client/cli/src/params.rs
      504e2f8b
    • Svyatoslav Nikolsky's avatar
      Recover transaction pool on light client (#3833) · a782021e
      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
      a782021e
    • Bastian Köcher's avatar
      The storage runtime interface should not enforce a hash type (#4231) · 3e26fced
      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]>
      3e26fced
  17. Nov 27, 2019
    • asynchronous rob's avatar
      safe multi-era slashing for NPoS (#3846) · 4598e130
      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
      4598e130
    • thiolliere's avatar
      Implement all storage after prefix (#4227) · f4035cd5
      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
      f4035cd5
  18. Nov 26, 2019
    • Benjamin Kampmann's avatar
      Remove all (non-dev) `client` references from `frame`, activate dependency enforcer (#4184) · bd652793
      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
      bd652793
    • Weiliang Li's avatar
      Sort node/cli/Cargo.toml (#4205) · afaf66a8
      Weiliang Li authored
      afaf66a8
  19. Nov 25, 2019
    • Alexey's avatar
      Refactor `construct_runtime` to procedural (#3810) · d7b9dd30
      Alexey authored
      
      
      * interim
      
      * interim
      
      * interim
      
      * first working section
      
      * cleanup
      
      * finished parsing
      
      * cleanup
      
      * added system module search
      
      * added clone and find_entry
      
      * generic find_module_entry
      
      * interim
      
      * working event
      
      * added generic event with no instance error
      
      * cleanup
      
      * added decl origin
      
      * cleanup
      
      * added all modules
      
      * added outer dispatch
      
      * added modules expansion
      
      * refactored transformations
      
      * updated error message
      
      * added resolve mechanics
      
      * added metadata
      
      * finished config
      
      * finished inherents
      
      * added validate_unsigned
      
      * added compares
      
      * cleanup
      
      * cleanup
      
      * cleanup
      
      * fix
      
      * updated modules for last one wins
      
      * cleanup
      
      * made nested modules
      
      * updated impl version
      
      * removed comment
      
      * cleanup
      
      * added ui tests
      
      * added optional comma
      
      * removed unnecessary to string cast
      
      * removed no compile
      
      * cleanup
      
      * fmt
      
      * returned nocompile
      
      * Update srml/support/procedural/src/construct_runtime/parse.rs
      
      Co-Authored-By: default avatarthiolliere <[email protected]>
      
      * added where definition
      
      * updated ui tests
      
      * updated ui test cases
      
      * added test case
      
      * updated tests
      
      * interim
      
      * added parse for module part
      
      * removed totokens
      
      * fixes
      
      * fixed multiple iter
      
      * changed TokenStream
      
      * fmt
      
      * updated trybuild
      
      * added test for arguments
      
      * fmt
      
      * fixes + more tests
      
      * fixes
      
      * fmt
      
      * rolled back runtime
      
      * minor fixes
      
      * empty
      
      * fixes
      
      * fmt
      
      * Update paint/support/procedural/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update paint/support/procedural/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update paint/support/procedural/src/construct_runtime/parse.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * interim
      
      * refactored seen_keys
      
      * refactored hash_set
      
      * Update paint/support/procedural/src/construct_runtime/mod.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * refactored find
      
      * fix
      
      * fixed all_modules
      
      * added double declaration check
      
      * small fix
      
      * fmt
      
      * fix
      
      * fix default
      
      * format
      d7b9dd30