1. Feb 21, 2019
  2. Feb 19, 2019
    • asynchronous rob's avatar
      Interchain message-passing (#117) · 66c9580c
      asynchronous rob authored
      * compute ingress and routing in polkadot runtime
      
      * extract parent candidates from block when beginning consensus
      
      * fetch incoming messages when validating
      
      * fix consensus tests
      
      * parachain wasm execution uses messages
      
      * update parachain tests to check if messages are executed
      
      * abstract out network service to make room for network tests
      
      * skeleton for incoming data fetch
      
      * collate ingress from consensus-gossip
      
      * keep track of validated candidates in the shared-table
      
      * add some shared_table tests for new behavior
      
      * broadcast egress messages on gossip
      
      * test compute_ingress
      
      * move network tests to module folder
      
      * dummy network for consensus-network tests
      
      * make consensus network generic over executor
      
      * test egress broadcast and ingress fetch
      
      * fix test compilation
      
      * address some grumbles
      
      * address grumbles and fix parachain shuffle
      
      * remove broadcast parameter from consensus network trait
      66c9580c
  3. Jan 22, 2019
    • asynchronous rob's avatar
      Parachain execution yields messages to send (#96) · 5893fa7c
      asynchronous rob authored
      * read head-data directly out of WASM memory
      
      * implement ext_post_message for parachain WASM
      
      * further refactoring of the parachain module
      
      * add externalities error type
      
      * accumulate posted messages when validating parachain candidate
      
      * define Extrinsic type in primitives
      
      * availability-store: store extrinsic data
      
      * compute extrinsic and check against candidate
      
      * add some egress queue tests
      
      * grumbles & substrate update
      
      * ensure everything builds
      5893fa7c
  4. Jan 18, 2019
    • asynchronous rob's avatar
      Remove availability statement (#79) · ef8a6c7c
      asynchronous rob authored
      * remove availability vote type from statement-table
      
      * expunge availability statement from consensus module
      
      * expunge availability from duty roster
      
      * rename StatementProducer to ParachainWork
      
      * fix runtime tests and remove availability statement variant
      
      * update wasm
      ef8a6c7c
  5. Nov 26, 2018
    • asynchronous rob's avatar
      Blocks carry full attestations for candidates (#42) · 4b0c4968
      asynchronous rob authored
      
      
      * statement table yields fully-attested candidates
      
      * attestation types in polkadot-primitives
      
      * propose block with fully-attested candidates in consensus
      
      * some signature-checking logic in the runtime
      
      * fix runtime compilation
      
      * ensure attestations are full and without duplicate when checking
      
      * fix consensus-service compilation
      
      * add some tests
      
      * use bitvec from crates.io now that it's published
      
      * sign statements based on primitive statement's encoding
      
      * remove some serialize bounds
      
      * Fix error message with duplicate availability attestations
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      4b0c4968
  6. Nov 25, 2018
    • Gav Wood's avatar
      Make work with Substrate master (#36) · a35ddc58
      Gav Wood authored
      * Fix up wasm runtime build
      
      * Fixes for runtime
      
      * Fix.
      
      * More fixes
      
      * Runtime builds on native.
      
      * Native and wasm both build without warnings.
      
      * Fix runtime tests.
      
      * Merge #20
      
      * Final fix for native runtime.
      
      * Compile polkadot wo consensus
      
      * Reverted changes to polkadot-consensus
      
      * reintroduce minimal subset of consensus
      
      * reintroduce checked_block to runtime for std
      
      * polkadot_consensus compiles without most of the code
      
      * remove checked_block again and do more checks in parachains for runtime
      
      * uncomment proposer
      
      * remove offline tracker
      
      * extract out parachain-attestation logic from proposal directly
      
      * reintroduce transaction_pool
      
      * write some custom aura verification logic for the block verifier
      
      * use transaction pool in more generic way
      
      * service compiles again
      
      * polkadot-network and tests pass
      
      * remove unused session_key function from router
      
      * everything but CLI compiles due to service hell
      
      * Fixes compilation of `polkadot_cli`
      
      * everything compiles
      
      * update adder wasm
      a35ddc58
  7. Sep 12, 2018
  8. Aug 06, 2018
  9. Aug 01, 2018
    • asynchronous rob's avatar
      Collator for the "adder" (formerly basic-add) parachain and various small fixes (#438) · 4711e1e0
      asynchronous rob authored
      * update basic_add wasm
      
      * wasm feature and collator feature
      
      * move test parachains around a little
      
      * fix wasm build for basic_add
      
      * move basic_add to adder, introduce README
      
      * minimal basic_add collator
      
      * ensure collator messages are sent in the right order
      
      * more logging
      
      * route consensus statements to all peers
      
      * minor bugfixes for parachains
      
      * genesis builder accounts for parachain heads
      
      * fix parachains tests
      
      * targets for txpool
      
      * tweak runtime + collator
      
      * fix version in adder-collator
      
      * consistency for overflowing
      
      * adjust comment
      
      * fix stable test run
      
      * remove dummy registration test
      
      * final grumbles
      4711e1e0
  10. Jul 06, 2018
    • asynchronous rob's avatar
      Collator node workflow (#280) · bedde457
      asynchronous rob authored
      * arbitrary application logic in CLI
      
      * collation work
      
      * split up exit and work futures in application
      
      * collation node workflow
      
      * typo
      
      * indentation fix
      
      * doc grumbles
      
      * rename Application to Worker
      
      * refactor Worker::exit to exit_only
      bedde457
    • asynchronous rob's avatar
      Minimal parachains part 2: Parachain statement and data routing (#173) · 6d8720ac
      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
      6d8720ac
    • asynchronous rob's avatar
      fix typo (#285) · a828ffcc
      asynchronous rob authored
      a828ffcc
  11. Jul 03, 2018
    • Arkadiy Paronyan's avatar
      Serialisable genesis config (#229) · 5f1e44be
      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
      5f1e44be
  12. Jun 06, 2018
    • Gav Wood's avatar
      Make substrate generic (#169) · 521e3a23
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Some initial work on RPC and client
      
      * Rephrase as params
      
      * More work on traitifying substrate.
      
      * Traitify in_mem.rs
      
      * traitify client.rs
      
      * Make new primitives (mainly traits) build again.
      
      * Many (superficial) build fixes throughout.
      
      * Fix remaining build issues up to bft interface.
      
      * Make bft primitives be generic.
      
      * Switch out MisBehaviorReport for generic version.
      
      * Merge Hashing into Header.
      
      * Update runtime for new generics (with Hashing).
      
      * Update demo runtime.
      
      * Make runtime compile.
      
      * Build fixes for runtime
      
      * Remove old modules.
      
      * port substrate-bft to use generic substrate types
      
      * port client
      
      * port substrate-test-runtime
      
      * mostly port test-runtime to get compiling for std
      
      * Ensure `AccountId` has a `Default`.
      
      * Fix type deps.
      
      * finish porting
      
      * initialize test_runtime from genesis correctly
      
      * remove commented code
      
      * maybe unsigned signatures
      
      * runtimes compile
      
      * port over most of network
      
      * serialization for generic types
      
      * fix comment
      
      * remove some unnecessary trait bounds
      
      * network compiles
      
      * tests compile for sync
      
      * fix deserialization
      
      * temporarily remove deserialize derives
      
      * workarounds for serde issues for deriving deserialization
      
      * get demo-runtime compiling on std
      
      * port extrinsic-pool
      
      * primitives reshuffling
      
      * get network compiling again
      
      * remove debugging file
      
      * runtime tests now passing
      
      * port client-db
      
      * start to port over substrate-rpc
      
      * mostly port over PolkadotApi
      
      * test_runtime follows normal conventions
      
      * substrate runtime tests pass
      
      * deal with inherent extrinsics correctly in polkadot-api
      
      * port transaction-pool
      
      * port polkadot-consensus
      
      * port substrate-rpc
      
      * everything compiles
      
      * tests compile
      
      * fix grumbles
      
      * test-runtime uses its own transfer type
      
      * switch to master branch of jsonrpc
      
      * fix network tests and some warnings
      
      * all tests pass locally
      
      * [ci-skip] add another comment about issue
      
      * remove some curlies
      521e3a23
  13. May 25, 2018
    • asynchronous rob's avatar
      Minimal parachain framework part 1 (#113) · f41a4959
      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
      f41a4959