1. Mar 21, 2019
  2. Mar 20, 2019
    • Gav Wood's avatar
      Introduce safe types for handling imbalances (#2048) · cc8f93c0
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Be a little safer with total issuance.
      
      * PairT instead of _Pair
      
      * Remove rev causing upset
      
      * Remove fees stuff.
      
      * Fix build (including tests)
      
      * Update runtime, bump version
      
      * Fix
      
      * Handle gas refunds properly.
      
      * Rename identifier
      
      ala #2025
      
      * Address grumbles
      
      * New not-quite-linear-typing API
      
      * Slimmer API
      
      * More linear-type test fixes
      
      * Fix tests
      
      * Tidy
      
      * Fix some grumbles
      
      * Keep unchecked functions private
      
      * Remove another less-than-safe currency function and ensure that
      contracts module can never create cash.
      
      * Address a few grumbles and fix tests
      cc8f93c0
  3. Mar 19, 2019
  4. Mar 18, 2019
  5. Mar 15, 2019
    • thiolliere's avatar
      Implement parameterisable modules (#1800) · 7c95fb0b
      thiolliere authored
      * first implementation
      
      * remove done comment
      
      * origin done
      
      * impl log for instance
      
      * impl inherent for instance
      
      * Fix wasm build + full example build
      
      this requires parity codec implements codec for core::marker::PhantomData
      
      * patch parity-codec link to github branch
      
      * improve internal names and fix instance prefix
      
      * Fix in macros
      
      * add test modules for support
      
      this allow to test for construct_runtime as well.
      
      The reason to have put that in another crate is:
      * if we put test in `tests/` dir of srml/support then decl_storage fails to get
        srml-support access because it believes it is inside srml-support
        crate and so derive access to `quote!{ crate }` but this is wrong
        (and I don't see any way to prevent that, and it only bother us so I
        don't think that matters that much)
      * if we put test inside lib.rs then contruct_runtime cannot be used
        because it call some macros that are defined with macros
        (decl_outer_event and decl_outer_origin) and thus rustc complains.
      
      * defaultinstance to its own struct to avoid errors
      
      * enforce <T, I> for Event and Config, impl test
      
      * add origin, log, inherent to test
      
      * test more code generation
      
      * basic storage test
      
      * fix typo
      
      * rename a few imports and field
      
      * delete wip test in example and runtime
      
      * change default prefix to make it backward compatible with test
      
      * rename Instance to I and Instantiable to Instance
      
      note: the name of generic parameter I is only enforce by decl_module!
      and this could be rewritten
      
      * doc
      
      * clean old TODOs
      
      * update parity-codec to 3.2
      
      * update node impl version + builds
      
      * fix warning
      
      * fix unrelated grandpa test
      
      * refactor code
      7c95fb0b
    • Michael Müller's avatar
      Add grandpa telemetry (+ other minor improvements) (#1997) · a29f2141
      Michael Müller authored
      * Support skipping the interactive purge prompt
      
      Skip it via `cargo run -- purge-chain -y`.
      
      * Fix typos
      
      * Add Grandpa telemetry
      
      * Address comments
      
      * Revert unnecessary version bump
      
      * Version bump to make CI run
      
      * Remove unnecessary cast
      
      * Do not bump version
      a29f2141
  6. Mar 14, 2019
    • Bastian Köcher's avatar
      Prerequisites for `validate_block` in Cumulus (#1926) · 6945bdf4
      Bastian Köcher authored
      * Adds benchmark for direct/indirect wasm function calls
      
      * Store the benchmark function pointer in a `Cell`
      
      * Add some documentation
      
      * Make function implementations exchangeable
      
      * Add parachain stub
      
      * Add macro for registering the `validate_block` function
      
      * Make all functions replace-able by unimplemented
      
      * Some more refactoring
      
      * Adds tests for executing empty parachain block
      
      * Work on a new test with empty witness data
      
      * Don't exchange `ext_print_*` stuff
      
      * Some cleanup and one more function for `validate_block`
      
      * More tests and more functions
      
      * Fixes after merging master
      
      * Use `parity-codec` `derive` feature
      
      * CHange implementation of `wasm-nice-panic-message`
      
      * Move `parachain` stuff to cumulus
      
      * Updated wasm files
      
      * Integrate feedback
      
      * Switch to `ExchangeableFunction` struct
      
      * More fixes
      
      * Switch to Cell and panic on multiple replaces
      
      * Increase `impl_version`
      
      * Fix shifting
      
      * Make the API more verbose of `ExchangeableFunction`
      
      * Increase `impl_version`
      6945bdf4
    • Kian Peymani's avatar
      Phragmén Validator Election (#1915) · 375994b0
      Kian Peymani authored
      * adds first draft phragmen with tuned tests and sr-primitives
      
      * fix a few docs and code styles
      
      * clean, organize and finish remaining test cases
      
      * more and more tests
      
      * update edge cases behavior and relavent tests
      
      * fix global test issues
      
      * updated wasm files
      
      * all tests fixed
      
      * cleanup
      
      * fix some global issues
      
      * fix global tests
      
      * bump versions
      
      * fix typo
      
      * first step toward extracting phragmen
      
      * Fix most of the grumbles.
      
      * fix rest of the grumbles
      
      * spaces to tabs
      
      * update wasm
      
      * Removed nightly feature.
      
      * More tests
      
      * Fix broken tests.
      
      * Bump and update wasm.
      375994b0
  7. Mar 13, 2019
    • Gav Wood's avatar
      Overhaul crypto (Schnorr/Ristretto, HDKD, BIP39) (#1795) · 8930f297
      Gav Wood authored
      * Rijig to Ristretto
      
      * Rebuild wasm
      
      * adds compatibility test with the wasm module
      
      * Add Ed25519-BIP39 support
      
      * Bump subkey version
      
      * Update CLI output
      
      * New keys.
      
      * Standard phrase/password/path keys.
      
      * Subkey uses S-URI for secrets
      
      * Move everything to use new HDKD crypto.
      
      * Test fixes
      
      * Ignore old test vector.
      
      * fix the ^^ old test vector.
      
      * Fix tests
      
      * Test fixes
      
      * Cleanups
      
      * Fix broken key conversion logic in grandpa
      
      CC @rphmeier
      
      * Remove legacy Keyring usage
      
      * Traitify `Pair`
      
      * Replace Ed25519AuthorityId with ed25519::Public
      
      * Expunge Ed25519AuthorityId type!
      
      * Replace Sr25519AuthorityId with sr25519::Public
      
      * Remove dodgy crypto type-punning conversions
      
      * Fix some tests
      
      * Avoid trait
      
      * Deduplicate DeriveJunction string decode
      
      * Remove cruft code
      
      * Fix test
      
      * Minor removals
      
      * Build fix
      
      * Subkey supports sign and verify
      
      * Inspect works for public key URIs
      
      * Remove more crypto type-punning
      
      * Fix typo
      
      * Fix tests
      8930f297
  8. Mar 07, 2019
  9. Mar 06, 2019
    • Bastian Köcher's avatar
      Update copyrights to 2019 (#1932) · 82744fbb
      Bastian Köcher authored
      82744fbb
    • 郭光华's avatar
      Delete unused import in finaly-tracker module (#1931) · 66795b07
      郭光华 authored
      * Delete unused import in finaly-tracker module
      
      * Fix test build error
      
      * Revert spec_version
      
      * Rebuild wasm
      66795b07
    • Gav Wood's avatar
      Aggregate all liquidity restrictions in a single place (#1921) · b825e266
      Gav Wood authored
      * Clean up session key rotation
      
      * Fix build
      
      * Bump version
      
      * Introduce feature to balances.
      
      * Move staking locking logic over to central point
      
      * ^^^ rest
      
      * First part of assimilation
      
      * More assimilation
      
      * More assimilation
      
      * Fix most tests
      
      * Fix build
      
      * Move Balances to new locking system
      
      * :q!
      
      * Bump runtime version
      
      * Build runtime
      
      * Convenience function
      
      * Test fix.
      
      * Whitespace
      
      * Improve type legibility.
      
      * Fix comment.
      
      * More tests.
      
      * More tests.
      
      * Bump version
      
      * Caps
      
      * Whitespace
      
      * Whitespace
      
      * Remove unneeded function.
      b825e266
  10. Mar 05, 2019
    • asynchronous rob's avatar
      Offline fallback for GRANDPA (#1619) · 4399e579
      asynchronous rob authored
      
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * skeleton for finality tracker
      
      * dispatch events when nothing finalized for a long time
      
      * begin integrating finality tracker into grandpa
      
      * add delay field to pending change
      
      * add has_api_with function to sr_version for querying APIs
      
      * partially integrate new force changes into grandpa
      
      * implement forced changes
      
      * get srml-grandpa compiling
      
      * Update core/finality-grandpa/src/authorities.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * Update core/finality-grandpa/src/authorities.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * Update core/finality-grandpa/src/authorities.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * remove explicit dependence on CoreApi
      
      * increase node runtime version
      
      * integrate grandpa forced changes into node runtime
      
      * add some tests to finality-tracker
      
      * integrate finality tracking into node-runtime
      
      * test forced-change logic
      
      * test forced changes in the authority-set handler
      
      * kill some unneeded bounds in client
      
      * test forced-changes in finality-grandpa and fix logic
      
      * build wasm and finality-tracker is no-std
      
      * restart voter on forced change
      
      * allow returning custom error type from lock_import_and_run
      
      * extract out most DB logic to aux_schema and use atomic client ops
      
      * unify authority set writing
      
      * implement set pausing
      
      * bump runtime version
      
      * note on DB when we pause.
      
      * core: grandpa: integrate forced changes with multiple pending standard changes
      
      * core: grandpa: fix AuthoritySet tests
      
      * runtime: bump impl_version
      
      * core: clear pending justification requests after forced change import
      
      * srml: finality-tracker: use FinalizedInherentData
      
      * core: log requests for clearing justification requests
      
      * core, node: update runtimes
      
      * core: grandpa: fix tests
      
      * core: grandpa: remove todos and add comments
      
      * core: grandpa: use has_api_with from ApiExt
      
      * core: fix tests
      
      * core: grandpa: remove unnecessary mut modifier
      
      * core: replace PostImportActions bitflags with struct
      
      * core: grandpa: restrict genesis on forced authority set change
      
      * core: grandpa: add more docs
      
      * core: grandpa: prevent safety violations in Environment::finalize_block
      
      * core: grandpa: register finality tracker inherent data provider
      
      * core: grandpa: fix tests
      
      * node: update runtime blobs
      
      * core: grandpa: remove outdated todo
      
      * core: aura: fix typo in log message
      
      * core: grandpa: check re-finalization is on canonical chain
      
      * srml: finality-tracker: fix initialization
      
      * node: update runtime wasm
      
      * srml: finality-tracker: don't re-initialize config keys
      4399e579
    • Hero Bird's avatar
      Make use of parity-codec "derive" crate feature (#1919) · 85b1c780
      Hero Bird authored
      * Make use of parity-codec "derive" crate feature
      
      * Bump impl_version
      
      * Update wasm files and Cargo.lock files
      
      * Transferred to parity_codec derive feature for the rest of the crates
      
      * Update wasm binaries and lock files
      
      * Update core and node wasm binaries
      85b1c780
  11. Mar 04, 2019
  12. Mar 02, 2019
    • Gav Wood's avatar
      Stash/controller model for staking (#1782) · 701fd112
      Gav Wood authored
      * First steps to stash/controller separation
      
      * More drafting
      
      * More drafting
      
      * Finish draft.
      
      * Optimisation
      
      * Remove accidental commit
      
      * Make it build.
      
      * Fix linked map for traits.
      
      * Fix Option<_> variant.
      
      *  Improve naming a tad
      
      * Rebuild runtime
      
      * Builds!
      
      * First test.
      
      * Bump RT version
      
      * Minor fix
      
      * Update Mock
      
      * adds the correct reward testcase (+staking eras which was already ok)
      
      * fixes the basic staking testcase to work properly (along with a small fix in the module)
      
      * New logic to avoid controller transferring stash.
      
      * Fix some build issues.
      
      * adding some comments to tests
      
      * Fix impls.
      
      * adds a few more lines to explain the test case
      
      * More fixes.
      
      * gets the basic test up and running again
      
      * Fix rest of build
      
      * Rebuild wasm
      
      * Fix docs.
      
      * fix staking test with new chnages
      
      * updating some tests, pending questions
      
      * More working tests
      
      * adds double staking test
      
      * Docs
      
      * remove invalid slashing test
      
      * Payee stuff.
      
      * Fix build
      
      * Docs
      
      * Fix test
      
      * Fix a couple of tests
      
      * Layout plan for finishing tests before Pragmen
      
      * Add some working tests
      
      * re-build staking and reward tests
      
      * Add more tests
      
      * fix offline grace test
      
      * Nominator should have payee checked for cleanup
      
      * adds more nomination tets
      
      * adds validator prefs tests
      
      * Fix and clean up some TODOs
      
      * Fix a couple of issues
      
      * Fix tests
      
      * noting warnings from tests
      
      * final fix of local tests
      
      * Fix slot_stake bug
      
      * Half baked test
      
      * Add logic to limit `unstake_threshold` set in storage
      
      * Make sure to check before writing!
      
      Almost forgot this one
      
      * Move a couple of comments
      
      * fix last broken slot_stake test
      
      * Ignore broken test
      701fd112
  13. Mar 01, 2019
  14. Feb 28, 2019
  15. Feb 26, 2019
  16. Feb 25, 2019
  17. Feb 21, 2019
  18. Feb 20, 2019
  19. Feb 19, 2019
    • thiolliere's avatar
      Improve fees module (#1821) · efd5224b
      thiolliere authored
      * remove amount associated
      * make a new trait to bound some arithmetics to balances or assets:
        It also remove arithmetic bounds of srml-support::traits::Currency.
      
        To update your code then use srml_support::traits::ArithmeticType like:
        `type Currency: ArithmeticType + Currency<Self::AccountId, Balance=BalanceOf<Self>>; ` 
        with `type BalanceOf<T> = <<T as Trait>::Currency as ArithmeticType>::Type; `
      
      * improve decl_storage when it explicit serde bound: basically don't try to be smarter than rust and just use where clause.
      efd5224b
  20. Feb 18, 2019
    • Tomasz Drwięga's avatar
      Fix linked map for trait types and Option (#1809) · edf2a8fc
      Tomasz Drwięga authored
      * Fix linked map for traits.
      
      * Fix Option<_> variant.
      
      *  Improve naming a tad
      
      * Rebuild runtime
      
      * Encapsulate private data in the inner module.
      
      * Bump impl version.
      
      * Fix deriving codec in srml-example.
      
      * Fix derivation without importing parity-codec-derive.
      
      * Fix config() for map.
      edf2a8fc
  21. Feb 15, 2019
    • Stanislav Tkach's avatar
      Migrate finality-grandpa to the 2018 edition (#1797) · 50bfe375
      Stanislav Tkach authored and asynchronous rob's avatar asynchronous rob committed
      50bfe375
    • Xiliang Chen's avatar
      Transaction Fee Module (#1648) · 14ee64c3
      Xiliang Chen authored
      * wip
      
      * Split bytes fee charging and charging by amount into different traits.
      
      * Move to edition 2018.
      
      * Implemented charge fee traits for fees module.
      
      * Implemented 'on_finalise' for fee module.
      
      * Updated fees finalize impl.
      
      * Renaming and documentation update.
      
      * Added overflow & underflow check for fee calculation.
      
      * Added mock and unit tests for fee module.
      
      * More unit tests for fees module.
      
      * Fixed srml-executive unit tests.
      
      * Remove transaction base/bytes fee from balances module, fix unit tests.
      
      * fix compile error
      
      * Fixed unit test.
      
      * Minor fixes.
      
      * Bump spec version.
      
      * Bump spec version.
      
      * Updated fees module and runtime wasm.
      
      * Fees module code style improvement; updated runtime wasm.
      
      * Bump spec and impl version.
      14ee64c3
  22. Feb 13, 2019
    • Shawn Tabrizi's avatar
      Adding vesting tests to Balances module (#1786) · 6a4b5806
      Shawn Tabrizi authored
      * Adding vesting tests to Balances module
      
      * Fix gitlab message, bump impl
      6a4b5806
    • Stanislav Tkach's avatar
      ac9d30a8
    • Gav Wood's avatar
      Introduce Ristretto signing (#1730) · 71fb4448
      Gav Wood authored
      
      
      * first draft of ristretto crypto module #1685
      
      * adds better comments and code-style
      
      * remove the last evil unwrap
      
      * remove a mistakenly committed lockfile
      
      * add a fresh new lockfile --will probably need a manual merge later
      
      * fix an invalid old test vector
      
      * Wire in ristretto
      
      * Update comment
      
      * Fix use.
      
      * new Signature type api alias to be compatible with substrate
      
      * Add new keyring, fix node executor tests
      
      * Bump version.
      
      * Remove all hashes.
      
      * Update core/primitives/src/sr25519.rs
      
      Co-Authored-By: default avatargavofyork <[email protected]>
      
      * Revert back to Ed25519 (until JS UI is ready)
      
      * Fix test
      71fb4448
    • Tomasz Drwięga's avatar
      EnumerableStorageMap (#1763) · 21f58001
      Tomasz Drwięga authored
      * Refactor decl_storage a bit to allow easier impl of linked map.
      
      * A bunch of refactorings for storage generation.
      
      - Rename StorageMap and ChildrenStorageMap to avoid confusion with generator::StorageMap.
      - Separate implementation from the procedural macro code to clean it up.
      - Make sure that genesis is initialised using the `StorageValue/StorageMap`
        generated implementations instead of going RAW.
      
      * WiP: Writing test.
      
      * Basic implementation.
      
      * Implement enumeration.
      
      * Fix non-std issues.
      
      * fix warning
      
      * Fix test-client.
      
      * Address review grumbles - part 1
      
      * Avoid cloning the key, relax Storage requirements.
      
      * Rebuild runtime.
      
      * Remove dangling todo.
      21f58001