Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

cli: Improve pruning documentation #12819

Merged
merged 13 commits into from
Dec 8, 2022

Conversation

lexnv
Copy link
Contributor

@lexnv lexnv commented Dec 1, 2022

This PR improves the documentation of the pruning modes
exposed as CLI flags.

This specifies what the options mean (ie archive, archive-canonical, or number),
and what the two pruning modes are responsible for (state vs block pruning).

While at it, remove the old note that stated that only finalized blocks
are subject to pruning (which is not entirely true anymore, since we are
also pruning displaced branches -- forks).

Closes #12811.

Signed-off-by: Alexandru Vasile <[email protected]>
@lexnv lexnv added A0-please_review Pull request needs code review. C1-low PR touches the given topic and has a low impact on builders. D3-trivial 🧸 PR contains trivial changes in a runtime directory that do not require an audit labels Dec 1, 2022
@lexnv lexnv self-assigned this Dec 1, 2022
@lexnv lexnv requested review from cheme and bkchr December 1, 2022 12:46
@lexnv lexnv added the B0-silent Changes should not be mentioned in any release notes label Dec 1, 2022
Copy link
Contributor

@cheme cheme left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good to me.
I'm not entirely sure we should use "finalized (canonical)" in the text or just "finalized" as there can be sometime a reason to distinguished both, but from a user perspective it is not worth doing a distinction.
cc\ @arkpar

Comment on lines 31 to 38
/// Options available:
/// 'archive' Keep the state of all blocks.
/// 'archive-canonical' Keep only the state of finalized blocks.
/// number Keep the state of the last number of finalized blocks.
///
/// The default option is to keep the last 256 blocks (number == 256).
#[arg(alias = "pruning", long, value_name = "PRUNING_MODE")]
pub state_pruning: Option<String>,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should change this to:

Suggested change
/// Options available:
/// 'archive' Keep the state of all blocks.
/// 'archive-canonical' Keep only the state of finalized blocks.
/// number Keep the state of the last number of finalized blocks.
///
/// The default option is to keep the last 256 blocks (number == 256).
#[arg(alias = "pruning", long, value_name = "PRUNING_MODE")]
pub state_pruning: Option<String>,
#[arg(alias = "pruning", long, value_name = "PRUNING_MODE", default = "256")]
pub state_pruning: PruningMode,

Then add the following enum:

enum PruningMode {
     Archive,
     ArchiveCanonical,
     Custom(u32),
}

impl clap::ValueEnum for PruningMode {
     .. impl the enum
}

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, that does make sense! Thanks for the suggestion!

One problem with ValueEnum is that its happy with unit only enum variants. This is related to the value_variants that requires us to state the expected values. If the Custom(32) is omitted, the default value of "256" cannot be provided anymore.

To overcome this I've changed the ValueEnum to FromStr.
Let me know what you think of it

client/cli/src/params/pruning_params.rs Outdated Show resolved Hide resolved
Copy link
Member

@bkchr bkchr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Already looks much better, but now we just need to tell clap that these values are enum_values.

client/cli/src/params/pruning_params.rs Outdated Show resolved Hide resolved
client/cli/src/params/pruning_params.rs Show resolved Hide resolved
client/cli/src/params/pruning_params.rs Outdated Show resolved Hide resolved
client/cli/src/params/pruning_params.rs Outdated Show resolved Hide resolved
client/cli/src/params/pruning_params.rs Outdated Show resolved Hide resolved
client/cli/src/params/pruning_params.rs Outdated Show resolved Hide resolved
@bkchr
Copy link
Member

bkchr commented Dec 8, 2022

bot merge

@paritytech-processbot
Copy link

Waiting for commit status.

@bkchr
Copy link
Member

bkchr commented Dec 8, 2022

Thank you @lexnv

