1. Jul 16, 2020
  2. Jul 14, 2020
  3. Jul 10, 2020
    • asynchronous rob's avatar
      Refactor primitives (#1383) · 96af6ead
      asynchronous rob authored
      * create a v1 primitives module
      
      * Improve guide on availability types
      
      * punctuate
      
      * new parachains runtime uses new primitives
      
      * tests of new runtime now use new primitives
      
      * add ErasureChunk to guide
      
      * export erasure chunk from v1 primitives
      
      * subsystem crate uses v1 primitives
      
      * node-primitives uses new v1 primitives
      
      * port overseer to new primitives
      
      * new-proposer uses v1 primitives (no ParachainHost anymore)
      
      * fix no-std compilation for primitives
      
      * service-new uses v1 primitives
      
      * network-bridge uses new primitives
      
      * statement distribution uses v1 primitives
      
      * PoV distribution uses v1 primitives; add PoV::hash fn
      
      * move parachain to v0
      
      * remove inclusion_inherent module and place into v1
      
      * remove everything from primitives crate root
      
      * remove some unused old types from v0 primitives
      
      * point everything else at primitives::v0
      
      * squanch some warns up
      
      * add RuntimeDebug import to no-std as well
      
      * port over statement-table and validation
      
      * fix final errors in validation and node-primitives
      
      * add dummy Ord impl to committed candidate receipt
      
      * guide: update CandidateValidationMessage
      
      * add primitive for validationoutputs
      
      * expand CandidateValidationMessage further
      
      * bikeshed
      
      * add some impls to omitted-validation-data and available-data
      
      * expand CandidateValidationMessage
      
      * make erasure-coding generic over v1/v0
      
      * update usages of erasure-coding
      
      * implement commitments.hash()
      
      * use Arc<Pov> for CandidateValidation
      
      * improve new erasure-coding method names
      
      * fix up candidate backing
      
      * update docs a bit
      
      * fix most tests and add short-circuiting to make_pov_available
      
      * fix remainder of candidate backing tests
      
      * squanching warns
      
      * squanch it up
      
      * some fallout
      
      * overseer fallout
      
      * free from polkadot-test-service hell
      96af6ead
  4. Jul 09, 2020
    • Fedor Sakharov's avatar
      CandidateBackingSubsystem (#1312) · 6aa5bfba
      Fedor Sakharov authored
      * Updates guide for CandidateBacking
      
      * Move assignment types to primitives
      
      * Initial implementation.
      
      * More functionality
      
      * use assert_matches
      
      * Changes to report misbehaviors
      
      * Some fixes after a review
      
      * Remove a blank line
      
      * Update guide and some types
      
      * Adds run_job function
      
      * Some comments and refactorings
      
      * Fix review
      
      * Remove warnings
      
      * Use summary in kicking off validation
      
      * Parallelize requests
      
      * Validation provides local and global validation params
      
      * Test issued validity tracking
      
      * Nits from review
      6aa5bfba
  5. Jul 08, 2020
    • asynchronous rob's avatar
      Implement PoV Distribution Subsystem (#1344) · b651e4af
      asynchronous rob authored
      * introduce candidatedescriptor type
      
      * add PoVDistribution message type
      
      * loosen bound on PoV Distribution to account for equivocations
      
      * re-export some types from the messages module
      
      * begin PoV Distribution subsystem
      
      * remove redundant index from PoV distribution
      
      * define state machine for pov distribution
      
      * handle overseer signals
      
      * set up control flow
      
      * remove `ValidatorStatement` section
      
      * implement PoV fetching
      
      * implement distribution logic
      
      * add missing `
      
      * implement some network bridge event handlers
      
      * stub for message processing, handle our view change
      
      * control flow for handling messages
      
      * handle `awaiting` message
      
      * handle any incoming PoVs and redistribute
      
      * actually provide a subsystem implementation
      
      * remove set-builder notation
      
      * begin testing PoV distribution
      
      * test that we send awaiting messages only to peers with same view
      
      * ensure we distribute awaited PoVs to peers on view changes
      
      * test that peers can complete fetch and are rewarded
      
      * test some reporting logic
      
      * ensure peer is reported for flooding
      
      * test punishing peers diverging from awaited protocol
      
      * test that we eagerly complete peers' awaited PoVs based on what we receive
      
      * test that we prune the awaited set after receiving
      
      * expand pov-distribution in guide to match a change I made
      
      * remove unneeded import
      b651e4af
  6. Jul 07, 2020
  7. Jul 06, 2020
    • asynchronous rob's avatar
      Implement the Statement Distribution Subsystem (#1326) · 8348cc4c
      asynchronous rob authored
      * set up data types and control flow for statement distribution
      
      * add some set-like methods to View
      
      * implement sending to peers
      
      * start fixing equivocation handling
      
      * Add a section to the statement distribution subsystem on equivocations and flood protection
      
      * fix typo and amend wording
      
      * implement flood protection
      
      * have peer knowledge tracker follow when peer first learns about a candidate
      
      * send dependents after circulating
      
      * add another TODO
      
      * trigger send in one more place
      
      * refactors from review
      
      * send new statements to candidate backing
      
      * instantiate active head data with runtime API values
      
      * track our view changes and peer view changes
      
      * apply a benefit to peers who send us statements we want
      
      * remove unneeded TODO
      
      * add some comments and improve Hash implementation
      
      * start tests and fix `note_statement`
      
      * test active_head seconding logic
      
      * test that the per-peer tracking logic works
      
      * test per-peer knowledge tracker
      
      * test that peer view updates lead to messages being sent
      
      * test statement circulation
      
      * address review comments
      
      * have view set methods return references
      8348cc4c
  8. Jul 05, 2020
    • Peter Goodspeed-Niklaus's avatar
      implement custom proposer (#1320) · 69ce9ff3
      Peter Goodspeed-Niklaus authored
      
      
      * network bridge skeleton
      
      * move some primitives around and add debug impls
      
      * protocol registration glue & abstract network interface
      
      * add send_msgs to subsystemctx
      
      * select logic
      
      * transform different events into actions and handle
      
      * implement remaining network bridge state machine
      
      * start test skeleton
      
      * make network methods asynchronous
      
      * extract subsystem out to subsystem crate
      
      * port over overseer to subsystem context trait
      
      * fix minimal example
      
      * fix overseer doc test
      
      * update network-bridge crate
      
      * write a subsystem test-helpers crate
      
      * write a network test helper for network-bridge
      
      * set up (broken) view test
      
      * Revamp network to be more async-friendly and not require Sync
      
      * fix spacing
      
      * fix test compilation
      
      * insert side-channel for actions
      
      * Add some more message types to AllMessages
      
      * introduce a test harness
      
      * impl ProvideInherent for InclusionInherent
      
      * reduce import churn; correct expect message
      
      * move inclusion inherent identifier into primitives
      
      It's not clear precisely why this is desired, but it's a pattern
      I've seen in several places, so I'm going this to be on the
      safe side. Worst case, we can revert this commit pretty easily.
      
      * bump kusama spec_version to placate CI
      
      * copy sc_basic_authorship::{ProposerFactory, Proposer}
      
      We have from the problem description:
      
      > This Proposer will require an OverseerHandle to make requests via.
      
      That's next on the plate.
      
      * use polkadot custom proposer instead of basic-authorship one
      
      * add some tests
      
      * ensure service compiles and passes tests
      
      * fix typo
      
      * fix service-new compilation
      
      * Subsystem test helpers send messages synchronously
      
      * remove smelly action inspector
      
      * remove superfluous let binding
      
      * fix warnings
      
      * add license header
      
      * empty commit; maybe github will notice the one with changes
      
      * Update node/network/bridge/src/lib.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      
      * add sanity check to only include valid inherents
      
      * stub: encapsulate block production mechanics instead of copying them
      
      The goal is to end up with something like what's in
      validation::block_production::*, which encapsulates
      basic block production mechanics. This is a better idea than
      just straight-up copying those mechanics.
      
      * partial implementation of propose fn
      
      Doesn't actually compile yet; need to bring in some other
      commits to ensure ProvisionerMessage is a thing, and also
      figure out how to get the block hash given the current
      context.
      
      * fix compilation
      
      * clear a few more compile errors
      
      * finish fn propose
      
      * broken: add timeout to proposal
      
      * add timeout to proposal
      
      * guide: provisioner is responsible for selecting parachain candidates
      
      * implement ProvisionerMessage::RequestInherentData & update fn propose
      
      * impl CreateProposer::init; clean up
      
      * impl std::error::Error for Error
      
      * document error-handling rationale
      
      * cause polkadot-service-new to compile correctly
      
      * Move potentially-blocking call from fn init -> fn propose
      
      This means that we can wrap the delayed call into the same
      timeout check used elsewhere.
      
      * document struct Proposer
      
      * extract provisioner data fetch
      
      This satisfies two requirements:
      
      - only applies the timeout to actually fetching the provisioner data,
        not to constructing the block after
      - simplifies the problem of injecting default data if we could not
        get the real provisioner data in time.
      
      Co-authored-by: default avatarRobert Habermeier <[email protected]>
      Co-authored-by: default avatarGavin Wood <[email protected]>
      69ce9ff3
  9. Jul 03, 2020
  10. Jul 01, 2020
  11. Jun 30, 2020
    • Peter Goodspeed-Niklaus's avatar
      impl ProvideInherent for InclusionInherent (#1318) · 7aa95b19
      Peter Goodspeed-Niklaus authored
      * impl ProvideInherent for InclusionInherent
      
      * reduce import churn; correct expect message
      
      * move inclusion inherent identifier into primitives
      
      It's not clear precisely why this is desired, but it's a pattern
      I've seen in several places, so I'm going this to be on the
      safe side. Worst case, we can revert this commit pretty easily.
      
      * bump kusama spec_version to placate CI
      
      * add license header
      
      * empty commit; maybe github will notice the one with changes
      
      * add sanity check to only include valid inherents
      7aa95b19
  12. Jun 26, 2020
  13. Jun 23, 2020
  14. Jun 20, 2020
    • Peter Goodspeed-Niklaus's avatar
      signed wrapper (#1283) · 4f79b770
      Peter Goodspeed-Niklaus authored
      
      
      * add signed wrapper, typedef SignedStatement
      
      * typedef SignedAvailabilityBitfield
      
      * implement Signed wrapper
      
      This is strictly an addition as of this commit; nothing is yet
      changed in existing behavior.
      
      * inline getters, remove review comment
      
      * move EncodeAs, Signed from node::primitives to primitives::parachain
      
      * Refactor SignedAvailabilityBitfield to use Signed
      
      * don't double-encode real payload
      
      This isn't an ideal solution, because it depends on the
      implementation details of how SCALE encodes tuples, but OTOH
      that behavior seems unlikely to change anytime soon.
      
      * fix build errors
      
      * cause the runtime to build properly with the new changes
      
      Not sure why cargo check didn't catch this earlier; oh well.
      
      * fix runtime tests and separate SignedStatement from SignedFullStatement
      
      * better explain why CompactStatement exists
      
      Co-authored-by: default avatarRobert Habermeier <[email protected]>
      
      Co-authored-by: default avatarRobert Habermeier <[email protected]>
      4f79b770
  15. Jun 19, 2020
  16. Jun 18, 2020
    • asynchronous rob's avatar
      Inclusion Module (#1242) · 9d874fa5
      asynchronous rob authored
      * add availability bitfield types to primitives
      
      * begin inclusion module
      
      * use GitHub issue link for limitation
      
      * fix some compiler errors
      
      * integrate validators into initializer
      
      * add generic signing context
      
      * make signing-context more generic
      
      * fix issues with inclusion module
      
      * add TODO
      
      * guide: add validators and session index to inclusion
      
      * guide: add session index to change notification
      
      * implement session change logic
      
      * add BackedCandidate type
      
      * guide: refine inclusion pipeline
      
      * guide: rename group_on to group_validators
      
      * guide: add check about collator for parathread
      
      * guide: add last_code_upgrade to paras and use in inclusion
      
      * implement Paras::last_code_upgrade
      
      * implement most checks in process_candidates
      
      * make candidate receipt structs more generic
      
      * make BackedCandidate struct more generic
      
      * use hash param, not block number
      
      * check that candidate is in context of the parent block
      
      * include inclusion module in initializer
      
      * implement enact-candidate
      
      * check that only occupied cores have bits set
      
      * finish implementing bitfield processing
      
      * restructure consistency checks on candidates
      
      * make some more primitives generic
      
      * signature checking logic for backed candidates
      
      * finish implementing process_candidates
      
      * implement collect_pending
      
      * add some trait implementations to primitives
      
      * implement InclusionInherent and squash warnings
      
      * test bitfield signing checks
      
      * rename parachain head to para_head
      
      * fix note_new_head bug in paras
      
      * test bitfield enactment in inclusion
      
      * helpers for candidate checks
      
      * add test for most candidate checks
      
      * add test for backing setting storage
      
      * test session change logic
      
      * remove extraneous type parameter
      
      * remove some allow(unused)s
      
      * extract threshold computation to const fn
      
      * remove some more allow(unused)s
      
      * improve doc
      
      * add debug assertion
      
      * fix primitive test compilation
      
      * tag unanimous variant as unused
      9d874fa5
  17. Jun 17, 2020
  18. Jun 16, 2020
  19. Jun 12, 2020
  20. Jun 10, 2020
    • Gavin Wood's avatar
      v0.8.7 (#1222) · 32a791ee
      Gavin Wood authored
      
      
      * Bump Substrate again.
      
      * update kusama runtmie for ensure origin
      
      * update polkadot runtime for ensure origin
      
      * fix imports
      
      * root only available for runtime benchmarks
      
      * Fix lock file
      
      * Bump Substrate
      
      * Update lock
      
      * Remove questionable feature-gating.
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      32a791ee
  21. Jun 09, 2020
  22. Jun 08, 2020
  23. Jun 04, 2020
  24. Jun 01, 2020
  25. May 28, 2020
  26. May 26, 2020
    • Gavin Wood's avatar
      Chain Candidate One: Final changes (#1155) · 57b3d36b
      Gavin Wood authored
      * Test CC1 spec
      
      * Adaptive default chainspec
      
      * Strip -pre
      
      * Update to next CC1 iteration
      
      * Raw chainspec
      57b3d36b
    • Gavin Wood's avatar
      Prepare for final genesis (#1131) · 848e1a89
      Gavin Wood authored
      
      
      * Update claim statements
      
      * Update URLs
      
      * Minor tweak to make enum agree with URL
      
      * final html multihashes
      
      * New hashes
      
      * Version
      
      * updated SAFT statement hash
      
      * Update runtimes; this relies on substrate #6131
      
      * Bump
      
      * Share transaction filterer and fix Kusama
      
      * Warning
      
      * Gah!
      
      * Tidy
      
      * Westend fixes
      
      * Westend fix
      
      * Tweak constants
      
      * Implement TCF stuff
      
      * Fix
      
      * Warning
      
      * 15 minute lookahead
      
      * 15 minute lookahead in Polkadot
      
      * update max transactions
      
      * Enable utility, disable vested_transfer
      
      * Update runtime/common/src/lib.rs
      
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      
      * Filter calls for validate unsigned also
      
      * Deduplicate
      
      * Fix
      
      * Introduce Polkadot (mainnet) chainspec
      
      * Fix naming.
      
      * Enable indices and fix comment.
      
      * Fix compilation
      
      * Enable indices and fix comment.
      
      * polkadot: babe: enable secondary VRF slots
      
      * Test JSON
      
      * Allow set_heads
      
      * Fix
      
      * Raw chain spec added
      
      Co-authored-by: default avatarkeorn <[email protected]>
      Co-authored-by: default avatarNikVolf <[email protected]>
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      Co-authored-by: default avatarAndré Silva <[email protected]>
      848e1a89
  27. May 16, 2020
    • Gavin Wood's avatar
      Extra requirements for claimants (#1091) · d8328043
      Gavin Wood authored
      
      
      * Introduce mandatory statement signing into claims
      
      * Introduce SignedExtension
      
      * Tests passing
      
      * Bump runtime version
      
      * Bump version, fix test
      
      * Test for validate
      
      * Another couple of tests
      
      * Enable PrevalidateAttests on Polkadot
      
      * Enable PrevalidateAttests on Polkadot
      
      * Fix build
      
      * Fixes
      
      * More fixes
      
      * Fix bench tests
      
      * Fix & test Preclaim clobbering.
      
      * Fix for errant claim logic
      
      * Add test
      
      * Update tests, always use Vec as input
      
      * mint_claim can add signature, some_benchmarks
      
      * Add claim with statement test
      
      * finish benchmarks
      
      * put the correct number of claims with benchmarks
      
      * fix compiler warning
      
      * Update weights
      
      * Weight comments for validation
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      d8328043
  28. May 06, 2020
    • André Silva's avatar
      grandpa: report equivocations on all runtimes (#1000) · 872bd4fd
      André Silva authored
      * grandpa: report equivocations on all runtimes
      
      * runtime: fix test-runtime compilation
      
      * runtime: enable historical session manager on all runtimes
      
      * runtime: fix indentation
      
      * runtime: use strong key types in KeyOwnerProofSystem definitions
      
      * update substrate
      
      * bump spec_version of runtimes
      872bd4fd
  29. May 05, 2020
  30. Apr 29, 2020
    • Gavin Wood's avatar
      Prep v0.7.32 (#1056) · b2c024f3
      Gavin Wood authored
      * Bump Westend runtime version
      
      * Bump Substrate
      
      * Prep for release of 0.7.32
      
      * Update lock
      b2c024f3
  31. Apr 28, 2020
  32. Apr 27, 2020
  33. Apr 17, 2020
  34. Apr 16, 2020
  35. Apr 14, 2020