Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mangata dev v0.9.36 #78

Merged
merged 226 commits into from
Feb 14, 2023
Merged

Mangata dev v0.9.36 #78

merged 226 commits into from
Feb 14, 2023

Conversation

devdanco
Copy link
Member

@devdanco devdanco commented Jan 4, 2023

No description provided.

michalkucharczyk and others added 30 commits October 19, 2022 10:13
* BlockId removal: refactor: ProofProvider

It changes the arguments of methods of `ProofProvider` trait from:
block: `BlockId<Block>` to: hash: `&Block::Hash`

This PR is part of BlockId::Number refactoring analysis (paritytech/substrate#11292)

* LightClientRequestHandler: excessive BlockIdTo bound removed

* imports cleanup

* formatting

* args tyeps cleanup
* evaluate repatriate reserved error in pallet identity

* fix benchmarks

* add repatriate reserved error test

* benchmark fix

* undo lock

* include balance to use for benchmarks

* rename test

* Update frame/identity/src/benchmarking.rs

* Update frame/identity/src/benchmarking.rs

Co-authored-by: Bastian Köcher <git@kchr.de>
* allow for duplicate signed submissions

* Fix a bunch of things, seems all good now

* fmt

* Fix

* Update frame/election-provider-multi-phase/src/signed.rs

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Update frame/election-provider-multi-phase/src/signed.rs

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* add migratin

* fmt

* comment typo

* some review comments

* fix bench

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
Co-authored-by: Ross Bulat <ross@parity.io>
* CI check for rust feature bleed

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Cargo not available

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Handle missing programs

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Check for deps

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Add doc

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Use correct CI image

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Remove --offline

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Install cargo-workspaces

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Remove cargo-workspaces dep

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix try-runtime feature

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix features

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix features

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix more features...

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Use pipeline-script

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* 🤡

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Make stupid change to test the CI

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* This reverts commit ad2746a.

* Use correct branch

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Allow failure

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Make stupid change to test the CI

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Revert "Make stupid change to test the CI"

This reverts commit 16ec00e.

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
…ch#12526)

* Decrease amount of benchmark iterations for long slow ones

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

Co-authored-by: command-bot <>
* BlockId removal: refactor: Finalizer

It changes the arguments of methods of `Finalizer` trait from:
block: `BlockId<Block>` to: hash: `&Block::Hash`

This PR is part of BlockId::Number refactoring analysis (paritytech/substrate#11292)

* minor corrections

* failing test corrected

* minor rework
…aritytech#12535)

* BlockId removal: refactor: BlockImportOperation+Bknd::finalize_block

It changes the arguments of methods of `BlockImportOperation` trait
from: block: `BlockId<Block>` to: hash: `&Block::Hash`
`Backend::finalize_block` was also changed.

This PR is part of BlockId::Number refactoring analysis (paritytech/substrate#11292)

* Review suggestion applied

thx to @davxy

* trigger CI job
* CI: Enable debug assertions in Wasmer sandbox test

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix feature dependant import

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
…ive (paritytech#12482)

* Force base weights to be the minimum only when the intercept is negative; emit minimum execution times

* Add an `assert` making sure the intercept is zero when it's supposed to be zero

* Fix template

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

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

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

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: command-bot <>
* Add DefensiveTruncateFrom

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Add tests

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix tests

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Map_err in preimage

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Map_err in beefy

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Make test dependant in debug-assertions

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: parity-processbot <>
* Refactor service tests in `sc-network`

Create a separate directory for the tests and move common network
instantion related code to `mod.rs` from where it can be used by both
service and chainsync tests.

Use the builder pattern when creating the `TestNetwork` object to reduce
code duplication between the test files.

* Update client/network/src/service/tests/mod.rs

Co-authored-by: Dmitrii Markin <dmitry@markin.tech>

Co-authored-by: Dmitrii Markin <dmitry@markin.tech>
Co-authored-by: parity-processbot <>
* Actually fix major sync detection

* Introduce `SyncState::Importing` state

* Add target to SyncState enum variants and add `is_major_syncing` method on it

* Remove unnecessary duplicated `best_seen_block` from `SyncState` struct

* Revert "Remove unnecessary duplicated `best_seen_block` from `SyncState` struct"

This reverts commit bb8abd4.

* Add missing `websocket` feature to `libp2p`

Co-authored-by: parity-processbot <>
…#12541)

It changes the arguments of `Backend::begin_state_operation`
from: block: `BlockId<Block>` to: hash: `&Block::Hash`

This PR is part of BlockId::Number refactoring analysis (paritytech/substrate#11292)
Introduce a middleware called `NetworkServiceProvider` which the
`ChainSync` can use to communicate with `NetworkService`. `ChainSync` is
given a `NetworkServiceHandle` which it uses to call `NetworkServiceProvider`
which then dispatches the calls to `NetworkService` on behalf of `ChainSync`.

This change will allow `ChainSync` to disconnect and report peers and
in the future it'll be possible to send requests and notifications
through the `NetworkServiceProvider`.

`NetworkServiceProvider` is needed only until the `ChainSync` object
has been removed from `Protocol`. After that, a normal `NetworkService`
handle can be passed onto `ChainSync` and these changes can be
deprecated.

Co-authored-by: parity-processbot <>
…2469)

* Allow indetermistic instructions off-chain

* Apply suggestions from code review

Co-authored-by: Sasha Gryaznov <hi@agryaznov.com>

* fmt

Co-authored-by: Sasha Gryaznov <hi@agryaznov.com>
* Normalize keystore type and usage across tests

* Extract peer index from array index
* feat: add to_memory_db to StorageProof

* feat: add iter method and generalize iter_nodes

* fmt

* feat: generalize `encode_compact` like `decode_compact`, add to_compact_proof to StorageProof

* fix to_compact_proof

* improve by suggestions

* improve by suggestions

Co-authored-by: Bastian Köcher <git@kchr.de>
* Bounded multisig

* just use u32

Co-authored-by: parity-processbot <>
* Typo

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

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

* remove functions

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

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: command-bot <>
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* replaced println with log Closes paritytech#12338

* fixed println

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <git@kchr.de>

* Update utils/frame/benchmarking-cli/src/pallet/command.rs

* Apply suggestions from code review

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

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Bastian Köcher <git@kchr.de>
Co-authored-by: command-bot <>
…12492)

* Aura: Adds some compatibility mode to support old chains

In paritytech#9132 we changed the way how we get the authorities
from the runtime. Before this mentioned pr we would call `initialize_block` before calling the
authorities runtime function. The problem with this was that when you have a block X that would
switch the authority set, it would already be signed by an authority of the new set. This was wrong,
as a block should only be signed by the current authority set. As this change is a hard fork, this
pr brings back the possibility for users that have a chain running with this old logic to upgrade.

They will need to use:
```
CompatibilityMode::UseInitializeBlock { until: some_block_in_the_future }
```

Using this compatibility mode will make the node behave like the old nodes, aka calling
`initialize_block` before doing the actual runtime call to `authorities`. Then when the given
`until` block is being build/imported the node switches to the new behaviour of not calling
`initialize_block` before. This is a hard fork, so the `until` block should be chosen wisely as a
point where all nodes in the network have upgraded.

* Fixes

* Make docs ready

* Update client/consensus/aura/src/lib.rs

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>

* Update client/consensus/aura/src/lib.rs

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>

* Update client/consensus/aura/src/lib.rs

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>

* FMT

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
* Utility: add more tests for batch/batchAll/forceBatch

* remove unnecessary

* batch works with council

* add more tests

* better call examples

* shorter code

* Update frame/utility/src/lib.rs

Co-authored-by: Bastian Köcher <git@kchr.de>

* Update frame/utility/src/lib.rs

Co-authored-by: Bastian Köcher <git@kchr.de>

* Update frame/utility/src/lib.rs

Co-authored-by: Bastian Köcher <git@kchr.de>

* update TestBaseCallFilter

* fix

* fix?

* fix

Co-authored-by: Bastian Köcher <git@kchr.de>
Copy link
Member

@mateuszaaa mateuszaaa left a comment

Choose a reason for hiding this comment

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

i see a lot of minor modifications that are result of bad formatting or not sure what. Could you try get rid of them so the diff against substrate/polkadot-v0.9.36 will only contain actual modifications we introduced.

 ~/substrate  mangata-dev-v0.9.36 *40 ?2  git diff substrate/polkadot-v0.9.36 --stat
 .github/workflows/burnin-label-notification.yml                              |   17 -
 .github/workflows/mangata-dev.yml                                            |   77 +++
 .github/workflows/mlc_config.json                                            |    7 -
 .github/workflows/release-bot.yml                                            |   18 -
 .github/workflows/trigger-review-pipeline.yml                                |   20 -
 Cargo.lock                                                                   | 4462 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------
 Cargo.toml                                                                   |  356 +++++++++++++-
 bin/node-template/runtime/Cargo.toml                                         |    6 +-
 bin/node/runtime/src/lib.rs                                                  |    3 +-
 client/authority-discovery/src/worker/tests.rs                               |    2 +-
 client/basic-authorship-ver/Cargo.toml                                       |   40 ++
 client/basic-authorship-ver/README.md                                        |   31 ++
 client/basic-authorship-ver/src/basic_authorship.rs                          | 1143 +++++++++++++++++++++++++++++++++++++++++++
 client/basic-authorship-ver/src/lib.rs                                       |  193 ++++++++
 client/basic-authorship/Cargo.toml                                           |    1 +
 client/beefy/Cargo.toml                                                      |    2 +-
 client/beefy/rpc/Cargo.toml                                                  |    2 +-
 client/beefy/rpc/src/lib.rs                                                  |    8 +-
 client/beefy/rpc/src/notification.rs                                         |    2 +-
 client/beefy/src/communication/gossip.rs                                     |    4 +-
 client/beefy/src/communication/request_response/incoming_requests_handler.rs |    2 +-
 client/beefy/src/communication/request_response/outgoing_requests_engine.rs  |    2 +-
 client/beefy/src/import.rs                                                   |    2 +-
 client/beefy/src/justification.rs                                            |   10 +-
 client/beefy/src/keystore.rs                                                 |    4 +-
 client/beefy/src/lib.rs                                                      |    8 +-
 client/beefy/src/round.rs                                                    |    8 +-
 client/beefy/src/tests.rs                                                    |   16 +-
 client/beefy/src/worker.rs                                                   |   12 +-
 client/block-builder-ver/Cargo.toml                                          |   35 ++
 client/block-builder-ver/README.md                                           |    9 +
 client/block-builder-ver/src/lib.rs                                          |  552 +++++++++++++++++++++
 client/consensus/aura/src/lib.rs                                             |    8 +
 client/consensus/babe/src/lib.rs                                             |    8 +
 client/consensus/babe/src/tests.rs                                           |    2 +
 client/consensus/slots/Cargo.toml                                            |    3 +
 client/consensus/slots/src/lib.rs                                            |   54 ++-
 client/finality-grandpa/src/communication/gossip.rs                          |   10 +-
 client/merkle-mountain-range/Cargo.toml                                      |    2 +-
 client/merkle-mountain-range/src/lib.rs                                      |    2 +-
 client/network/bitswap/src/lib.rs                                            |    5 +-
 client/offchain/src/lib.rs                                                   |   12 +
 client/rpc/src/chain/tests.rs                                                |    8 +
 client/service/Cargo.toml                                                    |    2 +
 client/service/src/client/client.rs                                          |   47 ++
 client/service/test/src/client/mod.rs                                        |    2 +
 client/state-db/src/lib.rs                                                   |    5 +-
 client/transaction-pool/src/lib.rs                                           |   21 +-
 frame/assets/src/weights.rs                                                  |    4 +-
 frame/aura/Cargo.toml                                                        |    2 +-
 frame/authorship/Cargo.toml                                                  |    2 +-
 frame/babe/src/benchmarking.rs                                               |   23 +-
 frame/bags-list/remote-tests/Cargo.toml                                      |    3 +-
 frame/bags-list/remote-tests/src/migration.rs                                |    2 +-
 frame/bags-list/remote-tests/src/snapshot.rs                                 |    2 +-
 frame/bags-list/remote-tests/src/try_state.rs                                |    2 +-
 frame/beefy-mmr/Cargo.toml                                                   |    4 +-
 frame/beefy-mmr/primitives/Cargo.toml                                        |    4 +-
 frame/beefy-mmr/primitives/src/lib.rs                                        |    2 +-
 frame/beefy-mmr/src/lib.rs                                                   |   22 +-
 frame/beefy-mmr/src/mock.rs                                                  |    6 +-
 frame/beefy-mmr/src/tests.rs                                                 |    4 +-
 frame/beefy/Cargo.toml                                                       |    4 +-
 frame/beefy/src/lib.rs                                                       |    6 +-
 frame/beefy/src/mock.rs                                                      |    2 +-
 frame/beefy/src/tests.rs                                                     |    2 +-
 frame/benchmarking/Cargo.toml                                                |    1 +
 frame/collective-mangata/Cargo.toml                                          |   50 ++
 frame/collective-mangata/README.md                                           |   25 +
 frame/collective-mangata/src/benchmarking.rs                                 |  644 ++++++++++++++++++++++++
 frame/collective-mangata/src/lib.rs                                          | 1282 ++++++++++++++++++++++++++++++++++++++++++++++++
 frame/collective-mangata/src/migrations/mod.rs                               |   19 +

could you check if you can get rid of them, that would simplify the review process.

example 1


 ~/substrate  mangata-dev-v0.9.36 *40 ?2  git diff substrate/polkadot-v0.9.36 -- client/beefy/rpc/src/notification.rs
diff --git a/client/beefy/rpc/src/notification.rs b/client/beefy/rpc/src/notification.rs
index a815425644d..b03281a23bf 100644
--- a/client/beefy/rpc/src/notification.rs
+++ b/client/beefy/rpc/src/notification.rs
@@ -23,7 +23,7 @@ use sp_runtime::traits::Block as BlockT;
 
 /// An encoded finality proof proving that the given header has been finalized.
 /// The given bytes should be the SCALE-encoded representation of a
-/// `beefy_primitives::VersionedFinalityProof`.
+/// `sp_beefy::VersionedFinalityProof`.
 #[derive(Clone, Serialize, Deserialize)]
 pub struct EncodedVersionedFinalityProof(sp_core::Bytes);

example 2

 ~/substrate  mangata-dev-v0.9.36 *40 ?2  git diff substrate/polkadot-v0.9.36 -- client/network/bitswap/src/lib.rs
diff --git a/client/network/bitswap/src/lib.rs b/client/network/bitswap/src/lib.rs
index 62a18b18c83..3b26c56e7ed 100644
--- a/client/network/bitswap/src/lib.rs
+++ b/client/network/bitswap/src/lib.rs
@@ -127,8 +127,9 @@ impl<B: BlockT> BitswapRequestHandler<B> {
                                        };
 
                                        match pending_response.send(response) {
-                                               Ok(()) =>
-                                                       trace!(target: LOG_TARGET, "Handled bitswap request from {peer}.",),
+                                               Ok(()) => {
+                                                       trace!(target: LOG_TARGET, "Handled bitswap request from {peer}.",)
+                                               },
                                                Err(_) => debug!(
                                                        target: LOG_TARGET,
                                                        "Failed to handle light client request from {peer}: {}",

Copy link
Member

@mateuszaaa mateuszaaa left a comment

Choose a reason for hiding this comment

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

looks like there are still some customly formatted files comparing to origin parity impl
frame/support/test/tests/derive_no_bound.rs
frame/support/procedural/src/pallet/expand/storage.rs

client/basic-authorship-ver/src/basic_authorship.rs Outdated Show resolved Hide resolved
Copy link
Member

@mateuszaaa mateuszaaa left a comment

Choose a reason for hiding this comment

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

lgtm, just make sure that ci passes

@devdanco devdanco merged commit 8d5b532 into mangata-dev Feb 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.