@paritytech-processbot paritytech-processbot bot merged commit 9a0644c into master Dec 8, 2022
@paritytech-processbot paritytech-processbot bot deleted the lexnv/cli_db_documentation branch December 8, 2022 20:15
kianenigma added a commit that referenced this pull request Dec 14, 2022
* Introduce sensible weight constants (#12868)

* Introduce sensible weight constants

* cargo fmt

* Remove unused import

* Add missing import

* ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery

Co-authored-by: command-bot <>

* Checkout to the branch HEAD explicitly in `build-linux-substrate` (#12876)

* cli: Improve pruning documentation (#12819)

* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>

* Revert "Move LockableCurrency trait to fungibles::Lockable and deprecate LockableCurrency (#12798)" (#12882)

This reverts commit ea3ca3f.

* Don't indefinitely block on shutting down Tokio (#12885)

* Don't indefinitely on shutting down Tokio

Now we wait in maximum 60 seconds before we shutdown the node. Tasks are may be leaked and leading
to some data corruption.

* Drink less :thinking_face:

* General Message Queue Pallet (#12485)

* The message queue

* Make fully generic

* Refactor

* Docs

* Refactor

* Use iter not slice

* Per-origin queues

* Multi-queue processing

* Introduce MaxReady

* Remove MaxReady in favour of ready ring

* Cleanups

* ReadyRing and tests

* Stale page reaping

* from_components -> from_parts

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move WeightCounter to sp_weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add MockedWeightInfo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Deploy to kitchensink

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use WeightCounter

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Small fixes and logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_page

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Typo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move service_page below service_queue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use correct weight function

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Overweight execution

* Refactor

* Missing file

* Fix WeightCounter usage in scheduler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix peek_index

Take into account that decoding from a mutable slice modifies it.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests and bench service_page_item

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add no-progress check to service_queues

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add more benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Bound from_message and try_append_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add PageReaped event

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BookStateOf and BookStateFor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update tests and remove logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove redundant per-message origins; add footprint() and sweep_queue()

* Move testing stuff to mock.rs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add integration test

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix no-progress check

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup merge and tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix footprint tracking

* Introduce

* Formatting

* OverweightEnqueued event, auto-servicing config item

* Update tests and benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Provide change handler

* Add missing BookStateFor::insert and call QueueChangeHandler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benchmarks and weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use weight metering functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* weightInfo::process_message_payload is gone

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add defensive_saturating_accrue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename WeightCounter to WeightMeter

Ctr+Shift+H should do the trick.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test on_initialize

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add module docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove origin from MaxMessageLen

The message origin is not encoded into the heap and does
therefore not influence the max message length anymore.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add BoundedVec::as_slice

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test Page::{from_message, try_append_message}

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Do nothing in sweep_queue if the queue does not exist

... otherwise it inserts default values into the storage.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test ring (un)knitting

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Upgrade stress-test

Change the test to not assume that all queued messages will be
processed in the next block but split it over multiple.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BoundedVec::as_slice to as_bounded_slice

Conflicts with deref().as_slice() otherwise.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix imports

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove ReadyRing struct

Was used for testing only. Instead use 'fn assert_ring' which also
check the service head and backlinks.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix stale page watermark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix test feature and clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* QueueChanged handler is called correctly

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Abstract testing functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Simplify tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make stuff compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Extend overweight execution benchmark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove TODOs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test service queue with faulty MessageProcessor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update pallet ui tests to 1.65

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Review doc fixes

Co-authored-by: Robert Klotzner <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add weight_limit to extrinsic weight of execute_overweight

* Correctly return unused weight

* Return actual weight consumed in do_execute_overweight

* Review fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Set version 7.0.0-dev

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make it compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_size to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_count to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make CI green

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Update tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* ".git/.scripts/bench-bot.sh" pallet dev pallet_message_queue

* Dont mention README.md in the Cargo.toml

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove reference to readme

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>

* zombienet timings adjusted (#12890)

* zombinet tests: add some timeout to allow net spin-up

Sometimes tests are failing at first try, as the pods were not up yet.
Adding timeout should allow the network to spin up properly.

* initial timeout increased to 30s

* Move import queue out of `sc-network` (#12764)

* Move import queue out of `sc-network`

Add supplementary asynchronous API for the import queue which means
it can be run as an independent task and communicated with through
the `ImportQueueService`.

This commit removes removes block and justification imports from
`sc-network` and provides `ChainSync` with a handle to import queue so
it can import blocks and justifications. Polling of the import queue is
moved complete out of `sc-network` and `sc_consensus::Link` is
implemented for `ChainSyncInterfaceHandled` so the import queue
can still influence the syncing process.

* Fix tests

* Apply review comments

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update client/network/sync/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Trace response payload in default `jsonrpsee` middleware (#12886)

* Trace result in default `jsonrpsee` middleware

* `rpc_metrics::extra`

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown (#12897)

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown

The change of waiting in maximum 60 seconds for the node to shutdown actually introduced a bug. We
were actually waiting always 60 seconds as we didn't informed our tasks to shutdown. The solution to
this problem is to drop the task manager as this will then inform all tasks to end. It also adds
tests to ensure that the behaviors work as expected. (This should already have been done in the
first pr! :()

* ".git/.scripts/fmt.sh" 1

Co-authored-by: command-bot <>

* Safe desired targets call (#12826)

* checked call for desired targets

* fix compile

* fmt

* fix tests

* cleaner with and_then

* Fix typo (#12900)

* ValidateUnsigned: Improve docs. (#12870)

* ValidateUnsigned: Improve docs.

* Review comments

* rpc server with HTTP/WS on the same socket (#12663)

* jsonrpsee v0.16

add backwards compatibility

run old http server on http only

* cargo fmt

* update jsonrpsee 0.16.1

* less verbose cors log

* fix nit in log: WS -> HTTP

* revert needless changes in Cargo.lock

* remove unused features in tower

* fix nits; add client-core feature

* jsonrpsee v0.16.2

* `pallet-message-queue`: Fix license (#12895)

* Fix license

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add mock doc

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices (#12891)

* frame-system: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* pallet-template: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* DNM: Temporarily require call_index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Revert "DNM: Temporarily require call_index"

This reverts commit c4934e3.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Pin canonincalized block (#12902)

* Remove implicit approval chilling upon slash. (#12420)

* don't read slashing spans when taking election snapshot

* update cargo.toml

* bring back remote test

* fix merge stuff

* fix npos-voters function sig

* remove as much redundant diff as you can

* Update frame/staking/src/pallet/mod.rs

Co-authored-by: Andronik <[email protected]>

* fix

* Update frame/staking/src/pallet/impls.rs

* update lock

* fix all tests

* review comments

* fmt

* fix offence bench

* clippy

* ".git/.scripts/bench-bot.sh" pallet dev pallet_staking

Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: command-bot <>

* bounties calls docs fix (#12909)

Co-authored-by: parity-processbot <>

* pallet-contracts migration pre-upgrade fix for v8 (#12905)

* Only run pre-v8 migration check for versions older than 8

* Logix fix

* use custom environment for publishing crates (#12912)

* [contracts] Add debug buffer limit + enforcement (#12845)

* Add debug buffer limit + enforcement

Add debug buffer limit + enforcement

* use BoundedVec for the debug buffer

* revert schedule (debug buf len limit not needed anymore)

* return DispatchError

* addressed review comments

* frame/remote-externalities: Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* frame/rpc: Add previous export

Signed-off-by: Alexandru Vasile <[email protected]>

* Fixup some wrong dependencies (#12899)

* Fixup some wrong dependencies

Dev dependencies should not appear in the feature list. If features are required, they should be
directly enabled for the `dev-dependency`.

* More fixups

* Fix fix

* Remove deprecated feature

* Make all work properly and nice!!

* FMT

* Fix formatting

* add numerator and denominator to Rational128 Debug impl and increase precision of float representation (#12914)

* Fix state-db pinning (#12927)

* Pin all canonicalized blocks

* Added a test

* Docs

* [ci] add job switcher (#12922)

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Kian Paimani <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>
kianenigma added a commit that referenced this pull request Dec 14, 2022
* Introduce sensible weight constants (#12868)

* Introduce sensible weight constants

* cargo fmt

* Remove unused import

* Add missing import

* ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery

Co-authored-by: command-bot <>

* Checkout to the branch HEAD explicitly in `build-linux-substrate` (#12876)

* cli: Improve pruning documentation (#12819)

* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>

* Revert "Move LockableCurrency trait to fungibles::Lockable and deprecate LockableCurrency (#12798)" (#12882)

This reverts commit ea3ca3f.

* Don't indefinitely block on shutting down Tokio (#12885)

* Don't indefinitely on shutting down Tokio

Now we wait in maximum 60 seconds before we shutdown the node. Tasks are may be leaked and leading
to some data corruption.

* Drink less :thinking_face:

* General Message Queue Pallet (#12485)

* The message queue

* Make fully generic

* Refactor

* Docs

* Refactor

* Use iter not slice

* Per-origin queues

* Multi-queue processing

* Introduce MaxReady

* Remove MaxReady in favour of ready ring

* Cleanups

* ReadyRing and tests

* Stale page reaping

* from_components -> from_parts

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move WeightCounter to sp_weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add MockedWeightInfo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Deploy to kitchensink

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use WeightCounter

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Small fixes and logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_page

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Typo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move service_page below service_queue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use correct weight function

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Overweight execution

* Refactor

* Missing file

* Fix WeightCounter usage in scheduler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix peek_index

Take into account that decoding from a mutable slice modifies it.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests and bench service_page_item

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add no-progress check to service_queues

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add more benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Bound from_message and try_append_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add PageReaped event

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BookStateOf and BookStateFor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update tests and remove logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove redundant per-message origins; add footprint() and sweep_queue()

* Move testing stuff to mock.rs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add integration test

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix no-progress check

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup merge and tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix footprint tracking

* Introduce

* Formatting

* OverweightEnqueued event, auto-servicing config item

* Update tests and benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Provide change handler

* Add missing BookStateFor::insert and call QueueChangeHandler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benchmarks and weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use weight metering functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* weightInfo::process_message_payload is gone

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add defensive_saturating_accrue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename WeightCounter to WeightMeter

Ctr+Shift+H should do the trick.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test on_initialize

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add module docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove origin from MaxMessageLen

The message origin is not encoded into the heap and does
therefore not influence the max message length anymore.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add BoundedVec::as_slice

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test Page::{from_message, try_append_message}

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Do nothing in sweep_queue if the queue does not exist

... otherwise it inserts default values into the storage.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test ring (un)knitting

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Upgrade stress-test

Change the test to not assume that all queued messages will be
processed in the next block but split it over multiple.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BoundedVec::as_slice to as_bounded_slice

Conflicts with deref().as_slice() otherwise.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix imports

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove ReadyRing struct

Was used for testing only. Instead use 'fn assert_ring' which also
check the service head and backlinks.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix stale page watermark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix test feature and clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* QueueChanged handler is called correctly

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Abstract testing functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Simplify tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make stuff compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Extend overweight execution benchmark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove TODOs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test service queue with faulty MessageProcessor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update pallet ui tests to 1.65

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Review doc fixes

Co-authored-by: Robert Klotzner <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add weight_limit to extrinsic weight of execute_overweight

* Correctly return unused weight

* Return actual weight consumed in do_execute_overweight

* Review fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Set version 7.0.0-dev

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make it compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_size to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_count to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make CI green

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Update tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* ".git/.scripts/bench-bot.sh" pallet dev pallet_message_queue

* Dont mention README.md in the Cargo.toml

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove reference to readme

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>

* zombienet timings adjusted (#12890)

* zombinet tests: add some timeout to allow net spin-up

Sometimes tests are failing at first try, as the pods were not up yet.
Adding timeout should allow the network to spin up properly.

* initial timeout increased to 30s

* Move import queue out of `sc-network` (#12764)

* Move import queue out of `sc-network`

Add supplementary asynchronous API for the import queue which means
it can be run as an independent task and communicated with through
the `ImportQueueService`.

This commit removes removes block and justification imports from
`sc-network` and provides `ChainSync` with a handle to import queue so
it can import blocks and justifications. Polling of the import queue is
moved complete out of `sc-network` and `sc_consensus::Link` is
implemented for `ChainSyncInterfaceHandled` so the import queue
can still influence the syncing process.

* Fix tests

* Apply review comments

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update client/network/sync/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Trace response payload in default `jsonrpsee` middleware (#12886)

* Trace result in default `jsonrpsee` middleware

* `rpc_metrics::extra`

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown (#12897)

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown

The change of waiting in maximum 60 seconds for the node to shutdown actually introduced a bug. We
were actually waiting always 60 seconds as we didn't informed our tasks to shutdown. The solution to
this problem is to drop the task manager as this will then inform all tasks to end. It also adds
tests to ensure that the behaviors work as expected. (This should already have been done in the
first pr! :()

* ".git/.scripts/fmt.sh" 1

Co-authored-by: command-bot <>

* Safe desired targets call (#12826)

* checked call for desired targets

* fix compile

* fmt

* fix tests

* cleaner with and_then

* Fix typo (#12900)

* ValidateUnsigned: Improve docs. (#12870)

* ValidateUnsigned: Improve docs.

* Review comments

* rpc server with HTTP/WS on the same socket (#12663)

* jsonrpsee v0.16

add backwards compatibility

run old http server on http only

* cargo fmt

* update jsonrpsee 0.16.1

* less verbose cors log

* fix nit in log: WS -> HTTP

* revert needless changes in Cargo.lock

* remove unused features in tower

* fix nits; add client-core feature

* jsonrpsee v0.16.2

* `pallet-message-queue`: Fix license (#12895)

* Fix license

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add mock doc

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices (#12891)

* frame-system: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* pallet-template: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* DNM: Temporarily require call_index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Revert "DNM: Temporarily require call_index"

This reverts commit c4934e3.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Pin canonincalized block (#12902)

* Remove implicit approval chilling upon slash. (#12420)

* don't read slashing spans when taking election snapshot

* update cargo.toml

* bring back remote test

* fix merge stuff

* fix npos-voters function sig

* remove as much redundant diff as you can

* Update frame/staking/src/pallet/mod.rs

Co-authored-by: Andronik <[email protected]>

* fix

* Update frame/staking/src/pallet/impls.rs

* update lock

* fix all tests

* review comments

* fmt

* fix offence bench

* clippy

* ".git/.scripts/bench-bot.sh" pallet dev pallet_staking

Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: command-bot <>

* bounties calls docs fix (#12909)

Co-authored-by: parity-processbot <>

* pallet-contracts migration pre-upgrade fix for v8 (#12905)

* Only run pre-v8 migration check for versions older than 8

* Logix fix

* use custom environment for publishing crates (#12912)

* [contracts] Add debug buffer limit + enforcement (#12845)

* Add debug buffer limit + enforcement

Add debug buffer limit + enforcement

* use BoundedVec for the debug buffer

* revert schedule (debug buf len limit not needed anymore)

* return DispatchError

* addressed review comments

* frame/remote-externalities: Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* frame/rpc: Add previous export

Signed-off-by: Alexandru Vasile <[email protected]>

* Fixup some wrong dependencies (#12899)

* Fixup some wrong dependencies

Dev dependencies should not appear in the feature list. If features are required, they should be
directly enabled for the `dev-dependency`.

* More fixups

* Fix fix

* Remove deprecated feature

* Make all work properly and nice!!

* FMT

* Fix formatting

* add numerator and denominator to Rational128 Debug impl and increase precision of float representation (#12914)

* Fix state-db pinning (#12927)

* Pin all canonicalized blocks

* Added a test

* Docs

* [ci] add job switcher (#12922)

* Use LOG_TARGET in consensus related crates (#12875)

* Use shared LOG_TARGET in consensus related crates
* Rename target from "afg" to "grandpa"

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>
Co-authored-by: Davide Galassi <[email protected]>
paritytech-processbot bot pushed a commit that referenced this pull request Dec 14, 2022
* fix online/offline confusion

* unified cache file

* multi-threaded babyyy

* checkpoint for niklas

* compiles

* all tests pass with --test-threads 1

* child-tree scrape is also multi-threaded now.

* better thread splitting

* some suggestions (#12532)

* some suggestions

* tokio multithread

* move unused dependencies

* snapshot command

* fix rem

* a bit of cleanup

* support optional checks

* fix

* OCW command migrated to wasm-only, as an example

* state-version management fully in remote-ext

* almost everything move to wasm executor, some CLI flags reduced

* follow-chain works as well

* Master.into()

* everything builds now

* concurrent insertion and download for remote builds

* minor fix

* fix a bug

* checkpoint

* some updates

* fmt

* review comments

* fmt

* fix

* fmt

* update

* fmt

* rename

* fix the damn UI tests

* fmt

* remoe the thread abstraction for the time being

* cleanup

* fix CI

* fmt

* fix

* fix a few more things

* tweak log levels

* better error handling

* address grumbles: use futures::mpsc

* review comments

* fmt

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update utils/frame/try-runtime/cli/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

* better api version stuff

* some doc update

* a whole lot of docs

* fmt

* fix all docs

* fmt

* rpc rebase: Try-runtime Revamp and Facelift (#12921)

* Introduce sensible weight constants (#12868)

* Introduce sensible weight constants

* cargo fmt

* Remove unused import

* Add missing import

* ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery

Co-authored-by: command-bot <>

* Checkout to the branch HEAD explicitly in `build-linux-substrate` (#12876)

* cli: Improve pruning documentation (#12819)

* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>

* Revert "Move LockableCurrency trait to fungibles::Lockable and deprecate LockableCurrency (#12798)" (#12882)

This reverts commit ea3ca3f.

* Don't indefinitely block on shutting down Tokio (#12885)

* Don't indefinitely on shutting down Tokio

Now we wait in maximum 60 seconds before we shutdown the node. Tasks are may be leaked and leading
to some data corruption.

* Drink less :thinking_face:

* General Message Queue Pallet (#12485)

* The message queue

* Make fully generic

* Refactor

* Docs

* Refactor

* Use iter not slice

* Per-origin queues

* Multi-queue processing

* Introduce MaxReady

* Remove MaxReady in favour of ready ring

* Cleanups

* ReadyRing and tests

* Stale page reaping

* from_components -> from_parts

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move WeightCounter to sp_weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add MockedWeightInfo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Deploy to kitchensink

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use WeightCounter

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Small fixes and logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_page

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Typo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move service_page below service_queue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use correct weight function

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Overweight execution

* Refactor

* Missing file

* Fix WeightCounter usage in scheduler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix peek_index

Take into account that decoding from a mutable slice modifies it.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests and bench service_page_item

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add no-progress check to service_queues

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add more benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Bound from_message and try_append_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add PageReaped event

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BookStateOf and BookStateFor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update tests and remove logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove redundant per-message origins; add footprint() and sweep_queue()

* Move testing stuff to mock.rs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add integration test

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix no-progress check

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup merge and tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix footprint tracking

* Introduce

* Formatting

* OverweightEnqueued event, auto-servicing config item

* Update tests and benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Provide change handler

* Add missing BookStateFor::insert and call QueueChangeHandler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benchmarks and weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use weight metering functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* weightInfo::process_message_payload is gone

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add defensive_saturating_accrue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename WeightCounter to WeightMeter

Ctr+Shift+H should do the trick.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test on_initialize

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add module docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove origin from MaxMessageLen

The message origin is not encoded into the heap and does
therefore not influence the max message length anymore.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add BoundedVec::as_slice

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test Page::{from_message, try_append_message}

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Do nothing in sweep_queue if the queue does not exist

... otherwise it inserts default values into the storage.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test ring (un)knitting

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Upgrade stress-test

Change the test to not assume that all queued messages will be
processed in the next block but split it over multiple.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BoundedVec::as_slice to as_bounded_slice

Conflicts with deref().as_slice() otherwise.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix imports

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove ReadyRing struct

Was used for testing only. Instead use 'fn assert_ring' which also
check the service head and backlinks.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix stale page watermark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix test feature and clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* QueueChanged handler is called correctly

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Abstract testing functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Simplify tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make stuff compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Extend overweight execution benchmark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove TODOs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test service queue with faulty MessageProcessor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update pallet ui tests to 1.65

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Review doc fixes

Co-authored-by: Robert Klotzner <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add weight_limit to extrinsic weight of execute_overweight

* Correctly return unused weight

* Return actual weight consumed in do_execute_overweight

* Review fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Set version 7.0.0-dev

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make it compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_size to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_count to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make CI green

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Update tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* ".git/.scripts/bench-bot.sh" pallet dev pallet_message_queue

* Dont mention README.md in the Cargo.toml

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove reference to readme

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>

* zombienet timings adjusted (#12890)

* zombinet tests: add some timeout to allow net spin-up

Sometimes tests are failing at first try, as the pods were not up yet.
Adding timeout should allow the network to spin up properly.

* initial timeout increased to 30s

* Move import queue out of `sc-network` (#12764)

* Move import queue out of `sc-network`

Add supplementary asynchronous API for the import queue which means
it can be run as an independent task and communicated with through
the `ImportQueueService`.

This commit removes removes block and justification imports from
`sc-network` and provides `ChainSync` with a handle to import queue so
it can import blocks and justifications. Polling of the import queue is
moved complete out of `sc-network` and `sc_consensus::Link` is
implemented for `ChainSyncInterfaceHandled` so the import queue
can still influence the syncing process.

* Fix tests

* Apply review comments

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update client/network/sync/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Trace response payload in default `jsonrpsee` middleware (#12886)

* Trace result in default `jsonrpsee` middleware

* `rpc_metrics::extra`

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown (#12897)

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown

The change of waiting in maximum 60 seconds for the node to shutdown actually introduced a bug. We
were actually waiting always 60 seconds as we didn't informed our tasks to shutdown. The solution to
this problem is to drop the task manager as this will then inform all tasks to end. It also adds
tests to ensure that the behaviors work as expected. (This should already have been done in the
first pr! :()

* ".git/.scripts/fmt.sh" 1

Co-authored-by: command-bot <>

* Safe desired targets call (#12826)

* checked call for desired targets

* fix compile

* fmt

* fix tests

* cleaner with and_then

* Fix typo (#12900)

* ValidateUnsigned: Improve docs. (#12870)

* ValidateUnsigned: Improve docs.

* Review comments

* rpc server with HTTP/WS on the same socket (#12663)

* jsonrpsee v0.16

add backwards compatibility

run old http server on http only

* cargo fmt

* update jsonrpsee 0.16.1

* less verbose cors log

* fix nit in log: WS -> HTTP

* revert needless changes in Cargo.lock

* remove unused features in tower

* fix nits; add client-core feature

* jsonrpsee v0.16.2

* `pallet-message-queue`: Fix license (#12895)

* Fix license

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add mock doc

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices (#12891)

* frame-system: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* pallet-template: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* DNM: Temporarily require call_index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Revert "DNM: Temporarily require call_index"

This reverts commit c4934e3.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Pin canonincalized block (#12902)

* Remove implicit approval chilling upon slash. (#12420)

* don't read slashing spans when taking election snapshot

* update cargo.toml

* bring back remote test

* fix merge stuff

* fix npos-voters function sig

* remove as much redundant diff as you can

* Update frame/staking/src/pallet/mod.rs

Co-authored-by: Andronik <[email protected]>

* fix

* Update frame/staking/src/pallet/impls.rs

* update lock

* fix all tests

* review comments

* fmt

* fix offence bench

* clippy

* ".git/.scripts/bench-bot.sh" pallet dev pallet_staking

Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: command-bot <>

* bounties calls docs fix (#12909)

Co-authored-by: parity-processbot <>

* pallet-contracts migration pre-upgrade fix for v8 (#12905)

* Only run pre-v8 migration check for versions older than 8

* Logix fix

* use custom environment for publishing crates (#12912)

* [contracts] Add debug buffer limit + enforcement (#12845)

* Add debug buffer limit + enforcement

Add debug buffer limit + enforcement

* use BoundedVec for the debug buffer

* revert schedule (debug buf len limit not needed anymore)

* return DispatchError

* addressed review comments

* frame/remote-externalities: Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* frame/rpc: Add previous export

Signed-off-by: Alexandru Vasile <[email protected]>

* Fixup some wrong dependencies (#12899)

* Fixup some wrong dependencies

Dev dependencies should not appear in the feature list. If features are required, they should be
directly enabled for the `dev-dependency`.

* More fixups

* Fix fix

* Remove deprecated feature

* Make all work properly and nice!!

* FMT

* Fix formatting

* add numerator and denominator to Rational128 Debug impl and increase precision of float representation (#12914)

* Fix state-db pinning (#12927)

* Pin all canonicalized blocks

* Added a test

* Docs

* [ci] add job switcher (#12922)

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Kian Paimani <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>

* Revert "rpc rebase: Try-runtime Revamp and Facelift (#12921)"

This reverts commit 4ce770a.

* Lexnv/kiz revamp try runtime stuff (#12932)

* Introduce sensible weight constants (#12868)

* Introduce sensible weight constants

* cargo fmt

* Remove unused import

* Add missing import

* ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery

Co-authored-by: command-bot <>

* Checkout to the branch HEAD explicitly in `build-linux-substrate` (#12876)

* cli: Improve pruning documentation (#12819)

* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>

* Revert "Move LockableCurrency trait to fungibles::Lockable and deprecate LockableCurrency (#12798)" (#12882)

This reverts commit ea3ca3f.

* Don't indefinitely block on shutting down Tokio (#12885)

* Don't indefinitely on shutting down Tokio

Now we wait in maximum 60 seconds before we shutdown the node. Tasks are may be leaked and leading
to some data corruption.

* Drink less :thinking_face:

* General Message Queue Pallet (#12485)

* The message queue

* Make fully generic

* Refactor

* Docs

* Refactor

* Use iter not slice

* Per-origin queues

* Multi-queue processing

* Introduce MaxReady

* Remove MaxReady in favour of ready ring

* Cleanups

* ReadyRing and tests

* Stale page reaping

* from_components -> from_parts

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move WeightCounter to sp_weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add MockedWeightInfo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Deploy to kitchensink

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use WeightCounter

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Small fixes and logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_page

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Typo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move service_page below service_queue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use correct weight function

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Overweight execution

* Refactor

* Missing file

* Fix WeightCounter usage in scheduler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix peek_index

Take into account that decoding from a mutable slice modifies it.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests and bench service_page_item

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add no-progress check to service_queues

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add more benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Bound from_message and try_append_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add PageReaped event

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BookStateOf and BookStateFor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update tests and remove logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove redundant per-message origins; add footprint() and sweep_queue()

* Move testing stuff to mock.rs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add integration test

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix no-progress check

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup merge and tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix footprint tracking

* Introduce

* Formatting

* OverweightEnqueued event, auto-servicing config item

* Update tests and benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Provide change handler

* Add missing BookStateFor::insert and call QueueChangeHandler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benchmarks and weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use weight metering functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* weightInfo::process_message_payload is gone

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add defensive_saturating_accrue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename WeightCounter to WeightMeter

Ctr+Shift+H should do the trick.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test on_initialize

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add module docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove origin from MaxMessageLen

The message origin is not encoded into the heap and does
therefore not influence the max message length anymore.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add BoundedVec::as_slice

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test Page::{from_message, try_append_message}

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Do nothing in sweep_queue if the queue does not exist

... otherwise it inserts default values into the storage.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test ring (un)knitting

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Upgrade stress-test

Change the test to not assume that all queued messages will be
processed in the next block but split it over multiple.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BoundedVec::as_slice to as_bounded_slice

Conflicts with deref().as_slice() otherwise.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix imports

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove ReadyRing struct

Was used for testing only. Instead use 'fn assert_ring' which also
check the service head and backlinks.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix stale page watermark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix test feature and clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* QueueChanged handler is called correctly

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Abstract testing functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Simplify tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make stuff compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Extend overweight execution benchmark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove TODOs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test service queue with faulty MessageProcessor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update pallet ui tests to 1.65

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Review doc fixes

Co-authored-by: Robert Klotzner <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add weight_limit to extrinsic weight of execute_overweight

* Correctly return unused weight

* Return actual weight consumed in do_execute_overweight

* Review fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Set version 7.0.0-dev

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make it compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_size to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_count to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make CI green

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Update tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* ".git/.scripts/bench-bot.sh" pallet dev pallet_message_queue

* Dont mention README.md in the Cargo.toml

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove reference to readme

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>

* zombienet timings adjusted (#12890)

* zombinet tests: add some timeout to allow net spin-up

Sometimes tests are failing at first try, as the pods were not up yet.
Adding timeout should allow the network to spin up properly.

* initial timeout increased to 30s

* Move import queue out of `sc-network` (#12764)

* Move import queue out of `sc-network`

Add supplementary asynchronous API for the import queue which means
it can be run as an independent task and communicated with through
the `ImportQueueService`.

This commit removes removes block and justification imports from
`sc-network` and provides `ChainSync` with a handle to import queue so
it can import blocks and justifications. Polling of the import queue is
moved complete out of `sc-network` and `sc_consensus::Link` is
implemented for `ChainSyncInterfaceHandled` so the import queue
can still influence the syncing process.

* Fix tests

* Apply review comments

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update client/network/sync/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Trace response payload in default `jsonrpsee` middleware (#12886)

* Trace result in default `jsonrpsee` middleware

* `rpc_metrics::extra`

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown (#12897)

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown

The change of waiting in maximum 60 seconds for the node to shutdown actually introduced a bug. We
were actually waiting always 60 seconds as we didn't informed our tasks to shutdown. The solution to
this problem is to drop the task manager as this will then inform all tasks to end. It also adds
tests to ensure that the behaviors work as expected. (This should already have been done in the
first pr! :()

* ".git/.scripts/fmt.sh" 1

Co-authored-by: command-bot <>

* Safe desired targets call (#12826)

* checked call for desired targets

* fix compile

* fmt

* fix tests

* cleaner with and_then

* Fix typo (#12900)

* ValidateUnsigned: Improve docs. (#12870)

* ValidateUnsigned: Improve docs.

* Review comments

* rpc server with HTTP/WS on the same socket (#12663)

* jsonrpsee v0.16

add backwards compatibility

run old http server on http only

* cargo fmt

* update jsonrpsee 0.16.1

* less verbose cors log

* fix nit in log: WS -> HTTP

* revert needless changes in Cargo.lock

* remove unused features in tower

* fix nits; add client-core feature

* jsonrpsee v0.16.2

* `pallet-message-queue`: Fix license (#12895)

* Fix license

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add mock doc

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices (#12891)

* frame-system: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* pallet-template: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* DNM: Temporarily require call_index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Revert "DNM: Temporarily require call_index"

This reverts commit c4934e3.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Pin canonincalized block (#12902)

* Remove implicit approval chilling upon slash. (#12420)

* don't read slashing spans when taking election snapshot

* update cargo.toml

* bring back remote test

* fix merge stuff

* fix npos-voters function sig

* remove as much redundant diff as you can

* Update frame/staking/src/pallet/mod.rs

Co-authored-by: Andronik <[email protected]>

* fix

* Update frame/staking/src/pallet/impls.rs

* update lock

* fix all tests

* review comments

* fmt

* fix offence bench

* clippy

* ".git/.scripts/bench-bot.sh" pallet dev pallet_staking

Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: command-bot <>

* bounties calls docs fix (#12909)

Co-authored-by: parity-processbot <>

* pallet-contracts migration pre-upgrade fix for v8 (#12905)

* Only run pre-v8 migration check for versions older than 8

* Logix fix

* use custom environment for publishing crates (#12912)

* [contracts] Add debug buffer limit + enforcement (#12845)

* Add debug buffer limit + enforcement

Add debug buffer limit + enforcement

* use BoundedVec for the debug buffer

* revert schedule (debug buf len limit not needed anymore)

* return DispatchError

* addressed review comments

* frame/remote-externalities: Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* frame/rpc: Add previous export

Signed-off-by: Alexandru Vasile <[email protected]>

* Fixup some wrong dependencies (#12899)

* Fixup some wrong dependencies

Dev dependencies should not appear in the feature list. If features are required, they should be
directly enabled for the `dev-dependency`.

* More fixups

* Fix fix

* Remove deprecated feature

* Make all work properly and nice!!

* FMT

* Fix formatting

* add numerator and denominator to Rational128 Debug impl and increase precision of float representation (#12914)

* Fix state-db pinning (#12927)

* Pin all canonicalized blocks

* Added a test

* Docs

* [ci] add job switcher (#12922)

* Use LOG_TARGET in consensus related crates (#12875)

* Use shared LOG_TARGET in consensus related crates
* Rename target from "afg" to "grandpa"

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>
Co-authored-by: Davide Galassi <[email protected]>

* Revert "Lexnv/kiz revamp try runtime stuff (#12932)"

This reverts commit 378cfb2.

* fmt

* update

* fix publish

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Davide Galassi <[email protected]>
ltfschoen pushed a commit to ltfschoen/substrate that referenced this pull request Feb 22, 2023
* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
ltfschoen added a commit to ltfschoen/substrate that referenced this pull request Feb 22, 2023
* fix online/offline confusion

* unified cache file

* multi-threaded babyyy

* checkpoint for niklas

* compiles

* all tests pass with --test-threads 1

* child-tree scrape is also multi-threaded now.

* better thread splitting

* some suggestions (paritytech#12532)

* some suggestions

* tokio multithread

* move unused dependencies

* snapshot command

* fix rem

* a bit of cleanup

* support optional checks

* fix

* OCW command migrated to wasm-only, as an example

* state-version management fully in remote-ext

* almost everything move to wasm executor, some CLI flags reduced

* follow-chain works as well

* Master.into()

* everything builds now

* concurrent insertion and download for remote builds

* minor fix

* fix a bug

* checkpoint

* some updates

* fmt

* review comments

* fmt

* fix

* fmt

* update

* fmt

* rename

* fix the damn UI tests

* fmt

* remoe the thread abstraction for the time being

* cleanup

* fix CI

* fmt

* fix

* fix a few more things

* tweak log levels

* better error handling

* address grumbles: use futures::mpsc

* review comments

* fmt

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update utils/frame/try-runtime/cli/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

* better api version stuff

* some doc update

* a whole lot of docs

* fmt

* fix all docs

* fmt

* rpc rebase: Try-runtime Revamp and Facelift (paritytech#12921)

* Introduce sensible weight constants (paritytech#12868)

* Introduce sensible weight constants

* cargo fmt

* Remove unused import

* Add missing import

* ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery

Co-authored-by: command-bot <>

* Checkout to the branch HEAD explicitly in `build-linux-substrate` (paritytech#12876)

* cli: Improve pruning documentation (paritytech#12819)

* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>

* Revert "Move LockableCurrency trait to fungibles::Lockable and deprecate LockableCurrency (paritytech#12798)" (paritytech#12882)

This reverts commit ea3ca3f.

* Don't indefinitely block on shutting down Tokio (paritytech#12885)

* Don't indefinitely on shutting down Tokio

Now we wait in maximum 60 seconds before we shutdown the node. Tasks are may be leaked and leading
to some data corruption.

* Drink less :thinking_face:

* General Message Queue Pallet (paritytech#12485)

* The message queue

* Make fully generic

* Refactor

* Docs

* Refactor

* Use iter not slice

* Per-origin queues

* Multi-queue processing

* Introduce MaxReady

* Remove MaxReady in favour of ready ring

* Cleanups

* ReadyRing and tests

* Stale page reaping

* from_components -> from_parts

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move WeightCounter to sp_weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add MockedWeightInfo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Deploy to kitchensink

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use WeightCounter

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Small fixes and logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_page

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Typo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move service_page below service_queue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use correct weight function

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Overweight execution

* Refactor

* Missing file

* Fix WeightCounter usage in scheduler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix peek_index

Take into account that decoding from a mutable slice modifies it.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests and bench service_page_item

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add no-progress check to service_queues

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add more benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Bound from_message and try_append_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add PageReaped event

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BookStateOf and BookStateFor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update tests and remove logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove redundant per-message origins; add footprint() and sweep_queue()

* Move testing stuff to mock.rs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add integration test

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix no-progress check

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup merge and tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix footprint tracking

* Introduce

* Formatting

* OverweightEnqueued event, auto-servicing config item

* Update tests and benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Provide change handler

* Add missing BookStateFor::insert and call QueueChangeHandler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benchmarks and weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use weight metering functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* weightInfo::process_message_payload is gone

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add defensive_saturating_accrue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename WeightCounter to WeightMeter

Ctr+Shift+H should do the trick.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test on_initialize

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add module docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove origin from MaxMessageLen

The message origin is not encoded into the heap and does
therefore not influence the max message length anymore.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add BoundedVec::as_slice

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test Page::{from_message, try_append_message}

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Do nothing in sweep_queue if the queue does not exist

... otherwise it inserts default values into the storage.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test ring (un)knitting

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Upgrade stress-test

Change the test to not assume that all queued messages will be
processed in the next block but split it over multiple.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BoundedVec::as_slice to as_bounded_slice

Conflicts with deref().as_slice() otherwise.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix imports

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove ReadyRing struct

Was used for testing only. Instead use 'fn assert_ring' which also
check the service head and backlinks.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix stale page watermark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix test feature and clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* QueueChanged handler is called correctly

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Abstract testing functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Simplify tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make stuff compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Extend overweight execution benchmark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove TODOs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test service queue with faulty MessageProcessor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update pallet ui tests to 1.65

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Review doc fixes

Co-authored-by: Robert Klotzner <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add weight_limit to extrinsic weight of execute_overweight

* Correctly return unused weight

* Return actual weight consumed in do_execute_overweight

* Review fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Set version 7.0.0-dev

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make it compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_size to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_count to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make CI green

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Update tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* ".git/.scripts/bench-bot.sh" pallet dev pallet_message_queue

* Dont mention README.md in the Cargo.toml

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove reference to readme

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>

* zombienet timings adjusted (paritytech#12890)

* zombinet tests: add some timeout to allow net spin-up

Sometimes tests are failing at first try, as the pods were not up yet.
Adding timeout should allow the network to spin up properly.

* initial timeout increased to 30s

* Move import queue out of `sc-network` (paritytech#12764)

* Move import queue out of `sc-network`

Add supplementary asynchronous API for the import queue which means
it can be run as an independent task and communicated with through
the `ImportQueueService`.

This commit removes removes block and justification imports from
`sc-network` and provides `ChainSync` with a handle to import queue so
it can import blocks and justifications. Polling of the import queue is
moved complete out of `sc-network` and `sc_consensus::Link` is
implemented for `ChainSyncInterfaceHandled` so the import queue
can still influence the syncing process.

* Fix tests

* Apply review comments

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update client/network/sync/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Trace response payload in default `jsonrpsee` middleware (paritytech#12886)

* Trace result in default `jsonrpsee` middleware

* `rpc_metrics::extra`

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown (paritytech#12897)

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown

The change of waiting in maximum 60 seconds for the node to shutdown actually introduced a bug. We
were actually waiting always 60 seconds as we didn't informed our tasks to shutdown. The solution to
this problem is to drop the task manager as this will then inform all tasks to end. It also adds
tests to ensure that the behaviors work as expected. (This should already have been done in the
first pr! :()

* ".git/.scripts/fmt.sh" 1

Co-authored-by: command-bot <>

* Safe desired targets call (paritytech#12826)

* checked call for desired targets

* fix compile

* fmt

* fix tests

* cleaner with and_then

* Fix typo (paritytech#12900)

* ValidateUnsigned: Improve docs. (paritytech#12870)

* ValidateUnsigned: Improve docs.

* Review comments

* rpc server with HTTP/WS on the same socket (paritytech#12663)

* jsonrpsee v0.16

add backwards compatibility

run old http server on http only

* cargo fmt

* update jsonrpsee 0.16.1

* less verbose cors log

* fix nit in log: WS -> HTTP

* revert needless changes in Cargo.lock

* remove unused features in tower

* fix nits; add client-core feature

* jsonrpsee v0.16.2

* `pallet-message-queue`: Fix license (paritytech#12895)

* Fix license

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add mock doc

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices (paritytech#12891)

* frame-system: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* pallet-template: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* DNM: Temporarily require call_index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Revert "DNM: Temporarily require call_index"

This reverts commit c4934e3.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Pin canonincalized block (paritytech#12902)

* Remove implicit approval chilling upon slash. (paritytech#12420)

* don't read slashing spans when taking election snapshot

* update cargo.toml

* bring back remote test

* fix merge stuff

* fix npos-voters function sig

* remove as much redundant diff as you can

* Update frame/staking/src/pallet/mod.rs

Co-authored-by: Andronik <[email protected]>

* fix

* Update frame/staking/src/pallet/impls.rs

* update lock

* fix all tests

* review comments

* fmt

* fix offence bench

* clippy

* ".git/.scripts/bench-bot.sh" pallet dev pallet_staking

Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: command-bot <>

* bounties calls docs fix (paritytech#12909)

Co-authored-by: parity-processbot <>

* pallet-contracts migration pre-upgrade fix for v8 (paritytech#12905)

* Only run pre-v8 migration check for versions older than 8

* Logix fix

* use custom environment for publishing crates (paritytech#12912)

* [contracts] Add debug buffer limit + enforcement (paritytech#12845)

* Add debug buffer limit + enforcement

Add debug buffer limit + enforcement

* use BoundedVec for the debug buffer

* revert schedule (debug buf len limit not needed anymore)

* return DispatchError

* addressed review comments

* frame/remote-externalities: Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* frame/rpc: Add previous export

Signed-off-by: Alexandru Vasile <[email protected]>

* Fixup some wrong dependencies (paritytech#12899)

* Fixup some wrong dependencies

Dev dependencies should not appear in the feature list. If features are required, they should be
directly enabled for the `dev-dependency`.

* More fixups

* Fix fix

* Remove deprecated feature

* Make all work properly and nice!!

* FMT

* Fix formatting

* add numerator and denominator to Rational128 Debug impl and increase precision of float representation (paritytech#12914)

* Fix state-db pinning (paritytech#12927)

* Pin all canonicalized blocks

* Added a test

* Docs

* [ci] add job switcher (paritytech#12922)

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Kian Paimani <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>

* Revert "rpc rebase: Try-runtime Revamp and Facelift (paritytech#12921)"

This reverts commit 4ce770a.

* Lexnv/kiz revamp try runtime stuff (paritytech#12932)

* Introduce sensible weight constants (paritytech#12868)

* Introduce sensible weight constants

* cargo fmt

* Remove unused import

* Add missing import

* ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery

Co-authored-by: command-bot <>

* Checkout to the branch HEAD explicitly in `build-linux-substrate` (paritytech#12876)

* cli: Improve pruning documentation (paritytech#12819)

* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>

* Revert "Move LockableCurrency trait to fungibles::Lockable and deprecate LockableCurrency (paritytech#12798)" (paritytech#12882)

This reverts commit ea3ca3f.

* Don't indefinitely block on shutting down Tokio (paritytech#12885)

* Don't indefinitely on shutting down Tokio

Now we wait in maximum 60 seconds before we shutdown the node. Tasks are may be leaked and leading
to some data corruption.

* Drink less :thinking_face:

* General Message Queue Pallet (paritytech#12485)

* The message queue

* Make fully generic

* Refactor

* Docs

* Refactor

* Use iter not slice

* Per-origin queues

* Multi-queue processing

* Introduce MaxReady

* Remove MaxReady in favour of ready ring

* Cleanups

* ReadyRing and tests

* Stale page reaping

* from_components -> from_parts

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move WeightCounter to sp_weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add MockedWeightInfo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Deploy to kitchensink

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use WeightCounter

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Small fixes and logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_page

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Typo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move service_page below service_queue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use correct weight function

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Overweight execution

* Refactor

* Missing file

* Fix WeightCounter usage in scheduler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix peek_index

Take into account that decoding from a mutable slice modifies it.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests and bench service_page_item

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add no-progress check to service_queues

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add more benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Bound from_message and try_append_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add PageReaped event

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BookStateOf and BookStateFor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update tests and remove logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove redundant per-message origins; add footprint() and sweep_queue()

* Move testing stuff to mock.rs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add integration test

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix no-progress check

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup merge and tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix footprint tracking

* Introduce

* Formatting

* OverweightEnqueued event, auto-servicing config item

* Update tests and benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Provide change handler

* Add missing BookStateFor::insert and call QueueChangeHandler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benchmarks and weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use weight metering functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* weightInfo::process_message_payload is gone

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add defensive_saturating_accrue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename WeightCounter to WeightMeter

Ctr+Shift+H should do the trick.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test on_initialize

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add module docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove origin from MaxMessageLen

The message origin is not encoded into the heap and does
therefore not influence the max message length anymore.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add BoundedVec::as_slice

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test Page::{from_message, try_append_message}

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Do nothing in sweep_queue if the queue does not exist

... otherwise it inserts default values into the storage.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test ring (un)knitting

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Upgrade stress-test

Change the test to not assume that all queued messages will be
processed in the next block but split it over multiple.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BoundedVec::as_slice to as_bounded_slice

Conflicts with deref().as_slice() otherwise.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix imports

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove ReadyRing struct

Was used for testing only. Instead use 'fn assert_ring' which also
check the service head and backlinks.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix stale page watermark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix test feature and clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* QueueChanged handler is called correctly

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Abstract testing functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Simplify tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make stuff compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Extend overweight execution benchmark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove TODOs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test service queue with faulty MessageProcessor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update pallet ui tests to 1.65

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Review doc fixes

Co-authored-by: Robert Klotzner <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add weight_limit to extrinsic weight of execute_overweight

* Correctly return unused weight

* Return actual weight consumed in do_execute_overweight

* Review fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Set version 7.0.0-dev

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make it compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_size to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_count to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make CI green

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Update tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* ".git/.scripts/bench-bot.sh" pallet dev pallet_message_queue

* Dont mention README.md in the Cargo.toml

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove reference to readme

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>

* zombienet timings adjusted (paritytech#12890)

* zombinet tests: add some timeout to allow net spin-up

Sometimes tests are failing at first try, as the pods were not up yet.
Adding timeout should allow the network to spin up properly.

* initial timeout increased to 30s

* Move import queue out of `sc-network` (paritytech#12764)

* Move import queue out of `sc-network`

Add supplementary asynchronous API for the import queue which means
it can be run as an independent task and communicated with through
the `ImportQueueService`.

This commit removes removes block and justification imports from
`sc-network` and provides `ChainSync` with a handle to import queue so
it can import blocks and justifications. Polling of the import queue is
moved complete out of `sc-network` and `sc_consensus::Link` is
implemented for `ChainSyncInterfaceHandled` so the import queue
can still influence the syncing process.

* Fix tests

* Apply review comments

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update client/network/sync/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Trace response payload in default `jsonrpsee` middleware (paritytech#12886)

* Trace result in default `jsonrpsee` middleware

* `rpc_metrics::extra`

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown (paritytech#12897)

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown

The change of waiting in maximum 60 seconds for the node to shutdown actually introduced a bug. We
were actually waiting always 60 seconds as we didn't informed our tasks to shutdown. The solution to
this problem is to drop the task manager as this will then inform all tasks to end. It also adds
tests to ensure that the behaviors work as expected. (This should already have been done in the
first pr! :()

* ".git/.scripts/fmt.sh" 1

Co-authored-by: command-bot <>

* Safe desired targets call (paritytech#12826)

* checked call for desired targets

* fix compile

* fmt

* fix tests

* cleaner with and_then

* Fix typo (paritytech#12900)

* ValidateUnsigned: Improve docs. (paritytech#12870)

* ValidateUnsigned: Improve docs.

* Review comments

* rpc server with HTTP/WS on the same socket (paritytech#12663)

* jsonrpsee v0.16

add backwards compatibility

run old http server on http only

* cargo fmt

* update jsonrpsee 0.16.1

* less verbose cors log

* fix nit in log: WS -> HTTP

* revert needless changes in Cargo.lock

* remove unused features in tower

* fix nits; add client-core feature

* jsonrpsee v0.16.2

* `pallet-message-queue`: Fix license (paritytech#12895)

* Fix license

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add mock doc

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices (paritytech#12891)

* frame-system: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* pallet-template: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* DNM: Temporarily require call_index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Revert "DNM: Temporarily require call_index"

This reverts commit c4934e3.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Pin canonincalized block (paritytech#12902)

* Remove implicit approval chilling upon slash. (paritytech#12420)

* don't read slashing spans when taking election snapshot

* update cargo.toml

* bring back remote test

* fix merge stuff

* fix npos-voters function sig

* remove as much redundant diff as you can

* Update frame/staking/src/pallet/mod.rs

Co-authored-by: Andronik <[email protected]>

* fix

* Update frame/staking/src/pallet/impls.rs

* update lock

* fix all tests

* review comments

* fmt

* fix offence bench

* clippy

* ".git/.scripts/bench-bot.sh" pallet dev pallet_staking

Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: command-bot <>

* bounties calls docs fix (paritytech#12909)

Co-authored-by: parity-processbot <>

* pallet-contracts migration pre-upgrade fix for v8 (paritytech#12905)

* Only run pre-v8 migration check for versions older than 8

* Logix fix

* use custom environment for publishing crates (paritytech#12912)

* [contracts] Add debug buffer limit + enforcement (paritytech#12845)

* Add debug buffer limit + enforcement

Add debug buffer limit + enforcement

* use BoundedVec for the debug buffer

* revert schedule (debug buf len limit not needed anymore)

* return DispatchError

* addressed review comments

* frame/remote-externalities: Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* frame/rpc: Add previous export

Signed-off-by: Alexandru Vasile <[email protected]>

* Fixup some wrong dependencies (paritytech#12899)

* Fixup some wrong dependencies

Dev dependencies should not appear in the feature list. If features are required, they should be
directly enabled for the `dev-dependency`.

* More fixups

* Fix fix

* Remove deprecated feature

* Make all work properly and nice!!

* FMT

* Fix formatting

* add numerator and denominator to Rational128 Debug impl and increase precision of float representation (paritytech#12914)

* Fix state-db pinning (paritytech#12927)

* Pin all canonicalized blocks

* Added a test

* Docs

* [ci] add job switcher (paritytech#12922)

* Use LOG_TARGET in consensus related crates (paritytech#12875)

* Use shared LOG_TARGET in consensus related crates
* Rename target from "afg" to "grandpa"

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>
Co-authored-by: Davide Galassi <[email protected]>

* Revert "Lexnv/kiz revamp try runtime stuff (paritytech#12932)"

This reverts commit 378cfb2.

* fmt

* update

* fix publish

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Davide Galassi <[email protected]>
ark0f pushed a commit to gear-tech/substrate that referenced this pull request Feb 27, 2023
* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
ark0f pushed a commit to gear-tech/substrate that referenced this pull request Feb 27, 2023
* fix online/offline confusion

* unified cache file

* multi-threaded babyyy

* checkpoint for niklas

* compiles

* all tests pass with --test-threads 1

* child-tree scrape is also multi-threaded now.

* better thread splitting

* some suggestions (paritytech#12532)

* some suggestions

* tokio multithread

* move unused dependencies

* snapshot command

* fix rem

* a bit of cleanup

* support optional checks

* fix

* OCW command migrated to wasm-only, as an example

* state-version management fully in remote-ext

* almost everything move to wasm executor, some CLI flags reduced

* follow-chain works as well

* Master.into()

* everything builds now

* concurrent insertion and download for remote builds

* minor fix

* fix a bug

* checkpoint

* some updates

* fmt

* review comments

* fmt

* fix

* fmt

* update

* fmt

* rename

* fix the damn UI tests

* fmt

* remoe the thread abstraction for the time being

* cleanup

* fix CI

* fmt

* fix

* fix a few more things

* tweak log levels

* better error handling

* address grumbles: use futures::mpsc

* review comments

* fmt

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update utils/frame/try-runtime/cli/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

* better api version stuff

* some doc update

* a whole lot of docs

* fmt

* fix all docs

* fmt

* rpc rebase: Try-runtime Revamp and Facelift (paritytech#12921)

* Introduce sensible weight constants (paritytech#12868)

* Introduce sensible weight constants

* cargo fmt

* Remove unused import

* Add missing import

* ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery

Co-authored-by: command-bot <>

* Checkout to the branch HEAD explicitly in `build-linux-substrate` (paritytech#12876)

* cli: Improve pruning documentation (paritytech#12819)

* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>

* Revert "Move LockableCurrency trait to fungibles::Lockable and deprecate LockableCurrency (paritytech#12798)" (paritytech#12882)

This reverts commit ea3ca3f.

* Don't indefinitely block on shutting down Tokio (paritytech#12885)

* Don't indefinitely on shutting down Tokio

Now we wait in maximum 60 seconds before we shutdown the node. Tasks are may be leaked and leading
to some data corruption.

* Drink less :thinking_face:

* General Message Queue Pallet (paritytech#12485)

* The message queue

* Make fully generic

* Refactor

* Docs

* Refactor

* Use iter not slice

* Per-origin queues

* Multi-queue processing

* Introduce MaxReady

* Remove MaxReady in favour of ready ring

* Cleanups

* ReadyRing and tests

* Stale page reaping

* from_components -> from_parts

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move WeightCounter to sp_weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add MockedWeightInfo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Deploy to kitchensink

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use WeightCounter

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Small fixes and logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_page

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Typo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move service_page below service_queue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use correct weight function

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Overweight execution

* Refactor

* Missing file

* Fix WeightCounter usage in scheduler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix peek_index

Take into account that decoding from a mutable slice modifies it.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests and bench service_page_item

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add no-progress check to service_queues

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add more benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Bound from_message and try_append_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add PageReaped event

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BookStateOf and BookStateFor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update tests and remove logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove redundant per-message origins; add footprint() and sweep_queue()

* Move testing stuff to mock.rs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add integration test

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix no-progress check

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup merge and tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix footprint tracking

* Introduce

* Formatting

* OverweightEnqueued event, auto-servicing config item

* Update tests and benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Provide change handler

* Add missing BookStateFor::insert and call QueueChangeHandler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benchmarks and weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use weight metering functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* weightInfo::process_message_payload is gone

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add defensive_saturating_accrue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename WeightCounter to WeightMeter

Ctr+Shift+H should do the trick.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test on_initialize

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add module docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove origin from MaxMessageLen

The message origin is not encoded into the heap and does
therefore not influence the max message length anymore.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add BoundedVec::as_slice

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test Page::{from_message, try_append_message}

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Do nothing in sweep_queue if the queue does not exist

... otherwise it inserts default values into the storage.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test ring (un)knitting

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Upgrade stress-test

Change the test to not assume that all queued messages will be
processed in the next block but split it over multiple.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BoundedVec::as_slice to as_bounded_slice

Conflicts with deref().as_slice() otherwise.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix imports

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove ReadyRing struct

Was used for testing only. Instead use 'fn assert_ring' which also
check the service head and backlinks.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix stale page watermark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix test feature and clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* QueueChanged handler is called correctly

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Abstract testing functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Simplify tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make stuff compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Extend overweight execution benchmark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove TODOs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test service queue with faulty MessageProcessor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update pallet ui tests to 1.65

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Review doc fixes

Co-authored-by: Robert Klotzner <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add weight_limit to extrinsic weight of execute_overweight

* Correctly return unused weight

* Return actual weight consumed in do_execute_overweight

* Review fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Set version 7.0.0-dev

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make it compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_size to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_count to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make CI green

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Update tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* ".git/.scripts/bench-bot.sh" pallet dev pallet_message_queue

* Dont mention README.md in the Cargo.toml

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove reference to readme

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>

* zombienet timings adjusted (paritytech#12890)

* zombinet tests: add some timeout to allow net spin-up

Sometimes tests are failing at first try, as the pods were not up yet.
Adding timeout should allow the network to spin up properly.

* initial timeout increased to 30s

* Move import queue out of `sc-network` (paritytech#12764)

* Move import queue out of `sc-network`

Add supplementary asynchronous API for the import queue which means
it can be run as an independent task and communicated with through
the `ImportQueueService`.

This commit removes removes block and justification imports from
`sc-network` and provides `ChainSync` with a handle to import queue so
it can import blocks and justifications. Polling of the import queue is
moved complete out of `sc-network` and `sc_consensus::Link` is
implemented for `ChainSyncInterfaceHandled` so the import queue
can still influence the syncing process.

* Fix tests

* Apply review comments

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update client/network/sync/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Trace response payload in default `jsonrpsee` middleware (paritytech#12886)

* Trace result in default `jsonrpsee` middleware

* `rpc_metrics::extra`

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown (paritytech#12897)

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown

The change of waiting in maximum 60 seconds for the node to shutdown actually introduced a bug. We
were actually waiting always 60 seconds as we didn't informed our tasks to shutdown. The solution to
this problem is to drop the task manager as this will then inform all tasks to end. It also adds
tests to ensure that the behaviors work as expected. (This should already have been done in the
first pr! :()

* ".git/.scripts/fmt.sh" 1

Co-authored-by: command-bot <>

* Safe desired targets call (paritytech#12826)

* checked call for desired targets

* fix compile

* fmt

* fix tests

* cleaner with and_then

* Fix typo (paritytech#12900)

* ValidateUnsigned: Improve docs. (paritytech#12870)

* ValidateUnsigned: Improve docs.

* Review comments

* rpc server with HTTP/WS on the same socket (paritytech#12663)

* jsonrpsee v0.16

add backwards compatibility

run old http server on http only

* cargo fmt

* update jsonrpsee 0.16.1

* less verbose cors log

* fix nit in log: WS -> HTTP

* revert needless changes in Cargo.lock

* remove unused features in tower

* fix nits; add client-core feature

* jsonrpsee v0.16.2

* `pallet-message-queue`: Fix license (paritytech#12895)

* Fix license

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add mock doc

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices (paritytech#12891)

* frame-system: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* pallet-template: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* DNM: Temporarily require call_index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Revert "DNM: Temporarily require call_index"

This reverts commit c4934e3.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Pin canonincalized block (paritytech#12902)

* Remove implicit approval chilling upon slash. (paritytech#12420)

* don't read slashing spans when taking election snapshot

* update cargo.toml

* bring back remote test

* fix merge stuff

* fix npos-voters function sig

* remove as much redundant diff as you can

* Update frame/staking/src/pallet/mod.rs

Co-authored-by: Andronik <[email protected]>

* fix

* Update frame/staking/src/pallet/impls.rs

* update lock

* fix all tests

* review comments

* fmt

* fix offence bench

* clippy

* ".git/.scripts/bench-bot.sh" pallet dev pallet_staking

Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: command-bot <>

* bounties calls docs fix (paritytech#12909)

Co-authored-by: parity-processbot <>

* pallet-contracts migration pre-upgrade fix for v8 (paritytech#12905)

* Only run pre-v8 migration check for versions older than 8

* Logix fix

* use custom environment for publishing crates (paritytech#12912)

* [contracts] Add debug buffer limit + enforcement (paritytech#12845)

* Add debug buffer limit + enforcement

Add debug buffer limit + enforcement

* use BoundedVec for the debug buffer

* revert schedule (debug buf len limit not needed anymore)

* return DispatchError

* addressed review comments

* frame/remote-externalities: Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* frame/rpc: Add previous export

Signed-off-by: Alexandru Vasile <[email protected]>

* Fixup some wrong dependencies (paritytech#12899)

* Fixup some wrong dependencies

Dev dependencies should not appear in the feature list. If features are required, they should be
directly enabled for the `dev-dependency`.

* More fixups

* Fix fix

* Remove deprecated feature

* Make all work properly and nice!!

* FMT

* Fix formatting

* add numerator and denominator to Rational128 Debug impl and increase precision of float representation (paritytech#12914)

* Fix state-db pinning (paritytech#12927)

* Pin all canonicalized blocks

* Added a test

* Docs

* [ci] add job switcher (paritytech#12922)

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Kian Paimani <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>

* Revert "rpc rebase: Try-runtime Revamp and Facelift (paritytech#12921)"

This reverts commit 4ce770a.

* Lexnv/kiz revamp try runtime stuff (paritytech#12932)

* Introduce sensible weight constants (paritytech#12868)

* Introduce sensible weight constants

* cargo fmt

* Remove unused import

* Add missing import

* ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery

Co-authored-by: command-bot <>

* Checkout to the branch HEAD explicitly in `build-linux-substrate` (paritytech#12876)

* cli: Improve pruning documentation (paritytech#12819)

* cli: Improve pruning documentation

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Keep `finalized` notation and remove `canonical` one

* cli: Fix cargo doc

* cli: `PruningModeClap` IR enum

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Convert PruningModeClap into pruning modes

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Use `PruningModeClap`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Rename to `DatabasePruningMode`

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Implement `FromStr` instead of `clap::ValueEnum`

Signed-off-by: Alexandru Vasile <[email protected]>

* Update client/cli/src/params/pruning_params.rs

Co-authored-by: Bastian Köcher <[email protected]>

* Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* cli: Add option documentation back

Signed-off-by: Alexandru Vasile <[email protected]>

* Apply suggestions from code review

Signed-off-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>

* Revert "Move LockableCurrency trait to fungibles::Lockable and deprecate LockableCurrency (paritytech#12798)" (paritytech#12882)

This reverts commit ea3ca3f.

* Don't indefinitely block on shutting down Tokio (paritytech#12885)

* Don't indefinitely on shutting down Tokio

Now we wait in maximum 60 seconds before we shutdown the node. Tasks are may be leaked and leading
to some data corruption.

* Drink less :thinking_face:

* General Message Queue Pallet (paritytech#12485)

* The message queue

* Make fully generic

* Refactor

* Docs

* Refactor

* Use iter not slice

* Per-origin queues

* Multi-queue processing

* Introduce MaxReady

* Remove MaxReady in favour of ready ring

* Cleanups

* ReadyRing and tests

* Stale page reaping

* from_components -> from_parts

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move WeightCounter to sp_weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add MockedWeightInfo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Deploy to kitchensink

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use WeightCounter

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Small fixes and logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_page

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Typo

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Move service_page below service_queue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add service_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use correct weight function

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Overweight execution

* Refactor

* Missing file

* Fix WeightCounter usage in scheduler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix peek_index

Take into account that decoding from a mutable slice modifies it.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests and bench service_page_item

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add no-progress check to service_queues

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add more benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Bound from_message and try_append_message

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add PageReaped event

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BookStateOf and BookStateFor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update tests and remove logging

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove redundant per-message origins; add footprint() and sweep_queue()

* Move testing stuff to mock.rs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add integration test

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix no-progress check

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix debug_info

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup merge and tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix footprint tracking

* Introduce

* Formatting

* OverweightEnqueued event, auto-servicing config item

* Update tests and benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Provide change handler

* Add missing BookStateFor::insert and call QueueChangeHandler

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benchmarks and weights

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use weight metering functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* weightInfo::process_message_payload is gone

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add defensive_saturating_accrue

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename WeightCounter to WeightMeter

Ctr+Shift+H should do the trick.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test on_initialize

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add module docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove origin from MaxMessageLen

The message origin is not encoded into the heap and does
therefore not influence the max message length anymore.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add BoundedVec::as_slice

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test Page::{from_message, try_append_message}

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fixup docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Do nothing in sweep_queue if the queue does not exist

... otherwise it inserts default values into the storage.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test ring (un)knitting

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Upgrade stress-test

Change the test to not assume that all queued messages will be
processed in the next block but split it over multiple.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests...

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Rename BoundedVec::as_slice to as_bounded_slice

Conflicts with deref().as_slice() otherwise.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix imports

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove ReadyRing struct

Was used for testing only. Instead use 'fn assert_ring' which also
check the service head and backlinks.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Beauty fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix stale page watermark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix test feature and clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* QueueChanged handler is called correctly

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update benches

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Abstract testing functions

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Cleanup

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Clippy

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Simplify tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make stuff compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Extend overweight execution benchmark

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove TODOs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Test service queue with faulty MessageProcessor

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* fmt

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Update pallet ui tests to 1.65

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* More docs

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Review doc fixes

Co-authored-by: Robert Klotzner <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add weight_limit to extrinsic weight of execute_overweight

* Correctly return unused weight

* Return actual weight consumed in do_execute_overweight

* Review fixes

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Set version 7.0.0-dev

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make it compile

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_size to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Switch message_count to u64

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Fix benchmarks

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Make CI green

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Docs

* Update tests

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* ".git/.scripts/bench-bot.sh" pallet dev pallet_message_queue

* Dont mention README.md in the Cargo.toml

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Remove reference to readme

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>

* zombienet timings adjusted (paritytech#12890)

* zombinet tests: add some timeout to allow net spin-up

Sometimes tests are failing at first try, as the pods were not up yet.
Adding timeout should allow the network to spin up properly.

* initial timeout increased to 30s

* Move import queue out of `sc-network` (paritytech#12764)

* Move import queue out of `sc-network`

Add supplementary asynchronous API for the import queue which means
it can be run as an independent task and communicated with through
the `ImportQueueService`.

This commit removes removes block and justification imports from
`sc-network` and provides `ChainSync` with a handle to import queue so
it can import blocks and justifications. Polling of the import queue is
moved complete out of `sc-network` and `sc_consensus::Link` is
implemented for `ChainSyncInterfaceHandled` so the import queue
can still influence the syncing process.

* Fix tests

* Apply review comments

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <[email protected]>

* Update client/network/sync/src/lib.rs

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Trace response payload in default `jsonrpsee` middleware (paritytech#12886)

* Trace result in default `jsonrpsee` middleware

* `rpc_metrics::extra`

Co-authored-by: Bastian Köcher <[email protected]>

Co-authored-by: Bastian Köcher <[email protected]>

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown (paritytech#12897)

* Ensure that we inform all tasks to stop before starting the 60 seconds shutdown

The change of waiting in maximum 60 seconds for the node to shutdown actually introduced a bug. We
were actually waiting always 60 seconds as we didn't informed our tasks to shutdown. The solution to
this problem is to drop the task manager as this will then inform all tasks to end. It also adds
tests to ensure that the behaviors work as expected. (This should already have been done in the
first pr! :()

* ".git/.scripts/fmt.sh" 1

Co-authored-by: command-bot <>

* Safe desired targets call (paritytech#12826)

* checked call for desired targets

* fix compile

* fmt

* fix tests

* cleaner with and_then

* Fix typo (paritytech#12900)

* ValidateUnsigned: Improve docs. (paritytech#12870)

* ValidateUnsigned: Improve docs.

* Review comments

* rpc server with HTTP/WS on the same socket (paritytech#12663)

* jsonrpsee v0.16

add backwards compatibility

run old http server on http only

* cargo fmt

* update jsonrpsee 0.16.1

* less verbose cors log

* fix nit in log: WS -> HTTP

* revert needless changes in Cargo.lock

* remove unused features in tower

* fix nits; add client-core feature

* jsonrpsee v0.16.2

* `pallet-message-queue`: Fix license (paritytech#12895)

* Fix license

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Add mock doc

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices (paritytech#12891)

* frame-system: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Use explicit call indices

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* pallet-template: explicit call index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* DNM: Temporarily require call_index

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Revert "DNM: Temporarily require call_index"

This reverts commit c4934e3.

Signed-off-by: Oliver Tale-Yazdi <[email protected]>

* Pin canonincalized block (paritytech#12902)

* Remove implicit approval chilling upon slash. (paritytech#12420)

* don't read slashing spans when taking election snapshot

* update cargo.toml

* bring back remote test

* fix merge stuff

* fix npos-voters function sig

* remove as much redundant diff as you can

* Update frame/staking/src/pallet/mod.rs

Co-authored-by: Andronik <[email protected]>

* fix

* Update frame/staking/src/pallet/impls.rs

* update lock

* fix all tests

* review comments

* fmt

* fix offence bench

* clippy

* ".git/.scripts/bench-bot.sh" pallet dev pallet_staking

Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: command-bot <>

* bounties calls docs fix (paritytech#12909)

Co-authored-by: parity-processbot <>

* pallet-contracts migration pre-upgrade fix for v8 (paritytech#12905)

* Only run pre-v8 migration check for versions older than 8

* Logix fix

* use custom environment for publishing crates (paritytech#12912)

* [contracts] Add debug buffer limit + enforcement (paritytech#12845)

* Add debug buffer limit + enforcement

Add debug buffer limit + enforcement

* use BoundedVec for the debug buffer

* revert schedule (debug buf len limit not needed anymore)

* return DispatchError

* addressed review comments

* frame/remote-externalities: Fix clippy

Signed-off-by: Alexandru Vasile <[email protected]>

* frame/rpc: Add previous export

Signed-off-by: Alexandru Vasile <[email protected]>

* Fixup some wrong dependencies (paritytech#12899)

* Fixup some wrong dependencies

Dev dependencies should not appear in the feature list. If features are required, they should be
directly enabled for the `dev-dependency`.

* More fixups

* Fix fix

* Remove deprecated feature

* Make all work properly and nice!!

* FMT

* Fix formatting

* add numerator and denominator to Rational128 Debug impl and increase precision of float representation (paritytech#12914)

* Fix state-db pinning (paritytech#12927)

* Pin all canonicalized blocks

* Added a test

* Docs

* [ci] add job switcher (paritytech#12922)

* Use LOG_TARGET in consensus related crates (paritytech#12875)

* Use shared LOG_TARGET in consensus related crates
* Rename target from "afg" to "grandpa"

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>
Co-authored-by: Davide Galassi <[email protected]>

* Revert "Lexnv/kiz revamp try runtime stuff (paritytech#12932)"

This reverts commit 378cfb2.

* fmt

* update

* fix publish

Signed-off-by: Alexandru Vasile <[email protected]>
Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Niklas Adolfsson <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Keith Yeung <[email protected]>
Co-authored-by: Vlad <[email protected]>
Co-authored-by: Anthony Alaribe <[email protected]>
Co-authored-by: Gavin Wood <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Robert Klotzner <[email protected]>
Co-authored-by: Michal Kucharczyk <[email protected]>
Co-authored-by: Aaro Altonen <[email protected]>
Co-authored-by: tgmichel <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Luke Schoen <[email protected]>
Co-authored-by: Arkadiy Paronyan <[email protected]>
Co-authored-by: Andronik <[email protected]>
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Muharem Ismailov <[email protected]>
Co-authored-by: Dino Pačandi <[email protected]>
Co-authored-by: João Paulo Silva de Souza <[email protected]>
Co-authored-by: Sasha Gryaznov <[email protected]>
Co-authored-by: Alexander Popiak <[email protected]>
Co-authored-by: Alexander Samusev <[email protected]>
Co-authored-by: Alexandru Vasile <[email protected]>
Co-authored-by: Davide Galassi <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
A0-please_review Pull request needs code review. B0-silent Changes should not be mentioned in any release notes C1-low PR touches the given topic and has a low impact on builders. D3-trivial 🧸 PR contains trivial changes in a runtime directory that do not require an audit
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Confusing blocks-pruning description
3 participants