- Feb 19, 2021
-
-
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: Gavin Wood <[email protected]>
-
- Feb 16, 2021
-
-
thiolliere authored
-
- Feb 12, 2021
-
-
Bastian Köcher authored
-
- Feb 10, 2021
-
-
André Silva authored
* runtime: set equivocation report longevity * "Update Substrate" * update substrate Co-authored-by: parity-processbot <> Co-authored-by: thiolliere <[email protected]>
-
- Feb 02, 2021
-
-
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 <>
-
- Jan 28, 2021
-
-
Bastian Köcher authored
* Companion for #7997 https://github.com/paritytech/substrate/pull/7997 * rename slot_number to slot * rename SlotNumber type in overseer docs * "Update Substrate" Co-authored-by: André Silva <[email protected]> Co-authored-by: parity-processbot <>
-
- Jan 27, 2021
-
-
Shawn Tabrizi authored
* Use extensible multiaddress * copy pasta
-
- Jan 26, 2021
-
-
Bastian Köcher authored
* Rococo V2 * Do it again! * Rename
-
Ricardo Rius authored
* Refact proposal pallet * Update runtime/rococo/src/propose_parachain.rs Co-authored-by: Andronik Ordian <[email protected]> * Fix * Apply suggestions from code review Co-authored-by: Andronik Ordian <[email protected]> * AHH Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Andronik Ordian <[email protected]> Co-authored-by: Bastian Köcher <[email protected]>
-
- Jan 18, 2021
-
-
Sergey Pepyakin authored
* collation-generation: use persisted validation data * node: remote FullValidationData API * runtime: remove FullValidationData API * backing tests: use persisted validation data * FullCandidateReceipt: use persisted validation data This is not a big change since this type is not used anywhere * Remove ValidationData and TransientValidationData Also update the guide
-
- Jan 14, 2021
-
-
Liu-Cheng Xu authored
* Companion for Substrate#7692 * "Update Substrate" Co-authored-by: parity-processbot <>
-
- Jan 13, 2021
-
-
ordian authored
* session_info: use correct authorities set * bump rococo spec_version to 19 * "Update Substrate" Co-authored-by: parity-processbot <>
-
Sergey Pepyakin authored
* Drive by fixes The visibility modifiers are remnants of the previous structure where HRMP wasn't a standalone module, by rather a submodule of the router module. * Add Currency assoc type to Config This would allow us to reserve balance for deposits. This commit also integrates the HRMP module in rococo, test-runtime and mocks to use the balances pallet. * Fix a bug that doesn't increment the age In case the request is not confirmed, the age would be incremented but not persisted. * Fix cleaning the indexes Before that change, the cleaning of the channel indexes was wrong, because it naively removed entire rows that was pertaining to the para we delete. This approach is flawed because it doesn't account for the rows that are pertaining to other paras that contain the outgoing one. This clearly violates the invariant imposed on the indexes, that all the index rows must contain alive paras, but apart from that it also lead to the situation where ingress index would contain the a different set of channels that an egress have. * Reserve currency for opening the channels Note the ugly `unique_saturated_into` calls. The reason for them is the currency trait accepts and defines the `Balance` associated type and the deposit values are coming from the `HostConfiguration` where they are defined using the `Balance`. I figured that parameterising `HostConfiguration` would be annoying. On the other hand, I don't expect these `unique_saturated_into` calls to give us problems since it seems to be a reasonable assumption that this module will be instantiated within a runtime where the Currency provided will have a Balance that matches the one used in the configuration. * Tests: Adapt `run_to_block` so that it submits a proper config * Tests: exercise the deposit logic
-
- Jan 12, 2021
-
-
Bastian Köcher authored
* Add bad block to rococo * Bump rococo spec_version * Revert "Add bad block to rococo" This reverts commit 56664ce36f4fd9ea570b63e7b6978a6d2ff2aace.
-
Bastian Köcher authored
* Adds propose parachain pallet * Update runtime/rococo/src/propose_parachain.rs Co-authored-by: Shawn Tabrizi <[email protected]> * Fix runtime benchmarks * Get rid of staking * Fix benchmarking feature.. * Remove accidentally added crate * Bump Rococo spec_version Co-authored-by: Shawn Tabrizi <[email protected]>
-
- Jan 06, 2021
-
-
André Silva authored
* runtime: add Babe::next_epoch runtime api method * "Update Substrate" Co-authored-by: parity-processbot <>
-
- Jan 05, 2021
-
-
Bastian Köcher authored
* Add one Jaeger span per relay parent This adds one Jaeger span per relay parent, instead of always creating new spans per relay parent. This should improve the UI view, because subsystems are now grouped below one common span. * Fix doc tests * Replace `PerLeaveSpan` to `PerLeafSpan` * More renaming * Moare * Update node/subsystem/src/lib.rs Co-authored-by: Andronik Ordian <[email protected]> * Skip the spans * Increase `spec_version` Co-authored-by: Andronik Ordian <[email protected]>
-
- Jan 04, 2021
-
-
Sergey Pepyakin authored
* Cont.: Implement the state root obtaining during inclusion During inclusion now we obtain the storage root by passing it through the inclusion_inherent. * Fix tests * Bump rococo spec version * Reorder the parent header into the end of the inclusion inherent. When the parent header is in the beginning, it shifts the other two fields, so that a previous version won't be able to decode that. If we put the parent header in the end, the other two fields will stay at their positions, thus make it possible to decode with the previous version. That allows us to perform upgrade of rococo runtime without needing of simultanuous upgrade of nodes and runtime, or restart of the network. * Squash a stray tab
-
- Dec 30, 2020
-
-
Alexander Theißen authored
* Companion for #7810 * Added missing trait items for tests * Add another missing trait item * fixup * "Update Substrate" Co-authored-by: parity-processbot <>
-
- Dec 27, 2020
-
-
asynchronous rob authored
* point to branch * update babe API implementations * build * Revert "point to branch" This reverts commit 669fde1e58cac1eef1847d5e6b39520fa4953f33. * update Cargo.lock * bump
-
- Dec 24, 2020
-
-
Bastian Köcher authored
This pr adds support to change the session length of a Rococo chain at genesis. This is rather useful because Rococo has a session length of 1 hour, while on rococo-local you will now get 1 minute. This improves the dev experience, because a parachain is only going live at the start of a new session.
-
- Dec 21, 2020
-
-
asynchronous rob authored
-
- Dec 18, 2020
-
-
Bastian Köcher authored
* Update to latest master and use 30 minutes sessions * add bootnodes to chainspec * Update Substrate * Update chain-spec * Update Cargo.lock * GENESIS * Change session length to one hour * Bump spec_version to not fuck anything up ;) Co-authored-by: Erin Grasmick <[email protected]>
-
asynchronous rob authored
* guide: add candidate information to OccupiedCore * add descriptor and hash to occupied core type * guide: add candidate hash to inclusion * runtime: return candidate info in core state * bitfield signing: stop querying runtime as much * minimize going to runtime in availability distribution * fix availability distribution tests * guide: remove para ID from Occupied core * get all crates compiling
-
- Dec 16, 2020
-
-
asynchronous rob authored
* plumbing for rewarding backers * give validators reward points for participating * fix tests * add bitfield rewarding * add mocks for backing rewards * add testing for backing & availability rewards * implement RewardValidators on top of staking * add to test-runtime and rococo * add to test-runtime & rococo * point to source on rewards values * fix common tests * do not reward availability anymore
-
- Dec 14, 2020
-
-
Shawn Tabrizi authored
* basic setup * fix compile * add back xcmsink * Update primitives.rs * add downward xcm for sudo * Update paras_sudo_wrapper.rs * Update Cargo.lock * some cleanups * Add error log Co-authored-by: Sergei Shulepov <[email protected]>
-
- Dec 11, 2020
-
-
asynchronous rob authored
* guide: merge backing and approval keys * bump substrate master & update primitives * use new SessionInfo struct in session_info * session keys upgrade for Polkadot * kusama & westend runtimes * bump westend, kusama, and polkadot versions * add session key to rococo & test-runtime * update prepare-test-net to latest subkey * update chain specs to support new para_assignment session key * get cargo.lock from master * formatting * update kill_storage based on substrate master * fix test-service * assgn -> asgn * use session info module for assignment session key
-
- Dec 08, 2020
-
-
Tomasz Drwięga authored
* Change branch. * Update runtime. * Revert "Change branch." This reverts commit 841c59f3398136c27cc235a29d7d459e8a4c8ce0. * Update substrate. * Fix tests. * Fix compilation. * Fix frame system imports. * Fix usages of system * Fix stuff. * Fix compilation. * Fixes. * Fix block_weight usage. * Bump substrate.
-
- Nov 30, 2020
-
-
thiolliere authored
* rename Trait -> Config * revert diener changes * rename HostConfig to ActiveConfig as more meaningful * fix merge * "Update Substrate" * cargo update -p sp-io Co-authored-by: parity-processbot <>
-
- Nov 27, 2020
-
-
asynchronous rob authored
* guide: move erasure-root to candidate descriptor * primitives: move erasure root to descriptor * guide: unify candidate commitments and validation outputs * primitives: unify validation outputs and candidate commitments * parachains-runtime: fix fallout * runtimes: fix fallout * collation generation: fix fallout * fix stray reference in primitives * fix fallout in node-primitives * fix remaining fallout in collation generation * fix fallout in candidate validation * fix fallout in runtime API subsystem * fix fallout in subsystem messages * fix fallout in candidate backing * fix fallout in availability distribution * don't clone * clone Co-authored-by: Sergei Shulepov <[email protected]>
-
- Nov 26, 2020
-
-
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: Sergei Shulepov <[email protected]> * 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: Sergei Shulepov <[email protected]>
-
- Nov 17, 2020
-
-
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
-
- Nov 16, 2020
-
-
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: Bernhard Schuster <[email protected]> * Fix typos suggestion Co-authored-by: Bernhard Schuster <[email protected]> * 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: Bernhard Schuster <[email protected]>
-
- Nov 09, 2020
-
-
Bastian Köcher authored
* Adds integration test based on adder collator This adds an integration test for parachains that uses the adder collator. The test will start two relay chain nodes and one collator and waits until 4 blocks are build and enacted by the parachain. * Make sure the integration test is run in CI * Fix wasm compilation * Update parachain/test-parachains/adder/collator/src/lib.rs Co-authored-by: Sergei Shulepov <[email protected]> * Update cli/src/command.rs Co-authored-by: Sergei Shulepov <[email protected]>
-
- Nov 06, 2020
-
-
Sergey Pepyakin authored
* HRMP: Update the impl guide * HRMP: Incorporate the channel notifications into the guide * HRMP: Renaming in the impl guide * HRMP: Constrain the maximum number of HRMP messages per candidate This commit addresses the HRMP part of https://github.com/paritytech/polkadot/issues/1869 * XCM: Introduce HRMP related message types * HRMP: Data structures and plumbing * HRMP: Configuration * HRMP: Data layout * HRMP: Acceptance & Enactment * HRMP: Test base logic * Update adder collator * HRMP: Runtime API for accessing inbound messages Also, removing some redundant fully-qualified names. * HRMP: Add diagnostic logging in acceptance criteria * HRMP: Additional tests * Self-review fixes * save test refactorings for the next time * Missed a return statement. * a formatting blip * Add missing logic for appending HRMP digests * Remove the channel contents vectors which became empty * Tighten HRMP channel digests invariants. * Apply suggestions from code review Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * Remove a note about sorting for channel id * Add missing rustdocs to the configuration * Clarify and update the invariant for HrmpChannelDigests * Make the onboarding invariant less sloppy Namely, introduce `Paras::is_valid_para` (in fact, it already is present in the implementation) and hook up the invariant to that. Note that this says "within a session" because I don't want to make it super strict on the session boundary. The logic on the session boundary should be extremely careful. * Make `CandidateCheckContext` use T::BlockNumber for hrmp_watermark Co-authored-by: Peter Goodspeed-Niklaus <[email protected]>
-
- Nov 03, 2020
-
-
Bastian Köcher authored
* Parachain improvements - Set the parachains configuration in Rococo genesis - Don't stop the overseer when a subsystem job is stopped - Several small code changes * Remove unused functionality * Return error from the runtime instead of printing it * Apply suggestions from code review Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * Update primitives/src/v1.rs Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * Update primitives/src/v1.rs Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * Fix test * Revert "Update primitives/src/v1.rs" This reverts commit 11fce2785acd1de481ca57815b8e18400f09fd52. * Revert "Update primitives/src/v1.rs" This reverts commit d6439fed4f954360c89fb1e12b73954902c76a41. * Revert "Return error from the runtime instead of printing it" This reverts commit cb4b5c0830ac516a6d54b2c24197e9354f2b98cb. * Revert "Fix test" This reverts commit 0c5fa1b5566d4cd3c55a55d485e707165ce7a59e. * Update runtime/parachains/src/runtime_api_impl/v1.rs Co-authored-by: Sergei Shulepov <[email protected]> Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> Co-authored-by: Sergei Shulepov <[email protected]>
-
- Nov 02, 2020
-
-
asynchronous rob authored
* fix: ensure candidate validation gets code based on occupied core assumption * guide: runtime API for historical validation code * add historical runtime API * integrate into runtime API subsystem * remove blocked TODO * fix service build: enable notifications protocol only under real overseer * Update node/subsystem/src/messages.rs Co-authored-by: Sergei Shulepov <[email protected]> * fix compilation Co-authored-by: Robert Habermeier <[email protected]> Co-authored-by: Sergei Shulepov <[email protected]>
-
Sergey Pepyakin authored
* UMP: Update the impl guide * UMP: Incorporate XCM related changes into the guide * UMP: Data structures and configuration * UMP: Initial plumbing * UMP: Data layout * UMP: Acceptance criteria & enactment * UMP: Fix dispatcher bug and add the test for it * UMP: Constrain the maximum size of an UMP message This commit addresses the UMP part of https://github.com/paritytech/polkadot/issues/1869 * Fix failing test due to misconfiguration * Make the type of RelayDispatchQueueSize be more apparent in the guide * Revert renaming `max_upward_queue_capacity` to `max_upward_queue_count` * convert spaces to tabs Co-authored-by: Bernhard Schuster <[email protected]> * Update runtime/parachains/src/router/ump.rs Co-authored-by: Bernhard Schuster <[email protected]> Co-authored-by: Bernhard Schuster <[email protected]>
-
- Oct 31, 2020
-
-
Bastian Köcher authored
* start working on building the real overseer Unfortunately, this fails to compile right now due to an upstream failure to compile which is probably brought on by a recent upgrade to rustc v1.47. * fill in AllSubsystems internal constructors * replace fn make_metrics with Metrics::attempt_to_register * update to account for #1740 * remove Metrics::register, rename Metrics::attempt_to_register * add 'static bounds to real_overseer type params * pass authority_discovery and network_service to real_overseer It's not straightforwardly obvious that this is the best way to handle the case when there is no authority discovery service, but it seems to be the best option available at the moment. * select a proper database configuration for the availability store db * use subdirectory for av-store database path * apply Basti's patch which avoids needing to parameterize everything on Block * simplify path extraction * get all tests to compile * Fix Prometheus double-registry error for debugging purposes, added this to node/subsystem-util/src/lib.rs:472-476: ```rust Some(registry) => Self::try_register(registry).map_err(|err| { eprintln!("PrometheusError calling {}::register: {:?}", std::any::type_name::<Self>(), err); err }), ``` That pointed out where the registration was failing, which led to this fix. The test still doesn't pass, but it now fails in a new and different way! * authorities must have authority discovery, but not necessarily overseer handlers * fix broken SpawnedSubsystem impls detailed logging determined that using the `Box::new` style of future generation, the `self.run` method was never being called, leading to dropped receivers / closed senders for those subsystems, causing the overseer to shut down immediately. This is not the final fix needed to get things working properly, but it's a good start. * use prometheus properly Prometheus lets us register simple counters, which aren't very interesting. It also allows us to register CounterVecs, which are. With a CounterVec, you can provide a set of labels, which can later be used to filter the counts. We were using them wrong, though. This pattern was repeated in a variety of places in the code: ```rust // panics with an cardinality mismatch let my_counter = register(CounterVec::new(opts, &["succeeded", "failed"])?, registry)?; my_counter.with_label_values(&["succeeded"]).inc() ``` The problem is that the labels provided in the constructor are not the set of legal values which can be annotated, but a set of individual label names which can have individual, arbitrary values. This commit fixes that. * get av-store subsystem to actually run properly and not die on first signal * typo fix: incomming -> incoming * don't disable authority discovery in test nodes * Fix rococo-v1 missing session keys * Update node/core/av-store/Cargo.toml * try dummying out av-store on non-full-nodes * overseer and subsystems are required only for full nodes * Reduce the amount of warnings on browser target * Fix two more warnings * InclusionInherent should actually have an Inherent module on rococo * Ancestry: don't return genesis' parent hash * Update Cargo.lock * fix broken test * update test script: specify chainspec as script argument * Apply suggestions from code review Co-authored-by: Bastian Köcher <[email protected]> * Update node/service/src/lib.rs Co-authored-by: Bastian Köcher <[email protected]> * node/service/src/lib: Return error via ? operator * post-merge blues * add is_collator flag * prevent occasional av-store test panic * simplify fix; expand application * run authority_discovery in Role::Discover when collating * distinguish between proposer closed channel errors * add IsCollator enum, remove is_collator CLI flag * improve formatting * remove nop loop * Fix some stuff * Adds test parachain adder collator * Add sudo to Rococo, change session length to 30 seconds and some renaming * Update to the latest changes on master * Some fixes * Fix compilation * Update parachain/test-parachains/adder/collator/src/lib.rs Co-authored-by: Sergei Shulepov <[email protected]> * Review comments * Downgrade transaction version * Fixes * MOARE * Register notification protocols * utils: remove unused error * av-store: more resilient to some errors * address review nits * address more review nits Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> Co-authored-by: Andronik Ordian <[email protected]> Co-authored-by: Fedor Sakharov <[email protected]> Co-authored-by: Robert Habermeier <[email protected]> Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> Co-authored-by: Max Inden <[email protected]> Co-authored-by: Sergey Shulepov <[email protected]> Co-authored-by: Sergei Shulepov <[email protected]>
-
- Aug 13, 2020
-
-
asynchronous rob authored
* remove v0 parachains modules and switch to v1 primitives * get tests compiling for runtime-common * remove registrar module * Add a dummy module * remove runtime-parachains * mostly remove old parachains code from polkadot-runtime * remove slots::Trait implementation * remove sp_std prelude import * add a ZeroSizedTypeDifferentiator to dummy * finish porting over polkadot runtime * ZeroSizedTypeDifferentiator was actually unnecessary * westend * kusama * test-runtime (no dummy modules) * fix warning * fix chain-specs * fix test-service * test-client * remove dead import * remove unused needed_extrinsics parameter * runtimes compile * remove rococo-v0 * remove remaining references to Rococo * bump versions
-