1. Mar 06, 2019
    • asynchronous rob's avatar
      Update to new gossip system. (#172) · 222c6c23
      asynchronous rob authored
      * Integrates new gossip system into Polkadot (#166)
      
      * new gossip validation in network
      
      * integrate new gossip into service
      
      * Fix build
      
      * Fix claims module
      
      * fix warning
      
      * update to latest master again
      
      * update runtime
      222c6c23
  2. Feb 25, 2019
    • Andrew Jones's avatar
      Egress queue validation in runtime (#155) · b4c05459
      Andrew Jones authored and asynchronous rob's avatar asynchronous rob committed
      * Add fn to validate egress routes
      
      * Add blank tests
      
      * Reject routing to non existent parachains
      
      * Reject if routing to self
      
      * Reject if egress route parachain ids out of order
      
      * Extract method for checking egress routes
      
      * Reject empty egress routes
      
      * Extract test method
      
      * Generate empty trie root constant in build script
      
      * Remove unwraps
      
      * Hardcode EMPTY_TRIE_ROOT and add test to verify
      
      * Const not pu
      b4c05459
  3. Feb 20, 2019
  4. 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
  5. Feb 18, 2019
  6. Feb 13, 2019
  7. Feb 04, 2019
  8. Jan 29, 2019
    • Gav Wood's avatar
      Use new externs for eth crypto (#114) · 98203aab
      Gav Wood authored
      * Add claims.
      
      * Failing build
      
      * Updatee to latest substrate, fix tests
      
      * Remove unneeded
      
      * Introduce tests with real work sig
      
      * Use right 64 bytes of pubkey to get eth addr
      
      * Fix for eth sig
      
      * Fix build
      
      * Fix wasm
      
      * Use new externs for eth crypto.
      
      * Bump spec version
      
      * New runtime
      98203aab
  9. Jan 27, 2019
    • Bastian Köcher's avatar
      Updates substrate to latest master (#107) · 11d79181
      Bastian Köcher authored
      * Updates substrate to latest master
      
      * Use slot_duration and not slot
      
      * Update to latest substrate master again to have latest CLI
      
      * Rename iherent indentifier
      
      * Update after master merge
      11d79181
  10. Jan 25, 2019
    • Gav Wood's avatar
      Claim yer sale DOTs (#97) · 72a6ffde
      Gav Wood authored
      * Add claims.
      
      * Failing build
      
      * Updatee to latest substrate, fix tests
      
      * Remove unneeded
      
      * Introduce tests with real work sig
      
      * Use right 64 bytes of pubkey to get eth addr
      
      * Fix for eth sig
      
      * Fix build
      
      * Fix wasm
      72a6ffde
  11. Jan 16, 2019
  12. Jan 08, 2019
  13. Dec 21, 2018
  14. Dec 20, 2018
  15. Dec 11, 2018
    • asynchronous rob's avatar
      Authorship works again (#50) · 13b58b13
      asynchronous rob authored
      * provide through inherent-data when authoring
      
      * remove unneeded codec round-trip in proposer
      
      * refactor polkadot-consensus service architecture
      
      * integrate block authorship into polkadot service
      
      * remove unused extern substrate-network crate in service
      
      * write wrapper for unifying errors in consensus proposer
      
      * extend wrapper further
      
      * switch temporarily to macro-changing branch
      
      * runtime compiles
      
      * implement `inherent_extrinsics` for runtime
      
      * block authorship works
      
      * add GRANDPA to polkadot runtime
      
      * get everything compiling
      
      * use substrate master branch again
      
      * remove some unneeded params
      
      * update WASM
      
      * parse only extrinsics when pruning availability store
      
      * update recent deps
      
      * runtime almost compiles
      
      * need to expose trait type in build : I had to put phantomdata manually.
      
      * finish updating authorship to latest GRANDPA and Aura
      
      * fix tests
      
      * update wasm
      13b58b13
  16. 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
  17. 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
  18. Sep 12, 2018
  19. Aug 30, 2018
  20. Aug 29, 2018
  21. Aug 17, 2018
  22. Aug 15, 2018
    • Gav Wood's avatar
      Version bump, fixes (#572) · d4f6af15
      Gav Wood authored
      * Bump version, don't propose invalid blocks
      
      * Fix build.
      
      * Fixes.
      
      * More fixes.
      
      * Fix tests.
      
      * Fix more tests
      
      * More tests fixed
      d4f6af15
    • Gav Wood's avatar
      New slashing mechanism (#554) · 14474fc7
      Gav Wood authored
      * 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.
      14474fc7
  23. Aug 11, 2018
    • asynchronous rob's avatar
      Vote out offline authorities (#524) · 988f94fa
      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
      988f94fa
  24. Aug 10, 2018
  25. Jul 31, 2018
    • Gav Wood's avatar
      Fix up session phase backport (#452) · 2ec0f429
      Gav Wood authored
      * Fix up session phase.
      
      * Version bump.
      
      * Version fix
      
      * Fix session rotation properly and add test
      
      * Make contract a separate runtime module (#345)
      
      * 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.
      
      * Docs
      2ec0f429
    • Gav Wood's avatar
      Fix session phase in early-exit (#453) · e5c5ee57
      Gav Wood authored
      * Fix up session phase.
      
      * Version bump
      
      * Fix session rotation properly and add test
      
      * Update runtimes
      
      * Docs
      e5c5ee57
  26. Jul 29, 2018
    • Sergey Pepyakin's avatar
      Make contract a separate runtime module (#345) · df2cea1c
      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.
      df2cea1c
    • Gav Wood's avatar
      Version bump (#450) · 3c48c830
      Gav Wood authored
      * Bump version
      
      * Version bump.
      
      * Version bump.
      3c48c830
  27. Jul 15, 2018
  28. Jul 06, 2018
    • 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
  29. Jul 05, 2018
  30. Jul 03, 2018
    • Arkadiy Paronyan's avatar
      Runtime version (#256) · 24c4e4c7
      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
      24c4e4c7
    • 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