Skip to content
  1. Jan 09, 2020
  2. Jan 08, 2020
  3. Jan 05, 2020
  4. Jan 03, 2020
  5. Jan 02, 2020
  6. Dec 24, 2019
  7. Dec 22, 2019
  8. 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
  9. Dec 17, 2019
  10. 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
  11. Dec 10, 2019
  12. Dec 06, 2019
  13. Dec 02, 2019
  14. Dec 01, 2019
  15. Nov 28, 2019
    • 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
  16. 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
  17. 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
  18. Nov 22, 2019
    • Sergey Pepyakin's avatar
      Renaming and documentation for ApplyResult, ApplyOutcome and et al (#4134) · 68351da2
      Sergey Pepyakin authored
      
      
      * Remove superflous errors from the system module
      
      * Rename and document InclusionOutcome
      
      * Rename InclusionError
      
      * Remove unused inclusion errors.
      
      I left the enumeration though since other elements might be used some day.
      
      * Rename and document DispatchOutcome
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * TransactionValidityError instead of InclusionError
      
      * Rename InclusionOutcome to ApplyExtrinsicResult
      
      * Update docs.
      
      * Update lib.rs
      
      should be → is
      
      * Bump the block builder API version.
      
      * Fix the should_return_runtime_version test
      
      * Clean the evidence
      68351da2
    • Tomasz Drwięga's avatar
      Offchain execution extensions (#4145) · 86b6ac55
      Tomasz Drwięga authored
      * Pass Extensions instead of individual objects.
      
      * Move TransactionPool to a separate ExternalitiesExtension.
      
      * Fix compilation.?
      
      * Clean up.
      
      * Refactor testing utilities.
      
      * Add docs, fix tests.
      
      * Fix doctest.
      
      * Fix formatting and add some logs.
      
      * Add some docs.
      
      * Remove unused files.
      86b6ac55
    • Gavin Wood's avatar
      Publish the dispatch info in extrinsic events (#4148) · 082c5817
      Gavin Wood authored
      * Publish the dispatch info in extrinsic events
      
      Place the DispatchInfo (which contains weight information about the
      extrinsic that is otherwise difficult to determine) in the dispatch
      result value.
      
      * Runtime bump.
      
      * Fix build
      
      * Fix tests
      
      * Fix build?
      082c5817
    • Kian Paimani's avatar
      Relocate weight to paint + decouple from extensions (#4124) · 11703a59
      Kian Paimani authored
      
      
      * Fisr migrated version of weight to paint
      
      * Bump
      
      * Minor nits
      
      * Some review fixes.
      
      * Line width
      
      * Revert spec bump
      
      * Fix build
      
      * Update lock file
      
      * Update palette/executive/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update palette/membership/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      11703a59
  19. Nov 21, 2019
  20. Nov 20, 2019
  21. Nov 14, 2019
    • Benjamin Kampmann's avatar
      Reorganising the repository - external renames and moves (#4074) · 60e5011c
      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
      60e5011c
    • Max Inden's avatar
      *: Refactor authority discovery (key mngmt, runtime API) (#3955) · becc3b0a
      Max Inden authored
      * {core,srml}/authority-discovery: Move generic to specific session keys
      
      * {srml,core}/authority-discovery: Verify signature outside of runtime
      
      Given that the `core/authority-discovery` uses concrete authority
      identifiers and signatures, one can verify a signature with the
      authority discovery within `core`. Given the above, the `verify` runtime
      api is obsolete and thus removed.
      
      * *: Add authority discovery to the set of session keys
      
      * *: Sign authority discovery DHT payload with keystore instead of runtime
      
      Instead of calling a runtime function to sign a dht payload, which then
      invokes the keystore, pass the keystore to the authority discovery
      module and use it directly.
      
      * core/authority-discovery: Give libp2p Kademlia time to start up
      
      * core/authority-discovery: Move authorities priority group name to const
      
      * node/runtime/src/lib.rs: Bump runtime spec version
      
      * *: Fix lints and node/testing test failures
      
      * *: Fix formatting
      
      * core/authority-discovery: Box dht event channel in unit tests
      
      * node/cli/src/service.rs: Fix future import
      
      * node/cli/src/service.rs: Replace unwrap by expect with proof
      
      * node/cli/src/chain_spec: Remove TODO for testnet key generation
      
      * core/authority-discovery/src/lib: Remove scale encoding TODOs
      
      * srml/authority-discovery: Make comment a doc comment
      
      * core/authority-discovery: Remove unused StreamExt import
      
      * node/runtime: Bump impl version to debug CI
      
      * Test ci.
      
      * Change the line width to 100.
      
      * Revert "Change the line width to 100."
      
      This reverts commit edff1f855bc71e0418bf3a967f81a35591d882e3.
      
      * Fix a check for polkadot to work on forked repos.
      
      * Revert "node/runtime: Bump impl version to debug CI"
      
      This reverts commit 1a90903b4c929bc55a9e0a538af34b50b7f65139.
      
      * Revert "Test ci."
      
      This reverts commit a2c9df574e645158f77cd2b3d4d9355bcae33aab.
      
      * Cargo.lock: Fix wrong lock file merge
      
      * srml/authority-discovery: Keep track of new validator set not upcoming
      
      * core/authority-discovery: Document key retrieval functions
      becc3b0a
  22. Nov 12, 2019
  23. Nov 11, 2019
  24. Nov 10, 2019
    • Bastian Köcher's avatar
      Substrate runtime interface 2.0 (#4057) · b691cfe0
      Bastian Köcher authored
      * Adds first version of traits for generating the host functions
      
      * First steps of the procedural macro
      
      * Implements generation of the host extern functions
      
      * Prefix ext host function with snake case trait name
      
      * Implement host functions implementation on the host
      
      * Change `HostFunctions` interface
      
      * Implement `HostFunctions` for tuples
      
      * Make `WasmExecutor` generic over the host functions
      
      * Begin to add a test and make it compile
      
      * Make the test succeed
      
      * Add test to ensure that host functions are not found
      
      * It's alive! Make the `set_storage` test work
      
      * Add test for mutable references
      
      * Code cleanup and documentation etc
      
      * Add marker trait for types that should be passed as SCALE encoded
      
      * Inherit the visibility from the trait and more improvements
      
      * More impls and move them into their own file
      
      * Code simplification by dropping one trait
      
      * Give it a better name
      
      * Implement traits for arrays
      
      * Refactor code to support pass by codec/inner
      
      * Docs
      
      * Implement pass by inner for some crypto types and add a test
      
      * Implement exchangeable function support
      
      * Rewrite sr-io with as runtime interface
      
      * Start reworking after master merge
      
      * Adds `PassByCodec` derive
      
      * Adds `PassByInner` derive
      
      * Fix compilation errors
      
      * More implementations
      
      * Implement runtime interface traits for `str`
      
      * Make `sr-io` compile again
      
      * Fix more compilation errors
      
      * More progress on getting stuff back to compile
      
      * More compilation fixes
      
      * Fix warnings
      
      * Remove le conversions
      
      * Add support for `wasm_only` interfaces
      
      * Implement `Allocator` interface
      
      * Improve error message
      
      * Move `WasmAllocator` to `sr-io` and more clean ups
      
      * Use correct function signature for wasm functions
      
      * Store the host functions with the Wasm runtime
      
      * Docs update
      
      * Fix compilation after master merge
      
      * Remove `sr-io/without_std`
      
      * Make `srml-support` tests run again
      
      * More compilation error fixes
      
      * Use correct doc syntax
      
      * Fix test-runtime
      
      * Fix compilation
      
      * Catch native panics when executing the wasm runtime
      
      As with the native runtime, we now catch all native panics when we
      execute the wasm runtime. The panics inside the wasm runtime were
      already catched before by the wasm executor automatically, but any panic
      in the host functions could bring down the node. The recent switch to
      execute the native counterpart of the host function in `sr-io`, makes
      this change required. The native `sr-io` functions just `panic` when
      something is not provided or any other error occured.
      
      * Fix compilation
      
      * Don't panic in a panic
      
      * Move `sr-sandbox` to new runtime interface
      
      * Fixes tests after sandbox changes
      
      * Make sure we detect invalid utf8
      
      * Fixes after master merge
      
      * Adds pass by enum strategy
      
      * Fix wasmtime integration
      
      * Some macro structure clean up
      
      * Rework and test exchangebale host functions
      
      * PassBy derive macros documentation
      
      * Docs for `runtime_interface` macro
      
      * Support wild card argument names
      
      * Adds ui tests
      
      * Make sure that we are backwards compatible to the old runtime interfaces
      
      * Documentation
      
      * Fixes after latest master merge
      
      * Make `wasmtime` happy
      
      * Make `full_crypto` work
      
      * Make the new interface versionable
      
      * Rename `Sanboxing` to `Sandbox`
      
      * Don't finalize in test while importing
      
      * Fix Performance regression
      
      * Fix test
      b691cfe0
  25. Nov 07, 2019
  26. Nov 06, 2019
  27. Nov 05, 2019
  28. Nov 03, 2019
  29. Nov 01, 2019
  30. Oct 31, 2019