1. 07 Jul, 2021 1 commit
  2. 06 Jul, 2021 1 commit
    • ferrell-code's avatar
      paras.rs to FRAME V2 (#3403) · b583753a
      ferrell-code authored
      * to v2 macro
      
      * line width
      
      * fix mock
      
      * actually compile moxk
      
      * compile tests
      
      * add hooks
      
      * origin back in mocks
      
      * assimilate_storage
      
      * add generic
      
      * maybe mock compiles now
      
      * origin between parachain and system causing problem
      
      * change origin
      
      * type alias as origin
      
      * keep origin
      
      * add aliases to tests
      
      * remove unnecessary imports
      
      * Parachain -> Paras
      
      * paras test
      
      * nvm
      
      * use genesis build in mock
      b583753a
  3. 28 Mar, 2021 1 commit
  4. 10 Mar, 2021 1 commit
    • André Silva's avatar
      runtime: use babe as randomness source (#2504) · 95b2e18e
      André Silva authored
      * runtime: use babe as randomness source
      
      * runtime: fix randomness api
      
      * bridges: fix random_seed
      
      * parachains: use mock TestRandomness from frame_support_test
      
      * parachains: use mock TestRandomness from frame_support_test
      
      * runtime: update randomness source in test-runtime
      
      * runtime: remove unused import
      
      * parachains: add todo to audit usage of randomness api
      
      * "Update Substrate"
      
      Co-authored-by: parity-processbot <>
      95b2e18e
  5. 09 Mar, 2021 1 commit
  6. 23 Feb, 2021 1 commit
    • asynchronous rob's avatar
      Approval Checking Improvements Omnibus (#2480) · 1e2b8ae5
      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
      1e2b8ae5
  7. 19 Feb, 2021 1 commit
    • Shawn Tabrizi's avatar
      Session Delayed Para Changes / Actions Queue (#2406) · afb6daa7
      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 b2e9011e
      
      .
      
      * 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 <gavin@parity.io>
      afb6daa7
  8. 15 Feb, 2021 1 commit
  9. 02 Feb, 2021 1 commit
    • Liu-Cheng Xu's avatar
      Conpanion for Substrate#7127 (#1865) · 7df71c13
      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 <>
      7df71c13
  10. 21 Dec, 2020 1 commit
    • Sergey Pepyakin's avatar
      Do not use rely on the block initialization when calling runtime APIs (#2123) · e21f5cec
      Sergey Pepyakin authored
      
      
      * Don't initialize block when calling runtime APIs
      
      * Adapt check_validation_outputs
      
      We split the code path for the inclusion and for the commitments checking.
      
      * Slap #[skip_initialize_block] on safe runtime APIs
      
      That is, those that should not be affected by this attribute
      
      * Make `Scheduled` not ephemeral
      
      So that it is persisted in the storage and ready to be inspected
      by the runtime APIs. This is in contrast to what was before, where we
      would remove the storage entry and then rely on the scheduling performed
      by `on_initialize` again.
      
      * Add a big fat comment
      
      * Typos
      
      Co-authored-by: asynchronous rob's avatarRobert Habermeier <rphmeier@gmail.com>
      
      * Move session change to the end of the current block
      
      Previously, it was the beginning of the next block. This allows us to
      put #[skip_initialize_block]
      
      * Update tests
      
      * Fix a test in paras registrar
      
      Also refactor it a bit so the next time there are more chances this kind
      of issue is diagnosed quicker.
      
      * Add for_runtime_api to inclusion's check_validation_outputs
      
      Co-authored-by: asynchronous rob's avatarRobert Habermeier <rphmeier@gmail.com>
      e21f5cec
  11. 08 Dec, 2020 1 commit
  12. 30 Nov, 2020 1 commit
  13. 26 Nov, 2020 1 commit
    • Andronik Ordian's avatar
      past-session validator discovery APIs (#2009) · 734eda87
      Andronik Ordian authored
      
      
      * guide: fix formatting for SessionInfo module
      
      * primitives: SessionInfo type
      
      * punt on approval keys
      
      * ah, revert the type alias
      
      * session info runtime module skeleton
      
      * update the guide
      
      * runtime/configuration: sync with the guide
      
      * runtime/configuration: setters for newly added fields
      
      * runtime/configuration: set codec indexes
      
      * runtime/configuration: update test
      
      * primitives: fix SessionInfo definition
      
      * runtime/session_info: initial impl
      
      * runtime/session_info: use initializer for session handling (wip)
      
      * runtime/session_info: mock authority discovery trait
      
      * guide: update the initializer's order
      
      * runtime/session_info: tests skeleton
      
      * runtime/session_info: store n_delay_tranches in Configuration
      
      * runtime/session_info: punt on approval keys
      
      * runtime/session_info: add some basic tests
      
      * Update primitives/src/v1.rs
      
      * small fixes
      
      * remove codec index annotation on structs
      
      * fix off-by-one error
      
      * validator_discovery: accept a session index
      
      * runtime: replace validator_discovery api with session_info
      
      * Update runtime/parachains/src/session_info.rs
      
      Co-authored-by: Sergey Pepyakin's avatarSergei Shulepov <sergei@parity.io>
      
      * runtime/session_info: add a comment about missing entries
      
      * runtime/session_info: define the keys
      
      * util: expose connect_to_past_session_validators
      
      * util: allow session_info requests for jobs
      
      * runtime-api: add mock test for session_info
      
      * collator-protocol: add session_index to test state
      
      * util: fix error message for runtime error
      
      * fix compilation
      
      * fix tests after merge with master
      
      Co-authored-by: Sergey Pepyakin's avatarSergei Shulepov <sergei@parity.io>
      734eda87
  14. 17 Nov, 2020 1 commit
    • Andronik Ordian's avatar
      update most of the dependencies (#1946) · 31fb8fed
      Andronik Ordian authored
      * update tiny-keccak to 0.2
      
      * update deps except bitvec and shared_memory
      
      * fix some warning after futures upgrade
      
      * remove useless package rename caused by bug in cargo-upgrade
      
      * revert parity-util-mem *
      
      * remove unused import
      
      * cargo update
      
      * remove all renames on parity-scale-codec
      
      * remove the leftovers
      
      * remove unused dep
      31fb8fed
  15. 16 Nov, 2020 1 commit
    • Sergey Pepyakin's avatar
      Breakdown the Router module on Dmp, Ump, Hrmp modules (#1939) · c7708818
      Sergey Pepyakin authored
      
      
      * Guide: Split router module in guide.
      
      Now we have: DMP, UMP and Router module.
      
      * Add a glossary entry for what used to be called Router
      
      * Extract DMP
      
      * Extract UMP
      
      * Extract HRMP
      
      * Switch over to new modules
      
      * Router: goodbye sweet prince
      
      * Link to messaging overview for details.
      
      * Update missed rococo and test runtimes.
      
      * Commit destroyed by rebase changes
      
      * Don't deprecate Router but rather make it a meta-project
      
      Co-authored-by: default avatarBernhard Schuster <bernhard@ahoi.io>
      
      * Fix typos suggestion
      
      Co-authored-by: default avatarBernhard Schuster <bernhard@ahoi.io>
      
      * Fix repetition in the impl guide
      
      * Clarify that processed_downward_messages has the u32 type
      
      * Remove the router subdir.
      
      * Deabbreviate DMP,UMP,HRMP
      
      Co-authored-by: default avatarBernhard Schuster <bernhard@ahoi.io>
      c7708818
  16. 17 Sep, 2020 1 commit
  17. 04 Aug, 2020 1 commit
  18. 10 Jul, 2020 1 commit
    • 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
  19. 09 Jul, 2020 1 commit
  20. 08 Jul, 2020 1 commit
  21. 18 Jun, 2020 1 commit
    • 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
  22. 11 Jun, 2020 1 commit
    • asynchronous rob's avatar
      Scheduler Module (#1162) · 1696982d
      asynchronous rob authored
      
      
      * scheduler module skeleton
      
      * update scheduler skeleton to match latest version of guide
      
      * better session change notification
      
      * add mock randomness and fix test compilation
      
      * shuffle validators into groups
      
      * finish implementing session change logic for scheduler
      
      * tweak core assignment type to track retries of parathread
      
      * reframe queued parathread core as offset
      
      * implement initialzation and finalization routines
      
      * implement parathread claim queuing
      
      * implement core_para
      
      * implement the group_validators routine and fix errors
      
      * add a reason for freeing cores
      
      * implement `schedule` function
      
      * add some docs to the scheduled function
      
      * implement `occupied` helper
      
      * implement availability predicate
      
      * fix some warnings
      
      * integrate scheduler into initializer
      
      * integrate scheduler into mock module
      
      * avoid conflict with Substrate's scheduler storage
      
      * add parathreads index to paras module
      
      * implement parathreads map in paras module
      
      * add is_parathread to paras
      
      * test adding parathread claim
      
      * test that you cannot add claims when no parathread cores exist
      
      * check session change parathread queue pruning
      
      * test validator shuffling
      
      * add allow_unused to scheduler items
      
      * add test for scheduling
      
      * add some more tests for scheduling logic
      
      * test core rotation
      
      * check parathread claim pruning after retries
      
      * add bound notes
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      Co-authored-by: default avatarBernhard Schuster <bernhard@ahoi.io>
      
      * more suggestions from review
      
      * test availability predicate, add box to please compiler
      
      * add changes to guide
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      Co-authored-by: default avatarBernhard Schuster <bernhard@ahoi.io>
      1696982d
  23. 02 Jun, 2020 1 commit
    • asynchronous rob's avatar
      New parachain runtime skeleton (#1158) · 217083a9
      asynchronous rob authored
      * file structure and initializer skeleton
      
      * ensure session changes happen before initialization
      
      * add a couple tests for initializer flow
      
      * integrate with session handling
      
      * configuration update logic
      
      * configuration methods
      
      * move test mock to its own module
      
      * integrate configuration into initializer
      
      * add note about initialization order
      
      * integrate configuration module into mock
      
      * add some tests for config module
      
      * paras module storage
      
      * implement paras session change operation
      
      * amend past code pruning to fully cover acceptance period
      
      * update guide again
      
      * do pruning of historical validation code
      
      * add weight to initialization
      
      * integrate into mock & leave notes for next session
      
      * clean up un-ended sentence
      
      * alter test to account for double index in past code meta
      
      * port over code-at logic test
      
      * clarify checking for conflicting code upgrades
      
      * add genesis for paras, include in mock, ensure incoming paras are processed
      
      * note on return value of `validation_code_at`
      
      * implement paras routines from implementor's guide
      
      * bring over some existing tests and begin porting
      
      * port over code upgrade tests
      
      * test parachain registration
      
      * test code_at with intermediate block
      
      * fix warnings
      
      * clean up docs and extract to separate struct
      
      * adjust implementor's guide to include replacementtimes
      
      * kill stray println
      
      * rename expected_at to applied_after
      
      * rewrite ParaPastCodeMeta to avoid reversal
      
      * clarify and test interface of validation_code_at
      
      * make FutureCode optional
      
      * rename do_old_code_pruning
      
      * add comment on Option<()> to answer FAQ
      
      * address some more grumbles
      217083a9