Skip to content
  1. Mar 22, 2019
    • Kian Peymani's avatar
      Self-Vote for Staking (among others.) (#2078) · 564c954a
      Kian Peymani authored
      * initial doc for the staking module
      
      * Remove md style links.
      
      * Remove todos.
      
      * Add rust code types
      
      * Rename and fix review notes.
      
      * Add new md file
      
      * Final touches.
      
      * Migrate compleatly to rustdoc
      
      * Update link
      
      * Fix heading
      
      * Final touches wrt the new template.
      
      * Remove empty prereq.
      
      * Fix more reviews
      
      * Some final nits.
      
      * Fix some side issues.
      
      * Fix another set of reviews
      
      * Fix + stabilize leftover reivews.
      
      * Remove unused test parameters
      
      * Fix typo.
      
      * Merge redundant loops
      
      * Adds phantom self-vote
      
      * Fix broken tests.
      
      * Refactor some names to match the reference.
      
      * Remove redundant inner loops from election round.
      
      * Introduce phragmen post-processing.
      
      * Some fixes and todos.
      
      * Fix some tests with new phragmen params
      
      * Fix test
      
      * Bump spec
      
      * Fix wasm build
      
      * Fix tests and phragmen fallback. Avoid double-controlling
      
      * Fix and rebuild wasm
      
      * Whitespaces, whitespaces everywhere.
      
      * Rebuild
      
      * Disable post-processing.
      
      * Identify by stash, not controller account.
      
      * Couple of fixes
      
      * Fix first test
      
      * Fix invulnerability_should_work
      
      * Fix a couple more tests
      
      * Fix more tests
      
      * Fix more tests
      
      * Fix more tests
      
      * Fix some tests
      
      * Fix update-ledger.
      
      * Fix update-ledger.
      
      * Fix another test
      
      * Fix another test
      
      * Fix rest of staking tests
      
      * Remove printlns
      
      * Rebuild wasm
      
      * Fix & tests for auth/val syncing
      
      * Fix up threading for tests
      
      * Remove superfluous asserts
      564c954a
    • cheme's avatar
      Switch contract storage to child trie (#2002) · dd47be51
      cheme authored
      dd47be51
  2. Mar 20, 2019
    • Gav Wood's avatar
      Introduce safe types for handling imbalances (#2048) · dcd77a14
      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
      dcd77a14
  3. Mar 14, 2019
    • Kian Peymani's avatar
      Phragmén Validator Election (#1915) · b86c96ea
      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.
      b86c96ea
  4. Mar 13, 2019
  5. Mar 06, 2019
    • Bastian Köcher's avatar
      Update copyrights to 2019 (#1932) · 7927054f
      Bastian Köcher authored
      7927054f
    • Gav Wood's avatar
      Aggregate all liquidity restrictions in a single place (#1921) · ccc11974
      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.
      ccc11974
  6. Mar 02, 2019
    • Gav Wood's avatar
      Stash/controller model for staking (#1782) · 828cd958
      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
      828cd958
  7. Feb 15, 2019
    • Xiliang Chen's avatar
      Transaction Fee Module (#1648) · fafffdb7
      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.
      fafffdb7
  8. Feb 11, 2019
  9. Feb 10, 2019
    • Gav Wood's avatar
      Vesting schedules. (#1726) · e5ac7f09
      Gav Wood authored
      * Vesting.
      
      * Vesting stuff.
      
      * Add new wasm blobs
      
      * Bump runtime version
      
      * Update lock
      
      * Fix tests
      
      * Bump version
      e5ac7f09
  10. Feb 08, 2019
  11. Jan 22, 2019
    • Bastian Köcher's avatar
      Rewrite Inherent data (#1488) · 70b1af7b
      Bastian Köcher authored
      
      
      * Implement new inherent data
      
      * Fixes compilation on wasm
      
      * Fixes after rebase
      
      * Switch back to generate inherent stuff by macro
      
      * Update after rebase
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarbkchr <[email protected]>
      
      * Fix compilation after rebase
      
      * Address grumbles
      
      * Remove `InherentDataProviders` from `Client`
      
      * Update wasm files after rebase
      
      * Address grumbles
      
      * Fixes compilation after latest merge
      
      * Last fix
      70b1af7b
  12. Jan 16, 2019
    • Gav Wood's avatar
      Split Indices module from Balances (#1404) · c9f047fe
      Gav Wood authored
      * Indices module
      
      * Remove indices stuff from balances
      
      * Rejob node, move Lookup into system.
      
      * Fix up some modules.
      
      * Fix democracy tests
      
      * Fix staking tests
      
      * Fix more tests
      
      * Final test fixes
      
      * Bump runtime versions
      
      * Assets uses compact dispatchers
      
      * Contracts module uses indexed addressing
      
      * Democracy has more compact encoding
      
      * Example now demonstrates compact eencoding
      
      * Sudo uses indexed address
      
      * Upgrade key also uses indexed lookups
      
      * Assets more compact types.
      
      * Fix test
      
      * Rebuild runtime, whitespace
      
      * Remove TOODs
      
      * Remove TODOs
      
      * Add a couple of tests back to balances.
      
      * Update lib.rs
      
      * Update lib.rs
      c9f047fe
  13. Jan 08, 2019
    • Wei Tang's avatar
      Make AuthorityId generic (#1296) · 71d889b6
      Wei Tang authored and Benjamin Kampmann's avatar Benjamin Kampmann committed
      * BlockAuthorityId convenience type
      
      * Rename AuthorityId -> Ed25519AuthorityId to make it more precise
      
      * Generalize AuthorityId up to substrate-client
      
      * Fix in client-db
      
      * rename: BlockAuthorityId -> AuthorityIdFor
      
      * typo: should be digest item
      
      * Fix test-runtime authorityId mismatch
      
      One states that AuthorityId is u64 while the other states that it's Ed25519AuthorityId.
      
      * Fix more u64 - Ed25519AuthorityId mismatch
      
      * Fix compile of most of the srml modules
      
      * Continue to pin aura and grandpa with ed25519 and fix compile
      
      * Add MaybeHash trait
      
      * Fix node-runtime compile
      
      * Fix network tests
      71d889b6
  14. Jan 07, 2019
  15. Dec 10, 2018
    • asynchronous rob's avatar
      Punish offline validators, aura-style (#1216) · 6299b42a
      asynchronous rob authored
      * make offline-reporting infrastructure more generic
      
      * add a listener-trait for watching when the timestamp has been set
      
      * prevent inclusion of empty offline reports
      
      * add test for exclusion
      
      * generate aura-offline reports
      
      * ability to slash many times for being offline "multiple" times
      
      * Logic for punishing validators for missing aura steps
      
      * stub tests
      
      * pave way for verification of timestamp vs slot
      
      * alter aura import queue to wait for timestamp
      
      * check timestamp matches seal
      
      * do inherent check properly
      
      * service compiles
      
      * all tests compile
      
      * test srml-aura logic
      
      * aura tests pass
      
      * everything builds
      
      * some more final tweaks to block authorship for aura
      
      * switch to manual delays before step
      
      * restore substrate-consensus-aura to always std and address grumbles
      
      * update some state roots in executor tests
      
      * node-executor tests pass
      
      * get most tests passing
      
      * address grumbles
      6299b42a
  16. Dec 09, 2018
    • cheme's avatar
      `decl_storage` as a proc_macro (#1176) · ed5b78ea
      cheme authored
      
      
      * `decl_storage` parsing of the macro (TODO change tool crate structure)
      
      * Start formatting, for now use inner macro.
      Still missing optional formating last part (genesis ...).
      
      * Calling extra genesis macro
      
      * decl_storage lines parsing.
      
      * genesis macro as quote (need some cleaning reorg)
      
      * dirty $crate substitute
      
      * proc crate reorg.
      
      * PR impl : skip usage of phantom data, it only applies in test and
      council (others required it).
      
      * Remaining macro of decl_storage, warning stringify behave sometime
      oddly.
      
      * Formatting code and some cleaning.
      
      * Include line parsing to main struct (cannot use existing macro anymore).
      
      * Remove genesis phantom data when there is already a field with type
      parameter.
      
      * Revert wasm files
      
      * Remove old version of `decl_storage`.
      
      * Fix false positive for phantom trait (additional type check on config
      build).
      
      * slight changes:
      - return token errors instead of panic
      - do not use useless intermediate vec
      
      * Update srml/support/procedural/tools/derive/src/lib.rs
      
      remove indent
      
      Co-Authored-By: default avatarcheme <[email protected]>
      
      * Switch iterations to fold, remove unused import.
      ed5b78ea
  17. Nov 21, 2018
    • asynchronous rob's avatar
      Minimal switch of substrate-node to GRANDPA /Aura (#1128) · 11fe84a7
      asynchronous rob authored
      
      
      * add beginnings of SRML grandpa library
      
      * get srml-grandpa compiling
      
      * tests for srml-grandpa
      
      * add optional session integration to grandpa SRML
      
      * start integration into node runtime
      
      * Allow extracting pending change from header digest
      
      * Make it compile on wasm
      
      * make tests compile again
      
      * Move Authority Key fetching into service, simplify service factory construction
      
      * Generalize Authority Consensus Setup system
      
      * Add Authority Setup Docs
      
      * Allow CLI params to be extensible
      
       - move params to structopts
       - split parsing and default command execution
       - add custom config to node
       - extended parsing of custom config
       - extending params via structop's flatten
      
      * Minor fixes on cli extension params:
       - added docs
       - re-add actual app name, rather than node-name
       - make strategy and subcommand optional
      
      * better cli params
      
      * synchronize GRANDPA and normal node authorities
      
      * Implement grandpa::network for gossip consensus
      
      * run_grandpa in Node
      
      * Fix missed merge error
      
      * Integrate grandpa import queue
      
      * more specific type def
      
      * link up linkhalf and import block
      
      * make grandpa future send
      
      * get compiling
      
      * Fix new params convention and license header
      
      * get it running
      
      * rebuild node runtime WASM
      
      * change logging level
      
      * Update node/cli/src/params.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * Update node/cli/src/params.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * Update node/cli/src/lib.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * Update node/runtime/src/lib.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * Update node/cli/src/lib.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * Clean up and Fixme for mutable config
      
      * Move GrandpaService Integration into grandpa, feature gated but on per default
      
      * Fixing grandpa runtime module test
      
      * Update wasm runtime hashes for tests
      
      * GRANDPA: use post-header hash when logging scheduled changes
      
      * add an extra bit of logging to authorities
      
      * fixing missing constrain
      
      * remove old code
      
      * move `NewAuthorities` to an event in srml-grandpa
      
      * fix node-executor tests to use grandpa log
      
      * Remove GossipConsensus from tests, use newly provided sync-feature, fixes tests
      
      * Update to latest wasm runtimes
      
      * address grumbles
      
      * address grumbles
      
      * only derive deserialize when using std
      
      * Clean up use of Deserialize
      11fe84a7
  18. Nov 18, 2018
    • Bastian Köcher's avatar
      Revert and redo #952 (#1133) · d149f335
      Bastian Köcher authored
      * Revert "Pruning changes trie without digests (#952)"
      
      This reverts commit 6f9a505f.
      
      * pruning changes tries without digests
      
      * u64::max_value()
      
      * Update wasm files and fix merge conflict
      
      * Fixes tests
      d149f335
  19. Nov 17, 2018
  20. Nov 16, 2018
  21. Nov 01, 2018
  22. Sep 25, 2018
    • Gav Wood's avatar
      Switch to shiny new fast, RLP-less trie (#795) · 82d6ca34
      Gav Wood authored and Arkadiy Paronyan's avatar Arkadiy Paronyan committed
      * Bump codec
      
      * Fix tests
      
      * Patricia trie builds
      
      * Introduce trie
      
      * Some yak shaving.
      
      * Some fixes
      
      * Remove RLP ref
      
      * Fixes
      
      * It builds!
      
      * Some tests fixed
      
      * Another test fix
      
      * Rejig more hashes
      
      * substrate-trie::iterator_works test
      
      * Update lock
      
      * Polish
      
      * Docs
      
      * Undo incorrect "fix" for tests
      
      * Fix nits
      82d6ca34
  23. Sep 21, 2018
  24. Sep 18, 2018
    • Svyatoslav Nikolsky's avatar
      Light friendly storage tracking: changes trie + extending over ranges (#628) · 7fa337af
      Svyatoslav Nikolsky authored
      * changes_trie
      
      * changs_trie: continue
      
      * changes_trie: adding tests
      
      * fixed TODO
      
      * removed obsolete ExtrinsicChanges
      
      * encodable ChangesTrieConfiguration
      
      * removed polkadot fle
      
      * fixed grumbles
      
      * ext_storage_changes_root returns u32
      
      * moved changes trie root to digest
      
      * removed commented code
      
      * read storage values from native code
      
      * fixed grumbles
      
      * fixed grumbles
      
      * missing comma
      7fa337af
  25. Sep 12, 2018
    • Gav Wood's avatar
      Phase 1 of repo reorg (#719) · 1e011625
      Gav Wood authored and Arkadiy Paronyan's avatar Arkadiy Paronyan committed
      * Remove unneeded script
      
      * Rename Substrate Demo -> Substrate
      
      * Rename demo -> node
      
      * Build wasm from last rename.
      
      * Merge ed25519 into substrate-primitives
      
      * Minor tweak
      
      * Rename substrate -> core
      
      * Move substrate-runtime-support to core/runtime/support
      
      * Rename/move substrate-runtime-version
      
      * Move codec up a level
      
      * Rename substrate-codec -> parity-codec
      
      * Move environmental up a level
      
      * Move pwasm-* up to top, ready for removal
      
      * Remove requirement of s-r-support from s-r-primitives
      
      * Move core/runtime/primitives into core/runtime-primitives
      
      * Remove s-r-support dep from s-r-version
      
      * Remove dep of s-r-support from bft
      
      * Remove dep of s-r-support from node/consensus
      
      * Sever all other core deps from s-r-support
      
      * Forgot the no_std directive
      
      * Rename non-SRML modules to sr-* to avoid match clashes
      
      * Move runtime/* to srml/*
      
      * Rename substrate-runtime-* -> srml-*
      
      * Move srml to top-level
      1e011625
  26. Sep 11, 2018
  27. Sep 07, 2018
    • Gav Wood's avatar
      New extrinsic dispatch model (#678) · 761bc9f7
      Gav Wood authored
      * System and Balances switched to new call model
      
      * Fixed up executive for new pardigm
      
      * Consensus works with Origin
      
      * Timestamp ported over
      
      * Session now compatible
      
      * Ported staking
      
      * Treasury compatible
      
      * Expunge MaybeEmpty
      
      * Make democracy work
      
      * Council compatible
      
      * Remove some aux-dispatch stuff and fix balances
      
      * Rename aux -> origin, fix contracts
      
      * Fix test
      
      * Fix example
      
      * Update macro to remove superfluous cruft
      
      * Make work with new macro
      
      * Tests
      
      * Fix some tests
      
      * Tests
      
      * Fix grumbles
      
      * Final grumble
      761bc9f7
  28. Sep 05, 2018
  29. Sep 04, 2018
    • Gav Wood's avatar
      Introduce treasury and document (#646) · 7657a232
      Gav Wood authored
      * Introduce treasury and document
      
      * Revert bad changes
      
      * More reversions
      
      * Add example crate
      
      - Remove HasPublicAux
      - Rename Concrete -> Runtime
      
      * Actually commit stuff
      
      * Changes
      
      * Propagate block number in finalise.
      
      * Fix and build example
      
      * Fixes.
      
      * Fix compilation for treasury.
      
      * Fix the treasury test
      
      * Tests
      
      * Fix.
      
      * Fix tests
      
      * Fix a few grumbles
      
      * Fixes
      
      * Fix grumbles
      7657a232
  30. Aug 30, 2018
    • Gav Wood's avatar
      Separate out staking module into balances and payment (#629) · 8281618e
      Gav Wood authored
      * Initial commit.
      
      * Split out balances module
      
      * Minimise Balances trait requirements
      
      * Fix up balances, remove balances stuff from staking
      
      * Split off and fix up staking module
      
      * Fix executive tests
      
      * Fix up democracy module
      
      * make council work again
      
      * Remove unneeded cruft from democracy
      
      * Fix up contract module
      
      * Fix up rest of tests
      
      * Fix minor TODOs
      
      * Fix tests
      
      * Remove superfluous code
      
      * Move offline inherents to consensus module.
      
      Fixes #630
      
      * Version needs Decode.
      
      * Move Decode back
      
      * Fix nits
      
      * Refactor to allow custom message
      8281618e
  31. Aug 28, 2018
    • Gav Wood's avatar
      Introduce Runtime Events (#607) · 278a054b
      Gav Wood authored
      * Squashed commit.
      
      New slashing mechanism (#554)  …
      * Slashing improvements
      
      - unstake when balance too low
      - unstake after N slashes according to val prefs
      - don't early-terminate session/era unless unstaked
      - offline grace period before punishment
      * Fix warning
      * Cleanups and ensure slash_count decays
      * Bump authoring version and introduce needed authoring stub
      * Rename
      * Fix offline tracker
      * Fix offline tracker
      * Renames
      * Add test
      * Tests
      * Tests.
      Remove accidental merge files.
      Merge remote-tracking branch 'origin/master' into gav-new-pos
      Version bump, fixes (#572)  …
      * Bump version, don't propose invalid blocks
      * Fix build.
      * Fixes.
      * More fixes.
      * Fix tests.
      * Fix more tests
      * More tests fixed
      Fix merge
      Fix accidental merge bug
      Fixes.
      Staking failsafes  …
      - Don't slash/unstake/change session when too few staking participants
      - Introduce set_balance PrivCall
      Make minimum validator count dynamic.
      test fixes
      Fix tests.
      Fix tests
      Fix tests, update readme.
      Merge remote-tracking branch 'origin/master' into gav-new-pos
      Test with release.
      Use safe math when dealing with total stake
      Fix test again.
      Introduce events into runtime.
      Fix tests
      Add events for account new/reap
      Integration-style tests for events.
      
      * Remove old code
      278a054b
  32. Aug 27, 2018
    • Gav Wood's avatar
      New slashing logic (#570) · f59bcd15
      Gav Wood authored
      * New slashing mechanism (#554)
      
      * Slashing improvements
      
      - unstake when balance too low
      - unstake after N slashes according to val prefs
      - don't early-terminate session/era unless unstaked
      - offline grace period before punishment
      
      * Fix warning
      
      * Cleanups and ensure slash_count decays
      
      * Bump authoring version and introduce needed authoring stub
      
      * Rename
      
      * Fix offline tracker
      
      * Fix offline tracker
      
      * Renames
      
      * Add test
      
      * Tests
      
      * Tests.
      
      * Remove accidental merge files.
      
      * Version bump, fixes (#572)
      
      * Bump version, don't propose invalid blocks
      
      * Fix build.
      
      * Fixes.
      
      * More fixes.
      
      * Fix tests.
      
      * Fix more tests
      
      * More tests fixed
      
      * Fix merge
      
      * Fix accidental merge bug
      
      * Fixes.
      
      * Staking failsafes
      
      - Don't slash/unstake/change session when too few staking participants
      - Introduce set_balance PrivCall
      
      * Make minimum validator count dynamic.
      
      * test fixes
      
      * Fix tests.
      
      * Fix tests
      
      * Fix tests, update readme.
      
      * Test with release.
      
      * Use safe math when dealing with total stake
      
      * Fix test again.
      
      * Fix grumbles.
      f59bcd15
  33. Aug 15, 2018
    • Gav Wood's avatar
      Refactor/substrate state machine generic (#553) · 3d6aaab2
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Genric over hasher
      
      * WIP start adding NodeCodec
      
      * Add codec to TrieBackend
      
      * Typechecks
      
      * Fix error type
      
      * Cleanup
      
      * Tests build (and fail)
      
      * Fix tests: don't use MemoryDB::default()
      
      * Lockfile
      
      * Address grumbles
      
      * Teach environmental! about generics
      
      * Add Finder artifacts
      
      * whitespace
      
      * Add a toy impl of Hasher and plug it in to Externalities
      
      * Use `uint` and `fixed-hash` from `parity-common`
      Remove unused U512
      Add test to ensure H256 impls heapsizeof
      
      * lock file updates
      
      * Make hashes Encodable/Decodable
      
      * lock file updates
      
      * Impl FromIterator for TestExternalities so we can collect() and use map!
      
      * Use rustc-hex from crates
      Use rlp from master so dependencies do not mess up the scope
      
      * Fix tests in runtime-io
      
      * lockfile shenanigans
      
      * Add a BlakeHasher impl
      
      * Use BlakeHasher in runtime-io
      
      * lockfile updates
      
      * ws
      
      * Add a Blake2/RLP-flavoured NodeCodec
      
      * Use Blake-flavoured Hasher and NodeCodec
      
      * lockfile
      
      * Implement PartialEq and Default for TestExternalities
      
      * Add note about limitations of environmental!
      
      * Make it compile, but this is probably broken
      
      * Derive Debug so tests in executor can work
      
      * Make executor use BlakeHasher
      
      * ws
      
      * WIP make client generic
      
      * typechecks
      
      * cleanup
      
      * client tests pass
      
      * Fix client/db
      
      * cleanup
      
      * Fix network
      
      * Fix rpc
      
      * Fix service
      
      * Make TestExternalities work better au lieu d'un HashMap
      
      * Fix tests in council
      
      * Fix tests in contract
      
      * Fix tests in council
      
      * Fix democracy
      
      * Add comment about odd-looking reexports in tests
      
      * Don't need to load branch
      
      * Fix staking
      
      * Fix session
      
      * Some polkadot fixes and lockfile
      
      * Fix executive
      
      * fixup lockfile
      
      * Fix polkadot/api
      
      * Fix polkadot/service
      
      * Fix polkadot/runtime tests
      
      * Fix tests in test-runtime
      
      * Test fixes
      
      * Fix missing component in the `std` feature
      
      * Use PhantomData and Result from core
      
      * Fix paths
      Use core
      
      * load heapsize on wasm
      
      * implement `HeapSizeOf` for wasm
      
      * Add toy impl of `blake2_256` for no_std
      
      * lockfile
      
      * Use kvdb* from parity-common and fix errors
      
      * rebuilt lockfile
      
      * Add dummy impl of `on_advance_round` for rhododendron::Context
      
      * Fix build after merge
      
      * Add HeapSizeOf bound where needed
      
      * Sort out dependencies for no_std
      
      * Add HeapSizeOf bound where needed
      
      * use temp branch pending PR merges
      
      * Remove unneeded tests
      
      * Lock file and wasm artifacts
      
      * lockfile
      
      * Use magic commit for libp2p
      
      * Cleanup
      
      * Implement blake2_256 for no_std
      
      * Back on parity-common master
      
      * missing type params
      
      * Update Cargo.lock
      
      * whitespace
      
      * Rename concrete Rlp node codec "RlpCodec" and use everywhere
      Implement a Keccak-flavoured Rlp NodeCodec and use everywhere
      Add a KeccakHasher
      
      * Switch to use KeccakHasher
      
      * Lock file and runtimes
      
      * fixup lockfile
      
      * Fix outstanding issue using concrete types (thanks @gnunicorn)
      
      * Cleanup
      
      * More cleanup
      
      * Comment out Blake2 Hasher
      
      * implement ext_keccak256
      
      * Address todo: FetchChecker is generic
      
      * all tests passing
      3d6aaab2
  34. Aug 11, 2018
    • asynchronous rob's avatar
      Vote out offline authorities (#524) · e8f21cf0
      asynchronous rob authored
      * notify when an authority appears to have missed their block
      
      * Runtime API
      
      * offline tracker
      
      * Move to consensus
      
      * generating reports of offline indices
      
      * stubbed-out evaluation logic
      
      * Slashing data pathwat
      
      * usize -> u32
      
      * Slash bad validators.
      
      * update to rhododendron 0.3
      
      * fix compilation of polkadot-consensus
      
      * Support offline noting in checked_block
      
      * include offline reports in block authorship voting
      
      * do not vote validators offline after some time
      
      * add test for offline-tracker
      
      * fix test build
      
      * bump spec version
      
      * update wasm
      
      * Only allow validators that are possible to slash
      
      * Fix grumble
      
      * More idiomatic
      
      * New Wasm.
      
      * update rhododendron
      
      * improve logging and reduce round time exponent
      
      * format offline validators in ss58
      e8f21cf0
  35. Jul 29, 2018
    • Sergey Pepyakin's avatar
      Make contract a separate runtime module (#345) · 8c527f29
      Sergey Pepyakin authored
      * decl_module and extract runtime mod
      
      * Invert dependency staking←→contract
      
      * Remove CodeOf
      
      * Remove StorageOf and move double_map
      
      * Comment staking test
      
      * Clean
      
      * Add gas_price and gas_limit
      
      * Commit.
      
      * Renames
      
      * Params
      
      * WIP
      
      * Rename transfer to call
      
      * WIP
      
      * Rebuild binaries.
      
      * WIP
      
      * Backport ctro changes
      
      * Call wiring
      
      * Commit overlay.
      
      * Rename merge → commit, into_state → ..._change_set
      
      * WIP
      
      * Contract creation routines
      
      * Set code of the created account.
      
      * Fix the ID of `create` Call
      
      * Fix most of the warning.
      
      * Add the simplest test in the contract crate
      
      * Transfers work!
      
      * Add contract_create test.
      
      * Clean
      
      * Add top-level create test
      
      * Clean a bit.
      
      * Pass gas_limit and data via create.
      
      * Introduce OnAccountKill callback in staking
      
      * Hook up OnAccountKill
      
      * Comments
      
      * Pay for gas.
      
      * Refund unused gas in call
      
      * Tests for zero call and zero endownment.
      
      * Add todo about rewriting docs
      
      * Pay for gas in create transactions
      
      * Fix refunds
      
      * Clean unrelevant comments
      
      * fixup! Fix refunds
      
      * fixup! Clean unrelevant comments
      
      * Move DetermineContractAddress to contract
      
      Also restore account removal test
      
      * fixup! Clean unrelevant comments
      
      * Inline effect_transfer, remove effect_create
      
      Remove account_db!
      
      * Use own new_test_ext.
      
      * Don't account for liability
      
      * Add some docs
      
      * Move contract_fee into contract module
      
      * Take GasMeter in vm::execute
      
      * Use GasMeter throughout contract module for meter
      
      * gas module refactoring
      
      * Clean
      
      * Add base call fee
      
      * note about gas price should be taken from storage
      
      * Add base fee for create
      
      * Rename send → call
      
      * Clean
      
      * Take fee expressed in dots in gas
      
      * Add Checked{Add,Sub,Mul,Div} to SimpleArithmetic
      
      * Make Gas generic
      
      * Store {call,create}_base_fee in storage
      
      * Clean
      
      * Rename buy_gas
      
      * Store gas_price in the storage
      
      * Remove unneeded comment.
      
      * Bail out if contract already has code.
      
      * Todos
      
      * Refund even if top-level contract fails.
      
      * Fix error msg
      
      * Fix caller issue
      
      * Extract tests module
      
      * Add max_depth var in storage
      
      * Remove left over gas_left
      
      * Refactor exec
      
      * Add test oog test.
      
      * set_free_balance_creating
      
      * Docs and comments.
      
      * Update storage roots because of ContractFee move
      
      * Rebuild binaries.
      
      * Simplify vm code.
      
      * Wrapping.
      
      * Refactor a bit.
      
      * Typo
      
      * UpdateBalanceOutcome enum
      
      * Style grumbles.
      
      * Rebuild binaries.
      
      * Always consume the given amount of gas.
      
      * [skip ci] endownment → endowment
      
      * Rename `AccountId` generic in on_account_kill
      
      * Fix Cargo.lock
      
      * Refine docs for gas meter.
      
      * [skip ci] Add comments for gas module
      
      * Directly assign to `return_data` at declaration
      
      * Use slices instead of vecs to pass the input data
      
      * Add todo about passing return data without copy
      
      * Use checked_add instead of add with overflow
      
      * Use return_data directly.
      
      * Rebuild binaries.
      
      * Rebuild binaries.
      8c527f29
  36. Jul 03, 2018
    • Arkadiy Paronyan's avatar
      Serialisable genesis config (#229) · 9b885ba0
      Arkadiy Paronyan authored
      * Genesis serialization
      
      * Custom type for AuthorityId
      
      * Merge w master
      
      * Fixed a few minor issues
      
      * Fixed unmerged file
      
      * Renamed tag
      
      * Deferred genesis loading
      
      * Upated wasm runtime
      
      * Minor issues
      9b885ba0
  37. Jun 28, 2018