1. 08 Apr, 2021 3 commits
    • Sergey Pepyakin's avatar
      New PVF validation host (#2710) · 0eb7905a
      Sergey Pepyakin authored
      
      
      * Implement PVF validation host
      
      * WIP: Diener
      
      * Increase the alloted compilation time
      
      * Add more comments
      
      * Minor clean up
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Fix pruning artifact removal
      
      * Fix formatting and newlines
      
      * Fix the thread pool
      
      * Update node/core/pvf/src/executor_intf.rs
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Remove redundant test declaration
      
      * Don't convert the path into an intermediate string
      
      * Try to workaround the test failure
      
      * Use the puppet_worker trick again
      
      * Fix a blip
      
      * Move `ensure_wasmtime_version` under the tests mod
      
      * Add a macro for puppet_workers
      
      * fix build for not real-overseer
      
      * Rename the puppet worker for adder collator
      
      * play it safe with the name of adder puppet worker
      
      * Typo: triggered
      
      * Add more comments
      
      * Do not kill exec worker on every error
      
      * Plumb Duration for timeouts
      
      * typo: critical
      
      * Add proofs
      
      * Clean unused imports
      
      * Revert "WIP: Diener"
      
      This reverts commit ff2d3ff2
      
      .
      
      * Sync version of wasmtime
      
      * Update cargo.lock
      
      * Update Substrate
      
      * Merge fixes still
      
      * Update wasmtime version in test
      
      * bastifmt
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Squash spaces
      
      * Trailing new line for testing.rs
      
      * Remove controversial code
      
      * comment about biasing
      
      * Fix suggestion
      
      * Add comments
      
      * make it more clear why unwrap_err
      
      * tmpfile retry
      
      * proper proofs for claim_idle
      
      * Remove mutex from ValidationHost
      
      * Add some more logging
      
      * Extract exec timeout into a constant
      
      * Add some clarifying logging
      
      * Use blake2_256
      
      * Clean up the merge
      
      Specifically the leftovers after removing real-overseer
      
      * Update parachain/test-parachains/adder/collator/Cargo.toml
      
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      0eb7905a
    • asynchronous rob's avatar
      Code, PoV compression and remove `CompressedPoV` struct (#2852) · e5bab572
      asynchronous rob authored
      * use compressed blob in candidate-validation
      
      * add some tests for compressed code blobs
      
      * remove CompressedPoV and apply compression in collation-generation
      
      * decompress BlockData before executing
      
      * don't produce oversized collations
      
      * add test for PoV decompression failure
      
      * fix tests and clean up
      
      * fix test
      
      * address review and fix CI
      
      * take this )
      e5bab572
    • asynchronous rob's avatar
      Remove real-overseer 🎉 (#2834) · e4f5ade5
      asynchronous rob authored
      * remove real-overseer
      
      * overseer: only activate leaves which support parachains
      
      * integrate HeadSupportsParachains into service
      
      * remove unneeded line
      e4f5ade5
  2. 07 Apr, 2021 2 commits
    • Gavin Wood's avatar
      XCM revamp (#2836) · 12a3e03f
      Gavin Wood authored
      
      
      * Remove unused relaying XCM
      
      * Aggregate HRMP (XCMP/HMP) messages. Payloads for spambot.
      
      * Revert lock
      
      * Fix
      
      * Broken example
      
      * Introduce fee payment mechanics into XCM.
      
      * Weight limitations on XCM execution
      
      * Mock environment for tests and the first test
      
      * Tests for XCM and a few refactors.
      
      * Remove code that's not ready
      
      * Fix for an XCM and an additional test
      
      * Query response system
      
      * XCMP message dispatch system reimagining
      
      - Moved most of the logic into xcm-handler pallet
      - Altered the outgoing XCMP API from push to pull
      - Changed underlying outgoing queue data structures to avoid multi-page read/writes
      - Introduced queuing for incoming messages
      - Introduced signal messages as a flow-control sub-stream
      - Introduced flow-control with basic threshold back-pressure
      - Introduced overall weight limitation on messages executed
      - Additonal alterations to XCM APIs for the new system
      
      * Some build fixes
      
      * Remove the Encode bounds sprayed around
      
      * More faff
      
      * Fix bounds amek use latest scale codec.
      
      * remove println
      
      * fixes
      
      * Fix XcmExecutor Tests
      
      * Fix XCM bounds using derivative crate
      
      * Refactor names of XcmGeneric &c into Xcm
      
      * Repot the xcm-executor into xcm-builder
      
      * Docs
      
      * Docs
      
      * Fixes
      
      * Update xcm/src/lib.rs
      
      Co-authored-by: Shawn Tabrizi's avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Fixes
      
      * Docs
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: Shawn Tabrizi's avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Docs
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Docs
      
      * Fixes
      
      * Fixes
      
      * Introduce transfer_asset specialisation.
      
      * Fixes
      
      * Fixes
      
      Co-authored-by: Shawn Tabrizi's avatarShawn Tabrizi <shawntabrizi@gmail.com>
      12a3e03f
    • asynchronous rob's avatar
      update twox-hash (#2831) · e794fd25
      asynchronous rob authored
      e794fd25
  3. 04 Apr, 2021 1 commit
  4. 03 Apr, 2021 1 commit
    • asynchronous rob's avatar
      Collation protocol: stricter validators (#2810) · 54e18e65
      asynchronous rob authored
      
      
      * guide: declare one para as a collator
      
      * add ParaId to Declare messages and clean up
      
      * fix build
      
      * fix the testerinos
      
      * begin adding keystore to collator-protocol
      
      * remove request_x_ctx
      
      * add core_for_group
      
      * add bump_rotation
      
      * add some more helpers to subsystem-util
      
      * change signing_key API to take ref
      
      * determine current and next para assignments
      
      * disconnect collators who are not on current or next para
      
      * add collator peer count metric
      
      * notes for later
      
      * some fixes
      
      * add data & keystore to test state
      
      * add a test utility for answering runtime API requests
      
      * fix existing collator tests
      
      * add new tests
      
      * remove sc_keystore
      
      * update cargo lock
      
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      54e18e65
  5. 02 Apr, 2021 1 commit
  6. 01 Apr, 2021 6 commits
    • Andronik Ordian's avatar
    • asynchronous rob's avatar
      Approval Voting improvements (#2781) · 9b700da0
      asynchronous rob authored
      
      
      * extract database from av-store itself
      
      * generalize approval-voting over database type
      
      * modes (without handling) and pruning old wakeups
      
      * rework approval importing
      
      * add our_approval_sig to ApprovalEntry
      
      * import assignment
      
      * guide updates for check-full-approval changes
      
      * some aux functions
      
      * send messages when becoming active.
      
      * guide: network bridge sends view updates only when done syncing
      
      * network bridge: send view updates only when done syncing
      
      * tests for new network-bridge behavior
      
      * add a test for updating approval entry with sig
      
      * fix some warnings
      
      * test load-all-blocks
      
      * instantiate new parachains DB
      
      * fix network-bridge empty view updates
      
      * tweak
      
      * fix wasm build, i think
      
      * Update node/core/approval-voting/src/lib.rs
      
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      * add some versioning to parachains_db
      
      * warnings
      
      * fix merge changes
      
      * remove versioning again
      
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      9b700da0
    • Pierre Krieger's avatar
      Companion PR for substrate#8510 (#2795) · deab3cb9
      Pierre Krieger authored
      * Companion PR for substrate#8510
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      deab3cb9
    • Andronik Ordian's avatar
      gossip: do not try to connect if we are not validators (#2786) · 05cd0d24
      Andronik Ordian authored
      * gossip: do not issue a connection request if we are not a validator
      
      * guide updates
      
      * use all relevant authorities when issuing a request
      
      * use AuthorityDiscoveryApi instead
      
      * update comments to the status quo
      05cd0d24
    • Gavin Wood's avatar
      Companion for OnSetCode #8496 (#2794) · d77262d6
      Gavin Wood authored
      * Make build with OnSetCode
      
      * Fixes
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      d77262d6
    • Tomasz Drwięga's avatar
      Merkle Mountain Range & BEEFY integration (#2101) · e8050450
      Tomasz Drwięga authored
      * Switch branch.
      
      * Implement basic MMR leaf.
      
      * Revert "Switch branch."
      
      This reverts commit 7f4d41c6
      
      .
      
      * Bump substrate.
      
      * Integrate BEEFY.
      
      Bump all.
      
      Fix missing imports.
      
      * Use beefy pallet to get authorities.
      
      * Bump BEEFY repo.
      
      * Use next authority set instead of the current one.
      
      * Start BEEFY service.
      
      * Fix BEEFY start up.
      
      * Cache BEEFY authority set.
      
      * Add BEEFY ValidatorSetId to MMR
      
      * Fix code.
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarAndré Silva <123550+andresilva@users.noreply.github.com>
      Co-authored-by: default avatarHernando Castano <HCastano@users.noreply.github.com>
      
      * Review grumbles.
      
      * Update beefy repo.
      
      * Work-around missing protocol.
      
      * Revert "Work-around missing protocol."
      
      This reverts commit 0a6257a8
      
      .
      
      * Add beefy peers set config.
      
      * Expose storage of BEEFY.
      
      * Uncompress BEEFY keys for merkle tree.
      
      * Update ordering.
      
      * Switch to branch.
      
      * Bump deps.
      
      * Switch to custom beefy.
      
      * Add MMR RuntimeApi and custom rpc.
      
      * Add set length details.
      
      * Fix compilation.
      
      * Expose MmrLeaf storage.
      
      * Expose MmrLeaf storage.
      
      * Don't use session handler, and rather compute & cache beefy details on call.
      
      * Don't use session handler, and rather compute & cache beefy details on call.
      
      * Fixes.
      
      * Update Cargo.lock.
      
      * Switch back to master.
      
      * Update lockfile.
      
      * Fix xcm print issue.
      
      * Cargo.lock.
      
      * Use master branch.
      
      * Remove extra dep.
      
      * Fix tests.
      
      * Update Cargo.lock
      
      * Add BEEFY & MMR to westend.
      
      * Implement session keys migration.
      
      * Update testnet script.
      
      * start BEEFY for all node types
      
      * Update Cargo.lock
      
      * fix Cargo.toml
      
      * resolve another merge conflict
      
      * add Westend BEEFY keys
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarHernando Castano <HCastano@users.noreply.github.com>
      
      * Update BEEFY.
      
      * Add Rococo BEEFY keys
      
      * resolve merge issue
      
      * fix pallet indices
      
      * fix Westend OldSessionKey
      
      * remove unused imports in Westend runtime
      
      * Fix compilation for Westend.
      
      * address review
      
      * start BEEFY gadget conditionally
      
      * address review again
      
      * fix typo
      
      * remove duplicate
      
      * remove another duplicate
      
      * well
      
      * add missing stuff
      
      * cleanup Cargo.toml files
      
      - revert unnecessary changes
      - add missing /std dependencies
      - remove unused dependencies
      
      * runtime: remove unused structs from rococo runtime
      
      * node: cleanup service
      
      Co-authored-by: default avatarAndré Silva <123550+andresilva@users.noreply.github.com>
      Co-authored-by: default avatarHernando Castano <HCastano@users.noreply.github.com>
      Co-authored-by: default avataradoerr <0xad@gmx.net>
      Co-authored-by: default avatarAndré Silva <andrerfosilva@gmail.com>
      e8050450
  7. 31 Mar, 2021 1 commit
  8. 30 Mar, 2021 3 commits
  9. 29 Mar, 2021 1 commit
  10. 28 Mar, 2021 4 commits
    • asynchronous rob's avatar
      Split NetworkBridge and break cycles with Unbounded (#2736) · d23a6d5a
      asynchronous rob authored
      
      
      * overseer: pass messages directly between subsystems
      
      * test that message is held on to
      
      * Update node/overseer/src/lib.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      
      * give every subsystem an unbounded sender too
      
      * remove metered_channel::name
      
      1. we don't provide good names
      2. these names are never used anywhere
      
      * unused mut
      
      * remove unnecessary &mut
      
      * subsystem unbounded_send
      
      * remove unused MaybeTimer
      
      We have channel size metrics that serve the same purpose better now and the implementation of message timing was pretty ugly.
      
      * remove comment
      
      * split up senders and receivers
      
      * update metrics
      
      * fix tests
      
      * fix test subsystem context
      
      * use SubsystemSender in jobs system now
      
      * refactor of awful jobs code
      
      * expose public `run` on JobSubsystem
      
      * update candidate backing to new jobs & use unbounded
      
      * bitfield signing
      
      * candidate-selection
      
      * provisioner
      
      * approval voting: send unbounded for assignment/approvals
      
      * async not needed
      
      * begin bridge split
      
      * split up network tasks into background worker
      
      * port over network bridge
      
      * Update node/network/bridge/src/lib.rs
      
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      * rename ValidationWorkerNotifications
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      d23a6d5a
    • asynchronous rob's avatar
      Overseer: subsystems communicate directly (#2227) · 322ccd0d
      asynchronous rob authored
      
      
      * overseer: pass messages directly between subsystems
      
      * test that message is held on to
      
      * Update node/overseer/src/lib.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      
      * give every subsystem an unbounded sender too
      
      * remove metered_channel::name
      
      1. we don't provide good names
      2. these names are never used anywhere
      
      * unused mut
      
      * remove unnecessary &mut
      
      * subsystem unbounded_send
      
      * remove unused MaybeTimer
      
      We have channel size metrics that serve the same purpose better now and the implementation of message timing was pretty ugly.
      
      * remove comment
      
      * split up senders and receivers
      
      * update metrics
      
      * fix tests
      
      * fix test subsystem context
      
      * fix flaky test
      
      * fix docs
      
      * doc
      
      * use select_biased to favor signals
      
      * Update node/subsystem/src/lib.rs
      
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      322ccd0d
    • Robert Klotzner's avatar
      Request based PoV distribution (#2640) · 39124b0a
      Robert Klotzner authored
      * Indentation fix.
      
      * Prepare request-response for PoV fetching.
      
      * Drop old PoV distribution.
      
      * WIP: Fetch PoV directly from backing.
      
      * Backing compiles.
      
      * Runtime access and connection management for PoV distribution.
      
      * Get rid of seemingly dead code.
      
      * Implement PoV fetching.
      
      Backing does not yet use it.
      
      * Don't send `ConnectToValidators` for empty list.
      
      * Even better - no need to check over and over again.
      
      * PoV fetching implemented.
      
      + Typechecks
      + Should work
      
      Missing:
      
      - Guide
      - Tests
      - Do fallback fetching in case fetching from seconding validator fails.
      
      * Check PoV hash upon reception.
      
      * Implement retry of PoV fetching in backing.
      
      * Avoid pointless validation spawning.
      
      * Add jaeger span to pov requesting.
      
      * Add back tracing.
      
      * Review remarks.
      
      * Whitespace.
      
      * Whitespace again.
      
      * Cleanup + fix tests.
      
      * Log to log target in overseer.
      
      * Fix more tests.
      
      * Don't fail if group cannot be found.
      
      * Simple test for PoV fetcher.
      
      * Handle missing group membership better.
      
      * Add test for retry functionality.
      
      * Fix flaky test.
      
      * Spaces again.
      
      * Guide updates.
      
      * Spaces.
      39124b0a
    • Peter Goodspeed-Niklaus's avatar
      use named generic types in generate_solution_type (#2707) · 549f0ebd
      Peter Goodspeed-Niklaus authored
      * use named generic types in generate_solution_type
      
      * "Update Substrate"
      
      Co-authored-by: parity-processbot <>
      549f0ebd
  11. 27 Mar, 2021 1 commit
  12. 26 Mar, 2021 1 commit
  13. 25 Mar, 2021 3 commits
  14. 24 Mar, 2021 4 commits
    • André Silva's avatar
      collator-protocol: add message authentication (#2635) · c836fb85
      André Silva authored
      * collator: authenticate collator protocol messages
      
      * fix tests compilation
      
      * node: verify collator protocol signatures in tests
      
      * collator: fix tests
      
      * implementers-guide: update CollatorProtocol messages
      
      * collator: add test for verification of collator protocol signatures
      
      * node: remove fixmes
      
      * node: remove signature from advertisecollation message
      
      * node: add magic constant to Declare message signature payload
      c836fb85
    • Pierre Krieger's avatar
      Polkadot companion for Substrate#8420 (#2672) · 73a146fd
      Pierre Krieger authored
      * Polkadot companion for Substrate#8420
      
      * "Update Substrate"
      
      Co-authored-by: parity-processbot <>
      73a146fd
    • Kian Paimani's avatar
      Companion for substrate/pull/8445 (#2686) · 7012cdbb
      Kian Paimani authored
      
      
      * Companion for substrate/pull/8445
      
      * cargo update -p sp-io
      
      Co-authored-by: Shawn Tabrizi's avatarShawn Tabrizi <shawntabrizi@gmail.com>
      7012cdbb
    • asynchronous rob's avatar
      Evict inactive peers from the collator protocol peer-set (#2680) · c61383a7
      asynchronous rob authored
      * malicious reputation cost is fatal
      
      * make ReportBad a malicious cost
      
      * futures control-flow for cleaning up inactive collator peers
      
      * guide: network bridge updates
      
      * add `PeerDisconnected` message
      
      * guide: update
      
      * reverse order
      
      * remember to match
      
      * implement disconnect peer in network bridge
      
      * implement disconnect_inactive_peers
      
      * test
      
      * remove println
      
      * don't hardcore policy
      
      * add fuse outside of loop
      
      * use default eviction policy
      c61383a7
  15. 23 Mar, 2021 1 commit
  16. 20 Mar, 2021 1 commit
    • Kian Paimani's avatar
      Companion for substrate/pull/8113 (Unleash multi phase) (#2432) · d75d4e13
      Kian Paimani authored
      * Almost make it work.
      
      * Make the runtimes build
      
      * Some fixes
      
      * Make the whole thing compile
      
      * Apply suggestions from code review
      
      * Fix review comments
      
      * remove unused.
      
      * nit
      
      * Fix
      
      * "Update Substrate"
      
      * bump tx-version
      
      Co-authored-by: parity-processbot <>
      d75d4e13
  17. 19 Mar, 2021 1 commit
  18. 18 Mar, 2021 4 commits
    • Arkadiy Paronyan's avatar
      Update for the new substrate client API (#2570) · 7135b58a
      Arkadiy Paronyan authored
      * Update for the new substrate client API
      
      * Code review suggestions
      
      * Update substrate
      7135b58a
    • Bernhard Schuster's avatar
      integrate faster erasure code (#2608) · a99498d8
      Bernhard Schuster authored
      Breaks compatibility for distributing PoV and PersistentValidationData between validators.
      
      Ref #2442 
      a99498d8
    • Shaun Wang's avatar
      Companion for #8372 (Replace 'Module' with 'Pallet' in construct_runtime macro) (#2629) · a5c5512e
      Shaun Wang authored
      
      
      * Replace 'Module' with 'Pallet'.
      
      * "Update Substrate"
      
      * fix babe usage
      
      * fix benchmark
      
      Co-authored-by: parity-processbot <>
      Co-authored-by: thiolliere's avatarthiolliere <gui.thiolliere@gmail.com>
      a5c5512e
    • Robert Klotzner's avatar
      Request based collation fetching (#2621) · 134090c2
      Robert Klotzner authored
      * Introduce collation fetching protocol
      
      also move to mod.rs
      
      * Allow `PeerId`s in requests to network bridge.
      
      * Fix availability distribution tests.
      
      * Move CompressedPoV to primitives.
      
      * Request based collator protocol: validator side
      
      - Missing: tests
      - Collator side
      - don't connect, if not connected
      
      * Fixes.
      
      * Basic request based collator side.
      
      * Minor fix on collator side.
      
      * Don't connect in requests in collation protocol.
      
      Also some cleanup.
      
      * Fix PoV distribution
      
      * Bump substrate
      
      * Add back metrics + whitespace fixes.
      
      * Add back missing spans.
      
      * More cleanup.
      
      * Guide update.
      
      * Fix tests
      
      * Handle results in tests.
      
      * Fix weird compilation issue.
      
      * Add missing )
      
      * Get rid of dead code.
      
      * Get rid of redundant import.
      
      * Fix runtime build.
      
      * Cleanup.
      
      * Fix wasm build.
      
      * Format fixes.
      
      Thanks @andronik !
      134090c2
  19. 17 Mar, 2021 1 commit