1. 05 Aug, 2019 1 commit
    • Stanislav Tkach's avatar
      Pass indices in serialized form (#318) · d297bbac
      Stanislav Tkach authored
      * Pass indices in serialized form
      
      * Fix indentation and remove panic
      
      * Fix tests and other code
      
      * Remove unique voters tracking
      
      * Restore validator group check
      
      * Fix lock file
      
      * Add test
      
      * Add attestation sorting
      
      * Add validation to the check_candidate function
      
      * Update codec version one more time
      
      * Remove patch versions
      d297bbac
  2. 26 Jul, 2019 1 commit
  3. 03 Jun, 2019 1 commit
    • Gavin Wood's avatar
      Allow parachains to send messages (#274) · 89a7d8dc
      Gavin Wood authored
      
      
      * Slots module
      
      * Integrate slots
      
      * More drafting
      
      * Minor updates
      
      * Update parachains to use trati
      
      * More build fixes
      
      * Full code now compiles
      
      * Add renew bid function
      
      * Implement calculate_winner
      
      * Warning remove
      
      * Update gitignore
      
      * Test framework
      
      * Tests
      
      * Further testing
      
      * More tests, new parameterisation.
      
      * Fix and new test
      
      * Thread-safe tests
      
      * Test off-boarding and a fix.
      
      * Test onboarding
      
      * Allow late onboarding.
      
      * Another test and fix
      
      * Avoid println in nostd
      
      * Compact representation of paraids
      
      * Introduce documentation.
      
      * Introduce events.
      
      * Additional test and fix
      
      * Additional test
      
      * Tidy up line lengths.
      
      * Remove printlns
      
      * Use later substrate utils.
      
      * Allow parachains to send messages.
      
      * Fix build/test
      
      * Make slots work with latest substrate
      
      * Update runtime/src/slot_range.rs
      Co-Authored-By: asynchronous rob's avatarRobert Habermeier <rphmeier@gmail.com>
      
      * Update runtime/src/slots.rs
      Co-Authored-By: Shawn Tabrizi's avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Update runtime/src/slots.rs
      Co-Authored-By: Shawn Tabrizi's avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Polish logic
      
      * Rewind to earlier substrate master
      
      * Remove dead code.
      
      * Fix build
      
      * Update substrate ref to master
      
      * Update to new inherent digests API
      
      * address grumbles
      
      * fix
      
      * Fix a warning.
      
      * Reworded a comment.
      
      * Check that receipt matches expectations
      
      * Add test for final checks
      
      * Split out queuing logic.
      
      * Test final piece of queuing logic
      
      * Fix up docs.
      
      * More docs fixes
      89a7d8dc
  4. 29 May, 2019 1 commit
  5. 24 May, 2019 1 commit
    • Stanislav Tkach's avatar
      Add block data size check (#230) · dc73c4f3
      Stanislav Tkach authored
      * Add block data size check
      
      * Pass max_block_data_size everywhere
      
      * Fix build after merge
      
      * Fix ParachainWork initialization
      
      * Fix tests compilation
      dc73c4f3
  6. 08 May, 2019 1 commit
    • Stanislav Tkach's avatar
      Don't pass validators' public keys with attestations (#186) · 41f62652
      Stanislav Tkach authored and asynchronous rob's avatar asynchronous rob committed
      * Don't pass validators' public keys with attestations
      
      * Update statement-table's Misbehaviour typedef
      
      * Update network/router
      
      * Expand MessageValidationData
      
      * Try to fix tests
      
      * Extend ApiContext
      
      * Remove 'index_mapping' from the SessionParams
      
      * Construct index_mapping from authorities
      
      * Move index_mapping to TableContext
      
      * Add test for index_mapping order
      41f62652
  7. 24 Apr, 2019 1 commit
  8. 08 Apr, 2019 1 commit
  9. 28 Mar, 2019 1 commit
    • Bastian Köcher's avatar
      Update to latest substrate-master and polkadot v0.3 (#195) · adba1d58
      Bastian Köcher authored and asynchronous rob's avatar asynchronous rob committed
      
      
      * Rebuild runtime
      
      * Remove invalid value from chainspec (#68)
      
      * service: use grandpa block import for locally sealed aura blocks (#85)
      
      * bump version to v0.3.1
      
      * Update lock file.
      
      * limit number of transactions when building blocks (#91)
      
      * Update to latest Substrate
      
      * Bump to 0.3.2
      
      * Actually bump.
      
      * v0.3.2 (#98)
      
      * bump substrate version
      
      * fix polkadot-collator
      
      * point to alexander-backports of substrate
      
      * bump version
      
      * cli: fix node shutdown (#100)
      
      * update to latest substrate, change to v0.3.4
      
      * update to latest substrate, bump version to 0.3.5
      
      * v0.3.6
      
      * try to build on every v0.3 commit and update alexander-backports
      
      * bump to v0.3.7
      
      * bump to 0.3.8
      
      * Bump to 0.3.9: network and pruning improvements
      
      * Bump to 0.3.10: reduce network bandwidth usage
      
      * Use libp2p-kad 0.3.2 (#122)
      
      * Bump libp2p-identify to 0.3.1 (#123)
      
      * Bump to 0.3.12 (#127)
      
      * Update Substrate again (#128)
      
      * update substrate and bump version to v0.3.13
      
      * bump version to v0.3.14: fix --reserved-nodes
      
      * add a manually curated grandpa module (#136)
      
      * updating v0.3 to use substrate v0.10 (#146)
      
      * updating to latest substrate v0.10
      
      * better handling of outer poll
      
      * nit
      
      * fix tests
      
      * remove comment
      
      * reduce indentation
      
      * use self.poll
      
      * bring oneshot into scope
      
      * spaces
      
      * wrap
      
      * remove match
      
      * wrap
      
      * Update primitives/Cargo.toml
      Co-Authored-By: default avatargterzian <2792687+gterzian@users.noreply.github.com>
      
      * Update runtime/wasm/Cargo.toml
      Co-Authored-By: default avatargterzian <2792687+gterzian@users.noreply.github.com>
      
      * Update runtime/wasm/Cargo.toml
      Co-Authored-By: default avatargterzian <2792687+gterzian@users.noreply.github.com>
      
      * Update test-parachains/adder/collator/src/main.rs
      Co-Authored-By: default avatargterzian <2792687+gterzian@users.noreply.github.com>
      
      * indent
      
      * add paranthese
      
      * config: fix wrong ip for alexander bootnode (#161)
      
      * fix curated-grandpa and rebuild wasm (#162)
      
      * [v0.3] Integrates new gossip system into Polkadot (#166)
      
      * new gossip validation in network
      
      * integrate new gossip into service
      
      * network: guard validation network future under exit signal (#168)
      
      * bump version to v0.3.15: substrate v0.10
      
      * [v0.3] update to substrate master (#175)
      
      * update to substrate master
      
      * fix test
      
      * service: fix telemetry endpoints on alexander chainspec (#169) (#178)
      
      * Update v0.3 to latest Substrate master (#177)
      
      * update substrate v0.3 to latest master
      
      * bump spec version
      
      * update to latest master: remove fees module
      
      * update runtime blobs
      
      * bump version to 0.3.16
      
      * replace sr25519 accountid with anysigner
      
      * bump version to v0.3.17
      
      * Some PoC-3 GRANDPA tweaks (#181)
      
      * call on_finalise after triggering curated_grandpa change
      
      * make grandpa rounds shorter for faster finalization
      
      * use authorities when calculating duty roster (#185)
      
      * [v0.3] Update to substrate master (#183)
      
      * update to latest substrate master
      
      * bump version to 0.3.18
      
      * update to latest substrate master
      
      * bump spec version
      
      * update runtime wasm blobs
      
      * remove current_offline_slash from chain spec
      
      * update to substrate master: bump version to v0.3.19 (#188)
      
      * update to substrate master: bump version to v0.3.19
      
      libp2p network improvements
      
      * network: replace NodeIndex with PeerId
      
      * network: fix tests
      
      * polkadot v0.3.20 (#190)
      
      * update to substrate master: bump version to 0.3.20
      
      * runtime: add offchain worker trait
      
      * runtime: rebuild wasm blobs
      
      * bump spec version (#191)
      
      * Fix compilation
      
      * Update version to 0.4.0
      
      * Switch to use `polkadot-master` branch from substrate
      
      * Remove unused struct
      
      * Remove `grandpa::SyncedAuthorities` from `OnSessionChange`
      adba1d58
  10. 18 Mar, 2019 1 commit
    • Gav Wood's avatar
      Update to Substrate master (#176) · c12969e1
      Gav Wood authored
      
      
      * Update to master
      
      This introduces a new type `CollatorId`, currently just `SessionKey`
      but which would forseeably change to its own thing. It seems to work
      like this (despite there being a lot of the new-incompatible
      `AccountId` replaced). No idea if it does anything sensible, though.
      
      * Cleanups
      
      * Fix tests
      
      * Remove commented code
      
      * Specify commit hash
      
      * Remove commented code
      
      * Correct version
      
      * Update runtime/Cargo.toml
      Co-Authored-By: default avatargavofyork <github@gavwood.com>
      
      * PairT instead of _Pair
      
      * Update lock file
      
      * Remove rev causing upset
      c12969e1
  11. 21 Feb, 2019 1 commit
  12. 19 Feb, 2019 1 commit
    • 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
  13. 22 Jan, 2019 1 commit
    • 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
  14. 18 Jan, 2019 1 commit
    • 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
  15. 26 Nov, 2018 1 commit
    • 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: asynchronous rob's avatarrphmeier <rphmeier@gmail.com>
      4b0c4968
  16. 25 Nov, 2018 1 commit
    • 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
  17. 12 Sep, 2018 1 commit
  18. 06 Aug, 2018 2 commits
  19. 01 Aug, 2018 1 commit
    • 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
  20. 06 Jul, 2018 3 commits
    • 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
  21. 03 Jul, 2018 1 commit
    • 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
  22. 06 Jun, 2018 1 commit
    • 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
  23. 25 May, 2018 1 commit
    • 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