Skip to content
  1. Apr 01, 2021
    • asynchronous rob's avatar
      5338f0f0
    • asynchronous rob's avatar
      Add dispute types and change InclusionInherent to ParasInherent (#2791) · 0794f693
      asynchronous rob authored
      * dispute types
      
      * add Debug to dispute primitives in std and InherentData
      
      * use ParachainsInherentData on node-side
      
      * change inclusion_inherent to paras_inherent
      
      * RuntimeDebug
      
      * add type parameter to PersistedValidationData users
      
      * fix test client
      
      * spaces
      
      * fix collation-generation test
      
      * fix provisioner tests
      
      * remove references to inclusion inherent
      0794f693
    • Gavin Wood's avatar
      Companion for OnSetCode #8496 (#2794) · a960e2ff
      Gavin Wood authored
      * Make build with OnSetCode
      
      * Fixes
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      a960e2ff
    • Tomasz Drwięga's avatar
      Merkle Mountain Range & BEEFY integration (#2101) · 5b77a898
      Tomasz Drwięga authored
      
      
      * Switch branch.
      
      * Implement basic MMR leaf.
      
      * Revert "Switch branch."
      
      This reverts commit 7f4d41c67f27ca560c53fc63fd3bd06ac182403c.
      
      * 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 <[email protected]>
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Review grumbles.
      
      * Update beefy repo.
      
      * Work-around missing protocol.
      
      * Revert "Work-around missing protocol."
      
      This reverts commit 0a6257a8bccc1c67e966898cdedc408c6469ffd6.
      
      * 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 <[email protected]>
      
      * 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 <[email protected]>
      Co-authored-by: default avatarHernando Castano <[email protected]>
      Co-authored-by: default avataradoerr <[email protected]>
      Co-authored-by: default avatarAndré Silva <[email protected]>
      5b77a898
  2. Mar 30, 2021
  3. Mar 29, 2021
  4. Mar 28, 2021
  5. Mar 25, 2021
  6. Mar 18, 2021
  7. Mar 17, 2021
  8. Mar 14, 2021
    • Gavin Wood's avatar
      New slots/auctions architecture (#2294) · edd81bf6
      Gavin Wood authored
      
      
      * TODOs
      
      * Add auctions.rs, comment on changes needed.
      
      * Remove cruft from slots
      
      * Remove more from auctions.rs
      
      * More logic drafting in slots.
      
      * More logic in slots.rs
      
      * patch some errors
      
      * more fixes
      
      * last nit
      
      * Cleanups in slots.rs
      
      * Cleanups in slots.rs
      
      * patches
      
      * make build
      
      * crowdloan to new api
      
      * auction compile
      
      * Use ParaId instead of FundIndex in Crowdloan (#2303)
      
      * use paraid instead of fundindex
      
      * Update crowdloan.rs
      
      * check caller is manager
      
      * Auction tests and fix build warnings.
      
      * Configurable origin for initiating auctions
      
      * Remove on_finalize
      
      * #2303 (manual merge)
      
      * Tests for Slots
      
      * some registrar tests
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Update runtime/common/src/slots.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Slots uses Registrar for CurrentChains
      
      * swap works test
      
      * on swap impl
      
      * traitify parachain cleanup
      
      * explicit lifecycle tracking for paras
      
      * initial implementation of lifecycles and upgrades
      
      * clean up a bit
      
      * Update runtime/common/src/slots.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * fix doc comment
      
      * more rigid lifecycle checks
      
      * include paras which are transitioning, and lifecycle query
      
      * format guide
      
      * update api
      
      * update guide
      
      * explicit outgoing state, fix genesis
      
      * handle outgoing with transitioning paras
      
      * Revert "explicit lifecycle tracking for paras"
      
      This reverts commit 4177af7ba473bbd9c26bccd861793f25265b6657.
      
      * remove lifecycle tracking from registrar
      
      * do not include transitioning paras in identifier
      
      * Update paras_registrar.rs
      
      * final patches to registrar
      
      * Fix test
      
      * use noop in test
      
      * clean up pending swap on deregistration
      
      * finish registrar tests
      
      * Update roadmap/implementers-guide/src/runtime/paras.md
      
      * Update roadmap/implementers-guide/src/runtime/paras.md
      
      * Update roadmap/implementers-guide/src/runtime/paras.md
      
      * Apply suggestions from code review
      
      * Use matches macro
      
      * Correct terms
      
      * Apply suggestions from code review
      
      * Remove direct need for Slots and Registrar from Crowdloan
      
      * Rejig things slightly
      
      * actions queue
      
      * Revert "actions queue"
      
      This reverts commit b2e9011ec8937d6c73e99292416c9692aeb30f73.
      
      * Traitify Auction interface.
      
      * Mockups and initial code for Crowdloan testing
      
      * One test...
      
      * collapse onboarding state
      
      * fix some crowdloan tests
      
      * one more
      
      * start benchmarks for auctions
      
      * benchmark bid
      
      * fix more crowdloan tests
      
      * onboard and begin retirement no longer exist
      
      * Revert "onboard and begin retirement no longer exist"
      
      This reverts commit 2e100fd94e3540bff5f172328b5d917896f1c6fc.
      
      * Simplify crowdloan and make it work.
      
      * Fixes
      
      * fix some
      
      * finish merge fixes
      
      * fix refund bug in auctions
      
      * Add traits to Registrar for tests and benchmarks
      
      * fix more auction benchmarks
      
      * Fix TestAuctioneer
      
      * finish crowdloan benchmarks
      
      * start setting up full integration tests
      
      * expand integration tests
      
      * finish basic integration test
      
      * add more integration tests
      
      * begin slots benchmarks
      
      * start paras registrar benchmarks
      
      * fix merge
      
      * fix tests
      
      * clean up paras registrar
      
      * remove println
      
      * remove outdated cleanup config
      
      * update benchmarks
      
      * Add WeightInfo
      
      * enable runtime-benchmarks feature flag
      
      * complete swap benchmark
      
      * add parachains and onboarding into westend
      
      * add benchmarks and genesis
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=slots --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * fix benchmark execution
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=crowdloan --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=paras_registrar --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * Use `new_raise_len` in crowdloan on_initialize
      
      * Update paras_registrar.rs
      
      * fix westend merge
      
      * impl on_swap for crowdloan
      
      * Check fund exists before create
      
      * update for crowdloan sig
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=crowdloan --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * slots on_initialize
      
      * use integration tests environment for benchmarks
      
      * fix hrmp event
      
      * auction on_initialize
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * fix storage name in auctions
      
      * add auction_index to winning data
      
      * winning data takes into account current auction index
      
      * remove println
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=slots --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * Revert "add auction_index to winning data"
      
      * PastRandomness.
      
      * Fixes
      
      * Use new randomness
      
      * fix use of randomness in auctions and runtime config
      
      * expose consts
      
      * fix auction test
      
      * add deposit per byte for para registration
      
      * basic swap integration test
      
      * make swap test more comprehensive
      
      * Add WinningVec for easier retrieval in the front-end.
      
      * clean up `WinningVec` at the end
      
      * Add event for when a new best bid comes in
      
      * Fix propagation of winners in ending period
      
      * fix benchmarks, refund weight in dissolve
      
      * fix unused
      
      * remove some TODOs
      
      * setup opaque keys for paras in westend
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=crowdloan --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * remove unused
      
      * cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      * back to regular runtime config
      
      * use saturating math where user input can be
      
      * better first slot check
      
      * Update runtime/common/src/claims.rs
      
      * update westend onswap impl
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      edd81bf6
  9. Mar 10, 2021
  10. Mar 09, 2021
  11. Mar 01, 2021
  12. Feb 27, 2021
  13. Feb 26, 2021
    • Robert Klotzner's avatar
      Request based availability distribution (#2423) · 48409e55
      Robert Klotzner authored
      * WIP
      
      * availability distribution, still very wip.
      
      Work on the requesting side of things.
      
      * Some docs on what I intend to do.
      
      * Checkpoint of session cache implementation
      
      as I will likely replace it with something smarter.
      
      * More work, mostly on cache
      
      and getting things to type check.
      
      * Only derive MallocSizeOf and Debug for std.
      
      * availability-distribution: Cache feature complete.
      
      * Sketch out logic in `FetchTask` for actual fetching.
      
      - Compile fixes.
      - Cleanup.
      
      * Format cleanup.
      
      * More format fixes.
      
      * Almost feature complete `fetch_task`.
      
      Missing:
      
      - Check for cancel
      - Actual querying of peer ids.
      
      * Finish FetchTask so far.
      
      * Directly use AuthorityDiscoveryId in protocol and cache.
      
      * Resolve `AuthorityDiscoveryId` on sending requests.
      
      * Rework fetch_task
      
      - also make it impossible to check the wrong chunk index.
      - Export needed function in validator_discovery.
      
      * From<u32> implementation for `ValidatorIndex`.
      
      * Fixes and more integration work.
      
      * Make session cache proper lru cache.
      
      * Use proper lru cache.
      
      * Requester finished.
      
      * ProtocolState -> Requester
      
      Also make sure to not fetch our own chunk.
      
      * Cleanup + fixes.
      
      * Remove unused functions
      
      - FetchTask::is_finished
      - SessionCache::fetch_session_info
      
      * availability-distribution responding side.
      
      * Cleanup + Fixes.
      
      * More fixes.
      
      * More fixes.
      
      adder-collator is running!
      
      * Some docs.
      
      * Docs.
      
      * Fix reporting of bad guys.
      
      * Fix tests
      
      * Make all tests compile.
      
      * Fix test.
      
      * Cleanup + get rid of some warnings.
      
      * state -> requester
      
      * Mostly doc fixes.
      
      * Fix test suite.
      
      * Get rid of now redundant message types.
      
      * WIP
      
      * Rob's review remarks.
      
      * Fix test suite.
      
      * core.relay_parent -> leaf for session request.
      
      * Style fix.
      
      * Decrease request timeout.
      
      * Cleanup obsolete errors.
      
      * Metrics + don't fail on non fatal errors.
      
      * requester.rs -> requester/mod.rs
      
      * Panic on invalid BadValidator report.
      
      * Fix indentation.
      
      * Use typed default timeout constant.
      
      * Make channel size 0, as each sender gets one slot anyways.
      
      * Fix incorrect metrics initialization.
      
      * Fix build after merge.
      
      * More fixes.
      
      * Hopefully valid metrics names.
      
      * Better metrics names.
      
      * Some tests that already work.
      
      * Slightly better docs.
      
      * Some more tests.
      
      * Fix network bridge test.
      48409e55
  14. Feb 23, 2021
    • asynchronous rob's avatar
      Approval Checking Improvements Omnibus (#2480) · 3300b533
      asynchronous rob authored
      * add tracing to approval voting
      
      * notify if session info is not working
      
      * add dispute period to chain specs
      
      * propagate genesis session to parachains runtime
      
      * use `on_genesis_session`
      
      * protect against zero cores in computation
      
      * tweak voting rule to be based off of best and add logs
      
      * genesis configuration should use VRF slots only
      
      * swallow more keystore errors
      
      * add some docs
      
      * make validation-worker args non-optional and update clap
      
      * better tracing for bitfield signing and provisioner
      
      * pass amount of bits in bitfields to inclusion instead of recomputing
      
      * debug -> warn for some logs
      
      * better tracing for availability recovery
      
      * a little av-store tracing
      
      * bridge: forward availability recovery messages
      
      * add missing try_from impl
      
      * some more tracing
      
      * improve approval distribution tracing
      
      * guide: hold onto pending approval messages until NewBlocks
      
      * Hold onto pending approval messages until NewBlocks
      
      * guide: adjust comment
      
      * process all actions for one wakeup at a time
      
      * vec
      
      * fix network bridge test
      
      * replace randomness-collective-flip with Babe
      
      * remove PairNotFound
      3300b533
    • Parth's avatar
      Override RuntimeApi::authorities() to include past sessions (#2494) · 3c4ed7b2
      Parth authored
      
      
      * override authorities runtime call
      
      * addressing feedback
      
      * addressing feedback and restoring semantics
      
      * updated helper function
      
      * naming convention + comment
      
      Co-authored-by: default avatarParity <[email protected]>
      3c4ed7b2
  15. Feb 22, 2021
  16. Feb 19, 2021
    • Shawn Tabrizi's avatar
      Session Delayed Para Changes / Actions Queue (#2406) · a5defa7c
      Shawn Tabrizi authored
      
      
      * initial implementation of lifecycles and upgrades
      
      * clean up a bit
      
      * fix doc comment
      
      * more rigid lifecycle checks
      
      * include paras which are transitioning, and lifecycle query
      
      * format guide
      
      * update api
      
      * update guide
      
      * explicit outgoing state, fix genesis
      
      * handle outgoing with transitioning paras
      
      * do not include transitioning paras in identifier
      
      * Update roadmap/implementers-guide/src/runtime/paras.md
      
      * Update roadmap/implementers-guide/src/runtime/paras.md
      
      * Update roadmap/implementers-guide/src/runtime/paras.md
      
      * Apply suggestions from code review
      
      * Use matches macro
      
      * Correct terms
      
      * Apply suggestions from code review
      
      * actions queue
      
      * Revert "actions queue"
      
      This reverts commit b2e9011ec8937d6c73e99292416c9692aeb30f73.
      
      * collapse onboarding state
      
      * starting actions queue
      
      * consolidate actions queue
      
      * schedule para initialize result
      
      * more actions queue for upgrade/downgrade
      
      * clean up with fully implemented actions queue
      
      * fix tests
      
      * fix scheduler tests
      
      * fix hrmp tests
      
      * fix test
      
      * doc fixes
      
      * fix hrmp test w/ valid para
      
      * Update paras.md
      
      * fix paras registrar
      
      * Update propose_parachain.rs
      
      * fix merge
      
      * Introduce "shared" module
      
      * fix rococo build
      
      * fix up and use shared
      
      * guide updates
      
      * add shared config to common tests
      
      * add shared to test-runtime
      
      * remove println
      
      * fix note
      
      Co-authored-by: default avatarGavin Wood <[email protected]>
      a5defa7c
  17. Feb 17, 2021
  18. Feb 15, 2021
  19. Feb 11, 2021
    • asynchronous rob's avatar
      Implement Approval Voting Subsystem (#2112) · e48c6875
      asynchronous rob authored
      
      
      * skeleton
      
      * skeleton aux-schema module
      
      * start approval types
      
      * start aux schema with aux store
      
      * doc
      
      * finish basic types
      
      * start approval types
      
      * doc
      
      * finish basic types
      
      * write out schema types
      
      * add debug and codec impls to approval types
      
      * add debug and codec impls to approval types
      
      also add some key computation
      
      * add debug and codec impls to approval types
      
      * getters for block and candidate entries
      
      * grumbles
      
      * remove unused AssignmentId
      
      * load_decode utility
      
      * implement DB clearing
      
      * function for adding new block entry to aux store
      
      * start `canonicalize` implementation
      
      * more skeleton
      
      * finish implementing canonicalize
      
      * tag TODO
      
      * implement a test AuxStore
      
      * add allow(unused)
      
      * basic loading and deleting test
      
      * block_entry test function
      
      * add a test for `add_block_entry`
      
      * ensure range is exclusive at end
      
      * test clear()
      
      * test that add_block sets children
      
      * add a test for canonicalize
      
      * extract Pre-digest from header
      
      * utilities for extracting RelayVRFStory from the header-chain
      
      * add approval voting message types
      
      * approval distribution message type
      
      * subsystem skeleton
      
      * state struct
      
      * add futures-timer
      
      * prepare service for babe slot duration
      
      * more skeleton
      
      * better integrate AuxStore
      
      * RelayVRF -> RelayVRFStory
      
      * canonicalize
      
      * implement some tick functionality
      
      * guide: tweaks
      
      * check_approval
      
      * more tweaks and helpers
      
      * guide: add core index to candidate event
      
      * primitives: add core index to candidate event
      
      * runtime: add core index to candidate events
      
      * head handling (session window)
      
      * implement `determine_new_blocks`
      
      * add TODO
      
      * change error type on functions
      
      * compute RelayVRFModulo assignments
      
      * compute RelayVRFDelay assignments
      
      * fix delay tranche calc
      
      * assignment checking
      
      * pluralize
      
      * some dummy code for fetching assignments
      
      * guide: add babe epoch runtime API
      
      * implement a current_epoch() runtime API
      
      * compute assignments
      
      * candidate events get backing group
      
      * import blocks and assignments into DB
      
      * push block approval meta
      
      * add message types, no overseer integration yet
      
      * notify approval distribution of new blocks
      
      * refactor import into separate functions
      
      * impl tranches_to_approve
      
      * guide: improve function signatures
      
      * guide: remove Tick from ApprovalEntry
      
      * trigger and broadcast assignment
      
      * most of approval launching
      
      * remove byteorder crate
      
      * load blocks back to finality, except on startup
      
      * check unchecked assignments
      
      * add claimed core to approval voting message
      
      * fix checks
      
      * assign only to backing group
      
      * remove import_checked_assignment from guide
      
      * newline
      
      * import assignments
      
      * abstract out a bit
      
      * check and import approvals
      
      * check full approvals from assignment import too
      
      * comment
      
      * create a Transaction utility
      
      * must_use
      
      * use transaction in `check_full_approvals`
      
      * wire up wakeups
      
      * add Ord to CandidateHash
      
      * wakeup refactoring
      
      * return candidate info from add_block_entry
      
      * schedule wakeups
      
      * background task: do candidate validation
      
      * forward candidate validation requests
      
      * issue approval votes when requested
      
      * clean up a couple TODOs
      
      * fix up session caching
      
      * clean up last unimplemented!() items
      
      * fix remaining warnings
      
      * remove TODO
      
      * implement handle_approved_ancestor
      
      * update Cargo.lock
      
      * fix runtime API tests
      
      * guide: cleanup assignment checking
      
      * use claimed candidate index instead of core
      
      * extract time to a trait
      
      * tests module
      
      * write a mock clock for testing
      
      * allow swapping out the clock
      
      * make abstract over assignment criteria
      
      * add some skeleton tests and simplify params
      
      * fix backing group check
      
      * do backing group check inside check_assignment_cert
      
      * write some empty test functions to implement
      
      * add a test for non-backing
      
      * test that produced checks pass
      
      * some empty test ideas
      
      * runtime/inclusion: remove outdated TODO
      
      * fix compilation
      
      * av-store: fix tests
      
      * dummy cert
      
      * criteria tests
      
      * move `TestStore` to main tests file
      
      * fix unused warning
      
      * test harness beginnings
      
      * resolve slots renaming fallout
      
      * more compilation fixes
      
      * wip: extract pure data into a separate module
      
      * wip: extract pure data into a separate module
      
      * move types completely to v1
      
      * add persisted_entries
      
      * add conversion trait impls
      
      * clean up some warnings
      
      * extract import logic to own module
      
      * schedule wakeups
      
      * experiment with Actions
      
      * uncomment approval-checking
      
      * separate module for approval checking utilities
      
      * port more code to use actions
      
      * get approval pipeline using actions
      
      * all logic is uncommented
      
      * main loop processes actions
      
      * all loop logic uncommented
      
      * separate function for handling actions
      
      * remove last unimplemented item
      
      * clean up warnings
      
      * State gives read-only access to underlying DB
      
      * tests for approval checking
      
      * tests for approval criteria
      
      * skeleton test module for import
      
      * list of import tests to do
      
      * some test glue code
      
      * test reject bad assignment
      
      * test slot too far in future
      
      * test reject assignment with unknown candidate
      
      * remove loads_blocks tests
      
      * determine_new_blocks back to finalized & harness
      
      * more coverage for determining new blocks
      
      * make `imported_block_info` have less reliance on State
      
      * candidate_info tests
      
      * tests for session caching
      
      * remove println
      
      * extricate DB and main TestStores
      
      * rewrite approval checking logic to counteract early delays
      
      * move state out of function
      
      * update approval-checking tests
      
      * tweak wakeups & scheduling logic
      
      * rename check_full_approvals
      
      * test that assignment import updates candidate
      
      * some approval import tests
      
      * some tests for check_and_apply_approval
      
      * add 'full' qualifier to avoid confusion
      
      * extract should-trigger logic to separate function
      
      * some tests for all triggering
      
      * tests for when we trigger assignments
      
      * test wakeups
      
      * add block utilities for testing
      
      * some more tests for approval updates
      
      * approved_ancestor tests
      
      * new action type for launch approval
      
      * process-wakeup tests
      
      * clean up some warnings
      
      * fix in_future test
      
      * approval checking tests
      
      * tighten up too-far-in-future
      
      * special-case genesis when caching sessions
      
      * fix bitfield len
      
      Co-authored-by: default avatarAndronik Ordian <[email protected]>
      e48c6875
  20. Feb 09, 2021
  21. Feb 04, 2021
    • Shawn Tabrizi's avatar
      Explicit Para Lifecycle w/ Upgrades and Downgrades (#2354) · 2b533ddc
      Shawn Tabrizi authored
      
      
      * initial implementation of lifecycles and upgrades
      
      * clean up a bit
      
      * fix doc comment
      
      * more rigid lifecycle checks
      
      * include paras which are transitioning, and lifecycle query
      
      * format guide
      
      * update api
      
      * update guide
      
      * explicit outgoing state, fix genesis
      
      * handle outgoing with transitioning paras
      
      * do not include transitioning paras in identifier
      
      * Update roadmap/implementers-guide/src/runtime/paras.md
      
      * Update roadmap/implementers-guide/src/runtime/paras.md
      
      * Update roadmap/implementers-guide/src/runtime/paras.md
      
      * Apply suggestions from code review
      
      * Use matches macro
      
      * Correct terms
      
      * Apply suggestions from code review
      
      * actions queue
      
      * Revert "actions queue"
      
      This reverts commit b2e9011ec8937d6c73e99292416c9692aeb30f73.
      
      * collapse onboarding state
      
      Co-authored-by: default avatarGavin Wood <[email protected]>
      2b533ddc
  22. Feb 02, 2021
    • Liu-Cheng Xu's avatar
      Conpanion for Substrate#7127 (#1865) · d353c76e
      Liu-Cheng Xu authored
      * Conpanion for Substrate#7127
      
      * Use sp_session::OneSessionHandler
      
      * .
      
      * Fix pallet_session::OneSessionHandler
      
      * OneSessionHandler is in frame_support now
      
      * "Update Substrate"
      
      Co-authored-by: parity-processbot <>
      d353c76e
    • Sergey Pepyakin's avatar
      Clean up PersistedValidationData (#2353) · d4fdbf7d
      Sergey Pepyakin authored
      * PVD: `block_number`->`relay_parent_number`
      
      * ValidationParams: `relay_chain_height`->`relay_parent_number`
      
      * Expose DMQ MQC hash as a well-known-key
      
      This way the relay storage merkle proofs will be able to obtain the DMQ
      MQC hash and we will be able to remove the it from the
      PersistedValidationData struct.
      
      * PersistedValidationData: Remove HRMP MQC heads
      
      * PersistedValidationData: Remove `dmq_mqc_head`
      
      * Expose the HRMP ingress channel index as a well-known-key
      
      This way a parachain (PVF and collator) can find all the parachains that
      have an outbound channel to the given one. That allows in turn to find
      all the inbound channels for the given para.
      
      Having access to that allows the parachain to get the same information
      as the hrmp_mqc_heads now provide.
      
      * Rename `relay_storage_root` to `relay_parent_storage_root`
      d4fdbf7d
  23. Feb 01, 2021
  24. Jan 29, 2021
  25. Jan 28, 2021
  26. Jan 27, 2021
  27. Jan 20, 2021
  28. Jan 18, 2021
  29. Jan 17, 2021