1. Apr 05, 2018
  2. Apr 04, 2018
    • Gav Wood's avatar
      Traitify Runtime (#104) · 960a5137
      Gav Wood authored
      * Factor out safe-mix and dispatch
      
      * Refactor dispatch into something more modular.
      
      * Fix wasm build.
      
      * Fix up timestamp
      
      * fix warnings.
      
      * Borked timestamp example
      
      * Fix build
      
      * Timestamp as skeleton for traity runtime.
      
      * New storage macro.
      
      * Dispatch module has traity API.
      
      * Move consensus module to new API
      
      * Refactoring and outer dispatch
      
      * Avoid unnecessary derives.
      
      * Abstract the low-level half of system.
      
      * nicer outer dispatch syntax.
      
      * Make runtime compile again (albeit in a heavily simplified state)
      
      * Reworking runtime and the upper levels of system.
      
      * Initial reworking of runtime:
      
      - Introduced executive module;
      - Introduced trait primitives module;
      - Provided an API endpoint.
      
      * Expose an additional function in system
      
      * Another couple of functions traitified in executive.
      
      * another function in executive traitified.
      
      * One more function traitified.
      
      * Finish traitifying executive!
      
      * Traitify session module.
      
      * Cleanups and ensure session gets run.
      
      * First part of traitification of staking module.
      
      * Bit more of staking traitified.
      
      * Additional stuff in staking. Fix up session.
      
      * Penultimate part of staking module.
      
      * Final part of staking (code)
      
      * Update demo runtime to include staking.
      
      * Final tweaks for staking integration.
      
      * Remove old runtime files.
      
      * Schedule staking.
      
      * Minor fixes
      
      * First bits of democracy.
      
      * Democracy module integrated.
      
      * Fix warning.
      
      * Traitify and integrate council module
      
      * Council voting.
      
      * Runtime binary and tweaks.
      
      * Binary update.
      
      * Fix `*Type` grumble.
      
      * Fix up genesis_map
      
      * Remove NonTrivialSlicable
      
      * Staking "test externalities" stuff along with refactor.
      
      * Add session test externalities constructor
      
      * Fixed executor tests.
      
      * Make one test in executive module work.
      
      * Remove test framework stuff into common module.
      
      * Enable other tests in executive
      
      * Session tests reinstated, minor refactoring of keyring.
      
      * Fix staking tests.
      
      * Fix up democracy tests.
      
      * First few tests in council.
      
      * Council tests reinstated :)
      
      * Avoid hardcoding blake2 into Header.
      
      * Fix last few tests.
      
      * Make all primitives generic.
      
      * Fix tests.
      
      * Refactor runtime to remove genesismap.
      
      * Streamline runtime more with macrofied config.
      
      * Clean paths
      
      * Fix warning.
      
      * Consolidate demo runtime crate.
      
      * Remove stale code.
      
      * Refactor away dodgy trait.
      
      * Add corresponding Aux type.
      
      * Fixes
      
      * Rename Digesty -> Digest
      
      * Rename Headery -> Header
      
      * Blocky -> Block
      
      * Fix wasm build.
      
      * kill warnings
      
      * more docs
      
      * minor cleanups
      960a5137
  3. Apr 03, 2018
    • Arkadiy Paronyan's avatar
      BFT gossip (#106) · 719cd174
      Arkadiy Paronyan authored and asynchronous rob's avatar asynchronous rob committed
      * CLI options and keystore integration
      
      * Replace multiqueue with future::mpsc
      
      * BFT gossip
      
      * Revert to app_dirs
      
      * generate_from_seed commented
      719cd174
  4. Mar 30, 2018
    • Arkadiy Paronyan's avatar
      Polkadot service (#82) · d3f3cb71
      Arkadiy Paronyan authored and asynchronous rob's avatar asynchronous rob committed
      * Block import notifications
      
      * Build fix
      
      * Consensus messages supported in the networking
      
      * Started consensus service
      
      * BFT service
      
      * Transaction propagation
      
      * Polkadot service
      
      * CLI integration
      
      * Build fix
      
      * Added signatures validation
      
      * Removed executor argument
      
      * Refactored steam loops; Queue size increased
      
      * Limit queue size
      
      * Fixed doc comment
      
      * Fixed wasm build
      
      * Fixed wasm build
      
      * Check id properly
      d3f3cb71
  5. Mar 21, 2018
    • Sergey Pepyakin's avatar
      Fix wasm build (#102) · 776b61ed
      Sergey Pepyakin authored
      * Reserve pages for heap at initialization time
      
      Since it is freshly allocated memory it won't collide with stack, data or whatever else.
      
      * Compile all wasm files with LTO.
      
      Modules compiled without LTO contain undesired imports and outright invalid (e.g. type mismatches inside the wasm).
      776b61ed
  6. Mar 20, 2018
    • Gav Wood's avatar
      A random beacon (#96) · dc57f768
      Gav Wood authored
      * Completely rework dispatch mechanism into something modular.
      
      Not yet complete but 75% there.
      
      * Council vote tests.
      
      * Fix tests.
      
      * whitespace.
      
      * Fix demo runtime tests.
      
      * Fix up tests.
      
      * Remove dead code.
      
      * Initial util code for random beacon
      
      * Timestamp uses new storage API.
      
      * Move over system module to new API.
      
      * Much nicer storage API, moved over staking module.
      
      * More refactoring.
      
      * Democracy uses new storage API.
      
      * Council uses new RPC.
      
      * Fix more tests.
      
      * Use match for Id
      
      * Generic mix.
      
      * Integrate random beacon
      
      * Update binaries.
      
      * Fixes relating to with_ext removal.
      
      * Remove dead code.
      
      * Rework mixer into an iterator adaptor.
      
      * Link to paper.
      
      * Algorithm cleanups
      
      * Merge and fix test.
      
      * Docs.
      
      * Fix typo.
      
      * rename
      
      * Fix tests.
      dc57f768
  7. Mar 19, 2018
    • Gav Wood's avatar
      Refactor all (demo) runtime modules to use new storage (#98) · 423f5e50
      Gav Wood authored
      * Completely rework dispatch mechanism into something modular.
      
      Not yet complete but 75% there.
      
      * Council vote tests.
      
      * Fix tests.
      
      * whitespace.
      
      * Fix demo runtime tests.
      
      * Fix up tests.
      
      * Remove dead code.
      
      * Timestamp uses new storage API.
      
      * Move over system module to new API.
      
      * Much nicer storage API, moved over staking module.
      
      * More refactoring.
      
      * Democracy uses new storage API.
      
      * Council uses new RPC.
      
      * Fix more tests.
      
      * Use match for Id
      
      * Use match for Id
      
      * Make PrivPass better protected.
      
      * Address other grumbles.
      
      * Give PrivPass a private member.
      
      * Testing PrivPass.
      
      * Add docs.
      
      * Recompile binaries after merge.
      
      * Remove duplicated code.
      
      * New binaries.
      
      * Docs
      
      * Docs
      
      * avoid use of (arguably) confusing terminology.
      423f5e50
    • Gav Wood's avatar
      Modularised dispatch (#95) · f6f7c257
      Gav Wood authored
      * Completely rework dispatch mechanism into something modular.
      
      Not yet complete but 75% there.
      
      * Council vote tests.
      
      * Fix tests.
      
      * whitespace.
      
      * Fix demo runtime tests.
      
      * Fix up tests.
      
      * Remove dead code.
      
      * Use match for Id
      
      * Make PrivPass better protected.
      
      * Address other grumbles.
      
      * Give PrivPass a private member.
      
      * Testing PrivPass.
      
      * Add docs.
      f6f7c257
  8. Mar 16, 2018
  9. Mar 14, 2018
  10. Mar 13, 2018
    • asynchronous rob's avatar
      Slash Authorities for irrefutable misbehavior (#84) · ca28497c
      asynchronous rob authored
      * double-commit and prepare misbehavior
      
      * get misbehavior on completion
      
      * collect misbehavior on drop, not only on success
      
      * kill unused transaction_index field
      
      * add primitive misbehavior report type
      
      * add misbehavior report transaction
      
      * store prior session
      
      * fix set_items
      
      * basic checks for misbehavior reports
      
      * crate for substrate bft misbehavior checking
      
      * integrate misbehavior check crate
      
      * fix comment
      
      * new wasm binaries
      
      * fix hash in test
      
      * import misbehavior transactions into queue
      
      * fix test build
      
      * sign on digest and full proposal when proposing
      
      * detect proposal misbehavior
      
      * fix fallout
      
      * restore balance/bondage types
      ca28497c
  11. Mar 02, 2018
    • Gav's avatar
      Merge branch 'master' into gav-demo · 7ffa9808
      Gav authored
      7ffa9808
    • asynchronous rob's avatar
      Integrate transaction pool to the proposal logic (#80) · 3367658d
      asynchronous rob authored
      * reshuffle consensus libraries
      
      * polkadot-useful type definitions for statement table
      
      * begin BftService
      
      * primary selection logic
      
      * bft service implementation without I/O
      
      * extract out `BlockImport` trait
      
      * allow bft primitives to compile on wasm
      
      * Block builder (substrate)
      
      * take polkadot-consensus down to the core.
      
      * test for preemption
      
      * fix test build
      
      * Fix wasm build
      
      * Bulid on any block
      
      * Test for block builder.
      
      * Block import tests for client.
      
      * Tidy ups
      
      * clean up block builder instantiation
      
      * justification verification logic
      
      * JustifiedHeader and import
      
      * Propert block generation for tests
      
      * network and tablerouter trait
      
      * use statement import to drive creation of further statements
      
      * Fixed rpc tests
      
      * custom error type for consensus
      
      * create proposer
      
      * asynchronous proposal evaluation
      
      * inherent transactions in polkadot runtime
      
      * fix tests to match real polkadot block constraints
      
      * implicitly generate inherent functions
      
      * add inherent transaction functionality to block body
      
      * block builder logic for polkadot
      
      * some tests for the polkadot API
      
      * avoid redundancy in native code compatibility check
      
      * helper for extracting nonce
      
      * transaction pool implementation
      
      * transaction pool
      
      * integrate transaction pool with proposer
      
      * indentation
      
      * kill storage keys module
      
      * accept new transactions to replace old
      3367658d
  12. Feb 25, 2018
    • Gav's avatar
      Initial draft of stakeholder democracy. · c96a1fcd
      Gav authored
      c96a1fcd
    • Gav's avatar
      Use BTreeMap rather than HashMap in demo runtime. · d4e34702
      Gav authored
      d4e34702
    • asynchronous rob's avatar
      Proposal creation and evaluation to plug into BFT (#77) · 05583c34
      asynchronous rob authored
      * reshuffle consensus libraries
      
      * polkadot-useful type definitions for statement table
      
      * begin BftService
      
      * primary selection logic
      
      * bft service implementation without I/O
      
      * extract out `BlockImport` trait
      
      * allow bft primitives to compile on wasm
      
      * Block builder (substrate)
      
      * take polkadot-consensus down to the core.
      
      * test for preemption
      
      * fix test build
      
      * Fix wasm build
      
      * Bulid on any block
      
      * Test for block builder.
      
      * Block import tests for client.
      
      * Tidy ups
      
      * clean up block builder instantiation
      
      * justification verification logic
      
      * JustifiedHeader and import
      
      * Propert block generation for tests
      
      * network and tablerouter trait
      
      * use statement import to drive creation of further statements
      
      * Fixed rpc tests
      
      * custom error type for consensus
      
      * create proposer
      
      * asynchronous proposal evaluation
      
      * inherent transactions in polkadot runtime
      
      * fix tests to match real polkadot block constraints
      
      * implicitly generate inherent functions
      
      * add inherent transaction functionality to block body
      
      * block builder logic for polkadot
      
      * some tests for the polkadot API
      05583c34
  13. Feb 20, 2018
  14. Feb 19, 2018
    • Gav Wood's avatar
      Optional storage entries (#75) · 1308aab5
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Block builder (substrate)
      
      * Fix wasm build
      
      * Bulid on any block
      
      * Test for block builder.
      
      * Block import tests for client.
      
      * Tidy ups
      
      * Repotted client
      
      * Avoid pointless work
      
      * All backend stuff now manages optional storage.
      
      Also simplified a lot of the backend.
      
      * Native runtime-io now supports empty storage items.
      
      * Finish up the API transition.
      
      * Build fix.
      
      * Fix tests.
      
      * Remerge in changes to client.
      
      * Final fixes.
      
      * Unrevert typos
      
      * Remove accidentally committed change
      
      * Bring back zero copy
      
      * Fix merge.
      1308aab5
  15. Feb 16, 2018
    • asynchronous rob's avatar
      Verify header justification during import (#76) · ea520707
      asynchronous rob authored
      * reshuffle consensus libraries
      
      * polkadot-useful type definitions for statement table
      
      * begin BftService
      
      * primary selection logic
      
      * bft service implementation without I/O
      
      * extract out `BlockImport` trait
      
      * allow bft primitives to compile on wasm
      
      * Block builder (substrate)
      
      * take polkadot-consensus down to the core.
      
      * test for preemption
      
      * fix test build
      
      * Fix wasm build
      
      * Bulid on any block
      
      * Test for block builder.
      
      * Block import tests for client.
      
      * Tidy ups
      
      * clean up block builder instantiation
      
      * justification verification logic
      
      * JustifiedHeader and import
      
      * Propert block generation for tests
      
      * Fixed rpc tests
      ea520707
  16. Feb 15, 2018
    • Gav Wood's avatar
      Block builder (substrate) (#73) · 0d8f4c14
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Block builder (substrate)
      
      * Fix wasm build
      
      * Bulid on any block
      
      * Test for block builder.
      
      * Block import tests for client.
      
      * Tidy ups
      
      * clean up block builder instantiation
      
      * Propert block generation for tests
      
      * Fixed rpc tests
      0d8f4c14
    • asynchronous rob's avatar
      Split BFT into substrate-bft and runtime-specific proposer logic (#72) · a45fe6b8
      asynchronous rob authored
      * reshuffle consensus libraries
      
      * polkadot-useful type definitions for statement table
      
      * begin BftService
      
      * primary selection logic
      
      * bft service implementation without I/O
      
      * extract out `BlockImport` trait
      
      * allow bft primitives to compile on wasm
      
      * take polkadot-consensus down to the core.
      
      * test for preemption
      
      * fix test build
      a45fe6b8
  17. Feb 12, 2018
    • Gav Wood's avatar
      Additional runtime tests for the test-runtime (#69) · 3d30b128
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Remove rustc dependency from ed25519 and refactor a little.
      
      * Runtime support provides more extensive test-key functionality.
      
      * Additional APIs for ed25519 stuff.
      
      * Extensive test for test-runtime.
      
      * Fixes for the new test key API.
      
      * Additional convenience for tests
      
      * Take advantage of more convenient API.
      
      * Redo formating.
      
      * Remove old test identities.
      
      * Remove boilerplate, add test.
      
      * Refactor out unneeded code.
      
      * Clean up algo for determining authorities.
      
      * Remove unneeded API.
      
      * Make `to_*` consume
      
      * Only export keyring when testing
      
      * Fix build & warning
      
      * Extract Keyring into separate library.
      
      * Add tests for Keyring and a trait-based API.
      
      * Address grumbles.
      3d30b128
  18. Feb 09, 2018
  19. Feb 08, 2018