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

Mainnet upgrade to v0.9.40 #58

Merged
merged 122 commits into from
Dec 11, 2023
Merged

Mainnet upgrade to v0.9.40 #58

merged 122 commits into from
Dec 11, 2023

Conversation

zycon91
Copy link
Collaborator

@zycon91 zycon91 commented Dec 11, 2023

upgrade to version 0.9.40

acatangiu and others added 30 commits February 2, 2023 19:56
* testing new substrate refs

* Fix bench

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

* Fix

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

* Propagate features

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

---------

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
…ritytech#6528)

* Update beefy-merkle-tree dep to merkle-tree

* update merkle-tree to binary-merkle-tree

* update substrate refs

---------

Co-authored-by: Adrian Catangiu <[email protected]>
* kusama: allow root to cancel/kill referendums

* fix semicolons

---------

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

* runtimes: add new BEEFY api

* update lockfile for {"substrate"}
* Introduce a job scanning and ensuring there are licenses

* Showcase a red test

* Add missing licenses

* Cleanup

* Extend the check

* Add missing licenses

* CI trigger
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.24.1 to 1.24.2.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/commits)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Add getrusage and memory tracker for precheck preparation

* Log memory stats metrics after prechecking

* Fix tests

* Try to fix errors (linux-only so I'm relying on CI here)

* Try to fix CI

* Add module docs for `prepare/memory_stats.rs`; fix CI error

* Report memory stats for all preparation jobs

* Use `RUSAGE_SELF` instead of `RUSAGE_THREAD`

Not sure why I did that -- was a brainfart on my end.

* Revert last commit (RUSAGE_THREAD is correct)

* Use exponential buckets

* Use `RUSAGE_SELF` for `getrusage`; enable `max_rss` metric for MacOS

* Increase poll interval

* Revert "Use `RUSAGE_SELF` for `getrusage`; enable `max_rss` metric for MacOS"

This reverts commit becf7a8.
* Add kusama bootnodes - Gatotech

* Add Polkadot bootnodes - Gatotech

* Add Westend bootnodes - Gatotech

* Add kusama bootnodes - Metaspan

* Add Polkadot bootnodes - Metaspan

* Add Westend bootnodes - Metaspan
This feature should only be activated by the polkadot binary. Otherwise
parachains may accidentally activate this feature.
* Update `wasmtime` to 5.0.0 (+ other deps)

* update lockfile for {"substrate"}

* Update `substrate` to dd4497d

* Update `substrate` to 3d60070

---------

Co-authored-by: parity-processbot <>
* Weights for new referenda/democracy extrinsics

* fix

* substrate update

---------

Co-authored-by: parity-processbot <>
Bumps [bounded-vec](https://github.com/ergoplatform/bounded-vec) from 0.6.0 to 0.7.1.
- [Release notes](https://github.com/ergoplatform/bounded-vec/releases)
- [Changelog](https://github.com/ergoplatform/bounded-vec/blob/develop/CHANGELOG.md)
- [Commits](ergoplatform/bounded-vec@v0.6.0...v0.7.1)

---
updated-dependencies:
- dependency-name: bounded-vec
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix the branch name

* fix usage of $TEMPLATE_SOURCE
* Update `mockall`

* update lockfile for {"substrate"}

---------

Co-authored-by: parity-processbot <>
* fix all runtimes

* update lockfile for {"substrate"}

---------

Co-authored-by: parity-processbot <>
* Replace sp-core dependency with more primitive crates

* Remove BoundedVec half-impls in xcm

* Fixes

* Bump bounded-collections

* Address review comments

* Bump bounded-collections

* Fix benchmarks

* Fixes

* Fixes

* cargo fmt

* Fix tests

* Update url

* Bump url to 2.3.1

* Bump anyhow

* Use bounded-collections in pallet-xcm

* Update substrate
* Introduce jemalloc-stats feature flag

* remove unneeded space

* Update node/overseer/src/lib.rs

Co-authored-by: Marcin S. <[email protected]>

* Update Cargo.toml

Co-authored-by: Marcin S. <[email protected]>

* revert making tikv-jemallocator depend on jemalloc-stats

* conditionally import memory_stats instead of using dead_code

* fix test via expllicit import

* Add jemalloc-stats feature to crates, propagate it from root

* Apply `jemalloc-stats` feature to prepare mem stats; small refactor

* effect changes recommended on PR

* Update node/overseer/src/metrics.rs

Co-authored-by: Marcin S. <[email protected]>

* fix compile error on in pipeline for linux. missing import

* Update node/overseer/src/lib.rs

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

* revert to defining collect_memory_stats inline

---------

Co-authored-by: Marcin S. <[email protected]>
Co-authored-by: Marcin S <[email protected]>
Co-authored-by: Bastian Köcher <[email protected]>
* WIP

* Fix templates

- fix conditions to fetch misc PRs
- render the misc section only if required
- add html comment to help debugging
- add a new API section to T2 labels
* SetMembersOrigin

* Update Substrate

* Remove bags list from runtime common

---------

Co-authored-by: Bastian Köcher <[email protected]>
* v3::Junction supports small (32-byte max) "vecs".

* Formatting

* Add test
* Refactor PVF preparation memory stats

The original purpose of this change was to gate metrics that are unsupported by
some systems behind conditional compilation directives (#[cfg]); see
paritytech#6675 (comment).

Then I started doing some random cleanups and simplifications and got a bit
carried away. 🙈 The code should be overall tidier than before.

Changes:
- Don't register unsupported metrics (e.g. `max_rss` on non-Linux systems)
- Introduce `PrepareStats` struct as an abstraction over the `Ok` values of
  `PrepareResult`. It is cleaner, and can be easily modified in the future.
- Other small changes

* Minor fixes to comments

* Fix compile errors

* Try to fix some Linux errors

* Mep

* Fix candidate-validation tests

* Update docstring
* add warp sync params to enable parachain warp sync

* update lockfile for {"substrate"}

---------

Co-authored-by: parity-processbot <>
* Re-apply changes without Diener, rebase to the lastest master

* Cache pruning

* Bit-pack InstantiationStrategy

* Move ExecutorParams version inside the structure itself

* Rework runtime API and executor parameters storage

* Pass executor parameters through backing subsystem

* Update Cargo.lock

* Introduce `ExecutorParams` to approval voting subsys

* Introduce `ExecutorParams` to dispute coordinator

* `cargo fmt`

* Simplify requests from backing subsys

* Fix tests

* Replace manual config cloning with `.clone()`

* Move constants to module

* Parametrize executor performing PVF pre-check

* Fix Malus

* Fix test runtime

* Introduce session executor params as a constant defined by session info
pallet

* Use Parity SCALE codec instead of hand-crafted binary encoding

* Get rid of constants; Add docs

* Get rid of constants

* Minor typo

* Fix Malus after rebase

* `cargo fmt`

* Use transparent SCALE encoding instead of explicit

* Clean up

* Get rid of relay parent to session index mapping

* Join environment type and version in a single enum element

* Use default execution parameters if running an old runtime

* `unwrap()` -> `expect()`

* Correct API version

* Constants are back in town

* Use constants for execution environment types

* Artifact separation, first try

* Get rid of explicit version

* PVF execution queue worker separation

* Worker handshake

* Global renaming

* Minor fixes resolving discussions

* Two-stage requesting of executor params to make use of runtime API cache

* Proper error handling in pvf-checker

* Executor params storage bootstrapping

* Propagate migration to v3 network runtimes

* Fix storage versioning

* Ensure `ExecutorParams` serialization determinism; Add comments

* Rename constants to make things a bit more deterministic
Get rid of stale code

* Tidy up a structure of active PVFs

* Minor formatting

* Fix comment

* Add try-runtime hooks

* Add storage version write on upgrade

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

* Add pre- and post-upgrade assertions

* Require to specify environment type; Remove redundant `impl`s

* Add `ExecutorParamHash` creation from `H256`

* Fix candidate validation subsys tests

* Return splittable error from executor params request fn

* Revert "Return splittable error from executor params request fn"

This reverts commit a85038d.

* Decompose approval voting metrics

* Use more relevant errors

* Minor formatting fix

* Assert a valid environment type instead of checking

* Fix `try-runtime` hooks

* After-merge fixes

* Add migration logs

* Remove dead code

* Fix tests

* Fix tests

* Back to the strongly typed implementation

* Promote strong types to executor interface

* Remove stale comment

* Move executor params to `SessionInfo`: primitives and runtime

* Move executor params to `SessionInfo`: node

* Try to bump primitives and API version

* Get rid of `MallocSizeOf`

* Bump target API version to v4

* Make use of session index already in place

* Back to v3

* Fix all the tests

* Add migrations to all the runtimes

* Make use of existing `SessionInfo` in approval voting subsys

* Rename `TARGET` -> `LOG_TARGET`

* Bump all the primitives to v3

* Fix Rococo ParachainHost API version

* Use `RollingSessionWindow` to acquire `ExecutorParams` in disputes

* Fix nits from discussions; add comments

* Re-evaluate queue logic

* Rework job assignment in execution queue

* Add documentation

* Use `RuntimeInfo` to obtain `SessionInfo` (with blackjack and caching)

* Couple `Pvf` with `ExecutorParams` wherever possible

* Put members of `PvfWithExecutorParams` under `Arc` for cheap cloning

* Fix comment

* Fix CI tests

* Fix clippy warnings

* Address nits from discussions

* Add a placeholder for raw data

* Fix non exhaustive match

* Remove redundant reexports and fix imports

* Keep only necessary semantic features, as discussed

* Rework `RuntimeInfo` to support mock implementation for tests

* Remove unneeded bound

* `cargo fmt`

* Revert "Remove unneeded bound"

This reverts commit 3bdfc68.

* Fix PVF host tests

* Fix PVF checker tests

* Fix overseer declarations

* Simplify tests

* `MAX_KEEP_WAITING` timeout based on `BACKGING_EXECUTION_TIMEOUT`

* Add a unit test for varying executor parameters

* Minor fixes from discussions

* Add prechecking max. memory parameter (see paritytech-secops/srlabs_findings#110)

* Fix and improve a test

* Remove `ExecutionEnvironment` and `RawData`

* New primitives versioning in parachain host API

* `disputes()` implementation for Kusama and Polkadot

* Move `ExecutorParams` from `vstaging` to stable primitives

* Move disputes from `vstaging` to stable implementation

* Fix `try-runtime`

* Fixes after merge

* Move `ExecutorParams` to the bottom of `SessionInfo`

* Revert "Move executor params to `SessionInfo`: primitives and runtime"

This reverts commit 1988355.

* Always use fresh activated live hash in pvf precheck
(re-apply 029b82b)

* Fixing tests (broken commit)

* Fix candidate validation tests

* Fix PVF host test

* Minor fixes

* Address discussions

* Restore migration

* Fix `use` to only include what is needed instead of `*`

* Add comment to never touch `DEFAULT_CONFIG`

* Update migration to set default `ExecutorParams` for `dispute_period`
sessions back

* Use `earliest_stored_session` instead of calculations

* Nit

* Add logs

* Treat any runtime error as `NotSupported` again

* Always return default executor params if not available

* Revert "Always return default executor params if not available"

This reverts commit b58ac44.

* Add paritytech/substrate#9997 workaround

* `cargo fmt`

* Remove migration (again!)

* Bump executor params to API v4 (backport from paritytech#6698)

---------

Co-authored-by: Andronik <[email protected]>
…ormat (paritytech#6702)

* update templates to upcoming context.json format

* fix merging error

* more fixes

* fix templates

* fix

* print "changelogerator --version"

* print changelogerator version as debug

* remove excluded debug info

* WIP

* Switch to changelogerator v0.10.1

* Update bundle deps

* fix

---------

Co-authored-by: Wilfried Kopp <[email protected]>
dependabot bot and others added 24 commits March 15, 2023 14:14
Bumps [libgit2-sys](https://github.com/rust-lang/git2-rs) from 0.14.1+1.5.0 to 0.14.2+1.5.1.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](rust-lang/git2-rs@0.14.1...libgit2-sys-0.14.2)

---
updated-dependencies:
- dependency-name: libgit2-sys
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* companion for #13555

* update lockfile for {"substrate"}

* fix: `decl_TryRuntime` -> `decl_for_try_runtime`

---------

Co-authored-by: parity-processbot <>
* migrate to pools v4

* update types + weights

* rm BlockNumberToU32

* fmt

* fix

* update weights

* fix RocksDbWeight

* fix function name

* weights

* use 1 weight format

* update claim payout weights

* + as u64

* fix rebase + fmt

* add weights

* more weights

* ".git/.scripts/commands/bench/bench.sh" runtime polkadot-dev pallet_nomination_pools

* ".git/.scripts/commands/bench/bench.sh" runtime kusama-dev pallet_nomination_pools

* ".git/.scripts/commands/bench/bench.sh" runtime westend-dev pallet_nomination_pools

* fix

* fix

* ".git/.scripts/commands/bench/bench.sh" runtime polkadot-dev pallet_nomination_pools

* ".git/.scripts/commands/bench/bench.sh" runtime westend-dev pallet_nomination_pools

* ".git/.scripts/commands/bench/bench.sh" runtime kusama-dev pallet_nomination_pools

* add InitialGlobalMaxCommission

* revert

* global max commission migration generic

* remove StakingMigrationV11OldPallet

* initial global max commission

* adjust global max

* update lockfile for {"substrate"}

* Use master lock file

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

* cargo update -p sp-io

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

---------

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
* polkadot: update weights

* westend: update weights

* kusama: update weights

* rococo: update weights
* remove duplicated arm

* annotate the version index

* add tests

* fmt
* pools migration v5

* Allow deprecated

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

* Keep old migrations around

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

* update lockfile for {"substrate"}

* use master Cargo.lock

* revert Cargo.lock master

* clippy: remove unused parentheses

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

* Fix parachain config migration

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

* Make tests work

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

---------

Signed-off-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: Oliver Tale-Yazdi <[email protected]>
Co-authored-by: parity-processbot <>
@zycon91 zycon91 self-assigned this Dec 11, 2023
@zycon91 zycon91 merged commit fca408b into cherry Dec 11, 2023
4 of 15 checks passed
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.