Skip to content
Snippets Groups Projects
  1. Jan 20, 2025
    • Benjamin Gallois's avatar
      Fix `frame-benchmarking-cli` not buildable without rocksdb (#7263) · 2c4cecce
      Benjamin Gallois authored
      ## Description
      
      The `frame-benchmarking-cli` crate has not been buildable without the
      `rocksdb` feature since version 1.17.0.
      
      **Error:**  
      ```rust
      self.database()?.unwrap_or(Database::RocksDb),
                                   ^^^^^^^ variant or associated item not found in `Database`
      ```
      
      This issue is also related to the `rocksdb` feature bleeding (#3793),
      where the `rocksdb` feature was always activated even when compiling
      this crate with `--no-default-features`.
      
      **Fix:**  
      - Resolved the error by choosing `paritydb` as the default database when
      compiled without the `rocksdb` feature.
      - Fixed the issue where the `sc-cli` crate's `rocksdb` feature was
      always active, even compiling `frame-benchmarking-cli` with
      `--no-default-features`.
      
      ## Review Notes
      
      Fix the crate to be built without rocksdb, not intended to solve #3793.
      
      ---------
      
      Co-authored-by: command-bot <>
  2. Dec 20, 2024
    • Xavier Lau's avatar
      Reorder dependencies' keys (#6967) · a843d15e
      Xavier Lau authored
      
      It doesn't make sense to only reorder the features array.
      
      For example:
      
      This makes it hard for me to compare the dependencies and features,
      especially some crates have a really really long dependencies list.
      ```toml​
      [dependencies]
      c = "*"
      a = "*"
      b = "*"
      
      [features]
      std = [
        "a",
        "b",
        "c",
      ]
      ```
      
      This makes my life easier.
      ```toml​
      [dependencies]
      a = "*"
      b = "*"
      c = "*"
      
      [features]
      std = [
        "a",
        "b",
        "c",
      ]
      ```
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: command-bot <>
  3. Dec 10, 2024
  4. Dec 03, 2024
  5. Sep 16, 2024
  6. Jun 27, 2024
  7. Jun 24, 2024
    • Oliver Tale-Yazdi's avatar
      Lift all dependencies (the big one) (#4716) · 8efa0544
      Oliver Tale-Yazdi authored
      
      After preparing in https://github.com/paritytech/polkadot-sdk/pull/4633,
      we can lift also all internal dependencies up to the workspace.
      
      This does not actually change anything, but uses `workspace = true` for
      all dependencies. You can check it with:
      ```bash
      git checkout -q $(git merge-base oty-lift-all-deps origin/master)
      cargo tree -e features > master.out
      
      git checkout -q oty-lift-all-deps
      cargo tree -e features > new.out
      diff master.out new.out
      ```
      
      It did not yet lift 100% of dependencies, some inside of `target.*` or
      some that had conflicting aliases introduced recently. But i will do
      these together in a follow-up with CI checks.
      
      Can be reproduced with [zepter](https://github.com/ggwpez/zepter/):
      `zepter transpose d lift-to-workspace "regex:.*" --version-resolver
      highest --skip-package "polkadot-sdk" --ignore-errors --fix`.
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
  8. Jun 05, 2024
    • Oliver Tale-Yazdi's avatar
      Unify dependency aliases (#4633) · d2fd5364
      Oliver Tale-Yazdi authored
      
      Inherited workspace dependencies cannot be renamed by the crate using
      them (see [1](https://github.com/rust-lang/cargo/issues/12546),
      [2](https://stackoverflow.com/questions/76792343/can-inherited-dependencies-in-rust-be-aliased-in-the-cargo-toml-file)).
      Since we want to use inherited workspace dependencies everywhere, we
      first need to unify all aliases that we use for a dependency throughout
      the workspace.
      The umbrella crate is currently excluded from this procedure, since it
      should be able to export the crates by their original name without much
      hassle.
      
      For example: one crate may alias `parity-scale-codec` to `codec`, while
      another crate does not alias it at all. After this change, all crates
      have to use `codec` as name. The problematic combinations were:
      - conflicting aliases: most crates aliases as `A` but some use `B`.
      - missing alias: most of the crates alias a dep but some dont.
      - superfluous alias: most crates dont alias a dep but some do.
      
      The script that i used first determines whether most crates opted to
      alias a dependency or not. From that info it decides whether to use an
      alias or not. If it decided to use an alias, the most common one is used
      everywhere.
      
      To reproduce, i used
      [this](https://github.com/ggwpez/substrate-scripts/blob/master/uniform-crate-alias.py)
      python script in combination with
      [this](https://github.com/ggwpez/zepter/blob/38ad10585fe98a5a86c1d2369738bc763a77057b/renames.json)
      error output from Zepter.
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
  9. May 15, 2024
    • Alexandru Gheorghe's avatar
      Make vscode rustanalyzer fast again (#4470) · e31fcffb
      Alexandru Gheorghe authored
      
      This bump of versions:
      
      https://github.com/paritytech/polkadot-sdk/pull/4409/files#diff-13ee4b2252c9e516a0547f2891aa2105c3ca71c6d7a1e682c69be97998dfc87eR11936
      
      reintroduced a dependency to proc-macro-crate 2.0.0 which is suffering
      from: https://github.com/bkchr/proc-macro-crate/pull/42 this, so bump
      parity-scale-codec to a newer version to eliminate the bad
      proc-macro-crate 2.0.0 dependency.
      
      ---------
      
      Signed-off-by: default avatarAlexandru Gheorghe <alexandru.gheorghe@parity.io>
      Co-authored-by: command-bot <>
  10. Apr 02, 2024
  11. Feb 12, 2024
    • Oliver Tale-Yazdi's avatar
      Lift dependencies to the workspace (Part 1) (#2070) · e80c2473
      Oliver Tale-Yazdi authored
      Changes (partial https://github.com/paritytech/polkadot-sdk/issues/994):
      - Set log to `0.4.20` everywhere
      - Lift `log` to the workspace
      
      Starting with a simpler one after seeing
      https://github.com/paritytech/polkadot-sdk/pull/2065 from @jsdw
      
      .
      This sets the `default-features` to `false` in the root and then
      overwrites that in each create to its original value. This is necessary
      since otherwise the `default` features are additive and its impossible
      to disable them in the crate again once they are enabled in the
      workspace.
      
      I am using a tool to do this, so its mostly a test to see that it works
      as expected.
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
  12. Jan 26, 2024
  13. Jan 21, 2024
  14. Dec 13, 2023
  15. Dec 01, 2023
  16. Sep 11, 2023
    • Vsevolod Stakhov's avatar
      Allow to broadcast network messages in parallel (#1409) · 44dbb739
      Vsevolod Stakhov authored
      This PR addresses multiple issues pending:
      
      * [x] Update orchestra to the recent version and test how the node
      performs
      * [x] Add some useful metrics for outbound network bridge
      * [x] Try to send incoming network requests to all subsystems without
      blocking on some particular subsystem in that loop
      * [x] Fix all incompatibilities between orchestra and polkadot code
      (e.g. malus node)
  17. Sep 04, 2023
    • Chevdor's avatar
      Markdown linter (#1309) · a30092ab
      Chevdor authored
      
      * Add markdown linting
      
      - add linter default rules
      - adapt rules to current code
      - fix the code for linting to pass
      - add CI check
      
      fix #1243
      
      * Fix markdown for Substrate
      * Fix tooling install
      * Fix workflow
      * Add documentation
      * Remove trailing spaces
      * Update .github/.markdownlint.yaml
      
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      * Fix mangled markdown/lists
      * Fix captalization issues on known words
  18. Sep 01, 2023
  19. Aug 31, 2023
  20. Aug 29, 2023
  21. Aug 28, 2023
  22. Aug 25, 2023
  23. Aug 14, 2023
  24. Aug 04, 2023
  25. Jul 31, 2023
    • Marcin S.'s avatar
      98.6% OF DEVELOPERS CANNOT REVIEW THIS PR! [read more...] (#7337) · 85b06f18
      Marcin S. authored
      
      * [WIP] PVF: Split out worker binaries
      
      * Address compilation problems and re-design a bit
      
      * Reorganize once more, fix tests
      
      * Reformat with new nightly to make `cargo fmt` test happy
      
      * Address `clippy` warnings
      
      * Add temporary trace to debug zombienet tests
      
      * Fix zombienet node upgrade test
      
      * Fix malus and its CI
      
      * Fix building worker binaries with malus
      
      * More fixes for malus
      
      * Remove unneeded cli subcommands
      
      * Support placing auxiliary binaries to `/usr/libexec`
      
      * Fix spelling
      
      * Spelling
      
      Co-authored-by: default avatarMarcin S. <marcin@realemail.net>
      
      * Implement review comments (mostly nits)
      
      * Fix worker node version flag
      
      * Rework getting the worker paths
      
      * Address a couple of review comments
      
      * Minor restructuring
      
      * Fix CI error
      
      * Add tests for worker binaries detection
      
      * Improve tests; try to fix CI
      
      * Move workers module into separate file
      
      * Try to fix failing test and workers not printing latest version
      
      - Tests were not finding the worker binaries
      - Workers were not being rebuilt when the version changed
      - Made some errors easier to read
      
      * Make a bunch of fixes
      
      * Rebuild nodes on version change
      
      * Fix more issues
      
      * Fix tests
      
      * Pass node version from node into dependencies to avoid recompiles
      
      - [X] get version in CLI
      - [X] pass it in to service
      - [X] pass version along to PVF
      - [X] remove rerun from service
      - [X] add rerun to CLI
      
      - [X] don’t rerun pvf/worker’s (these should be built by nodes which have rerun enabled)
      
      * Some more improvements for smoother tests
      
      - [X] Fix tests
      - [X] Make puppet workers pass None for version and remove rerun
      - [X] Make test collators self-contained
      
      * Add back rerun to PVF workers
      
      * Move worker binaries into files in cli crate
      
      As a final optimization I've separated out each worker binary from its own crate
      into the CLI crate. Before, the worker bin shared a crate with the worker lib,
      so when the binaries got recompiled so did the libs and everything transitively
      depending on the libs. This commit fixes this regression that was causing
      recompiles after every commit.
      
      * Fix bug (was passing worker version for node version)
      
      * Move workers out of cli into root src/bin/ dir
      
      - [X] Pass in node version from top-level (polkadot)
      - [X] Add build.rs with rerun-git-head to root dir
      
      * Add some sanity checks for workers to dockerfiles
      
      * Update malus
      
        + [X] Make it self-contained
        + [X] Undo multiple binary changes
      
      * Try to fix clippy errors
      
      * Address `cargo run` issue
      
      - [X] Add default-run for polkadot
      - [X] Add note about installation to error
      
      * Update readme (installation instructions)
      
      * Allow disabling external workers for local/testing setups
      
        + [X] cli flag to enable single-binary mode
        + [X] Add message to error
      
      * Revert unnecessary Cargo.lock changes
      
      * Remove unnecessary build scripts from collators
      
      * Add back missing malus commands (should fix failing ZN job)
      
      * Some minor fixes
      
      * Update Cargo.lock
      
      * Fix some build errors
      
      * Undo self-contained binaries; cli flag to disable version check
      
        + [X] Remove --dont-run-external-workers
        + [X] Add --disable-worker-version-check
        + [X] Remove PVF subcommands
        + [X] Redo malus changes
      
      * Try to fix failing job and add some docs for local tests
      
      ---------
      
      Co-authored-by: default avatarDmitry Sinyavin <dmitry.sinyavin@parity.io>
      Co-authored-by: default avatars0me0ne-unkn0wn <48632512+s0me0ne-unkn0wn@users.noreply.github.com>
      Co-authored-by: parity-processbot <>
      85b06f18
  26. Jul 11, 2023
    • Bastian Köcher's avatar
      Companion for removal of execution strategies (#7443) · 0ff60f7d
      Bastian Köcher authored
      * Companion for removal of execution strategies
      
      https://github.com/paritytech/substrate/pull/14387
      
      * Fix some tests
      
      * :face_palm:
      
      * Adapt to latest changes
      
      * Start supporting the offchain transaction pool
      
      * Fix tests
      
      * FMT
      
      * Remove patches
      
      * Update Substrate
      
      * update lockfile for {"substrate"}
      
      * Fix parachain upgrade smoke test
      
      * Fix test
      
      * Rewrite all tests to use `MockSubstemClient`
      
      ---------
      
      Co-authored-by: parity-processbot <>
      0ff60f7d
  27. Jun 21, 2023
  28. Jun 14, 2023
    • eskimor's avatar
      Unify code paths of create_inherent and enter (#7137) · 596a9ccd
      eskimor authored
      
      * Remove redundant enter call.
      
      * Remove optionality in dispute signature checking
      
      * Make enter_inner and create_inherent the same.
      
      * Remove redundant metric.
      
      * Unification: enter and create_inherent.
      
      * Remove `enter_inner` function.
      
      * Remove dead code.
      
      * Remove redundant import.
      
      * Remove dead code in disputes.
      
      * ".git/.scripts/commands/bench/bench.sh" runtime polkadot runtime_parachains::paras_inherent
      
      * ".git/.scripts/commands/bench/bench.sh" runtime kusama runtime_parachains::paras_inherent
      
      * ".git/.scripts/commands/bench/bench.sh" runtime westend runtime_parachains::paras_inherent
      
      * Merge fix.
      
      * Fix tests.
      
      * Remove obsolete comment.
      
      * ".git/.scripts/commands/bench/bench.sh" runtime polkadot runtime_parachains::paras_inherent
      
      * ".git/.scripts/commands/bench/bench.sh" runtime westend runtime_parachains::paras_inherent
      
      * ".git/.scripts/commands/bench/bench.sh" runtime kusama runtime_parachains::paras_inherent
      
      * Review remarks, fixes.
      
      * Guide updates.
      
      * Fmt.
      
      * ".git/.scripts/commands/bench/bench.sh" runtime polkadot runtime_parachains::paras_inherent
      
      ---------
      
      Co-authored-by: default avatareskimor <eskimor@no-such-url.com>
      Co-authored-by: command-bot <>
      596a9ccd
  29. May 24, 2023
  30. Apr 08, 2023
  31. Mar 28, 2023
    • Tsvetomir Dimitrov's avatar
      Histogram support in runtime metrics (#6935) · 22f404f0
      Tsvetomir Dimitrov authored
      
      * Histogram support in runtime metrics
      
      Add support for histograms to the runtime metrics. Additionally add
      `polkadot_parachain_verify_dispute_signature` histogram which tracks the
      time needed from the runtime to verify a single validator signature of a
      dispute statement.
      
      * Add noops
      
      * u64 instead of f64
      
      * Update buckets
      
      * Wrap `get_current_time()` in runtime metrics
      
      * Change the dimension of the Histogram from usec to sec
      
      * Fix a compilation error
      
      * Update buckets
      
      * Fix `on_signature_check_complete` calculation
      
      * Update buckets
      
      * Update buckets
      
      * formatting
      
      * Another weights update
      
      * Adjust buckets again
      
      * Final buckets adjustment
      
      * Revert "Fix a compilation error"
      
      This reverts commit 06290b40a39eeb78de2602d8916a39edf7a8b714.
      
      * Update primitives/src/v4/metrics.rs
      
      Co-authored-by: default avatarAndrei Sandu <54316454+sandreim@users.noreply.github.com>
      
      * Use `saturating_sub` for time difference calculation
      
      * Pass nanoseconds to client instead of seconds (using f64 in runtime is dangerous)
      
      ---------
      
      Co-authored-by: default avatarAndrei Sandu <54316454+sandreim@users.noreply.github.com>
      22f404f0
  32. Mar 23, 2023
  33. Mar 20, 2023
  34. Mar 14, 2023
  35. Feb 06, 2023
  36. Feb 03, 2023
  37. Jan 25, 2023
  38. Jan 11, 2023
  39. Jan 09, 2023
  40. Dec 05, 2022