1. Jul 06, 2018
    • asynchronous rob's avatar
      Minimal parachains part 2: Parachain statement and data routing (#173) · 6f7f8bf9
      asynchronous rob authored
      * dynamic inclusion threshold calculator
      
      * collators interface
      
      * collation helpers
      
      * initial proposal-creation future
      
      * create proposer when asked to propose
      
      * remove local_availability duty
      
      * statement table tracks includable parachain count
      
      * beginnings of timing future
      
      * finish proposal logic
      
      * remove stray println
      
      * extract shared table to separate module
      
      * change ordering
      
      * includability tracking
      
      * fix doc
      
      * initial changes to parachains module
      
      * initialise dummy block before API calls
      
      * give polkadot control over round proposer based on random seed
      
      * propose only after enough candidates
      
      * flesh out parachains module a bit more
      
      * set_heads
      
      * actually introduce set_heads to runtime
      
      * update block_builder to accept parachains
      
      * split block validity errors from real errors in evaluation
      
      * update WASM runtimes
      
      * polkadot-api methods for parachains additions
      
      * delay evaluation until candidates are ready
      
      * comments
      
      * fix dynamic inclusion with zero initial
      
      * test for includability tracker
      
      * wasm validation of parachain candidates
      
      * move primitives to primitives crate
      
      * remove runtime-std dependency from codec
      
      * adjust doc
      
      * polkadot-parachain-primitives
      
      * kill legacy polkadot-validator crate
      
      * basic-add test chain
      
      * test for basic_add parachain
      
      * move to test-chains dir
      
      * use wasm-build
      
      * new wasm directory layout
      
      * reorganize a bit more
      
      * Fix for rh-minimal-parachain (#141)
      
      * Remove extern "C"
      
      We already encountered such behavior (bug?) in pwasm-std, I believe.
      
      * Fix `panic_fmt` signature by adding `_col`
      
      Wrong `panic_fmt` signature can inhibit some optimizations in LTO mode.
      
      * Add linker flags and use wasm-gc in build script
      
      Pass --import-memory to LLD to emit wasm binary with imported memory.
      
      Also use wasm-gc instead of wasm-build.
      
      * Fix effective_max.
      
      I'm not sure why it was the way it was actually.
      
      * Recompile wasm.
      
      * Fix indent
      
      * more basic_add tests
      
      * validate parachain WASM
      
      * produce statements on receiving statements
      
      * tests for reactive statement production
      
      * fix build
      
      * add OOM lang item to runtime-io
      
      * use dynamic_inclusion when evaluating as well
      
      * fix update_includable_count
      
      * remove dead code
      
      * grumbles
      
      * actually defer round_proposer logic
      
      * update wasm
      
      * address a few more grumbles
      
      * schedule collation work as soon as BFT is started
      
      * impl future in collator
      
      * fix comment
      
      * governance proposals for adding and removing parachains
      
      * bump protocol version
      
      * tear out polkadot-specific pieces of substrate-network
      
      * extract out polkadot-specific stuff from substrate-network
      
      * begin polkadot network subsystem
      
      * grumbles
      
      * update WASM checkins
      
      * parse status from polkadot peer
      
      * allow invoke of network specialization
      
      * begin statement router implementation
      
      * remove dependency on tokio-timer
      
      * fix sanity check and have proposer factory create communication streams
      
      * pull out statement routing from consensus library
      
      * fix comments
      
      * adjust typedefs
      
      * extract consensus_gossip out of main network protocol handler
      
      * port substrate-bft to new tokio
      
      * port polkadot-consensus to new tokio
      
      * fix typo
      
      * start message processing task
      
      * initial consensus network implementation
      
      * remove known tracking from statement-table crate
      
      * extract router into separate module
      
      * defer statements until later
      
      * double signature is invalid
      
      * propagating statements
      
      * grumbles
      
      * request block data
      
      * fix compilation
      
      * embed new consensus network into service
      
      * port demo CLI to tokio
      
      * all test crates compile
      
      * some tests for fetching block data
      
      * whitespace
      
      * adjusting some tokio stuff
      
      * update exit-future
      
      * remove overly noisy warning
      
      * clean up collation work a bit
      
      * address review grumbles
      
      * fix lock order in protocol handler
      
      * rebuild wasm artifacts
      
      * tag AuthorityId::from_slice for std only
      
      * address formatting grumbles
      
      * rename event_loop to executor
      
      * some more docs for polkadot-network crate
      6f7f8bf9
  2. Jul 03, 2018
    • Arkadiy Paronyan's avatar
      Runtime version (#256) · 710ae51d
      Arkadiy Paronyan authored
      * Runtime version
      
      * Updated genesis.wasm
      
      * Minor fixes
      
      * Fresh runtime
      
      * Default version for pre Poc-2; Fixed authorship interface check
      
      * Fixed authoring check
      710ae51d
  3. Jun 28, 2018
    • Arkadiy Paronyan's avatar
      State pruning (#216) · 95636c16
      Arkadiy Paronyan authored
      * Started work on state db
      
      * Updated for a new hash type
      
      * Pruning and tests
      
      * Generalize on the block hash/key type
      
      * Integrate with the client backend
      
      * Merge w master
      
      * CLI options
      
      * Updated for light client refactoring
      
      * Used IntoIterator
      
      * Fixed invalid input hadling
      95636c16
  4. Jun 25, 2018
  5. Jun 21, 2018
    • Gav Wood's avatar
      Dump genesis to JSON file (#218) · b4cb978a
      Gav Wood authored
      * Merge remote-tracking branch 'origin/master' into gav-xts-dont-panic
      
      * Update wasm.
      
      * consensus, session and staking all panic-safe.
      
      * Democracy doesn't panic in apply.
      
      * Fix tests.
      
      * Extra helper macro, council depanicked.
      
      * Fix one test.
      
      * Fix up all council tests. No panics!
      
      * Council voting depanicked.
      
      * Dispatch returns result.
      
      * session & staking tests updated
      
      * Fix democracy tests.
      
      * Fix council tests.
      
      * Fix up polkadot parachains in runtime
      
      * Fix borked merge
      
      * More Slicable support
      
      Support general `Option` and array types.
      
      * Basic storage types.
      
      * Existential deposit for contract creation
      
      * Basic implemnetation along with removals
      
      * Fix tests.
      
      * externalities builder fix.
      
      * Tests.
      
      * Fix up the runtime.
      
      * Fix tests.
      
      * Add generic `Address` type.
      
      * Initial function integration of Address into Extrinsic.
      
      * Fix build
      
      * All tests compile.
      
      * Fix (some) tests.
      
      * Fix signing.
      
      * Push error.
      
      * transfer can accept Address
      
      * Make Address generic over AccountIndex
      
      * Fix test
      
      * Make Council use Address for dispatch.
      
      * Fix build
      
      * Bend over backwards to support braindead derive.
      
      * Repot some files.
      
      * Fix tests.
      
      * Fix grumbles
      
      * Remove Default bound
      
      * Fix build for new nightly.
      
      * Make `apply_extrinsic` never panic, return useful Result.
      
      * More merge hell
      
      * Doesn't build, but might do soon
      
      * Serde woes
      
      * get substrate-runtime-staking compiling
      
      * Polkadot builds again!
      
      * Fix all build.
      
      * Fix tests & binaries.
      
      * Reserve some extra initial byte values of address for future format changes
      
      * Make semantic of `ReservedBalance` clear.
      
      * Fix panic handler.
      
      * Integrate other balance transformations into the new model
      
      Fix up staking tests.
      
      * Fix runtime tests.
      
      * Fix panic build.
      
      * Tests for demonstrating interaction between balance types.
      
      * Repot some runtime code
      
      * Fix checkedblock in non-std builds
      
      * Get rid of `DoLookup` phantom.
      
      * Attempt to make transaction_pool work with lookups.
      
      * Remove vscode settings
      
      * New attempt at making transaction pool work.
      
      * It builds again!
      
      * --all builds
      
      * Fix tests.
      
      * New build.
      
      * Test account nonce reset.
      
      * polkadot transaction pool tests/framework.
      
      * Initial draft (working).
      
      * Address grumbles.
      
      * Revert bad `map_or`
      
      * Rebuild binaries, workaround.
      
      * Avoid checking in vscode
      
      * reconnecting, shared, slog
      
      * CLI options for name and telemetry url
      
      * ensure telemetry url imples enabled
      
      * Avoid casting to usize early.
      
      * Provide on-connect event for session message
      
      * Better port
      
      * heartbeat and some renaming
      
      * transaction pool stuff
      
      * minor renaming.
      
      * report telemetry
      
      * cleanups.
      
      * Fix for previous cleanup
      
      * dump genesis, dev mode, renaming
      
      * Rework chain spec/config &c. to allow for genesis file loading.
      
      * Avoid producing genesis storage when unneeded
      
      * Allow reading JSON genesis state dumps
      
      * tests work again
      
      * better logging.
      
      * Fix wasm build.
      
      * Introduce PoC-1 spec
      
      * Made block message compatible with poc-1
      
      * Squashed changes for dumping genesis block.
      
      * Binaries.
      
      * Made block message compatible with poc-1
      
      * Remove dead code.
      
      * Fix bad merge.
      
      * Argument passing and returning values when invoking sandboxed funcs (#189)
      
      * Fixed block download sequence (#223)
      
      * Trie-based execution proof (#177)
      
      * TrieBasedBackend
      
      * trie tests
      
      * redunant return_value removed
      
      * use Trie::get_with to record trie proofs
      
      * Relaying tx/blocks by light clients (#190)
      
      * do not import external transactions into light tx pool
      
      * do not announce blocks on light clients
      
      * blocks_are_not_announced_by_light_nodes
      b4cb978a
  6. Jun 20, 2018
    • Gav Wood's avatar
      Telemetry (Slog + WS) (#217) · b7b4cc77
      Gav Wood authored
      * Merge remote-tracking branch 'origin/master' into gav-xts-dont-panic
      
      * Update wasm.
      
      * consensus, session and staking all panic-safe.
      
      * Democracy doesn't panic in apply.
      
      * Fix tests.
      
      * Extra helper macro, council depanicked.
      
      * Fix one test.
      
      * Fix up all council tests. No panics!
      
      * Council voting depanicked.
      
      * Dispatch returns result.
      
      * session & staking tests updated
      
      * Fix democracy tests.
      
      * Fix council tests.
      
      * Fix up polkadot parachains in runtime
      
      * Fix borked merge
      
      * More Slicable support
      
      Support general `Option` and array types.
      
      * Basic storage types.
      
      * Existential deposit for contract creation
      
      * Basic implemnetation along with removals
      
      * Fix tests.
      
      * externalities builder fix.
      
      * Tests.
      
      * Fix up the runtime.
      
      * Fix tests.
      
      * Add generic `Address` type.
      
      * Initial function integration of Address into Extrinsic.
      
      * Fix build
      
      * All tests compile.
      
      * Fix (some) tests.
      
      * Fix signing.
      
      * Push error.
      
      * transfer can accept Address
      
      * Make Address generic over AccountIndex
      
      * Fix test
      
      * Make Council use Address for dispatch.
      
      * Fix build
      
      * Bend over backwards to support braindead derive.
      
      * Repot some files.
      
      * Fix tests.
      
      * Fix grumbles
      
      * Remove Default bound
      
      * Fix build for new nightly.
      
      * Make `apply_extrinsic` never panic, return useful Result.
      
      * More merge hell
      
      * Doesn't build, but might do soon
      
      * Serde woes
      
      * get substrate-runtime-staking compiling
      
      * Polkadot builds again!
      
      * Fix all build.
      
      * Fix tests & binaries.
      
      * Reserve some extra initial byte values of address for future format changes
      
      * Make semantic of `ReservedBalance` clear.
      
      * Fix panic handler.
      
      * Integrate other balance transformations into the new model
      
      Fix up staking tests.
      
      * Fix runtime tests.
      
      * Fix panic build.
      
      * Tests for demonstrating interaction between balance types.
      
      * Repot some runtime code
      
      * Fix checkedblock in non-std builds
      
      * Get rid of `DoLookup` phantom.
      
      * Attempt to make transaction_pool work with lookups.
      
      * Remove vscode settings
      
      * New attempt at making transaction pool work.
      
      * It builds again!
      
      * --all builds
      
      * Fix tests.
      
      * New build.
      
      * Test account nonce reset.
      
      * polkadot transaction pool tests/framework.
      
      * Initial draft (working).
      
      * Address grumbles.
      
      * Revert bad `map_or`
      
      * Rebuild binaries, workaround.
      
      * Avoid checking in vscode
      
      * reconnecting, shared, slog
      
      * CLI options for name and telemetry url
      
      * ensure telemetry url imples enabled
      
      * Avoid casting to usize early.
      
      * Provide on-connect event for session message
      
      * Better port
      
      * heartbeat and some renaming
      
      * transaction pool stuff
      
      * minor renaming.
      
      * report telemetry
      
      * cleanups.
      
      * Fix for previous cleanup
      
      * Initial draft (working).
      
      * Avoid checking in vscode
      
      * reconnecting, shared, slog
      
      * CLI options for name and telemetry url
      
      * ensure telemetry url imples enabled
      
      * Provide on-connect event for session message
      
      * Better port
      
      * heartbeat and some renaming
      
      * transaction pool stuff
      
      * minor renaming.
      
      * report telemetry
      
      * cleanups.
      
      * Fix for previous cleanup
      
      * Address grumble
      
      * Final grumble and repot telemetry to substrate
      
      * Fix comment
      
      * Please build, travis...
      b7b4cc77
  7. Jun 19, 2018
  8. Jun 05, 2018
  9. May 31, 2018
    • Tomasz Drwięga's avatar
      Extrinsic pool (#182) · e8be27c0
      Tomasz Drwięga authored
      * Use latest version of txpool.
      
      * Initial version of the pool.
      
      * Fix abstraction.
      
      * Implement watchers and notifications.
      
      * Return hash from RPC.
      
      * Remove commented code.
      
      * Remove client dep.
      
      * Fix tests.
      e8be27c0
  10. May 29, 2018
    • Gav Wood's avatar
      Key generation utility (#176) · e4895b5b
      Gav Wood authored
      * RPCs for versioning.
      
      * Build fix for bad merge.
      
      * Add system_name RPC
      
      * Fix tests.
      
      * Fix demo build.
      
      * Remove BadFormat.
      
      * Add ss58check encoding and subkey.
      
      * Improvements.
      
      * Update Cargo.toml
      e4895b5b
  11. May 25, 2018
    • asynchronous rob's avatar
      Minimal parachain framework part 1 (#113) · 800c138f
      asynchronous rob authored
      * dynamic inclusion threshold calculator
      
      * collators interface
      
      * collation helpers
      
      * initial proposal-creation future
      
      * create proposer when asked to propose
      
      * remove local_availability duty
      
      * statement table tracks includable parachain count
      
      * beginnings of timing future
      
      * finish proposal logic
      
      * remove stray println
      
      * extract shared table to separate module
      
      * change ordering
      
      * includability tracking
      
      * fix doc
      
      * initial changes to parachains module
      
      * initialise dummy block before API calls
      
      * give polkadot control over round proposer based on random seed
      
      * propose only after enough candidates
      
      * flesh out parachains module a bit more
      
      * set_heads
      
      * actually introduce set_heads to runtime
      
      * update block_builder to accept parachains
      
      * split block validity errors from real errors in evaluation
      
      * update WASM runtimes
      
      * polkadot-api methods for parachains additions
      
      * delay evaluation until candidates are ready
      
      * comments
      
      * fix dynamic inclusion with zero initial
      
      * test for includability tracker
      
      * wasm validation of parachain candidates
      
      * move primitives to primitives crate
      
      * remove runtime-std dependency from codec
      
      * adjust doc
      
      * polkadot-parachain-primitives
      
      * kill legacy polkadot-validator crate
      
      * basic-add test chain
      
      * test for basic_add parachain
      
      * move to test-chains dir
      
      * use wasm-build
      
      * new wasm directory layout
      
      * reorganize a bit more
      
      * Fix for rh-minimal-parachain (#141)
      
      * Remove extern "C"
      
      We already encountered such behavior (bug?) in pwasm-std, I believe.
      
      * Fix `panic_fmt` signature by adding `_col`
      
      Wrong `panic_fmt` signature can inhibit some optimizations in LTO mode.
      
      * Add linker flags and use wasm-gc in build script
      
      Pass --import-memory to LLD to emit wasm binary with imported memory.
      
      Also use wasm-gc instead of wasm-build.
      
      * Fix effective_max.
      
      I'm not sure why it was the way it was actually.
      
      * Recompile wasm.
      
      * Fix indent
      
      * more basic_add tests
      
      * validate parachain WASM
      
      * produce statements on receiving statements
      
      * tests for reactive statement production
      
      * fix build
      
      * add OOM lang item to runtime-io
      
      * use dynamic_inclusion when evaluating as well
      
      * fix update_includable_count
      
      * remove dead code
      
      * grumbles
      
      * actually defer round_proposer logic
      
      * update wasm
      
      * address a few more grumbles
      
      * grumbles
      
      * update WASM checkins
      
      * remove dependency on tokio-timer
      800c138f
  12. May 02, 2018
    • Arkadiy Paronyan's avatar
      Database backend (#133) · 8c8576e3
      Arkadiy Paronyan authored
      * DB backend
      
      * DB backend
      
      * Cleanup
      
      * Clean build files after running tests
      
      * Fixed comment
      
      * add OOM lang item to runtime-io
      8c8576e3
  13. May 01, 2018
  14. Apr 11, 2018
  15. Apr 06, 2018
    • Arkadiy Paronyan's avatar
      Consensus message buffering and more (#114) · 7519c2b2
      Arkadiy Paronyan authored
      * CLI options and keystore integration
      
      * Replace multiqueue with future::mpsc
      
      * BFT gossip
      
      * Revert to app_dirs
      
      * generate_from_seed commented
      
      * Refactor event loop
      
      * Start consensus by timer
      
      * Message buffering
      
      * Minor fixes
      
      * Work around duty-roster issue.
      
      * some more minor fixes
      
      * fix compilation
      
      * more consistent formatting
      
      * make bft input stream never conclude
      
      * Minor fixes
      
      * add timestamp module to executive
      
      * more cleanups and logging
      
      * Fixed message propagation
      7519c2b2
  16. Apr 04, 2018
    • Gav Wood's avatar
      Traitify Runtime (#104) · 82eae59f
      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
      82eae59f
  17. Mar 30, 2018
    • Arkadiy Paronyan's avatar
      Polkadot service (#82) · 8561d59f
      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
      8561d59f
  18. Mar 16, 2018
  19. Mar 13, 2018
    • asynchronous rob's avatar
      Slash Authorities for irrefutable misbehavior (#84) · ec7a4402
      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
      ec7a4402
  20. Mar 02, 2018
    • asynchronous rob's avatar
      Integrate transaction pool to the proposal logic (#80) · 239acade
      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
      239acade
  21. Feb 20, 2018
  22. Feb 15, 2018
    • asynchronous rob's avatar
      Split BFT into substrate-bft and runtime-specific proposer logic (#72) · b5b1cb7e
      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
      b5b1cb7e
  23. Feb 12, 2018
    • Gav Wood's avatar
      Additional runtime tests for the test-runtime (#69) · 8629e4a1
      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.
      8629e4a1
  24. Feb 09, 2018
    • Gav Wood's avatar
      Introduce toy runtime for testing inside substrate. (#66) · 74a897df
      Gav Wood authored
      * Introduce simple blockchain runtime for substrate tests.
      
      * Remove bad files.
      
      * Add needed wasm binaries.
      
      * Refactoring.
      
      - Repot files in test-runtime.
      - Rename troublesome `Joiner::join` to `Joiner::and`.
      - Rework `Slicable` to dedup code.
      
      * More fixes and refactoring
      
      * Rebuild substrate test wasm.
      
      * Fix merge errors.
      
      * Rename the disasterously named `to_vec` to `encode`.
      
      Also rename `as_slice_then` to `with_encoded`.
      
      * Tests for toy runtime.
      
      * Fix doc nit
      74a897df
  25. Feb 08, 2018
    • asynchronous rob's avatar
      Re-introduce zero copy codec and add minimal polkadot client API which uses... · 064c01e8
      asynchronous rob authored
      Re-introduce zero copy codec and add minimal polkadot client API which uses linked native runtime (#65)
      
      * client-api type and move duty roster types to primitives
      
      * tuple implementation for slicable
      
      * mild cleanup of deserialization code
      
      * stubs which handle encoding and decoding themselves
      
      * fancier impl_stubs macro
      
      * zero-copy slicable API
      
      * minimal polkadot-client API
      
      * fix WASM API generation
      
      * move native environment stuff to substrate executor
      
      * fix warnings and grumbles
      064c01e8
    • Arkadiy Paronyan's avatar
      Networking tests and fixes (#61) · d30e4c51
      Arkadiy Paronyan authored
      * BlockId in client interface
      
      * Sync fixes and tests
      
      * Updated to latest primitives
      
      * Updated dependencies
      
      * Updated for new (old) primitives
      
      * Network as workspace member
      
      * substrate-network
      
      * Removed obsolete file
      
      * begin_transaction on hash
      d30e4c51
    • Gav's avatar
      Fix warning and directory restructure. · 71e1b17a
      Gav authored
      71e1b17a
  26. Feb 07, 2018
  27. Jan 30, 2018
  28. Jan 23, 2018
    • Gav Wood's avatar
      Introduce basic skeleton for Polkadot runtime. (#32) · 0039a32e
      Gav Wood authored and Arkadiy Paronyan's avatar Arkadiy Paronyan committed
      * Introduce basic skeleton for Polkador runtime.
      
      * Clean up the runtime skeleton.
      
      * Make initial runtime skeleton compile.
      
      * Compile polkadot-runtime both for Wasm ad native, allowing for testing and direct usage.
      
      * More fleshing out on runtime.
      
      * Update native support.
      
      * Fix warning.
      
      * Update gitignore
      
      * Update path.
      
      * Fix path.
      
      * Remove accidentally committed files.
      
      * Add wasm binaries.
      
      * Fix test.
      
      * Native storage support API.
      
      * Add environmental module
      
      * Add native environment to make native source-code compatible with wasm.
      
      Also tests.
      
      * Finish up & polish environment stuff.
      
      * Avoid using reentrancy issues.
      
      * Add some docs and a test.
      
      * Remove unneeded function.
      
      * Documentation
      
      * Tweak docs
      
      * Remove TODOs.
      
      * Balance transfers + util methods.
      
      * Rejig tests and ensure authorities are addressed consistently.
      
      * Add marshaller for xfer function
      
      * Transaction dispatch test.
      
      * Minor fix.
      
      * Add test for ser/de transaction.
      
      * Add ser/de for header.
      
      * Add tests for header ser/de
      
      * Introduce basic block decoding/execution framework.
      
      * Introduce block decoding/execution framework (p2)
      
      * Big refactor.
      
      * Split out joiner.
      
      * Hide away support modules.
      
      * Fix up wasm runtime.
      
      * use externalities for chain_id
      
      * Clean up (Test)Externalities.
      
      * Repot and introduce keccak-256 external.
      
      * Signing with crypto.
      
      * fix unsafety hole in environmental using function
      
      * Introduce Ed25519 crypto.
      
      * Repotting.
      
      * Add ed25519_verify external.
      
      * Introduce Ed25519 verify as an external.
      
      * fix unsafety hole around unwinding
      
      * Compile fixes.
      
      * use new environmental API
      
      * Tests for ed25519 verify.
      
      * Polish
      
      * Introduce UncheckedTransaction & test.
      
      * Implement basic block and tx processing
      
      * Introduce static hex and valid signature for block test.
      
      * Repot session.
      
      * comments.
      
      * Refactor and timestamp test
      
      * Remove fluff
      
      * Remove fluff.
      
      * Staking eras and tests.
      
      * Implement sessions.
      
      * Polish
      
      * Test sessions.
      
      * Introduce better hashing.
      
      - Blake2 for secure hashing
      - XX for fast hashing
      
      * Fix tests.
      
      * Introduce staking.
      
      * Tests for simple staking system.
      
      * Build fix for wasm.
      
      * Fix tests.
      
      * Repotting and docs.
      
      * Docs and licence.
      
      * Documentation.
      
      * Remove superfluous code.
      
      * Remove dummy key.
      
      * Remove other superfluous file.
      
      * Optimise with swap_remove
      0039a32e
  29. Jan 10, 2018
  30. Jan 09, 2018
  31. Jan 08, 2018
    • Gav Wood's avatar
      Introduce first groundwork for Wasm executor (#27) · b38b6336
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Introduce first groundwork for Wasm executor.
      
      * Remove old Rust-runtime code.
      
      * Avoid commiting compled files.
      
      * Add runtime precompile.
      
      * Rename so module makes more sense.
      
      * Further renaming.
      
      * Ensure tests work.
      
      * Allow bringing in of externalities.
      
      - Add util functions/macros.
      - Add uncompacted runtime.
      - Add some external crates from pwasm-std for managing allocs/memory
      stuff.
      
      * Nice macros for imports.
      
      * Allow passing in of data through allocators.
      
      Make memcpy and malloc work.
      Basic allocator.
      
      * Can now pass in bytes to WasmExecutor.
      
      * Additional cleanup.
      
      * Switch usages of `OutData` to `u64`
      
      No need to be able to return bytes anymore.
      
      * convert to safe but extremely verbose type conversion.
      
      @rphmeier any more concise way of doing this?
      
      * Remove StaticExternalities distinction.
      
      * Remove another unused use.
      
      * Refactor wasm utils out
      
      * Remove extraneous copies that weren't really testing anything.
      
      * Try to use wasm 0.15
      
      * Make it work!
      
      * Call-time externalities working.
      
      * Add basic externalities.
      
      * Fix grumbles and note unwraps to be sorted.
      
      * Test storage externality.
      
      Unforunately had to change signatures of externalities to avoid
      immutable function returning a reference. Not sure what to do about
      this...
      
      * Fix nits.
      
      * Compile collation logic.
      
      * Move back to refs. Yey.
      
      * Remove "object" id for storage access.
      
      * Fix test.
      
      * Fix up rest of tests.
      
      * remove unwrap.
      
      * Expose set/get code in externalities
      
      Also improve tests and add nice wrappers in rust-wasm.
      
      * Add validator set.
      
      * Introduce validator set into externalities and test.
      
      * Add another external function.
      
      * Remove code and validators; use storage for everything.
      
      * Introduce validators function.
      
      * Tests (and a fix) for the validators getter.
      
      * Allow calls into runtime to return data.
      
      * Remove unneeded trace.
      
      * Make runtime printing a bit nicer.
      
      * Create separate runtimes for testing and polkadot.
      
      * Remove commented code.
      
      * Use new path.
      
      * Refactor into shared support module.
      
      * Fix warning.
      
      * Remove unwraps.
      
      * Make macro a little less unhygenic.
      
      * Add wasm files.
      b38b6336