Skip to content
Snippets Groups Projects
  1. Jun 11, 2020
  2. Jun 08, 2020
  3. Jun 06, 2020
  4. Jun 02, 2020
  5. May 26, 2020
  6. May 15, 2020
  7. May 07, 2020
    • Shawn Tabrizi's avatar
      Extend Schedule Pallet for Root Scheduling/Canceling (#5907) · d8b7520a
      Shawn Tabrizi authored
      * Add root dispatch to scheduler
      
      * Move encode operation upwards
      
      * fix benchmark
      
      * extend extrinsics
      
      * add some clarifying comments
      
      * start to add benchmarking
      
      * finish weights
      
      * remove double encode
      
      * bump spec
      
      * Update weights
      
      * more accurate weights
      
      * bump base weight
      d8b7520a
  8. May 06, 2020
    • André Silva's avatar
      grandpa: report equivocations (#3868) · fbd2ac8f
      André Silva authored
      * session: runtime api for generating session membership proofs
      
      * grandpa: add runtime api for creating equivocation report txs
      
      * grandpa: submit signed equivocation report transactions
      
      * grandpa: use proper equivocation report type
      
      * grandpa: report equivocations
      
      * grandpa: validate equivocation proof
      
      * grandpa: update to finality-grandpa 0.9.1
      
      * grandpa: fix encoding of session membership proof
      
      * grandpa: initialize set id session mapping for genesis session
      
      * grandpa: fix bug in set_id session validation
      
      * fix compilation
      
      * cleanup from merge conflicts
      
      * cleanup crate tomls
      
      * grandpa: refactor equivocation handling to separate trait
      
      * node-template: fix compilation
      
      * fix test compilation
      
      * bump finality-grandpa to v0.10.2
      
      * rpc: fix runtime version test
      
      * CHERRY-PICK #4200: Add documentation to SubmitSignedTransaction and actually make it work
      
      Squashed commit of the following:
      
      commit 4f2cb0b1c588a06f2f3b478bb4b28b5cb29d54b9
      Author: Tomasz Drwięga <tomasz@parity.io>
      Date:   Tue Dec 3 16:29:33 2019 +0100
      
          Split the method to avoid confusing type error message.
      
      commit c5bf24eeaaf902add89ed1b046b22c4a4aaeb2cd
      Author: Tomasz Drwięga <tomasz@parity.io>
      Date:   Tue Dec 3 16:19:55 2019 +0100
      
          Make accounts optional, fix logic.
      
      commit 97db1ef556e023cf6847e5ffdb036c0e3ea6fb0a
      Author: Tomasz Drwięga <tomasz@parity.io>
      Date:   Tue Dec 3 10:06:20 2019 +0100
      
          Remove warning.
      
      commit 535f5c116d1a2e826eaf90c3f7e6798e443d61d8
      Merge: 516257217 0f1a5f65
      Author: Tomasz Drwięga <tomasz@parity.io>
      Date:   Tue Dec 3 07:08:05 2019 +0100
      
          Merge branch 'master' into td-signed-transactions
      
      commit 516257217bac89fcebd083712f4ea68b7b23b55a
      Merge: ac98248c6 2e68c80c
      Author: Tomasz Drwięga <tomasz@parity.io>
      Date:   Mon Dec 2 13:57:25 2019 +0100
      
          Merge branch 'master' into td-signed-transactions
      
      commit ac98248c6c56cff381130645a82a13d29933cf83
      Author: Tomasz Drwięga <tomasz@parity.io>
      Date:   Mon Nov 25 17:34:52 2019 +0100
      
          Forgotten import.
      
      commit 67a3c19031506c28e31c6bc4a90fff62d467dd58
      Author: Tomasz Drwięga <tomasz@parity.io>
      Date:   Mon Nov 25 17:32:10 2019 +0100
      
          Fix naming and bounds.
      
      commit 93e768ea9df97a4629fca1f9bc4b108fdb33f876
      Author: Tomasz Drwięga <tomasz@parity.io>
      Date:   Mon Nov 25 17:01:05 2019 +0100
      
          Add documentation to signed transactions and actually make them work.
      
      * grandpa: skip block initialization on report submission method
      
      * primitives: allow transaction pool access by default for offchain calls
      
      * grandpa: unused parameters
      
      * grandpa: remove unused method
      
      * grandpa: enable equivocation reporting
      
      * grandpa: add workaround for parameter encoding
      
      * grandpa: fix localized_payload calls in tests
      
      * fix submit_report_equivocation_extrinsic in runtimes
      
      * node: fix submit transaction test compilation
      
      * node: bump spec_version
      
      * rpc: fix api version test
      
      * grandpa: allow custom equivocation offence type
      
      * grandpa: add test for authorities::next_change_height
      
      * grandpa: cleanup report_equivocation function
      
      * node: move reporting app crypto to node-primitives
      
      * grandpa: move equivocation traits to own module
      
      * grandpa: rename app-crypto crate import
      
      * grandpa: export equivocation types
      
      * node: bump spec_version
      
      * grandpa: rename EquivocationReport to EquivocationProof
      
      * grandpa: add missing docs to primitives
      
      * grandpa: add missing docs to equivocation
      
      * node: fix compilation
      
      * grandpa: add missing docs to pallet
      
      * node: bump spec_version
      
      * fix whitespace
      
      * grandpa: return error on offence reporting
      
      * grandpa: expose session and validator count in proofs through traits
      
      * grandpa: use strong key in module KeyOwnerProofSystem
      
      * grandpa: move key ownership proof to grandpa runtime api
      
      * grandpa: remove unnecessary cloning when checking equivocation proof
      
      * grandpa: make report_equivocation a method in Environment
      
      * support: implement KeyOwnerProofSystem for ()
      
      * grandpa: move KeyOwnerProofSystem to module trait
      
      * test-utils: fix runtime compilation
      
      * grandpa: fix test compilation
      
      * grandpa: fix test compilation after merge
      
      * grandpa: simplify transaction submission types
      
      * grandpa: validate equivocation report in signed extension
      
      * client: fix test
      
      * node: use ValidateEquivocationReport signed extension
      
      * grandpa: expose key ownership proof under opaque type
      
      * grandpa: better docs on key ownership proofs
      
      * grandpa: add note about signed extension
      
      * grandpa: add ValidateEquivocationReport::new
      
      * grandpa: remove skip_initialize_block from runtime api
      
      * grandpa: use new offchain transaction submission API
      
      * grandpa: take set_id in generate_key_ownership_proof
      
      * grandpa: update to finality-grandpa v0.12.2
      
      * grandpa: cleanup usages of AuthoritySet::current
      
      * grandpa: fix test
      
      * grandpa: add mocking utilities for equivocation reporting
      
      * grandpa: add test for equivocation reporting
      
      * grandpa: move SetIdSession initialization
      
      * grandpa: add more tests
      
      * node: enable historical session manager
      
      * node: bump spec_version
      
      * node: use strong key types in KeyOwnerProofSystem definitions
      
      * grandpa: export GrandpaEquivocationOffence type
      fbd2ac8f
  9. Apr 28, 2020
    • thiolliere's avatar
      Update treasury weights. (#5723) · 8b696093
      thiolliere authored
      * treasury weight formula
      
      * use max tippers count
      
      * doc
      
      * Fix upper bound
      
      * rounding a bit
      
      * remove unused + doc
      
      * as u64 -> as Weight
      
      * 2 significative digits rounded up
      
      * rename ContainsCountUpperBound -> ContainsLengthBound
      
      * add doc
      
      * sender account -> origin account
      
      * fix
      8b696093
  10. Apr 24, 2020
  11. Apr 15, 2020
  12. Apr 04, 2020
  13. Apr 01, 2020
  14. Mar 26, 2020
    • Kian Paimani's avatar
      Offchain Phragmén BREAKING. (#4517) · 970c5f94
      Kian Paimani authored
      * Initial skeleton for offchain phragmen
      
      * Basic compact encoding decoding for results
      
      * add compact files
      
      * Bring back Self::ensure_storage_upgraded();
      
      * Make staking use compact stuff.
      
      * First seemingly working version of reduce, full of todos
      
      * Everything phragmen related works again.
      
      * Signing made easier, still issues.
      
      * Signing from offchain compile fine :sunglasses:
      
      * make compact work with staked asssignment
      
      * Evaluation basics are in place.
      
      * Move reduce into crate. Document stuff
      
      * move reduce into no_std
      
      * Add files
      
      * Remove other std deps. Runtime compiles
      
      * Seemingly it is al stable; cycle implemented but not integrated.
      
      * Add fuzzing code.
      
      * Cleanup reduce a bit more.
      
      * a metric ton of tests for staking; wip :hammer:
      
      * Implement a lot more of the tests.
      
      * wip getting the unsigned stuff to work
      
      * A bit gleanup for unsigned debug
      
      * Clean and finalize compact code.
      
      * Document reduce.
      
      * Still problems with signing
      
      * We officaly duct taped the transaction submission stuff. :nerd:
      
      * Deadlock with keys again
      
      * Runtime builds
      
      * Unsigned test works :raised_hands:
      
      * Some cleanups
      
      * Make all the tests compile and stuff
      
      * Minor cleanup
      
      * fix more merge stuff
      
      * Most tests work again.
      
      * a very nasty bug in reduce
      
      * Fix all integrations
      
      * Fix more todos
      
      * Revamp everything and everything
      
      * Remove bogus test
      
      * Some review grumbles.
      
      * Some fixes
      
      * Fix doc test
      
      * loop for submission
      
      * Fix cli, keyring etc.
      
      * some cleanup
      
      * Fix staking tests again
      
      * fix per-things; bring patches from benchmarking
      
      * better score prediction
      
      * Add fuzzer, more patches.
      
      * Some fixes
      
      * More docs
      
      * Remove unused generics
      
      * Remove max-nominator footgun
      
      * Better fuzzer
      
      * Disable it :x:
      
      
      
      * Bump.
      
      * Another round of self-review
      
      * Refactor a lot
      
      * More major fixes in perThing
      
      * Add new fuzz file
      
      * Update lock
      
      * fix fuzzing code.
      
      * Fix nominator retain test
      
      * Add slashing check
      
      * Update frame/staking/src/tests.rs
      
      Co-Authored-By: default avatarJoshy Orndorff <JoshOrndorff@users.noreply.github.com>
      
      * Some formatting nits
      
      * Review comments.
      
      * Fix cargo file
      
      * Almost all tests work again
      
      * Update frame/staking/src/tests.rs
      
      Co-Authored-By: default avatarthiolliere <gui.thiolliere@gmail.com>
      
      * Fix review comments
      
      * More review stuff
      
      * Some nits
      
      * Fix new staking / session / babe relation
      
      * Update primitives/phragmen/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <gui.thiolliere@gmail.com>
      
      * Update primitives/phragmen/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <gui.thiolliere@gmail.com>
      
      * Update primitives/phragmen/compact/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <gui.thiolliere@gmail.com>
      
      * Some doc updates to slashing
      
      * Fix derive
      
      * Remove imports
      
      * Remove unimplemented tests
      
      * nits
      
      * Remove dbg
      
      * Better fuzzing params
      
      * Remove unused pref map
      
      * Deferred Slashing/Offence for offchain Phragmen  (#5151)
      
      * Some boilerplate
      
      * Add test
      
      * One more test
      
      * Review comments
      
      * Fix build
      
      * review comments
      
      * fix more
      
      * fix build
      
      * Some cleanups and self-reviews
      
      * More minor self reviews
      
      * Final nits
      
      * Some merge fixes.
      
      * opt comment
      
      * Fix build
      
      * Fix build again.
      
      * Update frame/staking/fuzz/fuzz_targets/submit_solution.rs
      
      Co-Authored-By: default avatarGavin Wood <gavin@parity.io>
      
      * Update frame/staking/src/slashing.rs
      
      Co-Authored-By: default avatarGavin Wood <gavin@parity.io>
      
      * Update frame/staking/src/offchain_election.rs
      
      Co-Authored-By: default avatarGavin Wood <gavin@parity.io>
      
      * Fix review comments
      
      * fix test
      
      * === :key:
      
       Revamp without staking key.
      
      * final round of changes.
      
      * Fix cargo-deny
      
      * Update frame/staking/src/lib.rs
      
      Co-Authored-By: default avatarGavin Wood <gavin@parity.io>
      
      Co-authored-by: default avatarJoshy Orndorff <JoshOrndorff@users.noreply.github.com>
      Co-authored-by: default avatarthiolliere <gui.thiolliere@gmail.com>
      Co-authored-by: default avatarGavin Wood <gavin@parity.io>
      970c5f94
    • thiolliere's avatar
      Make Staking pallet using a proper Time module. (#4662) · b0d2f4b1
      thiolliere authored
      
      * add new trait, still migration to make
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * implement migration
      
      * better naming
      
      * fix test
      
      * no longer require DeprecatedTime
      
      * add test
      
      * fix version
      
      * upgrade only from kusama
      
      * add test
      
      * fix test
      
      * Update frame/timestamp/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      b0d2f4b1
  15. Mar 24, 2020
  16. Mar 20, 2020
  17. Mar 19, 2020
  18. Mar 16, 2020
    • Gavin Wood's avatar
      Refactor away from opaque hashes (#5226) · af9083f5
      Gavin Wood authored
      
      * System.BlockHash
      
      * Fix hash
      
      * Introduce K/V iteration in all _concat maps
      
      Also move across:
      - System.Account (blake2_128_concat)
      - Balances.Locks (twox_64_concat)
      - ElectionsPhragmen.VotesOf (twox_64_concat)
      - ElectionsPhragmen.StakeOf (twox_64_concat)
      - Identity.IdentityOf (twox_64_concat)
      - Identity.SubsOf (twox_64_concat)
      - Society.Payouts (twox_64_concat)
      - Session.NextKeys (twox_64_concat)
      - Identity.SuperOf (blake2_128_concat)
      - Session.KeyOwner (blake2_128_concat)
      - Society.SuspendedCandidates (twox_64_concat)
      - Society.SuspendedMembers (twox_64_concat)
      - Society.Vouching (twox_64_concat)
      - Society.Strikes (twox_64_concat)
      - System.EventTopics
      - Balances.Account
      
      * Build fixes
      
      * Ensure migration happens in correct order
      
      * Staking.*
      
      * Vesting.* Offences.*
      
      * Democracy.*
      
      * Babe.* Collective.*
      
      * Grandpa.*
      
      * Assets.* Benchmark.* Contracts.* Elections.* Asset.* Nicks.*
      
      Also introduce real account list
      
      * ImOnline.*
      
      * Treasury.*
      
      * Recovery.*
      
      * Final bits.
      
      * Docs
      
      * Fix one test
      
      * Fix test
      
      * All passing except the UI tests
      
      * Remove linked_map part 1
      
      * Remove linked_map
      
      * Some iterator utils for double maps.
      
      * Remove old migrations
      
      * Introduce tombstone for LinkedMap type
      
      * Migration for genesis hash
      
      * Fix build
      
      * Fix hash
      
      * Rename Map is_linked -> unused, keeping backwards compat (#5256)
      
      * Update frame/balances/src/lib.rs
      
      Co-Authored-By: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Update frame/elections/src/lib.rs
      
      Co-Authored-By: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Remove old migration code.
      
      * Update frame/system/src/lib.rs
      
      Co-Authored-By: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Update bin/node/runtime/src/lib.rs
      
      Co-Authored-By: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Fix hash
      
      * fix session migration
      
      * Fix watning
      
      Co-authored-by: default avatarJaco Greeff <jacogr@gmail.com>
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: default avatarRobert Habermeier <rphmeier@gmail.com>
      af9083f5
  19. Mar 11, 2020
  20. Mar 05, 2020
  21. Feb 24, 2020
  22. Feb 20, 2020
  23. Feb 19, 2020
  24. Feb 14, 2020
    • Gavin Wood's avatar
      Composite accounts (#4820) · 5b7512e2
      Gavin Wood authored
      
      * Basic account composition.
      
      * Add try_mutate_exists
      
      * De-duplicate
      
      * Refactor away the UpdateBalanceOutcome
      
      * Expunge final UpdateBalanceOutcome refs
      
      * Refactor transfer
      
      * Refactor reservable currency stuff.
      
      * Test with the alternative setup.
      
      * Fixes
      
      * Test with both setups.
      
      * Fixes
      
      * Fix
      
      * Fix macros
      
      * Make indices opt-in
      
      * Remove CreationFee, and make indices opt-in.
      
      * Fix construct_runtime
      
      * Fix last few bits
      
      * Fix tests
      
      * Update trait impls
      
      * Don't hardcode the system event
      
      * Make tests build and fix some stuff.
      
      * Pointlessly bump runtime version
      
      * Fix benchmark
      
      * Another fix
      
      * Whitespace
      
      * Make indices module economically safe
      
      * Migrations for indices.
      
      * Fix
      
      * Whilespace
      
      * Trim defunct migrations
      
      * Remove unused storage item
      
      * More contains_key fixes
      
      * Docs.
      
      * Bump runtime
      
      * Remove unneeded code
      
      * Fix test
      
      * Fix test
      
      * Update frame/balances/src/lib.rs
      
      Co-Authored-By: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Fix ED logic
      
      * Repatriate reserved logic
      
      * Typo
      
      * Fix typo
      
      * Update frame/system/src/lib.rs
      
      Co-Authored-By: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Update frame/system/src/lib.rs
      
      Co-Authored-By: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Last few fixes
      
      * Another fix
      
      * Build fix
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      Co-authored-by: default avatarJaco Greeff <jacogr@gmail.com>
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      5b7512e2
  25. Feb 13, 2020
    • Kian Paimani's avatar
      Per-things trait. (#4904) · c871eaac
      Kian Paimani authored
      * Give perthigns the trait it always deserved.
      
      * Make staking and phragmen work with the new generic per_thing
      
      * Make everything work together :hammer:
      
      * a bit of cleanup
      
      * Clean usage
      
      * Bump.
      
      * Fix name
      
      * fix grumbles
      
      * hopefully fix the ui test
      
      * Some grumbles
      
      * revamp traits again
      
      * Better naming again.
      c871eaac
  26. Feb 11, 2020
  27. Feb 10, 2020
  28. Feb 04, 2020
  29. Feb 01, 2020
    • Gavin Wood's avatar
      Refactor the balances module (#4649) · d52d8692
      Gavin Wood authored
      
      * Initially scoping out of the problem
      
      * Remove need for exiry in balance locks.
      
      * Remove expiry from locks.
      
      * Remove supefluous balance test
      
      * Amalgamate pieces of balance module
      
      * Split out vesting
      
      * Fix tests
      
      * Fixes for vesting.
      
      * Docs.
      
      * Weight docs.
      
      * Refactor things in terms of set_balances.
      
      * Switch out ED to be free + reserved.
      
      * Remove on_free_balance_zero and some docs.
      
      * Build fixes
      
      * Update frame/vesting/src/lib.rs
      
      Co-Authored-By: default avatarXiliang Chen <xlchen1291@gmail.com>
      
      * Update frame/vesting/src/lib.rs
      
      Co-Authored-By: default avatarXiliang Chen <xlchen1291@gmail.com>
      
      * Migration
      
      * Remove superfluous code.
      
      * Test fixes
      
      * Fix some tests
      
      * Fix repatriate reserve
      
      * Fixes
      
      * Add test for migration
      
      * Final cleanups
      
      * Fix
      
      * Indentation.
      
      * Undo unneeded referencing
      
      * Bump runtime version
      
      * Fixes
      
      Co-authored-by: default avatarXiliang Chen <xlchen1291@gmail.com>
      d52d8692
  30. Jan 10, 2020
    • Gavin Wood's avatar
      Society pallet (#4170) · c81e9df1
      Gavin Wood authored
      
      * Introduce efficient Hash-based RNG streamer
      
      * Initial draft of the society module
      
      * Introduce a test
      
      * Dual-pot logic
      
      * Vouching
      
      * Use chacha
      
      * Half way through moving to cliff payout.
      
      * Fixes
      
      * Add some tests
      
      * Remove printlns
      
      * Merge remote-tracking branch 'origin/gav-verified-id' into gav-verified-id
      
      # Conflicts:
      #	frame/identity/src/lib.rs
      
      * Merge remote-tracking branch 'origin/gav-verified-id' into gav-verified-id
      
      # Conflicts:
      #	frame/identity/src/lib.rs
      
      * Fix `slash_payout`, add test
      
      * Test for multi-slash_payout
      
      * Add docs to `put_bid` function and `bidding_works` test
      
      * Add strikes to test
      
      * Add comments to `rotate_period`
      
      * Implement `suspend_member`
      
      * Off chain iteration of suspended members using linked_map
      
      * Half of suspended candidate
      
      * Finish suspend_candidate, need tests
      
      * Resolve mistakes and feedback, add `suspended_candidate_rejected` test
      
      * Remove logic which increases payout time after un-suspension
      
      * Fix error in `slash_suspended_candidates`, add member check to `vote`
      
      * Fix vouch rewards, dont create zero payouts, add tests for vouch
      
      * Test unvouch
      
      * Unbid tests
      
      * Add lifecycle events, fix `add_member` to update `MembershipChanged`
      
      * Head cannot be removed from society
      
      * Use `add_member` in `found` to ensure `MembershipChanged` is triggered
      
      * Use `Judgement` enum for suspended candidate judgement
      
      * Make society instantiable
      
      * Implement challenges
      
      * Remove extra text in test
      
      * Remove `BlockNumber` return from `slash_payout`
      
      * Add bad vote causes slash test
      
      * Update frame/society/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <gui.thiolliere@gmail.com>
      
      * Add consts to module metadata
      
      * Check `suspended_member` cant bid
      
      * Increase strength of payout check, **must** be a member.
      
      * Start pallet documentation
      
      * Finish docs
      
      * Update library names, use decl_error
      
      * Prevent double bids, add test
      
      * Use `map` for vouching member, and introduce banned vouchers
      
      * Remove leftover docs
      
      * Vouching handles removed member lifecycles w/ tests
      
      * `take` the votes when tallying, add comprehensive checks before vouch or bid
      
      * Check votes are cleaned up
      
      * Check vote is for a valid candidate, add vote event
      
      * Defender vote event
      
      * Fix `judge_suspended_candidate`, add weight docs
      
      * First pass fixes (blank lines, formatting, no operational)
      
      * Bump copyright year
      
      * Make `add_member` infallible
      
      * More feedback updates
      
      * Add storage access complexity
      
      * Fix logic for AutoUnbid
      
      * Complete weight documentation
      
      * Optimize logic which used to result in double storage read.
      
      * Use Bid struct rather than tuple
      
      * Introduce `MaxMembers` configuration constant
      
      * Add comment about fringe scenario where `MaxMembers` could go over, NBD
      
      * Change MaxMembership to configurable storage item with ability for root to update
      
      * Make membership challenges skew toward failure.
      
      If no one at all votes, or the vote is tied, the user will be suspended from society. This means, that the user simply needs to vote for themselves to stay in society assuming no one else participates.
      
      * Refactor `is_candidate`as to avoid possible double storage reads in the future.
      
      * Blank lines
      
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: default avatarthiolliere <gui.thiolliere@gmail.com>
      c81e9df1
    • Shawn Tabrizi's avatar
      Introduce `OnReapAccount` (#4585) · a1e0076a
      Shawn Tabrizi authored
      * Initial run and gun at `OnReapAccount`
      
      * Fix some imports
      
      * More fixes
      
      * Whitespace
      
      * More wack-a-mole
      
      * Gotta catch em all
      
      * Update lib.rs
      
      * Small doc update
      
      * Whitespace
      a1e0076a
  31. Jan 09, 2020
  32. Jan 05, 2020
  33. 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